gstreamer/subprojects/gst-plugins-bad/sys/d3d11
Alexander Slobodeniuk f92c27a49e d3d11window_win32: fix crash on RC unprepare() vs window_proc()
Unprepare method posts WM_GST_D3D11_DESTROY_INTERNAL_WINDOW
command to the window queue, and from that moment considers
internal_hwnd to be released, and so it sets it to null.
The problem is that it's possible that right at that moment
the window thread might be already processing some other
command, or just another command might be already in the queue.
On practice we met a crash when WM_PAINT got processed in between
(unprepare already finished and WM_GST_D3D11_DESTROY_INTERNAL_WINDOW
was not handled yet)

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6187>
2024-02-26 23:17:05 +00:00
..
hlsl d3d11: Use shader model 4 2023-11-25 20:27:43 +09:00
gstd3d11av1dec.cpp d3d11decoder: Port to GstDxva 2023-09-17 18:30:07 +09:00
gstd3d11av1dec.h d3d11decoder: Port to GstDxva 2023-09-17 18:30:07 +09:00
gstd3d11basefilter.cpp d3d11basefilter: Forward video related metas if needed 2023-06-02 00:33:52 +00:00
gstd3d11basefilter.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstd3d11compositor.cpp d3d11: Rework memory allocation params signalling 2023-11-27 15:14:09 +00:00
gstd3d11compositor.h d3d11compositor: Performance optimization 2022-06-20 19:18:53 +00:00
gstd3d11convert.cpp d3d11: Add support for more packed formats using compute shader 2023-11-27 15:14:09 +00:00
gstd3d11convert.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstd3d11decoder.cpp d3d11: Rework memory allocation params signalling 2023-11-27 15:14:09 +00:00
gstd3d11decoder.h d3d11decoder: Port to GstDxva 2023-09-17 18:30:07 +09:00
gstd3d11deinterlace.cpp d3d11: Rework memory allocation params signalling 2023-11-27 15:14:09 +00:00
gstd3d11deinterlace.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstd3d11download.cpp d3d11: Update element meta 2023-05-12 20:13:58 +00:00
gstd3d11download.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstd3d11dxgicapture.cpp d3d11screencapturesrc: Hide symbols 2024-01-05 21:27:35 +09:00
gstd3d11dxgicapture.h d3d11screencapture: Subclassing capture implementation 2022-10-21 14:21:28 +00:00
gstd3d11h264dec.cpp d3d11decoder: Port to GstDxva 2023-09-17 18:30:07 +09:00
gstd3d11h264dec.h d3d11decoder: Port to GstDxva 2023-09-17 18:30:07 +09:00
gstd3d11h265dec.cpp d3d11decoder: Port to GstDxva 2023-09-17 18:30:07 +09:00
gstd3d11h265dec.h d3d11decoder: Port to GstDxva 2023-09-17 18:30:07 +09:00
gstd3d11ipc.cpp d3d11: Use gst_util_get_timestamp() 2023-06-08 01:02:45 +00:00
gstd3d11ipc.h d3d11: Use gst_util_get_timestamp() 2023-06-08 01:02:45 +00:00
gstd3d11ipcclient.cpp d3d11: Update plugin docs 2023-08-30 15:45:12 +00:00
gstd3d11ipcclient.h d3d11ipcsrc: Stop asynchronously in case of io-mode=import 2023-06-06 17:54:44 +00:00
gstd3d11ipcserver.cpp d3d11ipcsink: Fix deadlock on stop 2023-12-06 16:09:27 +00:00
gstd3d11ipcserver.h d3d11ipc: Use unnamed shareable handle 2023-06-06 17:54:44 +00:00
gstd3d11ipcsink.cpp d3d11: Use gst_util_get_timestamp() 2023-06-08 01:02:45 +00:00
gstd3d11ipcsink.h d3d11: Add support for IPC 2023-05-06 03:19:09 +09:00
gstd3d11ipcsrc.cpp d3d11: Use gst_util_get_timestamp() 2023-06-08 01:02:45 +00:00
gstd3d11ipcsrc.h d3d11: Add support for IPC 2023-05-06 03:19:09 +09:00
gstd3d11mpeg2dec.cpp d3d11decoder: Port to GstDxva 2023-09-17 18:30:07 +09:00
gstd3d11mpeg2dec.h d3d11decoder: Port to GstDxva 2023-09-17 18:30:07 +09:00
gstd3d11overlay.cpp d3d11: Rework memory allocation params signalling 2023-11-27 15:14:09 +00:00
gstd3d11overlay.h d3d11: Add d3d11overlay element 2023-04-17 23:22:57 +09:00
gstd3d11overlaycompositor.cpp d3d11: Avoid ID3D11DeviceContext::Map if possible 2023-11-15 23:38:59 +09:00
gstd3d11overlaycompositor.h d3d11overlaycompositor: Objectify overlay render implementation 2022-07-02 05:37:27 +09:00
gstd3d11pluginutils.cpp d3d11: Enable DirectXMath SIMD 2023-11-07 11:19:31 +00:00
gstd3d11pluginutils.h d3d11: Enable DirectXMath SIMD 2023-11-07 11:19:31 +00:00
gstd3d11screencapture.cpp d3d11screencapturesrc: Fix wrong color with HDR enabled 2023-11-16 19:00:24 +09:00
gstd3d11screencapture.h d3d11screencapturesrc: Fix wrong color with HDR enabled 2023-11-16 19:00:24 +09:00
gstd3d11screencapturedevice.cpp d3d11screencapturesrc: Fix wrong color with HDR enabled 2023-11-16 19:00:24 +09:00
gstd3d11screencapturedevice.h d3d11: Update build-time dependency 2022-02-11 20:01:52 +00:00
gstd3d11screencapturesrc.cpp d3d11: Rework memory allocation params signalling 2023-11-27 15:14:09 +00:00
gstd3d11screencapturesrc.h d3d11: Rename screen capture element 2021-10-14 15:15:56 +00:00
gstd3d11testsrc.cpp d3d11: Add support for more packed formats using compute shader 2023-11-27 15:14:09 +00:00
gstd3d11testsrc.h d3d11: Add d3d11testsrc element 2022-06-09 05:08:41 +09:00
gstd3d11upload.cpp d3d11: Rework memory allocation params signalling 2023-11-27 15:14:09 +00:00
gstd3d11upload.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstd3d11videosink.cpp d3d11videosink: Add redraw-on-update property 2023-10-30 11:15:35 +00:00
gstd3d11videosink.h d3d11videosink: Protect window with lock at every place 2022-07-02 20:40:37 +00:00
gstd3d11vp8dec.cpp d3d11decoder: Port to GstDxva 2023-09-17 18:30:07 +09:00
gstd3d11vp8dec.h d3d11decoder: Port to GstDxva 2023-09-17 18:30:07 +09:00
gstd3d11vp9dec.cpp d3d11vp9dec: Fix critical warning 2023-09-19 13:09:57 +00:00
gstd3d11vp9dec.h d3d11decoder: Port to GstDxva 2023-09-17 18:30:07 +09:00
gstd3d11window.cpp d3d11window: Fix scale factor setting 2023-11-07 11:19:31 +00:00
gstd3d11window.h d3d11videosink: Add redraw-on-update property 2023-10-30 11:15:35 +00:00
gstd3d11window_corewindow.cpp d3d11: Use correct ref/unref methods 2022-11-28 18:50:03 +00:00
gstd3d11window_corewindow.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstd3d11window_dummy.cpp d3d11videosink: Fix deadlock when parent window is busy 2022-12-15 17:37:48 +00:00
gstd3d11window_dummy.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstd3d11window_swapchainpanel.cpp d3d11: Use correct ref/unref methods 2022-11-28 18:50:03 +00:00
gstd3d11window_swapchainpanel.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstd3d11window_win32.cpp d3d11window_win32: fix crash on RC unprepare() vs window_proc() 2024-02-26 23:17:05 +00:00
gstd3d11window_win32.h d3d11videosink: post "have-window-handle" element message on the bus 2023-10-24 16:32:36 +02:00
gstd3d11winrtcapture.cpp d3d11screencapturesrc: Fix wrong color with HDR enabled 2023-11-16 19:00:24 +09:00
gstd3d11winrtcapture.h d3d11screencapturesrc: Add "window-capture-mode" property 2023-04-03 15:06:47 +00:00
meson.build d3d11: fix building with address sanitizer 2023-12-07 21:36:20 +00:00
plugin.cpp d3d11: Drop legacy device support 2023-11-25 20:27:43 +09:00