Continuing the discussion from ofxFft: FFTW + KISS FFT wrapper :

Mmmmh … it seems that I didn’t read the whole thread.
Finally I got a modified version of the EQ example to work.
In fact I can say the FFT-> IFFT works perfectly when no transformation is done to the amplitude signal, but as soon as I try to apply a spectral equalization (with a simple gaussian) some audio clics occur. The equalization sounds effective but the signal is pretty much destroyed.
I don’t know if I should try to improve the way I apply filtering (by applying the gaussian in the bark scale rather than in the frequency scale, or by smoothing the amplitude bins …?), or if the problem lies somewhere else.
These clics sound like a problem that could arise from applying a hamming envelope in a wrong way (they are periodic, like a window).
This can’t be a mutex problem because I lock everything in audioReceived() and audioRequested(), and it’s the only way I get clean signal with no transformation (otherwise sporadic noise bursts occur).
Or maybe this could be a phase issue. Am I supposed to modify the phase bins anytime I modify the amplitude bins to keep some kind of coherence between them ? I don’t remember reading so anywhere.

Again, thank you for any clue.

Joseph

Hello Joseph,
im in trouble with the inverse FFT, i have a series of clics, and i don´t know whats going on, do you resolve this problem ?

The glitch applies to the function setPolar, when applying a filter (i´m applying a flat low pass filter).
The graph below show before and after the setPolar (both are the inverse FFT outputs):

@kylemcdonald

Researching im realize that problem is a classical Frequency-domain filtering issue: