summaryrefslogtreecommitdiffstats
path: root/player/core.h
diff options
context:
space:
mode:
authorwm4 <wm4@nowhere>2016-08-18 20:40:23 +0200
committerwm4 <wm4@nowhere>2016-08-18 20:40:23 +0200
commita1dec6f54a31180968d3c8e5012bb3ccd1a7c716 (patch)
treedeb9ec2f90411e42d7b5e5015f4a491ac4553c18 /player/core.h
parentbbcd0b6a03e2ff4c70c2923db84467fbdddce17e (diff)
downloadmpv-a1dec6f54a31180968d3c8e5012bb3ccd1a7c716.tar.bz2
mpv-a1dec6f54a31180968d3c8e5012bb3ccd1a7c716.tar.xz
player: make looping slightly more seamless
This affects A-B loops and --loop-file, and audio. Instead of dropping audio by resetting the AO, try to make it seamless by not sending data after the loop point, and after the seek send new data without a reset.
Diffstat (limited to 'player/core.h')
-rw-r--r--player/core.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/player/core.h b/player/core.h
index 94bfe4aada..25eb8b71a8 100644
--- a/player/core.h
+++ b/player/core.h
@@ -82,6 +82,7 @@ enum seek_precision {
enum seek_flags {
MPSEEK_FLAG_DELAY = 1 << 0, // give player chance to coalesce multiple seeks
+ MPSEEK_FLAG_NOFLUSH = 1 << 1, // keeping remaining data for seamless loops
};
enum video_sync {
@@ -326,6 +327,7 @@ typedef struct MPContext {
bool hrseek_lastframe; // drop everything until last frame reached
bool hrseek_backstep; // go to frame before seek target
double hrseek_pts;
+ bool ab_loop_clip; // clip to the "b" part of an A-B loop if available
// AV sync: the next frame should be shown when the audio out has this
// much (in seconds) buffered data left. Increased when more data is
// written to the ao, decreased when moving to the next video frame.