summaryrefslogtreecommitdiffstats
path: root/video/out
diff options
context:
space:
mode:
authorwm4 <wm4@nowhere>2015-01-19 18:00:41 +0100
committerDiogo Franco (Kovensky) <diogomfranco@gmail.com>2015-01-25 17:00:20 +0900
commit081368dabf70b7cf751a8e4058f68e9c03935b6d (patch)
tree8a05fdb600f801cc00fd12059911e5ef466d40e6 /video/out
parent3b5b2144c34ab844b34253220e217505fc6ba430 (diff)
downloadmpv-081368dabf70b7cf751a8e4058f68e9c03935b6d.tar.bz2
mpv-081368dabf70b7cf751a8e4058f68e9c03935b6d.tar.xz
video: fix waiting for last frame/format reconfig
We still need to send the VO a duration in these cases. Disabling framedrop has logically absolutely nothing to do with these cases; it was overlooked in commit 918b06c4. So we always send the frame duration (or a guess for it), and check whether framedropping is actually enabled in the VO code. (It would be cleaner to send framedrop as a flag, but I don't care about that right now.)
Diffstat (limited to 'video/out')
-rw-r--r--video/out/vo.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/video/out/vo.c b/video/out/vo.c
index 9c5514ee4f..7c0fce8e55 100644
--- a/video/out/vo.c
+++ b/video/out/vo.c
@@ -566,6 +566,7 @@ static bool render_frame(struct vo *vo)
in->dropped_frame = duration >= 0 && end_time < next_vsync;
in->dropped_frame &= !(vo->driver->caps & VO_CAP_FRAMEDROP);
+ in->dropped_frame &= !(vo->global->opts->frame_dropping & 1);
// Even if we're hopelessly behind, rather degrade to 10 FPS playback,
// instead of just freezing the display forever.
in->dropped_frame &= mp_time_us() - in->last_flip < 100 * 1000;