summaryrefslogtreecommitdiffstats
path: root/player
diff options
context:
space:
mode:
authorwm4 <wm4@nowhere>2019-05-16 16:29:45 +0200
committerwm4 <wm4@nowhere>2019-09-19 20:37:04 +0200
commit556e204a112ee286972e50d636dec8b46ca125d7 (patch)
treefb388c85c5ea1de9283ee1957bdd9e154a1d9d66 /player
parentd7c7f80cc1cf5b6a8207a3954ccdc984316c0602 (diff)
downloadmpv-556e204a112ee286972e50d636dec8b46ca125d7.tar.bz2
mpv-556e204a112ee286972e50d636dec8b46ca125d7.tar.xz
player: add --demuxer-cache-wait option
Diffstat (limited to 'player')
-rw-r--r--player/loadfile.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/player/loadfile.c b/player/loadfile.c
index fc3bb97a96..48813c80a0 100644
--- a/player/loadfile.c
+++ b/player/loadfile.c
@@ -1534,6 +1534,19 @@ static void play_current_file(struct MPContext *mpctx)
goto terminate_playback;
}
+ demux_start_prefetch(mpctx->demuxer);
+
+ if (opts->demuxer_cache_wait) {
+ while (!mpctx->stop_play) {
+ struct demux_reader_state s;
+ demux_get_reader_state(mpctx->demuxer, &s);
+ if (s.idle)
+ break;
+
+ mp_idle(mpctx);
+ }
+ }
+
double play_start_pts = get_play_start_pts(mpctx);
if (play_start_pts != MP_NOPTS_VALUE) {
/*