avfilter/af_afir: move allocation stuff where it belongs
This commit is contained in:
parent
7312e027d6
commit
e57053417a
@ -286,6 +286,13 @@ static int convert_coeffs(AVFilterContext *ctx)
|
|||||||
|
|
||||||
for (n = av_log2(s->minp); (1 << n) < s->nb_taps; n++);
|
for (n = av_log2(s->minp); (1 << n) < s->nb_taps; n++);
|
||||||
N = FFMIN(n, av_log2(s->maxp));
|
N = FFMIN(n, av_log2(s->maxp));
|
||||||
|
|
||||||
|
s->seg.coeff = av_calloc(ctx->inputs[1]->channels, sizeof(*s->seg.coeff));
|
||||||
|
s->seg.rdft = av_calloc(ctx->inputs[0]->channels, sizeof(*s->seg.rdft));
|
||||||
|
s->seg.irdft = av_calloc(ctx->inputs[0]->channels, sizeof(*s->seg.irdft));
|
||||||
|
if (!s->seg.coeff || !s->seg.rdft || !s->seg.irdft)
|
||||||
|
return AVERROR(ENOMEM);
|
||||||
|
|
||||||
s->seg.fft_length = (1 << (N + 1)) + 1;
|
s->seg.fft_length = (1 << (N + 1)) + 1;
|
||||||
s->seg.part_size = 1 << (N - 1);
|
s->seg.part_size = 1 << (N - 1);
|
||||||
s->seg.block_size = FFALIGN(s->seg.fft_length, 32);
|
s->seg.block_size = FFALIGN(s->seg.fft_length, 32);
|
||||||
@ -570,12 +577,6 @@ static int config_output(AVFilterLink *outlink)
|
|||||||
outlink->channel_layout = ctx->inputs[0]->channel_layout;
|
outlink->channel_layout = ctx->inputs[0]->channel_layout;
|
||||||
outlink->channels = ctx->inputs[0]->channels;
|
outlink->channels = ctx->inputs[0]->channels;
|
||||||
|
|
||||||
s->seg.coeff = av_calloc(ctx->inputs[1]->channels, sizeof(*s->seg.coeff));
|
|
||||||
s->seg.rdft = av_calloc(outlink->channels, sizeof(*s->seg.rdft));
|
|
||||||
s->seg.irdft = av_calloc(outlink->channels, sizeof(*s->seg.irdft));
|
|
||||||
if (!s->seg.coeff || !s->seg.rdft || !s->seg.irdft)
|
|
||||||
return AVERROR(ENOMEM);
|
|
||||||
|
|
||||||
s->nb_channels = outlink->channels;
|
s->nb_channels = outlink->channels;
|
||||||
s->nb_coef_channels = ctx->inputs[1]->channels;
|
s->nb_coef_channels = ctx->inputs[1]->channels;
|
||||||
s->pts = AV_NOPTS_VALUE;
|
s->pts = AV_NOPTS_VALUE;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user