问题
I need to equalize a music sample by modifying the FFT result. I know how to obtain the frequencies of each of the output imaginary numbers, the problem is modifying this values to obtain an "equalizer effect". I need to know how to scale this values. The size of the entry is 4096 samples, and the sample rate is 44100 HZ Thanks in Advance Alex
回答1:
You just need to scale the frequency domain bins. Note that these are complex values which you need to multiply by a scalar value, so you need to scale both the real and imaginary parts by the same factor.
Note that you should avoid abrupt changes between adjacent frequency domain bins as this will result in artefacts in the time domain.
来源:https://stackoverflow.com/questions/5814065/how-to-modify-fft-result-to-equalize-a-music-sample