direct3d11: use a ID3D11Fence to tell when the rendering is done
commit61dbb36ebd3d58f230bfeb1c171eabe770affedd
authorSteve Lhomme <robux4@ycbcr.xyz>
Fri, 15 Jan 2021 13:29:54 +0000 (15 14:29 +0100)
committerSteve Lhomme <robux4@ycbcr.xyz>
Mon, 18 Jan 2021 08:44:44 +0000 (18 09:44 +0100)
tree02c663b8eccc47c001057af417bd325c4912eebb
parent42011b9fb105b4b5de832fdafd097b86c8154eda
direct3d11: use a ID3D11Fence to tell when the rendering is done

This is a lot more accurate and wastes a lot less time than the Query approach.
The D3D11 Fence value is set when the GPU is done doing the previous
(rendering) commands. Then we can wait in the CPU for this event and return when
it's done. All decoder/filter commands seem to not have any impact so that's
really the signal we're looking for to tell the core we're done rendering.

This is only supported on newer mingw toolchains and only on Windows 10
Creators Update, which should cover pretty much all Win10 installed machines.

Better fixes #21600
configure.ac
modules/video_output/win32/direct3d11.c