<div dir="ltr"><div><div>OK, you say that the stream is RTP with MP2T inside. So you need something like:<br><br></div>udpsrc <...> ! 'application/x-rtp,media=video,payload=33,clock-rate=90000,encoding-name=H264'\<br>
! rtpmp2tdepay ! mpegtsdemux ! more stuff.<br><br></div>You probably want a 'T' (tee) to branch off the different programs for their respective decoders. This isn't complete but should get you started.<br>
</div><div class="gmail_extra"><br><br><div class="gmail_quote">On Wed, May 7, 2014 at 7:43 AM, antimatter <span dir="ltr"><<a href="mailto:antimatter@quantentunnel.de" target="_blank">antimatter@quantentunnel.de</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hello,<br>
<br>
I am a beginner with GStreamer and haven't done any fancy stuff so far. My<br>
goal is to play a RTP multicast stream from our local network. The video<br>
should be decoded with Fluendo codec pack (GPU accelerated), because the<br>
target platforms have potent GPUs but only Atom CPUs. The general problem is<br>
failing sound right after start (manual pipeline) or asynchronous/distorted<br>
sound and lots of artifacts (playbin).<br>
<br>
The stream originates from a DVB-S2 network tuner, which is sending a RTP<br>
stream with a MPEG transport stream. Inside there's a H.264 720p video<br>
stream, a 2-channel audio stream as AC3 and MP2. The teletext stream is not<br>
needed. VLC can play this stream perfectly fine. I provide the stream<br>
address "rtp://<a href="http://239.5.2.1:6670" target="_blank">239.5.2.1:6670</a>".<br>
<br>
Before I start coding, I'd like to build a prototype pipeline with<br>
gst-launch-0.10. So I used playbin and provided the URI with "udp" instead<br>
of "rtp" and created a diagram from the DOT file, to see what's going on<br>
under the hood. The result is having those problems as described at the<br>
beginning. Playbin creates an udpsrc, a typefinder, a TSDemux and a<br>
multiqueue at the beginning. I recreated this part on my own and added the<br>
Fluendo decoder for video and an audio decoder:<br>
<br>
gst-launch-0.10 -v -m \<br>
udpsrc uri="udp://<a href="http://239.5.2.1:6670" target="_blank">239.5.2.1:6670</a>" ! typefind ! flutsdemux name=demux \<br>
multiqueue name=mq \<br>
demux.video_13ed ! mq.sink0 \<br>
demux.audio_13f2 ! mq.sink1 \<br>
mq.src0 ! fluvadec ! fluvasink \<br>
mq.src1 ! ac3parse ! ffdec_ac3 ! audioconvert ! autoaudiosink<br>
<br>
This will display the video with artifacts (especially at moving image<br>
parts), audio is gone after 1 sec or it is extremely scrambled.<br>
<br>
Some other forum posts indicate the use of rtpbin, but I could not quite get<br>
my head around its usage. And I've got the feeling, this is the way to go.<br>
Can I use rtpbin with all it's glory with gst-launch? How do I connect the<br>
udpsrc to rtpbin and rtpbin to my decoders? The SSRC and payload type<br>
parameters on its dynamic source pad got me lost. And there's something with<br>
caps and "application/x-rtp" as mimetype I have seen given to udprsc. Do I<br>
need this twice (audio + video)?<br>
<br>
I was hoping someone could give me the famous push in the right direction.<br>
<br>
Best regards,<br>
Andreas<br>
<br>
<br>
<br>
--<br>
View this message in context: <a href="http://gstreamer-devel.966125.n4.nabble.com/Playing-RTP-stream-has-artifacts-and-sound-problems-tp4666829.html" target="_blank">http://gstreamer-devel.966125.n4.nabble.com/Playing-RTP-stream-has-artifacts-and-sound-problems-tp4666829.html</a><br>
Sent from the GStreamer-devel mailing list archive at Nabble.com.<br>
_______________________________________________<br>
gstreamer-devel mailing list<br>
<a href="mailto:gstreamer-devel@lists.freedesktop.org">gstreamer-devel@lists.freedesktop.org</a><br>
<a href="http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel" target="_blank">http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel</a><br>
</blockquote></div><br></div>