Best way to use typefind in a custom player

gimmeamilk gimmeamilkbttf at
Tue Dec 11 08:10:04 PST 2012


I'm making a simple player that can detect and play a few container and
codec types. Decodebin etc is a little heavyweight for my needs for the time
being, so I want to make my own autoplugger using typefind. I have a small
look-up table of caps strings and suitable elements for both the containers
and the codecs, eg

containers[] = {
{ "video/quicktime", {"qtdemux",NULL} },

codecs[] = {
{ "video/h264", {"queue","h264parse","mysinkplugin",NULL },


What's the best method to construct the final pipeline? I've been following
the typefind example, and can detect the container using a
source!typefind!fakesink pipeline and my look-up table, but how do I then
"remove" the typefind/sink from the pipeline and insert the demuxer without
losing any stream data? (I assume if I unlink and remove the typefind
element, any stream data it had pulled during the typefinding will be lost?)

View this message in context:
Sent from the GStreamer-devel mailing list archive at

More information about the gstreamer-devel mailing list