-
Notifications
You must be signed in to change notification settings - Fork 318
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update kvsWebRTCClientMasterGstreamerSample.c - Provide Raspberry Pi hardware encode example #1398
Conversation
* create data channel sample * moved variables to Samples.h, encapsulated with ENABLE_DATA_CHANNEL directive * removed unused variables, moved variable declarations to the top of a block * create data channel sample * moved variables to Samples.h, encapsulated with ENABLE_DATA_CHANNEL directive
No code changed. Just a template change. So merging
…t empty, there is a check preventing the data channel to be opened. Now protocol length is correctly handled to avoid check failing. (awslabs#1228)
* Update README to include instructions for pull requests. * Put develop branch mentions in README in a code block
* add the call response, it's verbose but maybe we should make it debug * WARN level log when result is not 200 and VERBOSE for 200s * missing null terminator * alloc right amount to include null char
* Log ice candidate protocol appropriately (awslabs#1230) * Log ice candidate protocol appropriately * Add develop to travis CI * Address comments * Realign branches during transition (awslabs#1257) * create data channel sample (awslabs#1203) * create data channel sample * moved variables to Samples.h, encapsulated with ENABLE_DATA_CHANNEL directive * removed unused variables, moved variable declarations to the top of a block * create data channel sample * moved variables to Samples.h, encapsulated with ENABLE_DATA_CHANNEL directive * Cancel the thread once mediaThreadStarted flag is set to false (awslabs#1227) * Initial stale PR template (awslabs#1226) * Update stale issue template * Testing every minute * Fix stale issue PR template (awslabs#1234) No code changed. Just a template change. So merging * Add bug and question label * Switch stale PR action to daily cadence * [FIX] When protocol in DCEP header of data channel open command is not empty, there is a check preventing the data channel to be opened. Now protocol length is correctly handled to avoid check failing. (awslabs#1228) Co-authored-by: Niyati Maheshwari <[email protected]> Co-authored-by: Divya Sampath Kumar <[email protected]> Co-authored-by: ela34 <[email protected]> * set protocol value following the spec (awslabs#1259) Co-authored-by: liyufang <[email protected]> * filter out invalid candidate in sdp (awslabs#1260) Co-authored-by: liyufang <[email protected]> * Added targets for cmake clean (awslabs#1253) * added targets for cmake clean * added new line, updated readme * added missing new line * updated readme to include folder details * updated readme to include folder details * viewer sample: wrap datachannel callback with `ENABLE_DATA_CHANNEL` (awslabs#1261) * create data channel sample (awslabs#1203) * create data channel sample * moved variables to Samples.h, encapsulated with ENABLE_DATA_CHANNEL directive * removed unused variables, moved variable declarations to the top of a block * create data channel sample * moved variables to Samples.h, encapsulated with ENABLE_DATA_CHANNEL directive * Cancel the thread once mediaThreadStarted flag is set to false (awslabs#1227) * Initial stale PR template (awslabs#1226) * Update stale issue template * Testing every minute * Fix stale issue PR template (awslabs#1234) No code changed. Just a template change. So merging * Add bug and question label * Switch stale PR action to daily cadence * [FIX] When protocol in DCEP header of data channel open command is not empty, there is a check preventing the data channel to be opened. Now protocol length is correctly handled to avoid check failing. (awslabs#1228) * viewer sample: wrap datachannel callback with `ENABLE_DATA_CHANNEL` Signed-off-by: [email protected] <[email protected]> Co-authored-by: Niyati Maheshwari <[email protected]> Co-authored-by: Divya Sampath Kumar <[email protected]> Co-authored-by: ela34 <[email protected]> * libwebsockets: add patch to fix pipe fd leak issue (awslabs#1264) Signed-off-by: Alex.Li <[email protected]> * Fix scripts/pare_status.py for non-status #defines (awslabs#1268) (awslabs#1274) Co-authored-by: Kevin Allen <[email protected]> * fix a few bugs * Revert "fix a few bugs" This reverts commit 0939024. * fix some bugs (awslabs#1277) * Fix bugs (awslabs#1279) * fix edge case try to unlock a mutex which is not locked in teh acse the sample config was NULL (awslabs#1286) * cmake: allow user to specify OPEN_SRC_INSTALL_PREFIX (awslabs#1293) Signed-off-by: Alex.Li <[email protected]> * Fix inconsistent log priority (awslabs#1309) Patch reduces priority of a few info level log messages to verbose level to be consistent with other functions in file and rest of code base. * Modify protocol loggin design in develop (awslabs#1311) * typo: typo fix (awslabs#1317) Signed-off-by: Alex.Li <[email protected]> * Signaling state machine rework (awslabs#1323) * replaced recursive calls to stepSignalingStateMachine with loops * removed recursive calls to stepSignalingStateMachine * replaced stepSignalingstatemachine with signalingStateMachineIterator * removed stepUntil, continueOnReady; removed status from iterator signature; set signalingclient version; added a lock in refreshIceConfiguration * changed the declaration for i from int to UINT32 * added signaling version; removed unnecessary comment * removed redeclaration; changed value in an existing macro * Fix issue with API call failures being treated as success (awslabs#1328) * return proper error, do not reset call result value * for non retriable failures, set the terminal exit status for state in… (awslabs#1320) * for non retriable failures, set the terminal exit status for state in state machine * address comments * adjust tests set retry max to 1 * Update LwsApiCalls.c trigger travis ci * Incorporating PIC state machine level retry changes into webrtc signaling state machine (awslabs#1326) * Incorporating PIC state machine level retry changes into webrtc signaling state machine * Signaling state machine rework (awslabs#1323) * replaced recursive calls to stepSignalingStateMachine with loops * removed recursive calls to stepSignalingStateMachine * replaced stepSignalingstatemachine with signalingStateMachineIterator * removed stepUntil, continueOnReady; removed status from iterator signature; set signalingclient version; added a lock in refreshIceConfiguration * changed the declaration for i from int to UINT32 * added signaling version; removed unnecessary comment * removed redeclaration; changed value in an existing macro * Fix issue with API call failures being treated as success (awslabs#1328) * return proper error, do not reset call result value * for non retriable failures, set the terminal exit status for state in… (awslabs#1320) * for non retriable failures, set the terminal exit status for state in state machine * address comments * adjust tests set retry max to 1 * Update LwsApiCalls.c trigger travis ci * Add retry strategy to client info to avoiud changing create signaling channel API signature * Incorporating PIC state machine level retry changes into webrtc signaling state machine * Add retry strategy to client info to avoiud changing create signaling channel API signature * Adding more debug logs in the code * fix merge conflicts * PR feedback Co-authored-by: Niyati Maheshwari <[email protected]> Co-authored-by: Hassan Sahibzada <[email protected]> * Revert " Incorporating PIC state machine level retry changes into webrtc signaling state machine (awslabs#1326)" (awslabs#1339) This reverts commit 06bffce. * Incorporating PIC state machine level retry changes into webrtc signaling state machine (awslabs#1341) * Incorporating PIC state machine level retry changes into webrtc signaling state machine * Add a n optional check for free retry strategy * Remove unused goto label * add missing sleep in get token state machine execute API * update log line * Update Producer hash * Adding a high level retry strategy while creating signaling client * Add Retry count retrieval in hook (awslabs#1335) * Add Retry count retrieval in hook * Fix compile issue on travis * Pull in latest changes in retry structures * Rebasing off develop with successful travis run for retry * Log git hash (awslabs#1345) * Log git hash * Update CMakeLists.txt white space change to trigger travis Co-authored-by: Hassan Sahibzada <[email protected]> * Fix retry count to indicate count only after a retry has occured (awslabs#1348) Fix retry count to indicate count only after a retry has occurred * add support for automatic clock skew detection and correction (awslabs#1344) * add support for automatic clock skew detection and correction * auto fix clock skew and add tests * enable test to check clock recovery * remove stuff left over from debugging, reset logging default to WARN * remove unused variable * get rid of verbose logging in unit tests causes static build to fail due to excessive log output * simplify code get rid of extra call to length because the lws_hdr_copy returns the same value * handle null stream track in case of recvonly (awslabs#1346) * handle null stream track in case of recvonly * a test with null stream track for revconly * Fix a comment * whitespace change * State machine preparation is decoupled from the constructor (awslabs#1343) * Merge master into develop (awslabs#1352) * Missing the public API switch in the other samples (awslabs#1356) * Fix Fetch error retry cases (awslabs#1359) * Fix Fetch error retry cases * update comment Co-authored-by: Divya Sampath Kumar <[email protected]> Co-authored-by: Niyati Maheshwari <[email protected]> Co-authored-by: ela34 <[email protected]> Co-authored-by: northteam <[email protected]> Co-authored-by: liyufang <[email protected]> Co-authored-by: Alex.D.Scofield <[email protected]> Co-authored-by: Kevin Allen <[email protected]> Co-authored-by: Hassan Sahibzada <[email protected]> Co-authored-by: Chris Hiszpanski <[email protected]> Co-authored-by: Anurag Katey <[email protected]>
awslabs#1391) (awslabs#1393) * new Chrome v98 produces extra sdp attributes, up the limit so we do not reject * Fix test and change count to unit16 to avoid overflow issues * fix issue reported by codeql Co-authored-by: Divya Sampath Kumar <[email protected]> Co-authored-by: Hassan Sahibzada <[email protected]>
Provide an example gstreamer pipeline for Raspberry Pi hardware encoding. Tested on Raspberry Pi 3
Codecov Report
@@ Coverage Diff @@
## develop #1398 +/- ##
========================================
Coverage 51.49% 51.49%
========================================
Files 46 46
Lines 12795 12802 +7
========================================
+ Hits 6589 6593 +4
- Misses 6206 6209 +3
Continue to review full report at Codecov.
|
* "v4l2src do-timestamp=TRUE device=\"/dev/video0\" ! queue ! videoconvert ! " | ||
* "video/x-raw,format=I420,width=640,height=480,framerate=30/1 ! " | ||
* "omxh264enc control-rate=1 target-bitrate=500000 periodicty-idr=30 inline-header=FALSE ! " | ||
* "h264parse config-interval=-1 ! " |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is it necessary to send sps/pps with every key frame?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Honestly, I'm not sure. I know most camera vendors send sps/pps withe very keyframe, but that is for rtsp/rtp.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for adding this example @bkneff !
Thank you @bkneff ! |
I just changed the branch to develop.
|
@bkneff there were a ton of merge conflicts, I resolved them all, so as soon as the merge commit travis run succeeds we can get this merged. |
This is a very old issue. We encourage you to check if this is still an issue in the latest release and if you find that this is still a problem, please feel free to open a new one. |
Thanks @bkneff for this, was really helpful despite not being merged in the repo |
Provide an example gstreamer pipeline for Raspberry Pi hardware encoding. Tested on Raspberry Pi 3
Issue #, if available:
Description of changes:
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.