Also I am a bit confused what happens after a maintainer accepts or is satisfied with this patch (as I am unable to commit anything to my fork on code.ffmpeg.org) so any help on this would be great (it is my first time if it wasnt obvious enough)
On Sun, Nov 16, 2025 at 4:19 PM nots1dd <[email protected]> wrote: > > From what I understand, we only need to be moving N bytes as window_size > - s->hop_size after inverse fft to the buffer for overlap. Currently the > compiler throws a warning regarding possible overflow and this patch > fixs it. > --- > libavfilter/af_afftfilt.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/libavfilter/af_afftfilt.c b/libavfilter/af_afftfilt.c > index 08cdcae2f7..4fc28c6143 100644 > --- a/libavfilter/af_afftfilt.c > +++ b/libavfilter/af_afftfilt.c > @@ -250,6 +250,7 @@ static int filter_channel(AVFilterContext *ctx, void > *arg, int jobnr, int nb_job > { > AFFTFiltContext *s = ctx->priv; > const int window_size = s->window_size; > + const int hop_size = s->hop_size; > const float *window_lut = s->window_func_lut; > const float f = sqrtf(1.f - s->overlap); > const int channels = s->channels; > @@ -294,7 +295,7 @@ static int filter_channel(AVFilterContext *ctx, void > *arg, int jobnr, int nb_job > > s->itx_fn(s->ifft[ch], fft_out, fft_temp, sizeof(*fft_temp)); > > - memmove(buf, buf + s->hop_size, window_size * sizeof(float)); > + memmove(buf, buf + hop_size, (window_size - hop_size) * > sizeof(float)); > for (int i = 0; i < window_size; i++) > buf[i] += fft_out[i].re * window_lut[i] * f; > } > -- > 2.51.0 > _______________________________________________ ffmpeg-devel mailing list -- [email protected] To unsubscribe send an email to [email protected]
