mirror of https://github.com/mpv-player/mpv
8a0929973d
For some reason, the first frame displayed on X11 with amdgpu and OpenGL will be garbled. This is especially visible if the player starts, displays a frame, but then still takes a while to properly start playback. With --interpolation, the behavior somehow changes (usually gets worse). I'm not sure what exactly is going on, and the code in video.c is way too abstruse. Maybe there is some slight possibility that a frame with uncleared contents gets displayed, which somehow also corrupts another frame that is displayed immediately after that. If clear is unconditionally run, this somehow doesn't happen, and you see a video frame. By any logic this shouldn't happen: a video frame should always overwrite the background. So I can't exclude that this isn't some sort of driver bug, or at least very obscure interaction. Clearing should be practically free anyway, so always do it. Fixes: #7105 |
||
---|---|---|
.. | ||
context.c | ||
context.h | ||
d3d11_helpers.c | ||
d3d11_helpers.h | ||
error_diffusion.c | ||
error_diffusion.h | ||
hwdec.c | ||
hwdec.h | ||
lcms.c | ||
lcms.h | ||
libmpv_gpu.c | ||
libmpv_gpu.h | ||
osd.c | ||
osd.h | ||
ra.c | ||
ra.h | ||
shader_cache.c | ||
shader_cache.h | ||
spirv.c | ||
spirv.h | ||
spirv_shaderc.c | ||
user_shaders.c | ||
user_shaders.h | ||
utils.c | ||
utils.h | ||
video.c | ||
video.h | ||
video_shaders.c | ||
video_shaders.h |