<html><head><meta http-equiv="Content-Type" content="text/html; charset=us-ascii"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">Hi all,<div class=""><br class=""></div><div class="">I see a very strange issue and I cannot crack it for a while.</div><div class=""><br class=""></div><div class="">In our application we are using multiple pipelines the first one is the source which sends the camera feed as h264 RTP stream to processors:</div><div class=""><br class=""></div><div class=""><div style="color: rgb(54, 54, 54); background-color: rgb(255, 255, 255); font-family: Menlo, Monaco, "Courier New", monospace; font-weight: 800; font-size: 10px; line-height: 15px; white-space: pre;" class=""><div class="">gst-launch-1.0 -e\</div><div class=""> nvarguscamerasrc sensor-id=<span style="color: rgb(162, 86, 55);" class="">"</span><span style="color: rgb(9, 89, 132);" class="">$SENSOR_ID</span><span style="color: rgb(162, 86, 55);" class="">"</span> sensor-mode=0 gainrange=<span style="color: rgb(162, 86, 55);" class="">"1 16"</span> ispdigitalgainrange=<span style="color: rgb(162, 86, 55);" class="">"1 1"</span> name=<span style="color: rgb(162, 86, 55);" class="">"</span><span style="color: rgb(9, 89, 132);" class="">${APP_NAME}</span><span style="color: rgb(162, 86, 55);" class="">_pipeline_overrides_</span><span style="color: rgb(9, 89, 132);" class="">${SENSOR_ID}</span><span style="color: rgb(162, 86, 55);" class="">"</span>\</div><div class="">    ! <span style="color: rgb(162, 86, 55);" class="">"video/x-raw(memory:NVMM), width=(int)</span><span style="color: rgb(9, 89, 132);" class="">${capture_width}</span><span style="color: rgb(162, 86, 55);" class="">, height=(int)</span><span style="color: rgb(9, 89, 132);" class="">${capture_height}</span><span style="color: rgb(162, 86, 55);" class="">, format=(string)NV12, framerate=(fraction)</span><span style="color: rgb(9, 89, 132);" class="">${capture_framerate}</span><span style="color: rgb(162, 86, 55);" class="">/1"</span>\</div><div class="">    ! nvvidconv ! nvivafilter cuda-process=true customer-lib-name=<span style="color: rgb(162, 86, 55);" class="">"</span><span style="color: rgb(9, 89, 132);" class="">$customer_lib</span><span style="color: rgb(162, 86, 55);" class="">"</span> ! <span style="color: rgb(162, 86, 55);" class="">'video/x-raw(memory:NVMM), format=(string)NV12'</span>\</div><div class="">    ! nvvidconv ! omxh264enc bitrate=<span style="color: rgb(162, 86, 55);" class="">"</span><span style="color: rgb(9, 89, 132);" class="">${capture_bitrate}</span><span style="color: rgb(162, 86, 55);" class="">"</span> control-rate=1 ! rtph264pay mtu=1400\</div><div class="">    ! udpsink auto-multicast=true clients=<span style="color: rgb(162, 86, 55);" class="">"</span><span style="color: rgb(9, 89, 132);" class="">${udp_clients}</span><span style="color: rgb(162, 86, 55);" class="">"</span></div></div></div><div class=""><br class=""></div><div class="">On the receiving side (one of the receivers) would forward it to browsers via WebRTC for this Im using the following pipeline (signaling is carried out with a simple c++ application wrapping this):</div><div class=""><br class=""></div><div class=""><div style="color: rgb(54, 54, 54); background-color: rgb(255, 255, 255); font-family: Menlo, Monaco, "Courier New", monospace; font-weight: 800; font-size: 10px; line-height: 15px; white-space: pre;" class=""><div class=""><span style="color: rgb(162, 86, 55);" class="">udpsrc multicast-group=<DCL_WEBRTC_UDP_SOURCE_IP> auto-multicast=true port=<DCL_WEBRTC_UDP_SOURCE_PORT></span></div><div class=""><span style="color: rgb(162, 86, 55);" class="">       ! application/x-rtp,media=video,encoding-name=H264,payload=96,clock-rate=90000,packetization-mode=1,profile-level-id=424015,sprop-parameter-sets="Z0JAKJWgHgCJ+VA=,aM48gA==",src=1728323247,timestamp-offset=2499875162,seqnum-offset=11758,a-framerate=20</span></div><div class=""><span style="color: rgb(162, 86, 55);" class="">       ! webrtcbin name=webrtc_sink stun-server='<a href="stun://localhost:3478" class="">stun://localhost:3478</a>' latency=0</span></div></div></div><div class=""><br class=""></div><div class="">in the browser I can see that the stream is connected and using <a href="chrome://webrtc-internals/" class="">chrome://webrtc-internals/</a> I can see that data is coming in but the video not showing up</div><div class=""><br class=""></div><div class="">I was able to receive video in the browser if I had the webrtc node and the camerasource in one pipeline, so I was sure that the issue is not with the H262. I was fooling around with the pipelines and it turend out if I decode and encode the stream again the video showed up again in the browser.</div><div class=""><br class=""></div><div class=""><div style="color: rgb(54, 54, 54); background-color: rgb(255, 255, 255); font-family: Menlo, Monaco, "Courier New", monospace; font-weight: 800; font-size: 10px; line-height: 15px; white-space: pre;" class=""><div class=""><span style="color: rgb(162, 86, 55);" class="">udpsrc multicast-group=<DCL_WEBRTC_UDP_SOURCE_IP> auto-multicast=true port=<DCL_WEBRTC_UDP_SOURCE_PORT></span></div><div class=""><span style="color: rgb(162, 86, 55);" class="">        ! application/x-rtp,media=video,encoding-name=H264,payload=96,clock-rate=90000,packetization-mode=1,profile-level-id=424015,sprop-parameter-sets="Z0JAKJWgHgCJ+VA=,aM48gA==",src=1728323247,timestamp-offset=2499875162,seqnum-offset=11758,a-framerate=20</span></div><div class=""><span style="color: rgb(162, 86, 55);" class="">        ! rtpjitterbuffer ! rtph264depay ! h264parse</span></div><div class=""><span style="color: rgb(162, 86, 55);" class="">        ! omxh264dec ! videoconvert</span></div><div class=""><span style="color: rgb(162, 86, 55);" class="">        ! omxh264enc bitrate=6000000 control-rate=1 insert-sps-pps=true ! rtph264pay mtu=1400 </span></div><div class=""><span style="color: rgb(162, 86, 55);" class="">        ! webrtcbin name=webrtc_sink stun-server='<a href="stun://localhost:3478" class="">stun://localhost:3478</a>' latency=0</span></div></div></div><div class=""><br class=""></div><div class="">My best suspect is that there are a few differences in the SDPs (I highlighted the differences), but this maybe a wrong track:</div><div class=""><br class=""></div><div class="">"good" case:</div><div class=""><div class=""><font size="1" class="">v=0</font></div><div class=""><font size="1" class="">o=- 4683413980427089901 0 IN IP4 0.0.0.0</font></div><div class=""><font size="1" class="">s=-</font></div><div class=""><font size="1" class="">t=0 0</font></div><div class=""><font size="1" class="">a=ice-options:trickle</font></div><div class=""><font size="1" class="">a=msid-semantic:WMS webrtc_sink</font></div><div class=""><font size="1" class="">m=video 9 UDP/TLS/RTP/SAVPF 96</font></div><div class=""><font size="1" class="">c=IN IP4 0.0.0.0</font></div><div class=""><font size="1" class="">a=setup:actpass</font></div><div class=""><font size="1" class="">a=ice-ufrag:ldIonoD8h44Onzh25CF+WghE9PF4aydg</font></div><div class=""><font size="1" class="">a=ice-pwd:VvGX0RUQLHM/UexT6iDYWnus2dvDpId3</font></div><div class=""><font size="1" class="">a=sendrecv</font></div><div class=""><font size="1" class="">a=rtcp-mux</font></div><div class=""><font size="1" class="">a=rtcp-rsize</font></div><div class=""><font size="1" class="">a=rtpmap:96 H264/90000</font></div><div class=""><font size="1" class="">a=rtcp-fb:96 nack pli</font></div><div class=""><font size="1" class="">a=fmtp:96 <span style="background-color: rgb(255, 31, 0);" class="">packetization-mode=1;profile-level-id=424015</span>;sprop-parameter-sets=Z0JAKJWgHgCJ+VA=,aM48gA==</font></div><div class=""><font size="1" style="background-color: rgb(255, 31, 0);" class="">a=ssrc:1591034174 msid:user3742382827@host-d73d2844 webrtctransceiver0</font></div><div class=""><font size="1" style="background-color: rgb(255, 31, 0);" class="">a=ssrc:1591034174 cname:user3742382827@host-d73d2844</font></div><div class=""><font size="1" class="">a=mid:video0</font></div><div class=""><font size="1" class="">a=fingerprint:sha-256 3A:EC:E2:B8:A4:D2:72:A3:D5:47:45:D8:C5:E4:0F:87:69:3D:33:2A:A9:38:1B:96:E1:D9:FC:81:D0:AF:2E:10</font></div></div><div class=""><br class=""></div><div class="">"wrong" case:</div><div class=""><div class=""><font size="1" class="">v=0</font></div><div class=""><font size="1" class="">o=- 2325516305835473545 0 IN IP4 0.0.0.0</font></div><div class=""><font size="1" class="">s=-</font></div><div class=""><font size="1" class="">t=0 0</font></div><div class=""><font size="1" class="">a=ice-options:trickle</font></div><div class=""><font size="1" class="">a=msid-semantic:WMS webrtc_sink</font></div><div class=""><font size="1" class="">m=video 9 UDP/TLS/RTP/SAVPF 96</font></div><div class=""><font size="1" class="">c=IN IP4 0.0.0.0</font></div><div class=""><font size="1" class="">a=setup:actpass</font></div><div class=""><font size="1" class="">a=ice-ufrag:L48buQzgWBf0WEM2iGR9lPVnYI85MW0D</font></div><div class=""><font size="1" class="">a=ice-pwd:3VeswKVaJ29Xhu/4fJo4MlDnl3scYKpP</font></div><div class=""><font size="1" class="">a=sendrecv</font></div><div class=""><font size="1" class="">a=rtcp-mux</font></div><div class=""><font size="1" class="">a=rtcp-rsize</font></div><div class=""><font size="1" class="">a=rtpmap:96 H264/90000</font></div><div class=""><font size="1" class="">a=rtcp-fb:96 nack pli</font></div><div class=""><font size="1" class="">a=fmtp:96 sprop-parameter-sets=Z0JAKJWgHgCJ+VA=,aM48gA==</font></div><div class=""><font size="1" class="">a=mid:video0</font></div><div class=""><font size="1" class="">a=fingerprint:sha-256 A1:06:98:BB:19:95:67:40:0E:A0:38:EA:7C:D0:A5:9D:8C:7C:D6:5B:73:A1:CE:08:6B:1F:4B:26:1B:22:6B:55</font></div></div><div class=""><br class=""></div><div class=""><br class=""></div><div class="">Do you have any idea what I am doing wrong here? What is Im missing here? </div><div class=""><br class=""></div><div class=""><br class=""></div><div class="">Thanks!</div><div class=""><br class=""></div><div class="">Bests,</div><div class="">Peter</div><div class=""><br class=""></div><div class=""><br class=""></div></body></html>