deadlock when calling rtpbin.emit("get-internal-session", 0) from python
Submitted by Ben
Link to original bug (#762135)
Description
Created attachment 321363
gdb output when the app deadlock
I have a python3 app that push RTP and RTCP packets through appsrc to rtpbin.
When adding and removing rtp sources fast enough, the app deadlock at sending the gst-internal-session.
slomo comment on the irc channel:
it's ssrc_demux_pad_removed, the free_stream() thing there is doing state changes and stuff with the lock held
self.rtpbin.connect("pad-added", self.on_pad_added)
def on_pad_added(self, element, pad):
session = self.rtpbin.emit("get-internal-session", 0)
Attachment 321363, "gdb output when the app deadlock":
gdb.txt
Version: 1.6.0