I’ve passed a sine sweep wave file into an equalizer plugin I have, now I want to model it in matlab so that I can ‘copy’ the equalizer setting sound. I’ve both in.wav and out.wav audio files and Matlab but I don’t know how to extract a transfer function and then build a model to exactly recreate it using iir filters. Can someone help me please?

  • $\begingroup$ Hmm... don't your equalizer plugin have a GUI with some parameter info available (values like filter cut-off frequency, Q or BW and gain)? $\endgroup$ – Juha P Jun 19 at 9:48

The OP is trying to do what we would refer to as channel estimation. I am linking two posts below where this is all worked out in greater detail but do want to make the point first that the choice of "sounding pattern" is important. The channel can only be estimated where there is signal energy in the frequency domain, so the sine sweep is an excellent choice as long as the sweep is over all the frequencies of interest. Other sounding patterns commonly used are pseudo-random noise generated with PN sequences (from linear feedback shift registers: LFSR).

An optimized FFT chirp for channel estimation:

How can I plot the frequency response on a bode diagram with Fast Fourier Transform?

Using Wiener-Hopf equations for least-squares channel estimation:

Compensating Loudspeaker frequency response in an audio signal

Related posts on PN sequences as an alternate sounding pattern:

What are the advantages and disadvantages of PN sequence over Walsh code

Sequence Length for a Linear Feedback Shift Register

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.