gstreamer/subprojects/gst-plugins-bad/sys
Aleksandr Slobodeniuk 936000f04e d3d11videosink: fix race conditions in win32 window
One race condition is the fact that the window object
can be destroyed while running some routine in the UI
thread (such as resizing). To avoid that situation we make
UI thread hold a reference on the window object while it's
running.
Other probpematic case is when the window handle is reused:
if we stop and start the pipeline very fast,
so the sink creates a new window object that is going to use
the same window handle as the previous one.
And finally the case when the pipeline is stopped immediatelly
right after starting, this one is also handled in this commit.

NOTE: a unit test that reproduces this cases have been added
in the previous commit.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4417>
2023-04-14 02:09:07 +00:00
..
amfcodec amfav1enc: Set stream-format on caps 2023-02-15 11:14:12 +00:00
androidmedia meson: Call pkgconfig.generate in the loop where we declare plugins dependencies 2022-09-01 21:17:35 +00:00
applemedia vtdec: Correctly retrieve reorder queue length from SPS 2023-03-03 20:39:29 +00:00
asio meson: Call pkgconfig.generate in the loop where we declare plugins dependencies 2022-09-01 21:17:35 +00:00
bluez meson: Call pkgconfig.generate in the loop where we declare plugins dependencies 2022-09-01 21:17:35 +00:00
d3d11 d3d11videosink: fix race conditions in win32 window 2023-04-14 02:09:07 +00:00
d3dvideosink d3dvideosink: Update plugin description 2022-11-04 22:48:41 +00:00
decklink decklinkaudiosink: Fix playback when video caps is configured before audio 2023-04-08 00:00:16 +01:00
directshow dshowdeviceprovider: Fix leak in gst_dshow_device_provider_start 2023-03-20 13:10:55 +00:00
directsound meson: Call pkgconfig.generate in the loop where we declare plugins dependencies 2022-09-01 21:17:35 +00:00
dvb dvbbasebin: don't rely on g_key_file_get_(integer|uint64) return 2023-01-05 12:51:28 +00:00
fbdev meson: Call pkgconfig.generate in the loop where we declare plugins dependencies 2022-09-01 21:17:35 +00:00
ipcpipeline meson: Call pkgconfig.generate in the loop where we declare plugins dependencies 2022-09-01 21:17:35 +00:00
kms kmssink: Fix compilation without kernel headers 2022-11-23 08:39:49 +00:00
magicleap meson: Call pkgconfig.generate in the loop where we declare plugins dependencies 2022-09-01 21:17:35 +00:00
mediafoundation mfvideosrc: Fix buffer leak 2022-11-28 18:50:03 +00:00
msdk msdkav1enc: fix the category for msdkav1enc debug 2023-02-18 11:48:08 +00:00
nvcodec nvh264encoder: Fix template caps 2023-03-24 14:00:23 +00:00
opensles meson: Call pkgconfig.generate in the loop where we declare plugins dependencies 2022-09-01 21:17:35 +00:00
qsv qsvav1enc: Set stream-format on caps 2023-02-15 11:14:12 +00:00
shm meson: Call pkgconfig.generate in the loop where we declare plugins dependencies 2022-09-01 21:17:35 +00:00
tinyalsa meson: Call pkgconfig.generate in the loop where we declare plugins dependencies 2022-09-01 21:17:35 +00:00
uvch264 meson: Call pkgconfig.generate in the loop where we declare plugins dependencies 2022-09-01 21:17:35 +00:00
v4l2codecs plugins: Fix various trivial clang compiler warnings 2023-03-18 19:52:40 +00:00
va jpegdecoder: fail early if no input caps have been provided 2023-02-25 10:54:49 +00:00
wasapi meson: Call pkgconfig.generate in the loop where we declare plugins dependencies 2022-09-01 21:17:35 +00:00
wasapi2 wasapi2: Fix potential crash on device activation failure 2023-03-18 02:01:30 +00:00
wic wic: Add since marker 2022-10-24 12:42:51 +00:00
win32ipc win32ipcutils: Add missing include 2023-02-10 19:34:35 +00:00
winks ksdeviceprovider: Fix leak in gst_dshow_device_provider_start 2023-03-20 13:10:55 +00:00
winscreencap winscreencap: Warn for deprecated plugin use 2022-12-08 17:48:11 +00:00
meson.build win32ipc: Add WIN32 shared memory videosrc/sink elements 2022-11-24 12:41:18 +00:00