n00b wants to play movie to quicktime over net

Tim-Philipp Müller t.i.m at zen.co.uk
Sun Sep 22 12:22:16 PDT 2013


On Sun, 2013-09-22 at 07:32 -1000, Randy Bush wrote:

Hi,

> getting pretty desperate here.  to remind
>   gstreamer running on a racked ubuntu 12.04 server
>   sshed in -X so x can tunnel back to me (140-150ms rtt away)
>   quicktime on a macbook pro
> 
> excuse tracisms.  does this list have a convention for encapsulating
> code?
> 
> {{{
>     $ gst-launch videotestsrc ! ximagesink
> }}}
> 
> displays the test pattern back to me over ssh -X, aside from 150ms rtt
> making x slow enough to make gstreamer whine

Look, the bandwidth you need to transmit RGB data in real-time(ish) is
enormous. It's completely expected that it will complain.

You can disable syncing against the clock using ximagesink sync=false


> {{{
>     $ gst-launch-0.10 playbin uri=file:///home/randy/test.mov
>     Setting pipeline to PAUSED ...
>     Pipeline is PREROLLING ...
>     Cannot connect to server socket err = No such file or directory
>     Cannot connect to server socket
>     jack server is not running or cannot be started
>     AL lib: pulseaudio.c:612: Context did not connect: Access denied
>     AL lib: alsa.c:512: Could not open playback device 'default': No such file or directory
>     AL lib: oss.c:169: Could not open /dev/dsp: No such file or directory
>     WARNING: from element /GstPlayBin:playbin0/GstBin:vbin/GstAutoVideoSink:videosink/GstXImageSink:videosink-actual-sink-ximage: A lot of buffers are being dropped.
>     Additional debug info:
>     gstbasesink.c(2875): gst_base_sink_is_too_late (): /GstPlayBin:playbin0/GstBin:vbin/GstAutoVideoSink:videosink/GstXImageSink:videosink-actual-sink-ximage:
>     There may be a timestamping problem, or this computer is too slow.
> }}}
> 
> displays the movie back to me over ssh -X.  though there is whining
> about net rtt again

Again, completely expected. This is a display problem though. 


> tried
> 
> {{{
>     $ gst-launch-0.10 filesrc location=test.mov ! dvddemux ! ffdec_h264 ! ximagesink
>     Setting pipeline to PAUSED ...
>     Pipeline is PREROLLING ...
>     ** (gst-launch-0.10:24188): WARNING **: packetize: ******** unknown id 0x7D
>     ** (gst-launch-0.10:24188): WARNING **: packetize: ******** unknown id 0x9D
>     ...
>     ** (gst-launch-0.10:24188): WARNING **: packetize: ******** unknown id 0x6A
>     ERROR: from element /GstPipeline:pipeline0/GstDVDDemux:dvddemux0: Could not demultiplex stream.
>     Additional debug info:
>     gstmpegdemux.c(1116): gst_mpeg_demux_send_subbuffer (): /GstPipeline:pipeline0/GstDVDDemux:dvddemux0:
>     Either broken file or not an MPEG stream
>     ERROR: pipeline doesn't want to preroll.
>     Setting pipeline to NULL ...
>     Freeing pipeline ...
> }}}

Yeah, that's just random stuff you're doing now. A .mov file needs
qtdemux usually, dvddemux is for DVDs/MPEG-PS.

> tried
> 
> {{{
>     $ gst-launch-0.10 filesrc location=test.mov ! dvddemux ! rtph264pay ! ximagesink
>     WARNING: erroneous pipeline: could not link rtph264pay0 to ximagesink0
> }}}

See above.


> {{{
>     $ gst-launch-0.10 gstrtpbin name=rtpbin filesrc location=/home/randy/test.mov ! qtdemux ! rtph264pay ! rtpbin.send_rtp_sink_0 rtpbin.send_rtp_src_0 ! udpsink host=198.180.150.10 port=8554
>     Setting pipeline to PAUSED ...
>     Pipeline is PREROLLING ...
>     Pipeline is PREROLLED ...
>     Setting pipeline to PLAYING ...
>     New clock: GstSystemClock
> }}}
> 
> but running quicktime on a mac from rtsp://rtsp.iad.rg.net:8554/ does
> not whine about no content (shows a pulsating bar) but displays nothing

well, you're streaming UDP, not RTSP.

> {{{
>     $ gst-launch-0.10 -ve gstrtpbin name=rtpbin filesrc location=/home/randy/test.mov queue h264parse rtph264pay  rtpbin.send_rtp_sink_0 rtpbin.send_rtp_src_0 queue udpsink host=198.180.150.10 port=8554 rtpbin.send_rtcp_src_0 rtpbin.recv_rtcp_sink_0
>     Setting pipeline to PAUSED ...
>     Pipeline is PREROLLING ...
>     ERROR: from element /GstPipeline:pipeline0/GstFileSrc:filesrc0: Internal data flow error.
>     Additional debug info:
>     gstbasesrc.c(2625): gst_base_src_loop (): /GstPipeline:pipeline0/GstFileSrc:filesrc0:
>     streaming task paused, reason not-linked (-1)
>     ERROR: pipeline doesn't want to preroll.
>     Setting pipeline to NULL ...
>     Freeing pipeline ...
> }}}
> 
> same result, quicktime on the mac from rtsp://rtsp.iad.rg.net:8554/ does
> not whine about no content (shows a pulsating bar) but displays nothing

See above.

If you want to stream RTSP (which sounds like a good idea), maybe try
using an rtsp server. You might find this example useful:

http://cgit.freedesktop.org/gstreamer/gst-rtsp-server/tree/examples/test-mp4.c

Cheers
 -Tim



More information about the gstreamer-devel mailing list