mirror of
https://github.com/mpv-player/mpv
synced 2025-01-26 01:23:17 +00:00
2b6241a09a
Yet another relatively useless option that tries to make OpenGL's sync
behavior somewhat sane. The results are not too encouraging. With a
value of 1, vsync jitter is gone on nVidia, but there are frame drops
(less than with glfinish). With 2, I get the usual vsync jitter _and_
frame drops.
There's still some hope that it might prevent too deep queuing with some
GPUs, I guess.
The timeout for the wait call is 1 second. The value is pretty
arbitrary; it should just not be too high to freeze the process (if
the GPU is un-nice), and not too low to trigger the timeout in normal
cases, even if the GPU load is very high. So I guess 1 second is ok
as a timeout.
The idea to use fences this way to control the queue depth was stolen
from RetroArch:
|
||
---|---|---|
.. | ||
cocoa.c | ||
common.c | ||
common.h | ||
header_fixes.h | ||
hwdec_dxva2.c | ||
hwdec_osx.c | ||
hwdec_vaegl.c | ||
hwdec_vaglx.c | ||
hwdec_vdpau.c | ||
hwdec.c | ||
hwdec.h | ||
lcms.c | ||
lcms.h | ||
osd.c | ||
osd.h | ||
rpi.c | ||
rpi.h | ||
utils.c | ||
utils.h | ||
video_shaders.c | ||
video_shaders.h | ||
video.c | ||
video.h | ||
w32.c | ||
wayland.c | ||
x11.c | ||
x11egl.c |