0
0
mirror of https://github.com/mpv-player/mpv.git synced 2024-09-20 20:03:10 +02:00
mpv/video/out/gpu
LaserEyess dd86f195a6 vo_gpu: adjust interpolation_threshold's default
When mpv attempts to play a video that is, on average, 60 FPS on a
display that is not exactly 60.00 Hz, two options try to fight each
other: `video-sync-max-video-change` and `interpolation-threshold`.
Normally, container FPS in something such as an .mp4 or a .mkv is
precise enough such that the video can be retimed exactly to the display
Hz and interpolation is not activated.

In the case of something like certain live streaming videos or other scenario
where container FPS is not known, the default option of 0.0001 for
`interpolation-threshold` is extremely low, and while
`video-sync-max-video-change` retimes the video to what it approximately
knows as the "real" FPS, this may or may not be outside of
`interpolation-threshold`'s logic at any given time, which causes
interpolation to be frequently flipped on and off giving an appearance
of stuttering or repeated frames that is oftern quite jarring and makes
a video unwatchable.

This commit changes the default of `interpolation-threshold` to 0.01,
which is the same value as `video-sync-max-video-change`, and guarantees
that if the user accepts a video being retimed to match the display,
they do not additionally have to worry about a much more
precise interpolation threshold randomly flipping on or off. No internal
logic is changed so setting `interpolation-threshold` to -1 will still
disable this logic entirely and always enable interpolation.

The documentation has been updated to reflect this change and give
context to the user for which scenarios they might want to disable
`interpolation-threshold` logic or change it to a smaller value.
2021-03-28 20:26:41 +03:00
..
context.c options: Make validation and help possible for all option types 2021-03-28 19:46:27 +03:00
context.h options: Make validation and help possible for all option types 2021-03-28 19:46:27 +03: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 options: Make validation and help possible for all option types 2021-03-28 19:46:27 +03:00
hwdec.h options: Make validation and help possible for all option types 2021-03-28 19:46:27 +03:00
lcms.c options: Make validation and help possible for all option types 2021-03-28 19:46:27 +03:00
lcms.h
libmpv_gpu.c client API: add software rendering API 2020-07-08 22:42:05 +02: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 vo_gpu: simplify structs / names 2017-09-22 16:58:55 +02:00
ra.c vo_gpu: fix green shit with float yuv input 2020-05-09 18:02:57 +02:00
ra.h vo_gpu: fix green shit with float yuv input 2020-05-09 18:02:57 +02:00
shader_cache.c vo_gpu: cast bvecN to vecN for mix() on older GLSL 2020-12-28 19:39:41 +01:00
shader_cache.h vo_gpu: cast bvecN to vecN for mix() on older GLSL 2020-12-28 19:39:41 +01:00
spirv_shaderc.c vo_gpu: switch to optimization level performance 2018-09-01 16:14:22 +02:00
spirv.c options: change option macros and all option declarations 2020-03-18 19:52:01 +01:00
spirv.h vo_gpu: vulkan: generalize SPIR-V compiler 2017-09-26 17:25:35 +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 vo_gpu: generally allow non-storable FBOs 2020-03-08 21:41:16 +01:00
utils.h vo_gpu: simplify structs / names 2017-09-22 16:58:55 +02:00
video_shaders.c vo_gpu: lower default deband threshold 2021-02-05 15:15:55 +01:00
video_shaders.h vo_gpu: improve tone mapping desaturation 2019-02-18 01:54:06 +02:00
video.c vo_gpu: adjust interpolation_threshold's default 2021-03-28 20:26:41 +03:00
video.h vo_gpu: add better gamut clipping option 2020-06-19 08:09:19 +02:00