[gst-devel] gstmpegdemux no_more_pads

Mohit Garg mohit.hotpop at gmail.com
Fri Feb 29 06:20:47 CET 2008

Thanks Tim.

Putting queues still does not help. I am attaching the log with the queues
in place.

I do not see the pipeline reaching PLAYING state. The pipeline *hangs* and I
need to kill it using Ctrl-C. As soon as I kill it, I see "ERROR: pipeline
doesn't want to preroll". See line number 44930 of the attached logs.

My suspicion is that mpgdemux does not send no-more-pads and hence decodebin
does not change state to PLAYING which means filesink does not preroll.

Has anyone used mpgdemux with decodebin and filesink?

thanks and regards

On Thu, Feb 28, 2008 at 6:03 PM, Tim Müller <t.i.m at zen.co.uk> wrote:

> On Thu, 2008-02-28 at 17:44 +0530, Mohit Garg wrote:
> > I am using gstreamer to work with MPEG-1 streams. However, I am unable
> > to get it working. The pipeline hangs and does not go to a PLAYING
> > state. I suspect the issues to be mpegdemux not sending no_more_pads()
> > and hence decodebin not being able to change stage to PLAYING which
> > causes filesink to be stuck in PAUSED and hence, not coming out of
> > preroll-ing.
> >
> > e.g. try this pipeline:
> > gst-launch -v gnomevfssrc
> > location="http://samples.mplayerhq.hu/MPEG1/mpeg_demuxer_crash.mpg" !
> > decodebin name=d ! filesink location=aud d. ! filesink location=vid
> You need queues here, ie.
>  decodebin name=d  \
>    d. ! queue ! filesink location=audio.dump  \
>    d. ! queue ! filesink location=video.dump
> (you can't really assume that the first one will be an audio stream and
> the second a video stream though; you can use mpegdemux/dvddemux and
> specify that pad names directly, however, but then you also need to know
> which streams exist to get the right pad names; alternatively, if you
> know the format of the audio, you can add filter caps before the queue
> and make it pick the right pad that way).
> Cheers
>  -Tim
> > Questions:
> >         Is this a known bug? If yes, is there a known/recommended
> workaround?
> >         mpegdemux has a RANK of secondary and I was expecting that it
> would work straightaway while ffdemux_mpeg has a rank of NONE and hence
> decodebin does not pick it up. How is the RANK of elements decided?
> > (I am using gst-plugins-ugly-0.10.6)

"We know we have a duty to hope" -- Sunita Narain, Environmentalist

Mohit Garg

Personal Homepage: http://www.mohrahit.in
Social Work: http://www.noragging.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20080229/d79414c9/attachment.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: mpgdemuxDebug.log.gz
Type: application/x-gzip
Size: 583690 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20080229/d79414c9/attachment.bin>

More information about the gstreamer-devel mailing list