summaryrefslogtreecommitdiffstats
path: root/DOCS/man/options.rst
diff options
context:
space:
mode:
authorPhilip Langdale <philipl@overt.org>2019-12-02 10:37:40 +0800
committerPhilip Langdale <github.philipl@overt.org>2021-06-11 09:54:16 -0700
commitdbbf4a415de7866c6fe2dce10142d8a185eb0660 (patch)
tree7d98e0dc93f36bf8c80363831bb0430a571d5671 /DOCS/man/options.rst
parentdbf0fd7d60fa7b4996a3dd96101abd627768e9df (diff)
downloadmpv-dbbf4a415de7866c6fe2dce10142d8a185eb0660.tar.bz2
mpv-dbbf4a415de7866c6fe2dce10142d8a185eb0660.tar.xz
vo_gpu: vulkan: implement a VkDisplayKHR backed context
This is the Vulkan equivalent of the drm context for OpenGL, with the big difference that it's implemented purely in terms of Vulkan calls and doesn't actually require drm or kms. The basic idea is to identify a display, mode, and plane on a device, and then create a display backed surface for the swapchain. In theory, past that point, everything is the same, and this is in fact the case on Intel hardware. I can get a video playing on a vt. On nvidia, naturally, things don't work that way. Instead, nvidia only implemented the extension for scenarios where a VR application is stealing a display from a running window system, and not for standalone scenarios. With additional code, I've got this scenario to work but that's a separate incremental change. Other people have tested on AMD, and report roughly the same behaviour as on Intel. Note, that in this change, the VT will not be correctly restored after qutting. The only way to restore the VT is to introduce some drm specific code which I will illustrate in a separate change.
Diffstat (limited to 'DOCS/man/options.rst')
-rw-r--r--DOCS/man/options.rst29
1 files changed, 29 insertions, 0 deletions
diff --git a/DOCS/man/options.rst b/DOCS/man/options.rst
index 6bbf6a3366..3f258101f3 100644
--- a/DOCS/man/options.rst
+++ b/DOCS/man/options.rst
@@ -5289,6 +5289,12 @@ The following video options are currently all specific to ``--vo=gpu`` and
results, as can missing or incorrect display FPS information (see
``--override-display-fps``).
+``--vulkan-device=<device name>``
+ The name of the Vulkan device to use for rendering and presentation. Use
+ ``--vulkan-device=help`` to see the list of available devices and their
+ names. If left unspecified, the first enumerated hardware Vulkan device will
+ be used.
+
``--vulkan-swap-mode=<mode>``
Controls the presentation mode of the vulkan swapchain. This is similar
to the ``--opengl-swapinterval`` option.
@@ -5333,6 +5339,25 @@ The following video options are currently all specific to ``--vo=gpu`` and
with some older drivers / vulkan portability layers that don't provide
working VkEvent support.
+``--vulkan-display-display=<n>``
+ The index of the display, on the selected Vulkan device, to present on when
+ using the ``displayvk`` GPU context. Use ``--vulkan-display-display=help``
+ to see the list of available displays. If left unspecified, the first
+ enumerated display will be used.
+
+
+``--vulkan-display-mode=<n>``
+ The index of the display mode, of the selected Vulkan display, to use when
+ using the ``displayvk`` GPU context. Use ``--vulkan-display-mode=help``
+ to see the list of available modes. If left unspecified, the first
+ enumerated mode will be used.
+
+``--vulkan-display-plane=<n>``
+ The index of the plane, on the selected Vulkan device, to present on when
+ using the ``displayvk`` GPU context. Use ``--vulkan-display-plane=help``
+ to see the list of available planes. If left unspecified, the first
+ enumerated plane will be used.
+
``--d3d11-exclusive-fs=<yes|no>``
Switches the D3D11 swap chain fullscreen state to 'fullscreen' when
fullscreen video is requested. Also known as "exclusive fullscreen" or
@@ -5979,6 +6004,10 @@ The following video options are currently all specific to ``--vo=gpu`` and
VK_KHR_wayland_surface
drm
DRM/EGL
+ displayvk
+ VK_KHR_display. This backend is roughly the Vukan equivalent of
+ DRM/EGL, allowing for direct rendering via Vulkan without a display
+ manager.
x11egl
X11/EGL
android