diff --git a/libavfilter/af_lv2.c b/libavfilter/af_lv2.c index e7f3f9c588..c34f6eb30c 100644 --- a/libavfilter/af_lv2.c +++ b/libavfilter/af_lv2.c @@ -74,6 +74,7 @@ typedef struct LV2Context { float *controls; LilvInstance *instance; + int instance_activated; LilvNode *atom_AtomPort; LilvNode *atom_Sequence; @@ -387,6 +388,9 @@ static int config_output(AVFilterLink *outlink) inlink->min_samples = inlink->max_samples = 4096; } + lilv_instance_activate(s->instance); + s->instance_activated = 1; + return 0; } @@ -562,6 +566,8 @@ static av_cold void uninit(AVFilterContext *ctx) { LV2Context *s = ctx->priv; + if (s->instance_activated) + lilv_instance_deactivate(s->instance); lilv_node_free(s->powerOf2BlockLength); lilv_node_free(s->fixedBlockLength); lilv_node_free(s->boundedBlockLength);