mirror of
https://github.com/nyanmisaka/ffmpeg-rockchip.git
synced 2025-10-30 12:06:40 +08:00
ffmpeg: Favor filter graph based duration over ost->frame_rate in fps code
The fate change adds a last frame with a subtitle not displayed in the previous Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
11
ffmpeg.c
11
ffmpeg.c
@@ -900,15 +900,12 @@ static void do_video_out(AVFormatContext *s,
|
||||
if (ost->source_index >= 0)
|
||||
ist = input_streams[ost->source_index];
|
||||
|
||||
if(ist && ist->st->start_time != AV_NOPTS_VALUE && ist->st->first_dts != AV_NOPTS_VALUE && ost->frame_rate.num)
|
||||
duration = 1/(av_q2d(ost->frame_rate) * av_q2d(enc->time_base));
|
||||
|
||||
// We take the conservative approuch here and take the minimum even though
|
||||
// this should be correct on its own but a value too small is harmless, one
|
||||
// too big can lead to errors
|
||||
if (filter->inputs[0]->frame_rate.num > 0 &&
|
||||
filter->inputs[0]->frame_rate.den > 0)
|
||||
duration = FFMIN(duration, 1/(av_q2d(filter->inputs[0]->frame_rate) * av_q2d(enc->time_base)));
|
||||
duration = 1/(av_q2d(filter->inputs[0]->frame_rate) * av_q2d(enc->time_base));
|
||||
|
||||
if(ist && ist->st->start_time != AV_NOPTS_VALUE && ist->st->first_dts != AV_NOPTS_VALUE && ost->frame_rate.num)
|
||||
duration = FFMIN(duration, 1/(av_q2d(ost->frame_rate) * av_q2d(enc->time_base)));
|
||||
|
||||
if (!ost->filters_script &&
|
||||
!ost->filters &&
|
||||
|
||||
Reference in New Issue
Block a user