summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorwm4 <wm4@nowhere>2015-10-29 22:17:43 +0100
committerwm4 <wm4@nowhere>2015-10-29 22:17:43 +0100
commita1315c7644fd8214dad5a4d763fa841d47487cae (patch)
tree5a7dfe0996a65f3c287b560aa0495183f4f65691
parent532f05b83dcba6274e81aa7f754d6b40e9336ca1 (diff)
downloadmpv-a1315c7644fd8214dad5a4d763fa841d47487cae.tar.bz2
mpv-a1315c7644fd8214dad5a4d763fa841d47487cae.tar.xz
vo: take normal drop path when dropping in display-sync mode
I hope there wasn't a deeper reason for exiting early.
-rw-r--r--video/out/vo.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/video/out/vo.c b/video/out/vo.c
index 48812fbfdd..2926167b1e 100644
--- a/video/out/vo.c
+++ b/video/out/vo.c
@@ -623,9 +623,6 @@ static bool render_frame(struct vo *vo)
goto done;
}
- if (in->current_frame->display_synced && in->current_frame->num_vsyncs < 1)
- goto done;
-
frame = vo_frame_ref(in->current_frame);
assert(frame);
@@ -701,8 +698,10 @@ static bool render_frame(struct vo *vo)
// Setup parameters for the next time this frame is drawn. ("frame" is the
// frame currently drawn, while in->current_frame is the potentially next.)
in->current_frame->repeat = true;
- if (frame->display_synced)
+ if (frame->display_synced) {
in->current_frame->vsync_offset += in->vsync_interval;
+ in->dropped_frame |= in->current_frame->num_vsyncs < 1;
+ }
if (in->current_frame->num_vsyncs > 0)
in->current_frame->num_vsyncs -= 1;