[gst-devel] problems in streaming H.264 content using gstreamer

Wim Taymans wim.taymans at gmail.com
Fri Aug 29 10:57:37 CEST 2008


On Thu, 2008-08-28 at 11:38 -0700, Agarwal, Lomesh wrote:
> I am trying to stream/render H.264 content using gstreamer on two Ubuntu machines. Here is what I run on the server (streaming) side -
> gst-launch -v gstrtpbin name=rtpbin filesrc location=h264.ts ! \
>                  queue2 max-size-buffers=65535 ! \
>                  rtpmp2tpay ! \
>                  queue2 max-size-buffers=65535 ! \
>                  rtpbin.send_rtp_sink_0 \
>                  { rtpbin.send_rtp_src_0 ! udpsink host=192.168.1.2 port=5000 } \
>                  { rtpbin.send_rtcp_src_0 ! udpsink host=192.168.1.2 port=5001 sync=false async=false } \
>                  { udpsrc port=5005 ! rtpbin.recv_rtcp_sink_0 }
> On the receiver side I run following command to render it -
> gst-launch -v gstrtpbin name=rtpbin udpsrc port=5000 caps="application/x-rtp,media=video,clock-rate=90000,encoding-name=mpegts" ! \
>                  rtpbin.recv_rtp_sink_0 rtpbin. ! \
>                  identity sync=true silent=true ! \
>                  rtpmp2tdepay ! \
>                  flutsdemux name=demuxer \
>                      demuxer. ! queue max-size-buffers=0 max-size-time=0 ! flumcaacdec ! audioconvert ! volume volume=10 ! autoaudiosink \
>                  demuxer. ! queue max-size-buffers=0 max-size-time=0 ! fluh264dec! autovideosink \
>                  udpsrc port=5001 ! \
>                  rtpbin.recv_rtcp_sink_0 \
>                  rtpbin.send_rtcp_src_0 ! \
>                  udpsink port=5005 sync=false async=false -t
> h264.ts is a MPEG TS file with aac audio format and H.264 video format. I am using commercial versions of Fluendo plugins.
> On the receiver side I see jerky video and after some time video stops. I am using a quad core machine on the receiver side.
> If I repeat the same experiment using tcpserversink (in place of rtp bin) plugin on the streamer side and tcpclientsrc on the receiver side, everything works ok.
> Am I missing setting some rtp bin property or is it a problem with rtp bin? Can someone suggest some experiment which can narrow down the problem?
> 

2 problems, timestamps are not correctly set on the sender side (use
mpegtsparse in front of the payloader?). The second problem is that the
demuxer might not correctly preserve timing information on the receiver.
Also: http://bugzilla.gnome.org/show_bug.cgi?id=548979 

Wim


> Thanks,
> Lomesh
> 
> -------------------------------------------------------------------------
> This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
> Build the coolest Linux based applications with Moblin SDK & win great prizes
> Grand prize is a trip for two to an Open Source event anywhere in the world
> http://moblin-contest.org/redirect.php?banner_id=100&url=/
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/gstreamer-devel





More information about the gstreamer-devel mailing list