Decodebin works with queue but not with queue2

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
Report Content as Inappropriate

Decodebin works with queue but not with queue2

Baby Octopus

I'm creating following branch in my pipeline when pipeline is playing

... filesrc  ! tee ! queue2 ! decodebin ! ...

Elements of decodebin throw following errors

GStreamer-CRITICAL **: pushing on pad typefind:src but it was not activated in push mode

GStreamer-WARNING **:
Trying to join task 0x7f8d41b62b90 from its thread would deadlock.
You cannot change the state of an element from its streaming
thread. Use g_idle_add() or post a GstMessage on the bus to
schedule the state change from the main thread.

task_join:851 trying to join task from its thread
pad_set_active:1106 Failed to activate pad
connect_pad:2504 Couldn't set qtdemux1 to PAUSED

Error goes off when queue2 is replaced by queue. Why do I get task join error? I'm not doing anything in the streaming thread. Backtrace of thread which is doing task_join is at http://pastebin.com/Hh8F6egr
It is a thread created by gstreamer itself!

Can someone explain any missing concept here?

Thanks in advance