summaryrefslogtreecommitdiffstats
path: root/player/core.h
diff options
context:
space:
mode:
authorwm4 <wm4@nowhere>2019-10-17 19:23:35 +0200
committerwm4 <wm4@nowhere>2019-10-17 19:23:35 +0200
commit273cc3055cb5829fe62dce88e596c21ae85ef1c2 (patch)
tree8d9ba90ad2d159d3dbc75e2681b1221ae547b5a7 /player/core.h
parent2fcd5271eb045e235c281faa73d8676c4bcea4b3 (diff)
downloadmpv-273cc3055cb5829fe62dce88e596c21ae85ef1c2.tar.bz2
mpv-273cc3055cb5829fe62dce88e596c21ae85ef1c2.tar.xz
video: do not disable display-sync on A/V desync
On a audio/video desync by more than 0.5 seconds, display-sync mode was disabled, and not enabled again (until playback restart, e.g. a seek). The idea was that it this only happens when this playback mode is broken and can't perform well anyway (A/V desync is a clear indication that something is very wrong). Instead of behaving like a god damn POS, it should revert to the more robust audio-sync mode. Unfortunately, this could happen sporadically due to temporary system performance problems, such as toggling fullscreen. Users didn't like this, and asked for a function to disable it, or to recover in some other way. This mechanism is questionable anyway. If an ignorant user enables display-sync, and encounters problems with it (without being able to determine that display-sync is messing up), the player will still behave like a POS on every playback, and even after every seek. It might actually be helpful to fail more consistently. Also, I've found that it's sill relatively reliable anyway even without this mechanism. So just remove the fallback. Fixes: #7048
Diffstat (limited to 'player/core.h')
-rw-r--r--player/core.h1
1 files changed, 0 insertions, 1 deletions
diff --git a/player/core.h b/player/core.h
index 0edf4fa31e..be0860bd3f 100644
--- a/player/core.h
+++ b/player/core.h
@@ -338,7 +338,6 @@ typedef struct MPContext {
// update_playback_speed() updates them from the other fields.
double audio_speed, video_speed;
bool display_sync_active;
- bool display_sync_broken;
int display_sync_drift_dir;
// Timing error (in seconds) due to rounding on vsync boundaries
double display_sync_error;