I want to make a graph that shows like the EQ affects to the sound in its different frequencies.
For this, I take as basic example to the Eq of Winamp. This draws a curve that has like center to the affected frequency. This is relatively easy of making, the curve ascends in a certain frequency when the gain increases…
The problem is when I want to discover to the width of the frequencies that are affected with “Bandwidth” (1 to 36), this believes that is called “Q” (in Sound Forge Plug-Ins, Reason…). This, the same as Fmod, is measured in “semitones”.
I believe that a formula exists to discover the width that represent the semitones through the frequency. For example: Center: 500Hz – Ganancia:10 – Bandwidth:20, it affects the range 200Hz-800Hz (I don’t know if it is this way, it is only an example…;)
Does somebody know it?
Sorry for my bad english.
- LeoCombes asked 16 years ago
The range depends strictly on your filter implementation. Better filters give smaller width windows.
Check out on the Net if you find some formulas regarding filters, expecially first and second order filters (if it is as I think, EQ filters should be at least second order).
Probably the “Q” you see in reason and other programs is the resonance of the filtered output, which doesn’t deal with width.
You have to use logarithmic scales, dB and to know the charekteristics of the LPF/HPF/BPF and the others like Shelving/Notch, etc. and a lot of physical math of capacitors, coils, resonance circuit and this.
I have never learned the physical background, so I can only tell you some ‘results’:
1st, 2nd, … order does not describe the quality of a filter. One order just means -6 dB per octave beginning at the point of a given frequency, where the -3dB-tolerance is exceeded.
So a 2nd order LPF (low pass filter) at 1000Hz lowers the level -12dB each octave above 1000Hz, while it’s value of 1000 Hz means the point where it lefts the tolerance of -3 dB. So here: 1000 Hz 2nd order LPF => approx. 2000 Hz – 15 dB.
Analog high-order-filters are complex to build – and more expensive – and often used in orders of above 3 for quality-more-way-speaker to seperate their channels to prevent ‘phase-garbage’.
the BPF (band pass filter) works around a given center frequency and lowers (or raises) the level inside a given bandwidth, which is adjustable by the Q-factor.
If Fc is the center frequency and Fl the lower one, where -3dB is reached, and Fu the upper one, where -3dB is reached, then is Q = Fc / (Fu-Fl), so Q = Fc / deltaF.
Have in mind, that changing Fc and leaving Q the same, changes deltaF, and that Q = 1 means Fc = deltaF, so -3dB at approx. Fc + 1/2 Fc
a) + 9dB at 2000 Hz , Q=1 => ~ 1kHz and 3kHz + 6 dB
b) -12dB at 4000 Hz, Q=4 => deltaF = 1000 Hz => ~3500 Hz and 4500 Hz-9dB
Purely this is not enough information for you to draw an exact EQ-graph.
Sorry I’m a bit confused now 😆
[size=75:atu4vr74]At least I trained my English a bit…[/size:atu4vr74]
The error that I mentioned maybe doesn’t exist.
In the definition of Q, does Waves say that the curve is modified so that it is easier of using and more musical (?). So this should work like says “not_logged_in_again”. This is a good explanation to as converting semitones (according to Fmod) to wide of band (in frequency).
I am working in the code, if it works perhaps I publish it (if to somebody it interests him).
And here’s one more:
FrequencySemitoneAbove = Frequency * [12th sqare of 2]
466,16 Hz = 440 Hz * 1,059
=> example :
1000 Hz and 20 semitones bandwidth:
=> 1000 Hz – 10 semitones – 1000 Hz + 10 semitones
=> Fl = 1000 Hz * [12th square of 2]^-10 = 561,23 Hz (and +/-3dB rel. to 1000 Hz)
=> Fu = 1000 Hz * [12th square of 2]^10 = 1781,8 Hz (and +/- 3dB rel. to 1000 Hz)
=> deltaFQ = 1220,57 Hz
=> Q = 1000 / 1220,57 = 0,819
Although I read this message in the moment that was published, I could not respond before for problems of time. Excuses.
I found very interesting what proposes “not_logged_in_again”. I proved it in Sound Forge with the Eq of Waves (paragraphic) and approaches enough to the values of their last example, although forgot to include the gain value for the central band (I suppose that it should be equal to the ends +3db).
In the screenshot it is seen that a gain is applied to the band 5, of +9db in 1000Hz with Q = 0,8 (nearer value at 0,819). The bands 4 and 6 are disabled and it shows that a small error exists (the points don’t cross the line).
I remind them that my intention is to generate the curve that you leave in red color with a Eq of the type bell (or bandpass filter).
Thank you and excuse the delay (and my english).
Please login first to submit.