From 6d5e9ed67cf0b720d66df2214f2e8e195830472d Mon Sep 17 00:00:00 2001 From: Paul B Mahol Date: Mon, 3 Feb 2020 09:36:52 +0100 Subject: [PATCH] avfilter/vf_xfade: move passthrough code before eof check --- libavfilter/vf_xfade.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/libavfilter/vf_xfade.c b/libavfilter/vf_xfade.c index ab38905b71..543c675994 100644 --- a/libavfilter/vf_xfade.c +++ b/libavfilter/vf_xfade.c @@ -978,6 +978,9 @@ static int xfade_activate(AVFilterContext *ctx) ret = ff_inlink_consume_frame(ctx->inputs[1], &in); if (ret < 0) { return ret; + } else if (ret > 0) { + in->pts = (in->pts - s->last_pts) + s->pts; + return ff_filter_frame(outlink, in); } else if (ff_inlink_acknowledge_status(ctx->inputs[1], &status, &pts)) { ff_outlink_set_status(outlink, status, s->pts); return 0; @@ -986,9 +989,6 @@ static int xfade_activate(AVFilterContext *ctx) ff_inlink_request_frame(ctx->inputs[1]); return 0; } - } else { - in->pts = (in->pts - s->last_pts) + s->pts; - return ff_filter_frame(outlink, in); } }