gstreamer/subprojects/gst-plugins-bad/sys/d3d11
Seungha Yang e0a9a73adf d3d11screencapturesrc: Fix crash when d3d11 device is different from owned one
GstD3D11ScreenCapture object is pipeline-independent global object
and the object can be shared by multiple src elements,
in order to overcome a limitation of DXGI Desktop Duplication API.
Note that the API allows only single capture session in a process for
a monitor.

Therefore GstD3D11ScreenCapture object must be able to handle a case
where a src element holds different GstD3D11Device object. Which can
happen when GstD3D11Device context is not shared by pipelines.

What's changed:
* Allocates capture texture with D3D11_RESOURCE_MISC_SHARED for the
  texture to be able to copied into other device's texture
* Holds additional shader objects per src element and use it when drawing
  mouse

Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1197
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2366>
2022-05-05 18:18:57 +00:00
..
gstd3d11av1dec.cpp d3d11decoder: Handle DPB size margin in a single place 2022-05-03 14:17:49 +00:00
gstd3d11av1dec.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstd3d11basefilter.cpp Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03: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 d3d11compositor: Don't try to read empty buffer 2022-01-13 20:27:50 +00:00
gstd3d11compositor.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstd3d11compositorbin.cpp Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstd3d11compositorbin.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstd3d11convert.cpp d3d11: Store device format in struct 2022-02-16 18:41:05 +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
gstd3d11converter.cpp d3d11: Add support for AYUV, AYUV64, and RGBA64_LE formats 2022-02-16 18:41:05 +00:00
gstd3d11converter.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstd3d11decoder.cpp d3d11decoder: Handle DPB size margin in a single place 2022-05-03 14:17:49 +00:00
gstd3d11decoder.h d3d11: d3d11decoder: Use DXGI adapter LUID 2021-10-10 03:23:58 +09:00
gstd3d11deinterlace.cpp d3d11deinterlace: Do not restrict minimum resolution to 64x64 2022-01-16 02:23:55 +09: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 d3d11download: Fix decide_allocation 2022-02-14 10:48:31 +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
gstd3d11h264dec.cpp d3d11decoder: Handle DPB size margin in a single place 2022-05-03 14:17:49 +00:00
gstd3d11h264dec.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstd3d11h265dec.cpp d3d11decoder: Handle DPB size margin in a single place 2022-05-03 14:17:49 +00:00
gstd3d11h265dec.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstd3d11mpeg2dec.cpp d3d11decoder: Handle DPB size margin in a single place 2022-05-03 14:17:49 +00:00
gstd3d11mpeg2dec.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstd3d11overlaycompositor.cpp Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstd3d11overlaycompositor.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstd3d11pluginutils.cpp d3d11: Store device format in struct 2022-02-16 18:41:05 +00:00
gstd3d11pluginutils.h d3d11: Update build-time dependency 2022-02-11 20:01:52 +00:00
gstd3d11screencapture.cpp d3d11screencapturesrc: Fix crash when d3d11 device is different from owned one 2022-05-05 18:18:57 +00:00
gstd3d11screencapture.h d3d11screencapturesrc: Fix crash when d3d11 device is different from owned one 2022-05-05 18:18:57 +00:00
gstd3d11screencapturedevice.cpp d3d11: Rename screen capture element 2021-10-14 15:15:56 +00:00
gstd3d11screencapturedevice.h d3d11: Update build-time dependency 2022-02-11 20:01:52 +00:00
gstd3d11screencapturesrc.cpp d3d11screencapturesrc: Fix crash when d3d11 device is different from owned one 2022-05-05 18:18:57 +00:00
gstd3d11screencapturesrc.h d3d11: Rename screen capture element 2021-10-14 15:15:56 +00:00
gstd3d11shader.cpp Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstd3d11shader.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstd3d11upload.cpp d3d11: Store device format in struct 2022-02-16 18:41:05 +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
gstd3d11videoprocessor.cpp d3d11: Update build-time dependency 2022-02-11 20:01:52 +00:00
gstd3d11videoprocessor.h d3d11: Update build-time dependency 2022-02-11 20:01:52 +00:00
gstd3d11videosink.cpp d3d11: Run indent 2022-04-08 11:51:37 +00:00
gstd3d11videosink.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstd3d11vp8dec.cpp d3d11decoder: Handle DPB size margin in a single place 2022-05-03 14:17:49 +00:00
gstd3d11vp8dec.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstd3d11vp9dec.cpp d3d11decoder: Handle DPB size margin in a single place 2022-05-03 14:17:49 +00:00
gstd3d11vp9dec.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstd3d11window.cpp d3d11: Store device format in struct 2022-02-16 18:41:05 +00:00
gstd3d11window.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstd3d11window_corewindow.cpp Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03: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 d3d11: Store device format in struct 2022-02-16 18:41:05 +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 Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03: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 d3d11videosink: Fix for unhandled mouse double click events 2022-04-23 13:20:54 +00:00
gstd3d11window_win32.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
meson.build win32: Enable high-resolution timer for MinGW build 2022-04-12 15:09:16 +00:00
plugin.cpp d3d11h265dec: Assign PRIMARY + 1 rank 2022-04-27 20:06:53 +00:00