I have a way (the standard way) to correct for my room's acoustics, but I'm wondering if there's a more efficient algorithm, something that doesn't involve going to the frequency domain maybe?

  1. I have measured an IR in my room, where my speaker will be playing.

  2. I convert this IR to the frequency domain w/ FFT and see some peaks and dips.

  3. I want to correct for these peaks and dips so I apply roughly the opposite EQ changes on some of the bigger dips and peaks to flatten the spectrum.

  4. Take the inverse FFT to get back the corrected IR.

  5. Convolve this corrected IR with the music signal.

Any references to literature/books would also be much appreciated!

  • $\begingroup$ so what's your specific problem with going to the frequency domain? Background: in digital communications, one of the strengths of OFDM (a system that transports data by data->IFFT->channel->FFT) is that instead of finding the parameter set of a single large equalizer for a bandwidth of $B$, you just need to find $N$ parameters of much simpler equalizers for channels of $\frac BN$. That's, by far, the easier and faster solved problem. $\endgroup$ Jan 24, 2018 at 17:49
  • $\begingroup$ I thought it's slow to go to the frequency domain and back. Is that not the case? and wondering what the standard way to do this is. $\endgroup$
    – MaxRunFast
    Jan 28, 2018 at 3:09
  • 1
    $\begingroup$ Define "slow": there's certainly things that you can do to a signal that are faster than a long FFT. But: for example, convolution with long filters is relative CPU-intense if done directly in time domain, which is the reason it's often done as fast convolution by transforming the signal to frequency domain, applying a specific overlapping multiplication with the filter, and transforming back to time domain. So, the fft is usually among those things that are very efficient. $\endgroup$ Jan 28, 2018 at 3:14
  • $\begingroup$ After more research, I see what you mean. Thanks for the discussion :). Looking back, it was a bit of a stupid question, but I learned a lot asking it and receiving your detailed response. $\endgroup$
    – MaxRunFast
    Feb 6, 2018 at 21:36


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.