RTP Out of Sync

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

RTP Out of Sync

Andrew Silby

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


_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel