mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-02-17 11:45:25 +00:00
Calling bind() only sets up some data structures and calling connect() only produces one packet before it returns. That packet is stored in a queue that is asynchronously forwarded by the encoder's source pad loop, so not much is happening there either. Especially no waiting is happening here and no forwarding of data to other elements. This fixes a race condition during connection setup: the connection would immediately fail if we pass a packet from the peer to the socket before bind() and connect() have returned. This can't happen anymore as bind() and connect() have returned already before both elements reach the PAUSED state, and in webrtcbin there is an additional blocking pad probe before the decoder that does not let any data pass through before that anyway. |
||
---|---|---|
.. | ||
gstsctpdec.c | ||
gstsctpdec.h | ||
gstsctpenc.c | ||
gstsctpenc.h | ||
gstsctpplugin.c | ||
meson.build | ||
sctpassociation.c | ||
sctpassociation.h |