<div dir="ltr"><div>Hi, gstreamer:</div>
<div> </div>
<div> Recently, I wanna play movies from a rtsp server. I installed DarwinStreamServer on my laptop and use command line:</div>
<div> </div>
<div> gst-launch playbin uri="rtsp://localhost/test.mp4"</div>
<div> </div>
<div> It works well. But if I use decodebin instead of playbin, error occurs:</div>
<div> </div>
<div> gst-launch rtspsrc location="rtsp://localhost/test.mp4"
protocols=1 name=d d. ! decodebin ! queue ! ffmpegcolorspace !
xvimagesink d. ! decodebin ! queue ! audioconvert ! alsasink<br><br> The error message is:<br>
<br>=========================<br>Setting pipeline to PAUSED ...<br>Pipeline is live and does not need PREROLL ...<br>Setting pipeline to PLAYING ...<br>New clock: GstSystemClock<br>ERROR: from element /pipeline0/d/udpsrc0: Internal data flow error.<br>
Additional debug info:<br>gstbasesrc.c(2240): gst_base_src_loop (): /pipeline0/d/udpsrc0:<br>streaming task paused, reason not-linked (-1)<br>Execution ended after 117342031 ns.<br>Setting pipeline to PAUSED ...<br>Setting pipeline to READY ...<br>
Setting pipeline to NULL ...<br>FREEING pipeline ...<br>==================================<br><br>
I noticed sometimes decodebin works but mostly it fails. What tricks
does playbin do to make it work? I skimed the source codes of playbin
and found out that it also use decodebin inside.<br>
</div>
<br> Thanks a lot. I really appreciate your suggestions.<br><br>Eric Zhang</div>