fix uneven playback when using MPV and not syncing refreshrate

This commit is contained in:
Emil Blennow 2024-10-06 17:32:02 +02:00
parent 8596ee8811
commit 055d5575ba
No known key found for this signature in database

View File

@ -80,6 +80,7 @@ final class MPVClient: ObservableObject {
checkError(mpv_set_option_string(mpv, "initial-audio-sync", Defaults[.mpvInitialAudioSync] ? "yes" : "no")) checkError(mpv_set_option_string(mpv, "initial-audio-sync", Defaults[.mpvInitialAudioSync] ? "yes" : "no"))
// Enable VSYNC needed for `video-sync` // Enable VSYNC needed for `video-sync`
if Defaults[.mpvSetRefreshToContentFPS] {
checkError(mpv_set_option_string(mpv, "opengl-swapinterval", "1")) checkError(mpv_set_option_string(mpv, "opengl-swapinterval", "1"))
checkError(mpv_set_option_string(mpv, "video-sync", "display-resample")) checkError(mpv_set_option_string(mpv, "video-sync", "display-resample"))
checkError(mpv_set_option_string(mpv, "interpolation", "yes")) checkError(mpv_set_option_string(mpv, "interpolation", "yes"))
@ -87,6 +88,7 @@ final class MPVClient: ObservableObject {
checkError(mpv_set_option_string(mpv, "tscale-window", "blackman")) checkError(mpv_set_option_string(mpv, "tscale-window", "blackman"))
checkError(mpv_set_option_string(mpv, "vd-lavc-framedrop", "nonref")) checkError(mpv_set_option_string(mpv, "vd-lavc-framedrop", "nonref"))
checkError(mpv_set_option_string(mpv, "display-fps-override", "\(String(getScreenRefreshRate()))")) checkError(mpv_set_option_string(mpv, "display-fps-override", "\(String(getScreenRefreshRate()))"))
}
// CPU // // CPU //