mirror of https://github.com/mpv-player/mpv
6797f54378
This is probably fringe, but I encountered it on my machine. The hwupload filter happily does conversions all on the GPU side if possible. Makes sense. However, it turns out that there is a difference between e.g.yuv420p -> vaapi[bgr0] and a vaapi[yuv420p] -> vaapi[bgr0]. The latter worked without any issues on my hardware, but the first example fails. To remedy this, we need to also do hardware uploads during probing against formats and track what actually works (i.e. vaSurfaceExportHandle). This commit only implements it in vaapi since it is the only known place where this edge case is relevant. But other hardware decoding drivers could easily add support later if needed. |
||
---|---|---|
.. | ||
dmabuf_interop.h | ||
dmabuf_interop_gl.c | ||
dmabuf_interop_pl.c | ||
dmabuf_interop_wl.c | ||
hwdec_aimagereader.c | ||
hwdec_cuda.c | ||
hwdec_cuda.h | ||
hwdec_cuda_gl.c | ||
hwdec_cuda_vk.c | ||
hwdec_drmprime.c | ||
hwdec_drmprime_overlay.c | ||
hwdec_ios_gl.m | ||
hwdec_mac_gl.c | ||
hwdec_vaapi.c | ||
hwdec_vt.c | ||
hwdec_vt.h | ||
hwdec_vt_pl.m | ||
hwdec_vulkan.c |