From c9c5cd8eef499ba08e08898bda71183e39d570ea Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= Date: Thu, 9 May 2013 08:54:45 +0200 Subject: [PATCH] videodecoder: If a frame is to be dropped, don't update timestamps --- gst-libs/gst/video/gstvideodecoder.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/gst-libs/gst/video/gstvideodecoder.c b/gst-libs/gst/video/gstvideodecoder.c index 0c7055a063..056a528736 100644 --- a/gst-libs/gst/video/gstvideodecoder.c +++ b/gst-libs/gst/video/gstvideodecoder.c @@ -2167,9 +2167,14 @@ gst_video_decoder_prepare_finish_frame (GstVideoDecoder * if (GST_VIDEO_CODEC_FRAME_IS_DECODE_ONLY (frame)) return; + /* If the frame is to be dropped, we should not update the timestamps + * either */ + if (dropping) + return; + /* If the frame is meant to be output but we don't have an output_buffer * we have a problem :) */ - if (G_UNLIKELY ((frame->output_buffer == NULL) && !dropping)) + if (G_UNLIKELY (frame->output_buffer == NULL)) goto no_output_buffer; if (GST_CLOCK_TIME_IS_VALID (frame->pts)) {