<!DOCTYPE html>
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
</head>
<body>
<p>Hi All,</p>
<p>I'd like to understand more about the locks and threads in
GStreamer.</p>
<p>Can anyone point me to some docs or code to read to help get a
grip on it all?</p>
<p><br>
</p>
<p>I've read <a
href="https://gstreamer.freedesktop.org/documentation/additional/design/dynamic.html?gi-language=python">this</a>
that mentions it's important to understand about the application
and streaming threads, and <a
href="https://gstreamer.freedesktop.org/documentation/additional/design/events.html?gi-language=python">this</a>
that mentions 'the STREAM_LOCK' in various places. I think I've
read a few other pages that reference these topics too, but
haven't found anything that gives a good grounding about what's
behind the design.<br>
</p>
<p>I've definitely fallen foul of issues from not understanding
enough of these low-level details while trying to move up the
learning curve and use signals to trigger actions. Sometimes I've
had lock-ups immediately every time and sometimes it has taken a
few thousand runs to spot the impact of a race condition, so I'd
love to get clarity!</p>
<p><br>
</p>
<p>Thanks for reading and all the help so far!</p>
<p>Will.</p>
</body>
</html>