[gst-devel] pad_probe question

Edward Hervey bilboed at gmail.com
Sun Jun 10 10:36:29 CEST 2007


Hi,

  you might want to run gst-typefind-0.10 on that file to see what
kind of MIME type typefind thinks it is. decodebin will try to find a
demuxer,parser or decoder that can handle that MIME type and so forth.
  You might also want to make sure, using "GST_DEBUG=decodebin:5
gst-launch...", that decodebin is really using the elements you're
expecting it to use.

On 6/8/07, Edward Averill <edaverill at hotmail.com> wrote:
>
>  Ok, I'm terminally frustrated.
>
> I have an element that's trying to play nice with decodebin (yes, I posted a
> similar question before, but I have more details now).  The element is a
> demuxer.. typefind works, the element loads, I parse the input file and then
> generate a NEWSEGMENT event to push out.  Immediately on sending the
> NEWSEGMENT I see:
>
> decodebin gstdecodebin.c:664:pad_probe:<d> [00m Pad probe on pad
> <mydecoder0:src> but pad <mydecoder0:src> still needs data.

  That is normal.

>
> The command line is:
>
> gst-launch filesrc location=/mytestfiles/test001.vid !
> decodebin name=d d. ! myoverlaysink
>
> The pipeline proceeds to play, I don't see any error messages or warnings
> anywhere, yet the playback is garbled.

  If the playback is garbled, it means data is reaching your sink but
didn't go through the elements you expected.

>
> Not using decodebin and specifying the pipeline explicitly, thus, works
> without garbled playback:
>
> gst-launch filesrc location=/mytestfiles/test001.vid !
> mydemux name=q q. ! queue ! mydecoder ! myoverlaysink q. ! myaudiosink
>
> Does this possibly have something to do with the MIME type I'm returning
> from my demuxers typefind function?

  Yes, see the top of this mail.

>  I notice that qtdemux does NOT have a
> typefind, so past this point it's kind of useless as a template.

  If you want to see examples of typefinding, you can have a look at
gst-plugins-base/gst/typefind/gsttypefindfunctions.c or
gst-plugins-base/gst/subparse/gstsubparse.c .
  Typefind functions are not part of elements, they're provided by
plugins. The reason why there isn't one in qtdemux is because most
typefind functions are contained in gsttypefindfunctions.c

>
> All assistance appreciated before I tear out what's left of my hair.

  Gstreamer shall not be held responsible for any kind of hair loss :)

    Edward

>
> ..ed..
>
>
> -------------------------------------------------------------------------
> This SF.net email is sponsored by DB2 Express
> Download DB2 Express C - the FREE version of DB2 express and take
> control of your XML. No limits. Just data. Click to get it now.
> http://sourceforge.net/powerbar/db2/
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
>
>


-- 
Edward Hervey
Multimedia editing developer / Fluendo S.A.
http://www.pitivi.org/




More information about the gstreamer-devel mailing list