RTP Out of Sync

Andrew Silby asilby at yahoo.com
Fri Jan 10 20:44:09 UTC 2020


Dear All,

Does anyone have an idea as to why these 2 streams aren’t in sync? I’ve deliberately made the x264enc take longer to encode stream 1 but thought that gstreamer would synchronise them together on their capture time..

They should run on any machine and you can see the clock is out of sync.

 

 

Stream/Terminal 1:

gst-launch-1.0 rtpbin name=rtpbin rtp-profile=avpf rtcp-sync-send-time=FALSE videotestsrc is-live=true ! video/x-raw,width=1280,height=720,framerate=20/1 ! queue  !  clockoverlay ! videoconvert ! x264enc speed-preset=10  ! h264parse ! video/x-h264,profile=main,width=1280,height=720,framerate=20/1  ! queue !  rtph264pay ! rtpbin.send_rtp_sink_0 rtpbin.send_rtp_src_0 ! udpsink host=127.0.0.1 port=10000 rtpbin.send_rtcp_src_0 ! udpsink host=127.0.0.1 port=10001 sync=false async=false udpsrc port=10002 ! rtpbin.recv_rtcp_sink_0

 

Stream/Terminal 2:

gst-launch-1.0 rtpbin name=rtpbin rtp-profile=avpf rtcp-sync-send-time=FALSE videotestsrc is-live=true ! video/x-raw,width=1280,height=720,framerate=20/1 ! queue  !  clockoverlay ! videoconvert ! x264enc tune=zerolatency speed-preset=1  ! h264parse ! video/x-h264,profile=main,width=1280,height=720,framerate=20/1  ! queue !  rtph264pay ! rtpbin.send_rtp_sink_0 rtpbin.send_rtp_src_0 ! udpsink host=127.0.0.1 port=10003 rtpbin.send_rtcp_src_0 ! udpsink host=127.0.0.1 port=10004 sync=false async=false udpsrc port=10005 ! rtpbin.recv_rtcp_sink_0

 

Terminal 3:

gst-launch-1.0 rtpbin  name=rtpbin2 rtp-profile=avpf compositor  name=convert  sink_0::xpos=0 sink_0::ypos=0 sink_0::zorder=0 sink_1::xpos=640 sink_1::ypos=360 sink_1::zorder=1  ! videoscale ! video/x-raw,width=1280,height=720 ! videoconvert ! queue max-size-buffers=0 max-size-bytes=0 max-size-time=0 ! autovideosink udpsrc caps="application/x-rtp,media=(string)video, clock-rate=(int)90000, encoding-name=(string)H264, payload=96" port=10000 ! rtpbin2.recv_rtp_sink_0 rtpbin2. ! rtph264depay ! queue  max-size-buffers=0 max-size-bytes=0 max-size-time=0 ! avdec_h264 ! video/x-raw,width=1280,height=720,framerate=20/1 ! videoconvert ! convert.sink_0 udpsrc port=10001 ! rtpbin2.recv_rtcp_sink_0 rtpbin2.send_rtcp_src_0 ! udpsink host=127.0.0.1 port=10002 sync=false async=false   udpsrc caps="application/x-rtp,media=(string)video, clock-rate=(int)90000, encoding-name=(string)H264, payload=96" port=10003 ! rtpbin2.recv_rtp_sink_1 rtpbin2. ! rtph264depay !  queue  max-size-buffers=0 max-size-bytes=0 max-size-time=0 ! avdec_h264 ! video/x-raw,width=1280,height=720,framerate=20/1 ! videoconvert ! convert.sink_1 udpsrc port=10004 ! rtpbin2.recv_rtcp_sink_1 rtpbin2.send_rtcp_src_1 ! udpsink host=127.0.0.1 port=10005 sync=false async=false

 

 

Thanks for your time.

Andy

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/gstreamer-devel/attachments/20200110/c1929e45/attachment-0001.htm>


More information about the gstreamer-devel mailing list