X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=ffmpeg_filter.c;h=6824af6dee94a81d4f7f0683138bd0cbdfc39b23;hb=69342444145045bd52dca9298a1dd053f0164dde;hp=654c19d4c3b3e00a3410059b8d2eaae34bc739f7;hpb=8b63eeb6b1c2f9e7d762f32dbd42dae124591314;p=ffmpeg diff --git a/ffmpeg_filter.c b/ffmpeg_filter.c index 654c19d4c3b..6824af6dee9 100644 --- a/ffmpeg_filter.c +++ b/ffmpeg_filter.c @@ -542,22 +542,15 @@ static int configure_input_video_filter(FilterGraph *fg, InputFilter *ifilter, InputStream *ist = ifilter->ist; AVRational tb = ist->framerate.num ? av_inv_q(ist->framerate) : ist->st->time_base; - AVRational fr = ist->framerate.num ? ist->framerate : - ist->st->r_frame_rate; + AVRational fr = ist->framerate; AVRational sar; AVBPrint args; char name[255]; int pad_idx = in->pad_idx; int ret; - if (!ist->framerate.num && ist->st->codec->ticks_per_frame>1) { - AVRational codec_fr = av_inv_q(ist->st->codec->time_base); - AVRational avg_fr = ist->st->avg_frame_rate; - codec_fr.den *= ist->st->codec->ticks_per_frame; - if ( codec_fr.num>0 && codec_fr.den>0 && av_q2d(codec_fr) < av_q2d(fr)*0.7 - && fabs(1.0 - av_q2d(av_div_q(avg_fr, fr)))>0.1) - fr = codec_fr; - } + if (!fr.num) + fr = av_guess_frame_rate(input_files[ist->file_index]->ctx, ist->st, NULL); if (ist->st->codec->codec_type == AVMEDIA_TYPE_SUBTITLE) { ret = sub2video_prepare(ist);