mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-29 19:50:40 +00:00
e0a9a73adf
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> |
||
---|---|---|
.. | ||
d3d11device.cpp | ||
d3d11device.h | ||
d3d11screencapturesrc.cpp | ||
d3d11videosink-kb.c | ||
d3d11videosink-kb.h | ||
d3d11videosink-shared-texture-d3d9ex.cpp | ||
d3d11videosink-shared-texture.cpp | ||
d3d11videosink.c | ||
meson.build |