gstreamer threading internal

mirtexxan mirtexxan at
Tue Feb 28 10:52:09 PST 2012

Thanks a lot Tim!
So If I understand correctly, in this case we'd have a totale of three
threads: the application thread, the streaming thread (where elements live)
and the "scheduling" thread that "moves" data and call chain, loop functions
and the like?

Is there a situation when (apart from using queue) the gstreamer
infrastracture generates more than this number of threads?
*Note that I'm ignoring threads generated internally by the elements.*

It appears that i was wrong - I thought that each pad-to-pad connection in
gstreamer lived in his own thread... so it appears that gstreamer DOES NOT
SCALE AUTOMATICALLY to multicore machine with a high number of cores...

Could you please explain the threading internal in more detail? I'd be very
grateful! :)

ps a note on queue: what happens if I don't use queues after a demuxer?
There will be only one thread in every case?

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

More information about the gstreamer-devel mailing list