From ed02563ce0c3df823e96af1178bc566cb7eaac60 Mon Sep 17 00:00:00 2001 From: Paul B Mahol Date: Thu, 2 Jan 2020 16:22:47 +0100 Subject: [PATCH] avfilter/af_dynaudnorm: do not enqueue flush buffers --- libavfilter/af_dynaudnorm.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/libavfilter/af_dynaudnorm.c b/libavfilter/af_dynaudnorm.c index 2283fafb14..e170a5b2e5 100644 --- a/libavfilter/af_dynaudnorm.c +++ b/libavfilter/af_dynaudnorm.c @@ -686,10 +686,14 @@ static int filter_frame(AVFilterLink *inlink, AVFrame *in) ret = ff_filter_frame(outlink, out); } - av_frame_make_writable(in); - cqueue_enqueue(s->is_enabled, !ctx->is_disabled); - analyze_frame(s, in); - ff_bufqueue_add(ctx, &s->queue, in); + if (!s->eof) { + av_frame_make_writable(in); + cqueue_enqueue(s->is_enabled, !ctx->is_disabled); + analyze_frame(s, in); + ff_bufqueue_add(ctx, &s->queue, in); + } else { + av_frame_free(&in); + } return ret; }