Commit 88956f73 authored by Michael Niedermayer's avatar Michael Niedermayer

ffmpeg: use timestamp from before and after the decoder to detect backward...

ffmpeg: use timestamp from before and after the decoder to detect backward moving dts for discontinuity detection

This should make discontinuity detection more robust and detect
more cases. Timestamps after the decoder can be delayed due to threads,
timestamps before can be missing

no testcase available/known
Signed-off-by: 's avatarMichael Niedermayer <michaelni@gmx.at>
parent de2a2caf
...@@ -3170,7 +3170,7 @@ static int process_input(int file_index) ...@@ -3170,7 +3170,7 @@ static int process_input(int file_index)
if(delta < -1LL*dts_delta_threshold*AV_TIME_BASE || if(delta < -1LL*dts_delta_threshold*AV_TIME_BASE ||
(delta > 1LL*dts_delta_threshold*AV_TIME_BASE && (delta > 1LL*dts_delta_threshold*AV_TIME_BASE &&
ist->st->codec->codec_type != AVMEDIA_TYPE_SUBTITLE) || ist->st->codec->codec_type != AVMEDIA_TYPE_SUBTITLE) ||
pkt_dts + AV_TIME_BASE/10 < ist->pts){ pkt_dts + AV_TIME_BASE/10 < FFMAX(ist->pts, ist->dts)){
ifile->ts_offset -= delta; ifile->ts_offset -= delta;
av_log(NULL, AV_LOG_DEBUG, av_log(NULL, AV_LOG_DEBUG,
"timestamp discontinuity %"PRId64", new offset= %"PRId64"\n", "timestamp discontinuity %"PRId64", new offset= %"PRId64"\n",
......
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