gstreamer/subprojects/gst-plugins-bad/sys
Aleksandr Slobodeniuk e683000573 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/4260>
2023-04-03 11:19:11 +00:00
..
amfcodec amfcodec: Initial support of preanalysis and preencoding for AMF encoders 2023-02-28 15:04:45 +00:00
androidmedia gst-plugins-bad: re-indent with GNU indent 2.2.12 2023-03-17 03:18:54 +00:00
applemedia gst-plugins-bad: re-indent with GNU indent 2.2.12 2023-03-17 03:18:54 +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-03 11:19:11 +00:00
d3dvideosink gst-plugins-bad: re-indent with GNU indent 2.2.12 2023-03-17 03:18:54 +00:00
decklink decklink: reset calculation of gst_decklink_video_src_update_time_mapping on no_signal. When the HDMI cable was disconnected for a long time, the calculation took too much time. SDI cable works fine. 2022-10-10 08:13:30 +00:00
directshow sys: avoid double definition of symbol MEDIASUBTYPE_I420 2023-03-23 00:56:04 +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 kmsallocator: Port to the new DRM Dumb Allocator 2023-03-14 21:50:57 +00:00
magicleap meson: Call pkgconfig.generate in the loop where we declare plugins dependencies 2022-09-01 21:17:35 +00:00
mediafoundation sys: avoid double definition of symbol MEDIASUBTYPE_I420 2023-03-23 00:56:04 +00:00
msdk msdkdec: delete use_video_memory 2023-03-22 05:07:19 +00:00
nvcodec nvh264encoder: Fix template caps 2023-03-22 23:40:58 +00:00
opensles meson: Call pkgconfig.generate in the loop where we declare plugins dependencies 2022-09-01 21:17:35 +00:00
qsv qsvh265dec: Use gst_h265_parser_parse_decoder_config_record() 2023-03-06 12:50:41 +00:00
shm shm: drop use of GSlice allocator 2023-02-03 17:48:10 +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 16:16:55 +02:00
va vaencoder: remove display reference in decode picture 2023-03-24 14:05:15 +00:00
wasapi gst-plugins-bad: re-indent with GNU indent 2.2.12 2023-03-17 03:18:54 +00:00
wasapi2 wasapi2: Fix potential crash on device activation failure 2023-03-16 19:30:27 +00:00
wic bad: Update indent 2023-02-28 10:12:31 +00:00
win32ipc win32ipcutils: Add missing include 2023-02-10 14:35:20 +00:00
winks taglist, plugins: fix compiler warnings with GLib >= 2.76 2023-03-27 07:37:11 +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