mpv/video/out/gpu
Philip Langdale dbbf4a415d 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.
2021-06-11 09:54:16 -07:00
..
context.c vo_gpu: vulkan: implement a VkDisplayKHR backed context 2021-06-11 09:54:16 -07:00
context.h options: Make validation and help possible for all option types 2021-03-28 19:46:27 +03:00
d3d11_helpers.c vo_gpu/d3d11: add support for configuring swap chain color space 2019-10-30 02:41:25 +02:00
d3d11_helpers.h vo_gpu/d3d11: add support for configuring swap chain color space 2019-10-30 02:41:25 +02:00
error_diffusion.c vo_gpu: process three component together in error diffusion 2019-06-16 11:19:44 +02:00
error_diffusion.h vo_gpu: implement error diffusion for dithering 2019-06-16 11:19:44 +02:00
hwdec.c options: Make validation and help possible for all option types 2021-03-28 19:46:27 +03:00
hwdec.h options: Make validation and help possible for all option types 2021-03-28 19:46:27 +03:00
lcms.c vo_gpu: replace --icc-contrast by --icc-force-contrast 2021-05-26 17:35:29 +02:00
lcms.h
libmpv_gpu.c client API: add software rendering API 2020-07-08 22:42:05 +02:00
libmpv_gpu.h client API: add a new way to pass X11 Display etc. to render API 2018-03-26 19:47:08 +02:00
osd.c Replace uses of FFMIN/MAX with MPMIN/MAX 2019-10-31 11:24:20 +01:00
osd.h vo_gpu: simplify structs / names 2017-09-22 16:58:55 +02:00
ra.c vo_gpu: fix green shit with float yuv input 2020-05-09 18:02:57 +02:00
ra.h vo_gpu: fix green shit with float yuv input 2020-05-09 18:02:57 +02:00
shader_cache.c vo_gpu: greatly increase maximum shader cache size 2021-04-18 20:13:43 +02:00
shader_cache.h vo_gpu: cast bvecN to vecN for mix() on older GLSL 2020-12-28 19:39:41 +01:00
spirv.c options: change option macros and all option declarations 2020-03-18 19:52:01 +01:00
spirv.h vo_gpu: vulkan: generalize SPIR-V compiler 2017-09-26 17:25:35 +02:00
spirv_shaderc.c vo_gpu: switch to optimization level performance 2018-09-01 16:14:22 +02:00
user_shaders.c vo_gpu: allow user shader to fix texture offset 2019-06-06 20:01:56 +02:00
user_shaders.h vo_gpu: allow user shader to fix texture offset 2019-06-06 20:01:56 +02:00
utils.c vo_gpu: generally allow non-storable FBOs 2020-03-08 21:41:16 +01:00
utils.h vo_gpu: simplify structs / names 2017-09-22 16:58:55 +02:00
video.c Revert "vo_gpu: revert 8a09299 and conditionally clear framebuffer again" 2021-05-07 15:01:15 +02:00
video.h vo_gpu: add better gamut clipping option 2020-06-19 08:09:19 +02:00
video_shaders.c vo_gpu: fix extreme clipping with --gamut-clipping for HDR outputs 2021-05-22 21:18:51 +02:00
video_shaders.h vo_gpu: improve tone mapping desaturation 2019-02-18 01:54:06 +02:00