gstreamer/subprojects/gst-plugins-base/gst
Edward Hervey 9eacd54847 decodebin3: Make update/posting of collection messages atomic
The presence (or not) of a collection on an input will determine whether events
will be throttled so that there are only forwarded when that input gets a valid
collection.

Therefore the input lock should be used.

In addition to that, we want to ensure that the application/user has a chance to
reliably (i.e. synchronously) specify what streams it is interested in by
sending a GST_EVENT_SELECT_STREAMS.

But we cannot allow anything to go forward until that message posting has come
back, otherwise we run in various races.

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

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7602>
2024-10-02 23:06:07 +01: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 audioconvert: set mix-matrix when user changes it to empty 2024-03-01 11:58:57 +00:00
audiomixer meson: Call pkgconfig.generate in the loop where we declare plugins dependencies 2022-09-01 21:17:35 +00:00
audiorate meson: Call pkgconfig.generate in the loop where we declare plugins dependencies 2022-09-01 21:17:35 +00:00
audioresample audioconvert, audioresample, audiofilter: fix divide by 0 for input buffer without caps 2022-11-26 08:47:49 +00:00
audiotestsrc audiotestsrc: Initialize all samples in wave=ticks mode 2023-04-22 08:44:02 +00:00
compositor meson: Call pkgconfig.generate in the loop where we declare plugins dependencies 2022-09-01 21:17:35 +00:00
debugutils debug: delete reference to gstdump script 2023-11-22 11:45:38 +01:00
dsd dsd: Add code for DSD audio support 2023-06-23 01:27:03 +00:00
encoding encodebin: Fix pad removal for encodebin vs encodebin2 2024-09-15 19:55:23 +01: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 decodebin3: Make update/posting of collection messages atomic 2024-10-02 23:06:07 +01:00
rawparse video: Add arbitrary tile dimensions support 2022-11-18 22:59:29 +00:00
subparse subparse: remove regex optimized flag explicitly 2024-07-03 12:22:18 +01: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 typefinders for formats that were previously available via ffmpeg 2024-07-08 16:25:32 +00:00
videoconvertscale videoscale: correct classification error 2024-07-25 16:43:34 +00:00
videorate videorate: Reset last_ts when a new segment is received 2024-04-03 00:33:15 +01:00
videotestsrc videotestsrc: add mutex around cache buffer to prevent race condition 2024-05-21 14:48:14 +01: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