summaryrefslogtreecommitdiffstats
path: root/player/core.h
diff options
context:
space:
mode:
authorwm4 <wm4@nowhere>2015-11-03 20:29:25 +0100
committerwm4 <wm4@nowhere>2015-11-03 20:29:25 +0100
commit49d94853b5cd5d8ab156dc551df0dd7d216f442f (patch)
tree995b55e7dd244d057fcb0f77f5f2f4b79dfa6d00 /player/core.h
parent163c6ad862c1bffcec34eb09e03d09c133b15d92 (diff)
downloadmpv-49d94853b5cd5d8ab156dc551df0dd7d216f442f.tar.bz2
mpv-49d94853b5cd5d8ab156dc551df0dd7d216f442f.tar.xz
player: limit speed change in display-sync adrop mode
Discontinuities (like toggling fullscreen) can cause multiple frames to be dropped in succession, which sounds very weird. It's better to drop some video frames instead to compensate for larger desyncs. We roughly base it on the maximum allowed speed changes (audio change is "additional" to the video change to account for deviations when playing at max. video speed change).
Diffstat (limited to 'player/core.h')
-rw-r--r--player/core.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/player/core.h b/player/core.h
index fb7c1ed975..80bd08266c 100644
--- a/player/core.h
+++ b/player/core.h
@@ -268,6 +268,7 @@ typedef struct MPContext {
int display_sync_drift_dir;
// Timing error (in seconds) due to rounding on vsync boundaries
double display_sync_error;
+ double audio_drop_throttle;
int display_sync_disable_counter;
// Number of mistimed frames.
int mistimed_frames_total;