[gstreamer-bugs] [Bug 362649] mms:// stream stops playing in the middle of it.

GStreamer (bugzilla.gnome.org) bugzilla-daemon at bugzilla.gnome.org
Sun May 17 07:32:26 PDT 2009


If you have any questions why you received this email, please see the text at
the end of this email. Replies to this email are NOT read, please see the text
at the end of this email. You can add comments to this bug at:
  http://bugzilla.gnome.org/show_bug.cgi?id=362649

  GStreamer | gst-plugins-bad | Ver: git




------- Comment #8 from Arto Huotari  2009-05-17 14:32 UTC -------
Some background in case it is useful. 

Yle (Finnish national broadcasting company) offers a link to the stream in
their site. The link is in format

http://www.yle.fi/java/areena/dispatcher/2318138.asx?bitrate=1000000

When I open this link directly to Totem I can copy the stream location from the
playlist using copy location. In case of above link this gives

mmsh://mediak.yle.fi/media/areena/2/31/81/2318139_1412225.wmv?MSWMExt=.asf

Now this is how I obtained the mmsh stream I opened with the above command. 

One problem was that sometimes the links are so cryptic that I could not open
them from the prompt. One example

mms://a1878.v21878f.c21878.e.vm.akamaistream.net/7/1878/21878/v1/yle.download.akamai.com/21878/fi/_!/areena/2/16/93/2169393_1287823.wmv?auth=da_a5aGatcGd.d.bpc6cXa2czbkc.cmcdc8-bkebA1-E-ukF-s8la&aifp=v01&WMBitRate=&WMCache=0 

Any way I was able to freeze a stream using the command 

gst-launch-0.10 -v playbin2 uri=mmsh://..

Here is the output of which I am afraid that is not very helpful. The output of
the stream hangs ie the picture freezes.  

Output to terminal

hp550 at hp550-laptop:~$ gst-launch-0.10 -v playbin2
uri=mmsh://mediak.yle.fi/kotimaa/areena/1/91/97/1919793_1125183.wmv?MSWMExt=.asf
> mmshout2.txt
Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
Prerolled, waiting for buffering to finish...
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
Buffering, setting pipeline to PAUSED ...
Prerolled, waiting for buffering to finish...
Done buffering, setting pipeline to PLAYING ...
Buffering, setting pipeline to PAUSED ...
Prerolled, waiting for buffering to finish...

Output to file 

/GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0: source = (GstMMS) source
/GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0/GstMMS:source.GstPad:src:
caps = video/x-ms-asf
/GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0/GstTypeFindElement:typefindelement0.GstPad:src:
caps = video/x-ms-asf
/GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0/GstDecodeBin2:decodebin20/GstTypeFindElement:typefind:
force-caps = video/x-ms-asf
/GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0/GstDecodeBin2:decodebin20:
sink-caps = video/x-ms-asf
/GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0/GstDecodeBin2:decodebin20/GstTypeFindElement:typefind.GstPad:src:
caps = video/x-ms-asf
/GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0/GstTypeFindElement:typefindelement0.GstPad:sink:
caps = video/x-ms-asf
/GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0/GstQueue2:queue20.GstPad:sink:
caps = video/x-ms-asf
/GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0/GstQueue2:queue20.GstPad:src:
caps = video/x-ms-asf
/GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0/GstDecodeBin2:decodebin20/GstTypeFindElement:typefind.GstPad:sink:
caps = video/x-ms-asf
/GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0/GstDecodeBin2:decodebin20.GstGhostPad:sink:
caps = video/x-ms-asf
/GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0/GstDecodeBin2:decodebin20.GstGhostPad:sink:
caps = video/x-ms-asf
/GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0/GstDecodeBin2:decodebin20.GstGhostPad:sink.GstProxyPad:proxypad0:
caps = video/x-ms-asf
/GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0/GstDecodeBin2:decodebin20/GstASFDemux:asfdemux0.GstPad:sink:
caps = video/x-ms-asf
/GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0/GstDecodeBin2:decodebin20/GstMultiQueue:multiqueue0:
max-size-buffers = 5
/GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0/GstDecodeBin2:decodebin20/GstMultiQueue:multiqueue0:
max-size-time = 2000000000
/GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0/GstDecodeBin2:decodebin20/GstMultiQueue:multiqueue0:
max-size-bytes = 2097152
/GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0/GstDecodeBin2:decodebin20/GstMultiQueue:multiqueue0.GstPad:sink1:
caps = audio/x-wma, wmaversion=(int)2, bitrate=(int)48024, depth=(int)16,
rate=(int)44100, channels=(int)2, block_align=(int)2230,
codec_data=(buffer)008800001f00d9220000
/GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0/GstDecodeBin2:decodebin20/GstASFDemux:asfdemux0.GstPad:video_00:
caps = video/x-wmv, wmvversion=(int)3, width=(int)512, height=(int)384,
codec_data=(buffer)4ca11a01, format=(fourcc)WMV3, framerate=(fraction)25/3
/GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0/GstDecodeBin2:decodebin20/GstMultiQueue:multiqueue0.GstPad:sink0:
caps = video/x-wmv, wmvversion=(int)3, width=(int)512, height=(int)384,
codec_data=(buffer)4ca11a01, format=(fourcc)WMV3, framerate=(fraction)25/3
/GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0/GstDecodeBin2:decodebin20/GstMultiQueue:multiqueue0.GstPad:src0:
caps = video/x-wmv, wmvversion=(int)3, width=(int)512, height=(int)384,
codec_data=(buffer)4ca11a01, format=(fourcc)WMV3, framerate=(fraction)25/3
DMO dll supports VO Optimizations 0 1
DMO dll might use previous sample when requested
/GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0/GstDecodeBin2:decodebin20/dmodec_wmvdmodv3:dmodec_wmvdmodv30.GstPad:src:
caps = video/x-raw-yuv, format=(fourcc)YUY2, width=(int)512, height=(int)384,
framerate=(fraction)25/3
/GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0/GstDecodeBin2:decodebin20/dmodec_wmvdmodv3:dmodec_wmvdmodv30.GstPad:sink:
caps = video/x-wmv, wmvversion=(int)3, width=(int)512, height=(int)384,
codec_data=(buffer)4ca11a01, format=(fourcc)WMV3, framerate=(fraction)25/3
/GstPlayBin2:playbin20/GstInputSelector:inputselector0.GstSelectorPad:sink0:
caps = video/x-raw-yuv, format=(fourcc)YUY2, width=(int)512, height=(int)384,
framerate=(fraction)25/3
/GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0.GstGhostPad:src0: caps =
video/x-raw-yuv, format=(fourcc)YUY2, width=(int)512, height=(int)384,
framerate=(fraction)25/3
/GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0.GstGhostPad:src0.GstProxyPad:proxypad2:
caps = video/x-raw-yuv, format=(fourcc)YUY2, width=(int)512, height=(int)384,
framerate=(fraction)25/3
/GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0/GstDecodeBin2:decodebin20.GstGhostPad:src0:
caps = video/x-raw-yuv, format=(fourcc)YUY2, width=(int)512, height=(int)384,
framerate=(fraction)25/3
/GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0/GstDecodeBin2:decodebin20.GstGhostPad:src0.GstProxyPad:proxypad1:
caps = video/x-raw-yuv, format=(fourcc)YUY2, width=(int)512, height=(int)384,
framerate=(fraction)25/3
/GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0/GstDecodeBin2:decodebin20/GstMultiQueue:multiqueue0.GstPad:src1:
caps = audio/x-wma, wmaversion=(int)2, bitrate=(int)48024, depth=(int)16,
rate=(int)44100, channels=(int)2, block_align=(int)2230,
codec_data=(buffer)008800001f00d9220000
/GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0/GstDecodeBin2:decodebin20/dmodec_wmadmodv2:dmodec_wmadmodv20.GstPad:src:
caps = audio/x-raw-int, width=(int)16, depth=(int)16, signed=(boolean)true,
endianness=(int)1234, rate=(int)44100, channels=(int)2
/GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0/GstDecodeBin2:decodebin20/dmodec_wmadmodv2:dmodec_wmadmodv20.GstPad:sink:
caps = audio/x-wma, wmaversion=(int)2, bitrate=(int)48024, depth=(int)16,
rate=(int)44100, channels=(int)2, block_align=(int)2230,
codec_data=(buffer)008800001f00d9220000
/GstPlayBin2:playbin20/GstInputSelector:inputselector1.GstSelectorPad:sink0:
caps = audio/x-raw-int, width=(int)16, depth=(int)16, signed=(boolean)true,
endianness=(int)1234, rate=(int)44100, channels=(int)2
/GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0.GstGhostPad:src1: caps =
audio/x-raw-int, width=(int)16, depth=(int)16, signed=(boolean)true,
endianness=(int)1234, rate=(int)44100, channels=(int)2
/GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0.GstGhostPad:src1.GstProxyPad:proxypad4:
caps = audio/x-raw-int, width=(int)16, depth=(int)16, signed=(boolean)true,
endianness=(int)1234, rate=(int)44100, channels=(int)2
/GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0/GstDecodeBin2:decodebin20.GstGhostPad:src1:
caps = audio/x-raw-int, width=(int)16, depth=(int)16, signed=(boolean)true,
endianness=(int)1234, rate=(int)44100, channels=(int)2
/GstPlayBin2:playbin20/GstURIDecodeBin:uridecodebin0/GstDecodeBin2:decodebin20.GstGhostPad:src1.GstProxyPad:proxypad3:
caps = audio/x-raw-int, width=(int)16, depth=(int)16, signed=(boolean)true,
endianness=(int)1234, rate=(int)44100, channels=(int)2
/GstPlayBin2:playbin20/GstInputSelector:inputselector1.GstPad:src: caps =
audio/x-raw-int, width=(int)16, depth=(int)16, signed=(boolean)true,
endianness=(int)1234, rate=(int)44100, channels=(int)2
/GstPlayBin2:playbin20/GstPlaySink:playsink0/GstTee:audiotee.GstPad:src1: caps
= audio/x-raw-int, width=(int)16, depth=(int)16, signed=(boolean)true,
endianness=(int)1234, rate=(int)44100, channels=(int)2
/GstPlayBin2:playbin20/GstPlaySink:playsink0/GstTee:audiotee.GstPad:sink: caps
= audio/x-raw-int, width=(int)16, depth=(int)16, signed=(boolean)true,
endianness=(int)1234, rate=(int)44100, channels=(int)2
/GstPlayBin2:playbin20/GstPlaySink:playsink0/GstTee:audiotee.GstPad:src0: caps
= audio/x-raw-int, width=(int)16, depth=(int)16, signed=(boolean)true,
endianness=(int)1234, rate=(int)44100, channels=(int)2
/GstPlayBin2:playbin20/GstPlaySink:playsink0/GstTee:audiotee.GstPad:src1: caps
= audio/x-raw-int, width=(int)16, depth=(int)16, signed=(boolean)true,
endianness=(int)1234, rate=(int)44100, channels=(int)2
/GstPlayBin2:playbin20/GstPlaySink:playsink0/GstTee:audiotee.GstPad:sink: caps
= audio/x-raw-int, width=(int)16, depth=(int)16, signed=(boolean)true,
endianness=(int)1234, rate=(int)44100, channels=(int)2
/GstPlayBin2:playbin20/GstPlaySink:playsink0.GstGhostPad:audio_sink: caps =
audio/x-raw-int, width=(int)16, depth=(int)16, signed=(boolean)true,
endianness=(int)1234, rate=(int)44100, channels=(int)2
/GstPlayBin2:playbin20/GstPlaySink:playsink0.GstGhostPad:audio_sink: caps =
audio/x-raw-int, width=(int)16, depth=(int)16, signed=(boolean)true,
endianness=(int)1234, rate=(int)44100, channels=(int)2
/GstPlayBin2:playbin20/GstPlaySink:playsink0.GstGhostPad:audio_sink.GstProxyPad:proxypad5:
caps = audio/x-raw-int, width=(int)16, depth=(int)16, signed=(boolean)true,
endianness=(int)1234, rate=(int)44100, channels=(int)2
/GstPlayBin2:playbin20/GstInputSelector:inputselector0.GstPad:src: caps =
video/x-raw-yuv, format=(fourcc)YUY2, width=(int)512, height=(int)384,
framerate=(fraction)25/3
/GstPlayBin2:playbin20/GstPlaySink:playsink0/GstBin:vbin/GstQueue:vqueue.GstPad:sink:
caps = video/x-raw-yuv, format=(fourcc)YUY2, width=(int)512, height=(int)384,
framerate=(fraction)25/3
/GstPlayBin2:playbin20/GstPlaySink:playsink0/GstBin:vbin.GstGhostPad:sink: caps
= video/x-raw-yuv, format=(fourcc)YUY2, width=(int)512, height=(int)384,
framerate=(fraction)25/3
/GstPlayBin2:playbin20/GstPlaySink:playsink0.GstGhostPad:video_sink: caps =
video/x-raw-yuv, format=(fourcc)YUY2, width=(int)512, height=(int)384,
framerate=(fraction)25/3
/GstPlayBin2:playbin20/GstPlaySink:playsink0.GstGhostPad:video_sink: caps =
video/x-raw-yuv, format=(fourcc)YUY2, width=(int)512, height=(int)384,
framerate=(fraction)25/3
/GstPlayBin2:playbin20/GstPlaySink:playsink0.GstGhostPad:video_sink.GstProxyPad:proxypad6:
caps = video/x-raw-yuv, format=(fourcc)YUY2, width=(int)512, height=(int)384,
framerate=(fraction)25/3
/GstPlayBin2:playbin20/GstPlaySink:playsink0/GstBin:vbin.GstGhostPad:sink: caps
= video/x-raw-yuv, format=(fourcc)YUY2, width=(int)512, height=(int)384,
framerate=(fraction)25/3
/GstPlayBin2:playbin20/GstPlaySink:playsink0/GstBin:vbin.GstGhostPad:sink.GstProxyPad:proxypad8:
caps = video/x-raw-yuv, format=(fourcc)YUY2, width=(int)512, height=(int)384,
framerate=(fraction)25/3
/GstPlayBin2:playbin20/GstPlaySink:playsink0/GstBin:abin/GstAudioConvert:aconv.GstPad:src:
caps = audio/x-raw-int, width=(int)16, depth=(int)16, signed=(boolean)true,
endianness=(int)1234, rate=(int)44100, channels=(int)2
/GstPlayBin2:playbin20/GstPlaySink:playsink0/GstBin:abin/GstAudioConvert:aconv.GstPad:sink:
caps = audio/x-raw-int, width=(int)16, depth=(int)16, signed=(boolean)true,
endianness=(int)1234, rate=(int)44100, channels=(int)2
/GstPlayBin2:playbin20/GstPlaySink:playsink0/GstBin:abin.GstGhostPad:sink: caps
= audio/x-raw-int, width=(int)16, depth=(int)16, signed=(boolean)true,
endianness=(int)1234, rate=(int)44100, channels=(int)2
/GstPlayBin2:playbin20/GstPlaySink:playsink0/GstBin:abin.GstGhostPad:sink: caps
= audio/x-raw-int, width=(int)16, depth=(int)16, signed=(boolean)true,
endianness=(int)1234, rate=(int)44100, channels=(int)2
/GstPlayBin2:playbin20/GstPlaySink:playsink0/GstBin:abin.GstGhostPad:sink.GstProxyPad:proxypad10:
caps = audio/x-raw-int, width=(int)16, depth=(int)16, signed=(boolean)true,
endianness=(int)1234, rate=(int)44100, channels=(int)2
/GstPlayBin2:playbin20/GstPlaySink:playsink0/GstBin:abin/GstAudioresample:aresample.GstPad:src:
caps = audio/x-raw-int, width=(int)16, depth=(int)16, signed=(boolean)true,
endianness=(int)1234, rate=(int)44100, channels=(int)2
/GstPlayBin2:playbin20/GstPlaySink:playsink0/GstBin:abin/GstAudioresample:aresample.GstPad:sink:
caps = audio/x-raw-int, width=(int)16, depth=(int)16, signed=(boolean)true,
endianness=(int)1234, rate=(int)44100, channels=(int)2
/GstPlayBin2:playbin20/GstPlaySink:playsink0/GstBin:abin/GstVolume:volume.GstPad:src:
caps = audio/x-raw-int, width=(int)16, depth=(int)16, signed=(boolean)true,
endianness=(int)1234, rate=(int)44100, channels=(int)2
/GstPlayBin2:playbin20/GstPlaySink:playsink0/GstBin:abin/GstVolume:volume.GstPad:sink:
caps = audio/x-raw-int, width=(int)16, depth=(int)16, signed=(boolean)true,
endianness=(int)1234, rate=(int)44100, channels=(int)2
/GstPlayBin2:playbin20/GstPlaySink:playsink0/GstBin:vbin/GstQueue:vqueue.GstPad:src:
caps = video/x-raw-yuv, format=(fourcc)YUY2, width=(int)512, height=(int)384,
framerate=(fraction)25/3
/GstPlayBin2:playbin20/GstPlaySink:playsink0/GstBin:vbin/GstFFMpegCsp:vconv.GstPad:src:
caps = video/x-raw-yuv, format=(fourcc)YUY2, width=(int)512, height=(int)384,
framerate=(fraction)25/3
/GstPlayBin2:playbin20/GstPlaySink:playsink0/GstBin:vbin/GstFFMpegCsp:vconv.GstPad:sink:
caps = video/x-raw-yuv, format=(fourcc)YUY2, width=(int)512, height=(int)384,
framerate=(fraction)25/3
/GstPlayBin2:playbin20/GstPlaySink:playsink0/GstBin:vbin/GstVideoScale:vscale.GstPad:src:
caps = video/x-raw-yuv, format=(fourcc)YUY2, width=(int)512, height=(int)384,
framerate=(fraction)25/3
/GstPlayBin2:playbin20/GstPlaySink:playsink0/GstBin:vbin/GstVideoScale:vscale.GstPad:sink:
caps = video/x-raw-yuv, format=(fourcc)YUY2, width=(int)512, height=(int)384,
framerate=(fraction)25/3
/GstPlayBin2:playbin20/GstPlaySink:playsink0/GstBin:abin/GstAutoAudioSink:audiosink/GstPulseSink:audiosink-actual-sink-pulse.GstPad:sink:
caps = audio/x-raw-int, width=(int)16, depth=(int)16, signed=(boolean)true,
endianness=(int)1234, rate=(int)44100, channels=(int)2
/GstPlayBin2:playbin20/GstPlaySink:playsink0/GstBin:abin/GstAutoAudioSink:audiosink.GstGhostPad:sink:
caps = audio/x-raw-int, width=(int)16, depth=(int)16, signed=(boolean)true,
endianness=(int)1234, rate=(int)44100, channels=(int)2
/GstPlayBin2:playbin20/GstPlaySink:playsink0/GstBin:abin/GstAutoAudioSink:audiosink.GstGhostPad:sink:
caps = audio/x-raw-int, width=(int)16, depth=(int)16, signed=(boolean)true,
endianness=(int)1234, rate=(int)44100, channels=(int)2
/GstPlayBin2:playbin20/GstPlaySink:playsink0/GstBin:abin/GstAutoAudioSink:audiosink.GstGhostPad:sink.GstProxyPad:proxypad9:
caps = audio/x-raw-int, width=(int)16, depth=(int)16, signed=(boolean)true,
endianness=(int)1234, rate=(int)44100, channels=(int)2
/GstPlayBin2:playbin20/GstPlaySink:playsink0/GstBin:vbin/GstAutoVideoSink:videosink/GstXvImageSink:videosink-actual-sink-xvimage.GstPad:sink:
caps = video/x-raw-yuv, format=(fourcc)YUY2, width=(int)512, height=(int)384,
framerate=(fraction)25/3
/GstPlayBin2:playbin20/GstPlaySink:playsink0/GstBin:vbin/GstAutoVideoSink:videosink.GstGhostPad:sink:
caps = video/x-raw-yuv, format=(fourcc)YUY2, width=(int)512, height=(int)384,
framerate=(fraction)25/3
/GstPlayBin2:playbin20/GstPlaySink:playsink0/GstBin:vbin/GstAutoVideoSink:videosink.GstGhostPad:sink:
caps = video/x-raw-yuv, format=(fourcc)YUY2, width=(int)512, height=(int)384,
framerate=(fraction)25/3
/GstPlayBin2:playbin20/GstPlaySink:playsink0/GstBin:vbin/GstAutoVideoSink:videosink.GstGhostPad:sink.GstProxyPad:proxypad7:
caps = video/x-raw-yuv, format=(fourcc)YUY2, width=(int)512, height=(int)384,
framerate=(fraction)25/3
New clock: GstAudioSinkClock


-- 
See http://bugzilla.gnome.org/page.cgi?id=email.html for more info about why you received
this email, why you can't respond via email, how to stop receiving
emails (or reduce the number you receive), and how to contact someone
if you are having problems with the system.

You can add comments to this bug at http://bugzilla.gnome.org/show_bug.cgi?id=362649.




More information about the Gstreamer-bugs mailing list