I have just started diving into the magic world of EQ. Basically, I can hear what the effects are, and see them via a freq-analyser, however, what i'd really like is a way I can represent any sound whose frequencies across the entire spectrum is represented as a flatline, with any curves occurring on the graph being the direct result of the effects that the EQ is having.

So basically, any troughs/peaks in the graphs are not the frequencies themselves, but the mathematical difference of the original frequency, the amplification/attenuation of any given frequency of that sound.

By the way, I got this idea off an article: http://www.soundonsound.com/sos/1995_articles/mar95/eq.html so the genius

So the genius idea doesn't belong to me ;)

2 Answers 2


The fun thing about working in the frequency domain is that the maths are really simple. For example, the effect of an equalizer is completely independent of the signal you're feeding it, it's just a simple multiplication of the signal (in frequency domain) with the equalizer frequency response.

What I'm getting at is that any visual equalizer already exactly shows what you want. So, if you have an equalizer that has settings for attenuating different frequencies (e.g., the one from windows media player), and you draw a nice smooth line through the settings, you already have the plot you want! Again, this is completely independent* of the signal you're feeding it.

Now what if you have an equalizer that has some vaguely named knobs like low, mid and high? Then you have a bit of a problem. Although it's possible to create the plot you want (divide the Fourier transform of the original and the equalized sound, and take the absolute value - i.e., what JCPedroza was getting at), chances are that it will be a very, very ugly plot. This is because, especially in music, many frequencies will not be present in the signal (if someone's singing an E, you won't have a lot of F in your signal), but above method will still try and get a frequency response at the frequency of a hypothetical F note. The result: a completely unreadable plot. The only 'easy' way to get a nice plot is to average a bunch of white noise fed through your equalizer.

*Completely independent in theory. In practice, there are always inaccuracies.

  • Mind, a) that “completely independent” is true for ideal linear EQs. Most digital EQs are in fact perfectly linear (up to floating-point unaccuracies, but these are neglectable now we use 64-bit for everything), but analogue EQs (possibly modelling) introduce more or less nonlinear distortion, which is not simpler in the frequency domain. b) even linear EQs that present you a full curve may do unexpected things to the phase of the signal. Only for constant-phase EQs (aka “linear phase”, confusingly) you really get a real multiplication in time domain with the response. Jul 8, 2015 at 21:32

You want to plot the transfer function or the frequency response of your system (in this case an audio signal processed by an equalizer).

Googling around I found tools like VST Plugin Analyzer and Deconvolver. You can find both here, and there's a tutorial on the former here.

If you are into coding you should be able to implement one yourself with a plotting library and an audio library. I remember doing something similar in Python, but it was a long time ago and can't remember many of the details. We used matplotlib for plotting plus other library to handle audio.

  • +1 nice answer! I looked at your profile and saw that you committed to Materials Modeling SE. Did you hear that it's in Private Beta now? You don't have to fulfil commitment but it would be nice if you could join the community! materials.stackexchange.com May 15, 2020 at 22:44
  • @user1271772 Completely forgot about that! I was looking forward for that commitment, thanks! May 15, 2020 at 23:16

Your Answer

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

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