summaryrefslogtreecommitdiffstats
path: root/video/decode/dec_video.c
diff options
context:
space:
mode:
Diffstat (limited to 'video/decode/dec_video.c')
-rw-r--r--video/decode/dec_video.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/video/decode/dec_video.c b/video/decode/dec_video.c
index af55c66811..509daf7cd8 100644
--- a/video/decode/dec_video.c
+++ b/video/decode/dec_video.c
@@ -211,6 +211,10 @@ bool video_init_best_codec(struct dec_video *d_video, char* video_decoders)
static void add_avi_pts(struct dec_video *d_video, double pts)
{
if (pts != MP_NOPTS_VALUE) {
+ int delay = -1;
+ video_vd_control(d_video, VDCTRL_QUERY_UNSEEN_FRAMES, &delay);
+ if (delay >= 0 && delay < d_video->num_buffered_pts)
+ d_video->num_buffered_pts = delay;
if (d_video->num_buffered_pts == MP_ARRAY_SIZE(d_video->buffered_pts)) {
MP_ERR(d_video, "Too many buffered pts\n");
} else {