mirror of
https://github.com/mpv-player/mpv
synced 2025-02-07 23:51:49 +00:00
This change updates the vulkan interop code to work with the libplacebo based ra_vk, but also introduces direct VkImage sharing to avoid the use of the intermediate buffer. It is also necessary and desirable to introduce explicit semaphore bsed synchronisation for operations on the shared images. Synchronisation means we can safely reuse the same VkImage for every mapped frame, by ensuring the frame is copied to the VkImage before mapping the next frame. This functionality requires a 417.xx or newer nvidia driver, due to bugs in the VkImage interop in the earlier 411 and 415 drivers. It's definitely worth the effort, as the raw throughput is about twice that of implementation using an intermediate buffer. |
||
---|---|---|
.. | ||
angle_dynamic.c | ||
angle_dynamic.h | ||
common.c | ||
common.h | ||
context_android.c | ||
context_angle.c | ||
context_cocoa.c | ||
context_drm_egl.c | ||
context_dxinterop.c | ||
context_glx.c | ||
context_mali_fbdev.c | ||
context_rpi.c | ||
context_vdpau.c | ||
context_wayland.c | ||
context_win.c | ||
context_x11egl.c | ||
context.c | ||
context.h | ||
egl_helpers.c | ||
egl_helpers.h | ||
formats.c | ||
formats.h | ||
gl_headers.h | ||
hwdec_cuda.c | ||
hwdec_d3d11egl.c | ||
hwdec_d3d11eglrgb.c | ||
hwdec_drmprime_drm.c | ||
hwdec_dxva2egl.c | ||
hwdec_dxva2gldx.c | ||
hwdec_ios.m | ||
hwdec_osx.c | ||
hwdec_rpi.c | ||
hwdec_vaegl.c | ||
hwdec_vdpau.c | ||
libmpv_gl.c | ||
ra_gl.c | ||
ra_gl.h | ||
utils.c | ||
utils.h |