<div dir="ltr">I just ran the example code you mentioned, and it worked fine for me. I'm running gstreamer 1.16.2 on ubuntu 20.04.<div><br></div><div>/Clyde</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, Sep 8, 2021 at 8:40 AM Maurice Ackel via gstreamer-devel <<a href="mailto:gstreamer-devel@lists.freedesktop.org">gstreamer-devel@lists.freedesktop.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div style="overflow-wrap: break-word;">Hi,<div><br></div><div>I’m following the explanation about dynamically changing pipelines found here:</div><div><a href="https://gstreamer.freedesktop.org/documentation/application-development/advanced/pipeline-manipulation.html?gi-language=c#dynamically-changing-the-pipeline" target="_blank">https://gstreamer.freedesktop.org/documentation/application-development/advanced/pipeline-manipulation.html?gi-language=c#dynamically-changing-the-pipeline</a></div><div><br></div><div>However, when I run my program and the EOS event callback is called, I get the following error:</div><div><br></div><div>```</div><div><div>Trying to join task 0x7fa51f928dd0 from its thread would deadlock.</div><div>You cannot change the state of an element from its streaming</div><div>thread. Use g_idle_add() or post a GstMessage on the bus to</div><div>schedule the state change from the main thread.</div></div><div>```</div><div><br></div><div>The reason seems simple. I’m listening for an EOS event on the src pad of the element I want to remove.. (As explained in the demo code).</div><div><br></div><div>Now I’m wondering if I am doing something wrong or if perhaps the example code might not be up to data anymore?</div><div><br></div><div>In any case, what is the best practice to remove an element from a (theoretically running) pipeline?</div><div><br></div><div>Thank you!</div><div>Maurice</div></div></blockquote></div>