Multiple Source Pipeline Hangs

Tim-Philipp Müller t.i.m at zen.co.uk
Tue May 7 10:04:46 PDT 2013


On Tue, 2013-05-07 at 09:42 -0700, johnwesting wrote:
> If I block source 1 in GstBaseTransform()::start(), start() in source
> 2 never gets called. Matter of fact, source 2's start() won't get
> called until source1's create() method gets called, i.e. when source 1
> negotiates its caps.

The ::start() function is called from the thread that does the state
change. Usually this will be the application thread. So, yes, if you
block in start, you will block the other state changes from happening.
Doing something (longer) blocking in start is not a good idea.

Cheers
 -Tim




More information about the gstreamer-devel mailing list