mpv/video/out/gpu
wm4 8a0929973d vo_gpu: unconditionally clear framebuffer on start of frame
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
2019-11-06 22:42:44 +01:00
..
context.c vo_gpu: vulkan: add Android context 2019-09-27 00:05:06 +03:00
context.h vo_gpu: add and utilize color space information from ra_fbo 2019-10-30 02:41:25 +02: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 vo_gpu: hwdec_d3d11eglrgb: remove this 2019-10-16 23:41:06 +02:00
hwdec.h vo_gpu: hwdec: remove redundant fields 2017-12-01 05:57:41 +01:00
lcms.c video: add pure gamma TRC curves for 2.0, 2.4 and 2.6. 2019-09-27 13:21:41 +02:00
lcms.h
libmpv_gpu.c drm: fix libmpv ABI breakage introduced in 351c083487 2019-09-18 23:59:32 +03: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
ra.c vo_gpu: log ra_format.storable with the other flags 2019-10-27 00:45:27 +11:00
ra.h video/out/gpu: Add a `storable` flag to ra_format 2019-07-08 00:59:28 +02:00
shader_cache.c vo_gpu: index desc namespaces by ra 2019-04-21 23:55:22 +03:00
shader_cache.h vo_gpu: invalidate fbotex before drawing 2017-12-25 00:47:53 +01:00
spirv.c spirv: remove --spirv-compiler=nvidia 2018-12-01 15:50:23 +02:00
spirv.h
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 video/out/gpu: Add a `storable` flag to ra_format 2019-07-08 00:59:28 +02:00
utils.h
video.c vo_gpu: unconditionally clear framebuffer on start of frame 2019-11-06 22:42:44 +01:00
video.h vo_gpu: implement error diffusion for dithering 2019-06-16 11:19:44 +02:00
video_shaders.c video: add pure gamma TRC curves for 2.0, 2.4 and 2.6. 2019-09-27 13:21:41 +02:00
video_shaders.h vo_gpu: improve tone mapping desaturation 2019-02-18 01:54:06 +02:00