gstreamer/subprojects/gst-plugins-base/gst
Edward Hervey f7d6822589 urisourcebin: Avoid deadlock on shutdown
The reason why the STATE lock was taken was to avoid issues where we would be
adding (and activating) elements at the same time as urisourcebin would be
brought down to READY. That would cause those new elements to potentially return
ERRORS because of not-negotiated/flushing-pads

But that creates a really bad deadlock (state lock is taken to deactivate the
streaming thread which .. is currently grabbing the state lock).

Instead, we can just ignore the warning/error messages that might occur when
shutting down.

Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/4075

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8162>
2024-12-20 08:01:01 +00:00
..
adder meson: Call pkgconfig.generate in the loop where we declare plugins dependencies 2022-09-01 21:17:35 +00:00
app meson: Call pkgconfig.generate in the loop where we declare plugins dependencies 2022-09-01 21:17:35 +00:00
audioconvert base: audio: video: Use more efficient caps/structure API in various places 2024-09-26 19:26:18 +03:00
audiomixer base: audio: video: Use more efficient caps/structure API in various places 2024-09-26 19:26:18 +03:00
audiorate audiorate: convert next_ts to new segment instead of restarting from 0 2024-12-02 15:45:20 +00:00
audioresample base: audio: video: Use more efficient caps/structure API in various places 2024-09-26 19:26:18 +03:00
audiotestsrc audiotestsrc: Initialize all samples in wave=ticks mode 2023-04-22 08:44:02 +00:00
compositor base: audio: video: Use more efficient caps/structure API in various places 2024-09-26 19:26:18 +03:00
debugutils fakevideodec: fix minimum allocation pool size 2024-09-09 19:37:45 +00:00
dsd dsd: Add code for DSD audio support 2023-06-23 01:27:03 +00:00
encoding encodebin: silence a maybe-unitialized warning 2024-11-18 12:10:57 +11:00
gio gio: Drop some trailing whitespace in giobasesink 2023-10-04 12:56:03 +00:00
overlaycomposition video-filters: Fix passthrough with ANY caps feature 2023-10-03 21:13:00 +00:00
pbtypes meson: Call pkgconfig.generate in the loop where we declare plugins dependencies 2022-09-01 21:17:35 +00:00
playback urisourcebin: Avoid deadlock on shutdown 2024-12-20 08:01:01 +00:00
rawparse docs: Correct pipeline examples in rawaudioparse 2024-05-28 22:20:08 +00:00
subparse subparse: Check for NULL return of strchr() when parsing LRC subtitles 2024-12-03 13:13:40 +00:00
tcp meson: Call pkgconfig.generate in the loop where we declare plugins dependencies 2022-09-01 21:17:35 +00:00
typefind typefind: Add typefinder for VVC/H.266 2024-10-14 16:36:46 +02:00
videoconvertscale base: audio: video: Use more efficient caps/structure API in various places 2024-09-26 19:26:18 +03:00
videorate videorate: convert next_ts to new segment instead of restarting from 0 2024-12-02 15:45:20 +00:00
videotestsrc videotestsrc: add mutex around cache buffer to prevent race condition 2024-05-21 12:14:59 +00:00
volume volume: Expose the volume-full-range as another property 2024-02-27 12:33:44 +00:00
meson.build debug: add new element fakevideodec 2023-11-17 15:57:46 +00:00