Commit a582705d authored by Michael Niedermayer's avatar Michael Niedermayer

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: 's avatarMichael Niedermayer <michaelni@gmx.at>
parent bf8bcd3b
...@@ -900,15 +900,12 @@ static void do_video_out(AVFormatContext *s, ...@@ -900,15 +900,12 @@ static void do_video_out(AVFormatContext *s,
if (ost->source_index >= 0) if (ost->source_index >= 0)
ist = input_streams[ost->source_index]; 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 && if (filter->inputs[0]->frame_rate.num > 0 &&
filter->inputs[0]->frame_rate.den > 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 && if (!ost->filters_script &&
!ost->filters && !ost->filters &&
......
...@@ -52,6 +52,7 @@ ...@@ -52,6 +52,7 @@
0, 47, 47, 1, 518400, 0xde69683f 0, 47, 47, 1, 518400, 0xde69683f
0, 48, 48, 1, 518400, 0x7df08fba 0, 48, 48, 1, 518400, 0x7df08fba
0, 49, 49, 1, 518400, 0xbab197ea 0, 49, 49, 1, 518400, 0xbab197ea
0, 50, 50, 1, 518400, 0x902285d9
1, 15355, 15355, 4733, 2094, 0x3c171425, F=0x0 1, 15355, 15355, 4733, 2094, 0x3c171425, F=0x0
1, 48797, 48797, 2560, 2480, 0x7c0edf21, F=0x0 1, 48797, 48797, 2560, 2480, 0x7c0edf21, F=0x0
1, 51433, 51433, 2366, 3059, 0xc95b8a05, F=0x0 1, 51433, 51433, 2366, 3059, 0xc95b8a05, F=0x0
......
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