X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=ffmpeg.c;h=5ccbf100121b4c9a8e3980c1a5ca02df71f88fab;hb=59725592a97fc65a917001bc248567666dfded5a;hp=a8167ede3fc397fedb255df169df74dbea6c5dd3;hpb=a788949255d5fde243575b556e2950feafdc6755;p=ffmpeg diff --git a/ffmpeg.c b/ffmpeg.c index a8167ede3fc..5ccbf100121 100644 --- a/ffmpeg.c +++ b/ffmpeg.c @@ -2375,6 +2375,7 @@ static int transcode_init(void) codec->frame_size = icodec->frame_size; codec->audio_service_type = icodec->audio_service_type; codec->block_align = icodec->block_align; + codec->delay = icodec->delay; if((codec->block_align == 1 || codec->block_align == 1152 || codec->block_align == 576) && codec->codec_id == AV_CODEC_ID_MP3) codec->block_align= 0; if(codec->codec_id == AV_CODEC_ID_AC3) @@ -3169,7 +3170,7 @@ static int process_input(int file_index) if(delta < -1LL*dts_delta_threshold*AV_TIME_BASE || (delta > 1LL*dts_delta_threshold*AV_TIME_BASE && 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; av_log(NULL, AV_LOG_DEBUG, "timestamp discontinuity %"PRId64", new offset= %"PRId64"\n",