mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-09-08 13:18:52 +00:00
Removing sockets from the epoll for cancellation is unreliable and might not be thread-safe. Rather, have SRT watch a FD from the cancellable if available. Keep the cancellable cancelled while we're not open. Use the regular single-socket `sock` and `poll_id` fields for the listening thread instead of duplicating them. Before polling we need to check the socket state. SRT closes broken sockets by itself and when the epoll contains our cancellation FD it can no longer be empty, which was an error before. Treat more failures in the read and write operations as an opportunity to try a reconnect. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4087> |
||
---|---|---|
.. | ||
gstsrt-enums.h | ||
gstsrt.c | ||
gstsrtelement.c | ||
gstsrtelements.h | ||
gstsrtobject.c | ||
gstsrtobject.h | ||
gstsrtplugin.c | ||
gstsrtsink.c | ||
gstsrtsink.h | ||
gstsrtsrc.c | ||
gstsrtsrc.h | ||
meson.build |