aboutsummaryrefslogtreecommitdiffstats
path: root/libavfilter/af_dynaudnorm.c
diff options
context:
space:
mode:
authorPaul B Mahol <onemda@gmail.com>2020-01-02 16:22:47 +0100
committerPaul B Mahol <onemda@gmail.com>2020-01-02 16:28:38 +0100
commited02563ce0c3df823e96af1178bc566cb7eaac60 (patch)
tree2ba1e8c1a377d236aed9f63b9d5d5102ca162f88 /libavfilter/af_dynaudnorm.c
parent12c4d00c10cb73f1976c8de5b23b1405803bd454 (diff)
downloadffmpeg-ed02563ce0c3df823e96af1178bc566cb7eaac60.tar.gz
avfilter/af_dynaudnorm: do not enqueue flush buffers
Diffstat (limited to 'libavfilter/af_dynaudnorm.c')
-rw-r--r--libavfilter/af_dynaudnorm.c12
1 files 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;
}