summaryrefslogtreecommitdiff
path: root/libavfilter/vf_xfade.c
diff options
context:
space:
mode:
authorPaul B Mahol <onemda@gmail.com>2021-03-14 13:06:50 +0100
committerPaul B Mahol <onemda@gmail.com>2021-03-14 13:15:21 +0100
commit2aece147d594f78afc969100c0fc637f4b1ebe86 (patch)
treed8e7b6b7e74a89fb84a2f963667d607505df261b /libavfilter/vf_xfade.c
parent1d61a314970ef9307dd8ac27eea4a46523e27239 (diff)
avfilter/vf_xfade: drop unused frames from inactive inputs
Diffstat (limited to 'libavfilter/vf_xfade.c')
-rw-r--r--libavfilter/vf_xfade.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/libavfilter/vf_xfade.c b/libavfilter/vf_xfade.c
index 4e07d7b525..cb4fae21d9 100644
--- a/libavfilter/vf_xfade.c
+++ b/libavfilter/vf_xfade.c
@@ -1851,6 +1851,11 @@ static int xfade_activate(AVFilterContext *ctx)
FF_FILTER_FORWARD_STATUS_BACK_ALL(outlink, ctx);
if (s->xfade_is_over) {
+ if (!s->eof[0]) {
+ ret = ff_inlink_consume_frame(ctx->inputs[0], &in);
+ if (ret > 0)
+ av_frame_free(&in);
+ }
ret = ff_inlink_consume_frame(ctx->inputs[1], &in);
if (ret < 0) {
return ret;