From 3530fdc78ed8ca6f246dcaeb761bea0f5b76fc44 Mon Sep 17 00:00:00 2001 From: Paul B Mahol Date: Tue, 17 Dec 2019 13:28:27 +0100 Subject: [PATCH] avfilter/vf_stack: set framerate to VFR when inputs frame rates differs --- libavfilter/vf_stack.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/libavfilter/vf_stack.c b/libavfilter/vf_stack.c index b9e87a4429..5bc4ccf6ed 100644 --- a/libavfilter/vf_stack.c +++ b/libavfilter/vf_stack.c @@ -310,6 +310,17 @@ static int config_output(AVFilterLink *outlink) outlink->frame_rate = frame_rate; outlink->sample_aspect_ratio = sar; + for (i = 1; i < s->nb_inputs; i++) { + AVFilterLink *inlink = ctx->inputs[i]; + if (outlink->frame_rate.num != inlink->frame_rate.num || + outlink->frame_rate.den != inlink->frame_rate.den) { + av_log(ctx, AV_LOG_VERBOSE, + "Video inputs have different frame rates, output will be VFR\n"); + outlink->frame_rate = av_make_q(1, 0); + break; + } + } + if ((ret = ff_framesync_init(&s->fs, ctx, s->nb_inputs)) < 0) return ret;