mirror of
https://github.com/mpv-player/mpv
synced 2025-01-05 06:30:06 +00:00
258487370f
In addition to the built-in nvidia compiler, we now also support a backend based on libshaderc. shaderc is sort of like glslang except it has a C API and is available as a dynamic library. The generated SPIR-V is now cached alongside the VkPipeline in the cached_program. We use a special cache header to ensure validity of this cache before passing it blindly to the vulkan implementation, since passing invalid SPIR-V can cause all sorts of nasty things. It's also designed to self-invalidate if the compiler gets better, by offering a catch-all `int compiler_version` that implementations can use as a cache invalidation marker. |
||
---|---|---|
.. | ||
cocoa | ||
gpu | ||
opengl | ||
vulkan | ||
wayland | ||
win32 | ||
aspect.c | ||
aspect.h | ||
bitmap_packer.c | ||
bitmap_packer.h | ||
cocoa_common.h | ||
cocoa_common.m | ||
d3d_shader_420p.h | ||
d3d_shader_yuv.hlsl | ||
dither.c | ||
dither.h | ||
drm_common.c | ||
drm_common.h | ||
filter_kernels.c | ||
filter_kernels.h | ||
vo_caca.c | ||
vo_direct3d.c | ||
vo_drm.c | ||
vo_gpu.c | ||
vo_image.c | ||
vo_lavc.c | ||
vo_null.c | ||
vo_opengl_cb.c | ||
vo_rpi.c | ||
vo_sdl.c | ||
vo_tct.c | ||
vo_vaapi.c | ||
vo_vdpau.c | ||
vo_wayland.c | ||
vo_x11.c | ||
vo_xv.c | ||
vo.c | ||
vo.h | ||
w32_common.c | ||
w32_common.h | ||
wayland_common.c | ||
wayland_common.h | ||
win_state.c | ||
win_state.h | ||
x11_common.c | ||
x11_common.h |