gstreamer/sys/winscreencap
Jakub Adam aac012ce72 dxgicapture: reinitialize duplication interface on ERROR_ACCESS_LOST
IDXGIOutputDuplication can become invalid for example when there's
desktop switch, resolution change or Windows User Account Control prompt
appears on screen.

When that happens, try to re-create the duplication interface for the
changed output. Note that in the case of UAC prompt this operation will
fail if the GStreamer process doesn't run at LOCAL_SYSTEM privileges. In
such situation the source element won't create any frames as long as the
output is occupied by UAC screen.

In order to enable UAC access to sufficiently privileged GStreamer
processes, call SetThreadDesktop() with the desktop handle that
currently receives user input before creating our output duplication.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2204>
2021-04-30 04:06:42 +00:00
..
dxgicapture.c dxgicapture: reinitialize duplication interface on ERROR_ACCESS_LOST 2021-04-30 04:06:42 +00:00
dxgicapture.h dxgiscreencapsrc: Load HLSL compiler library using g_module_open 2020-06-22 14:36:16 +00:00
gstdx9screencapsrc.c documentation: fixed a heap o' typos 2019-11-05 09:11:25 -05:00
gstdx9screencapsrc.h dx9screencapsrc: add "cursor" option to draw the cursor 2016-11-02 10:38:59 +02:00
gstdxgiscreencapsrc.c plugins: Update for documentation of Windows plugins 2020-07-02 17:21:29 +02:00
gstdxgiscreencapsrc.h dxgiscreencapsrc: Load HLSL compiler library using g_module_open 2020-06-22 14:36:16 +00:00
gstgdiscreencapsrc.c documentation: fixed a heap o' typos 2019-11-05 09:11:25 -05:00
gstgdiscreencapsrc.h winscreencap: Properly timestamp buffers with the current clock running time instead of doing magic 2015-08-03 19:42:56 +03:00
gstwinscreencap.c dxgiscreencapsrc: Add missing debug category init 2020-06-30 02:51:14 +09:00
gstwinscreencap.h winscreencap: Initial port to 1.0 2013-06-20 23:00:59 +02:00
meson.build dxgiscreencapsrc: Load HLSL compiler library using g_module_open 2020-06-22 14:36:16 +00:00