summaryrefslogtreecommitdiffstats
path: root/player/video.c
diff options
context:
space:
mode:
authorwm4 <wm4@nowhere>2014-05-07 21:39:17 +0200
committerwm4 <wm4@nowhere>2014-05-07 21:39:17 +0200
commiteada87853eddca71c7d5c7ca4d7c842e10f312ea (patch)
tree13b97ec4c5b10c8123c12e683698fb543301e1b1 /player/video.c
parent6a8a0e3aa9055ca1395a672291c9a5abe077dc6e (diff)
downloadmpv-eada87853eddca71c7d5c7ca4d7c842e10f312ea.tar.bz2
mpv-eada87853eddca71c7d5c7ca4d7c842e10f312ea.tar.xz
player: handle video reconfig slightly different again
Now we avoid calling update_video() twice on reconfig (once to check whether there are still new frames, and again to actually do the reconfig). Instead, we check whether there's still something going on before calling update_video() at all, and depending on that update_video() will be allowed to reconfig or not. This will simplify some things later.
Diffstat (limited to 'player/video.c')
-rw-r--r--player/video.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/player/video.c b/player/video.c
index d2c605bbe9..35ad3e7b39 100644
--- a/player/video.c
+++ b/player/video.c
@@ -469,6 +469,9 @@ static int video_output_image(struct MPContext *mpctx, bool reconfig_ok)
return -1;
}
init_vo(mpctx);
+ // Display the frame queued after this immediately.
+ // (Neutralizes frame time calculation in update_video.)
+ mpctx->video_next_pts = MP_NOPTS_VALUE;
}
// Queue new frame, if there's one.