From 3d12312806e7d54e7bb6b4b2a5981999735f6233 Mon Sep 17 00:00:00 2001 From: James Ross-Gowan Date: Tue, 1 Dec 2015 00:56:02 +1100 Subject: vo_opengl: add dxinterop backend WGL_NV_DX_interop is widely supported by Nvidia and AMD drivers. It allows a texture to be shared between Direct3D and WGL, so that rendering can be done with WGL and presentation can be done with Direct3D. This should allow us to work around some persistent WGL issues, such as dropped frames with some driver/OS combos, drivers that buffer frames to increase performance at the cost of latency, and the inability to disable exclusive fullscreen mode when using WGL to render to a fullscreen window. The addition of a DX_interop backend might also enable some cool Direct3D-specific enhancements in the future, such as using the GetPresentStatistics API to get accurate frame presentation timestamps. Note that due to a driver bug, this backend is currently broken on Intel. It will appear to work as long as the window is not resized too often, but after a few changes of size it will be unable to share the newly created renderbuffer with GL. See: https://software.intel.com/en-us/forums/graphics-driver-bug-reporting/topic/562051 --- DOCS/man/vo.rst | 3 +++ 1 file changed, 3 insertions(+) (limited to 'DOCS/man/vo.rst') diff --git a/DOCS/man/vo.rst b/DOCS/man/vo.rst index f4f78c491f..697584ca98 100644 --- a/DOCS/man/vo.rst +++ b/DOCS/man/vo.rst @@ -795,6 +795,9 @@ Available video output drivers are: Direct3D11 through the OpenGL ES translation layer ANGLE. This supports almost everything the ``win`` backend does, except ICC profiles, high bit depth video input, and the ``nnedi3`` prescaler. + dxinterop (experimental) + Win32, using WGL for rendering and Direct3D 9Ex for presentation. + Works on Nvidia and AMD only. x11 X11/GLX wayland -- cgit v1.2.3