- s->filter((void **)out->extended_data, (void **)s->prev->extended_data, (const void **)in->extended_data,
- in->nb_samples, in->channels, s->mult, s->clip);
+ td.d = (void **)out->extended_data;
+ td.s = (const void **)in->extended_data;
+ td.p = (void **)s->prev->extended_data;
+ td.nb_samples = in->nb_samples;
+ td.channels = in->channels;
+ td.mult = ctx->is_disabled ? 0.f : s->mult;
+ td.clip = s->clip;
+ ctx->internal->execute(ctx, s->filter, &td, NULL, FFMIN(inlink->channels,
+ ff_filter_get_nb_threads(ctx)));