Commit 46bf3b92 authored by Wim Taymans's avatar Wim Taymans Committed by Wim Taymans

ffdec: disable interpolation when dropping frames

When we are dropping frames because of QoS disable the DTS interpolation because
we won't be able to update the timestamps and end up setting the wrong
timestamps. Instead, simply use the timestamps from ffmpeg.
parent df248a7a
......@@ -1683,6 +1683,14 @@ gst_ffmpegdec_video_frame (GstFFMpegDec * ffmpegdec,
if (len < 0 && (mode_switch || ffmpegdec->context->hurry_up))
len = 0;
if (len > 0 && have_data <= 0 && (mode_switch
|| ffmpegdec->context->hurry_up)) {
/* we consumed some bytes but nothing decoded and we are skipping frames,
* disable the interpollation of DTS timestamps */
ffmpegdec->ts_is_dts = FALSE;
ffmpegdec->last_out = -1;
}
/* no data, we're done */
if (len < 0 || have_data <= 0)
goto beach;
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment