1
0
mirror of https://git.ffmpeg.org/ffmpeg.git synced 2026-10-24 02:09:03 +03:00

avfilter/firequalizer: reject overflowing delays

Signed-off-by: Ayoub Nabil Boubagrat <237098474+ayoubnabil@users.noreply.github.com>
This commit is contained in:
Ayoub Nabil Boubagrat
2026-08-28 11:53:43 +02:00
committed by michaelni
parent 71f9ea2d84
commit 31e92a56ca

View File

@@ -728,6 +728,7 @@ static int config_input(AVFilterLink *inlink)
FilterLink *l = ff_filter_link(inlink);
AVFilterContext *ctx = inlink->dst;
FIREqualizerContext *s = ctx->priv;
const double delay_samples = inlink->sample_rate * s->delay;
float iscale, scale = 1.f;
int rdft_bits, ret;
@@ -736,7 +737,11 @@ static int config_input(AVFilterLink *inlink)
s->next_pts = 0;
s->frame_nsamples_max = 0;
s->fir_len = FFMAX(2 * (int)(inlink->sample_rate * s->delay) + 1, 3);
if (!isfinite(delay_samples) || delay_samples >= (INT_MAX + 1.0) / 2) {
av_log(ctx, AV_LOG_ERROR, "too large or non-finite delay, please decrease it.\n");
return AVERROR(EINVAL);
}
s->fir_len = FFMAX(2 * (int)delay_samples + 1, 3);
s->remaining = s->fir_len - 1;
for (rdft_bits = RDFT_BITS_MIN; rdft_bits <= RDFT_BITS_MAX; rdft_bits++) {