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

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
It is a thread created by gstreamer itself!

Can someone explain any missing concept here?

Thanks in advance