summaryrefslogtreecommitdiffstats
path: root/mp_core.h
diff options
context:
space:
mode:
authorUoti Urpala <uau@glyph.nonexistent.invalid>2010-12-15 01:09:47 +0200
committerUoti Urpala <uau@glyph.nonexistent.invalid>2010-12-20 19:02:16 +0200
commitf0649f13d698eb6aeffeaacd6801b666c4366caf (patch)
tree809200e48f70f5a13e8a1d27f688f7b92348a744 /mp_core.h
parent23f598e0ee2151923a44077f510cd484f239480b (diff)
downloadmpv-f0649f13d698eb6aeffeaacd6801b666c4366caf.tar.bz2
mpv-f0649f13d698eb6aeffeaacd6801b666c4366caf.tar.xz
core: add support for precise non-keyframe-limited seeks
Add support for seeking to an arbitrary non-keyframe position by decoding video starting from the previous keyframe. Whether to use this functionality when seeking is controlled by the new option -hr-seek and a new third argument to the "seek" command. The default is to use it for absolute seeks (like chapter seeks) but not for relative ones. Because there's currently no support for cutting encoded audio some desync is expected if encoded audio passthrough is used. Currently precise seeks always go to the first frame with timestamp equal to or greater than the target position; there's no support for "matching or earlier" backwards seeks at frame level.
Diffstat (limited to 'mp_core.h')
-rw-r--r--mp_core.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/mp_core.h b/mp_core.h
index c64de2cdbe..7f6bb2ccf4 100644
--- a/mp_core.h
+++ b/mp_core.h
@@ -129,6 +129,9 @@ typedef struct MPContext {
* stream by cutting samples or adding silence at the beginning to make
* audio playback position match video position. */
bool syncing_audio;
+ bool hrseek_active;
+ bool hrseek_framedrop;
+ double hrseek_pts;
// 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 frame.