Main Archive Specials Wiki | FAQ Links Submit Forum

RBJ Audio-EQ-Cookbook

References : Posted by Robert Bristow-Johnson
Linked file : EQ-Coefficients.pdf

Notes :
see attached file


Added on : 14/05/05 by didid[ AT ]skynet[ DOT ]be
Comment :

In your most recent version, you write:

    alpha = sin(w0)/(2*Q)       (case: Q)
          = sin(w0)*sinh( ln(2)/2 * BW * w0/sin(w0) )       (case: BW)
          = sin(w0)/2 * sqrt( (A + 1/A)*(1/S - 1) + 2 )        (case: S)

But the 'slope' case doesn't seem to work for me. It results in some kind of bad resonance at higher samplerates.

Now I found this 'beta' in an older version of your paper (I think), describing:

    beta  = sqrt(A)/Q   (for shelving EQ filters only)
          = sqrt(A)*sqrt[ (A + 1/A)*(1/S - 1) + 2 ]        (if shelf slope is specified)
          = sqrt[ (A^2 + 1)/S - (A-1)^2 ]

..and here the
sqrt(A)*sqrt[ (A + 1/A)*(1/S - 1) + 2 ]
formula works perfectly for me.

I must say I don't understand half of the theory, so it's probably my fault somewhere. But why the change in the newer version?

Added on : 20/05/05 by rbj[ AT ]audioimagination[ DOT ]com
Comment :
>But why the change in the newer version?

i wanted to get rid of an extraneous intermediate variable and there was enough similarity between alpha and beta that i changed the lowShelf and highShelf coefficient equations to be in terms of alpha rather than beta.

i believe if you use the new version as shown, in terms of alpha (but remember the coef equations are changed accordingly from the old version), it will come up with the same coefficients given the same boost gain, Q (or S), and shelf frequency (and same Fs).  lemme know if you still have trouble.

r b-j

Added on : 14/11/05 by swding[ AT ]yahoo[ DOT ]com
Comment :

Where can I find the source code?


Added on : 03/05/06 by ben_tj[ AT ]caramoule[ DOT ]com
Comment :

it's very nice! where can I find the source  
code please?            

Added on : 23/05/06 by scoofy (at) inf[ DOT ]elte[ DOT ]hu
Comment :
Look for "C++ class implementation of RBJ Filters" or "biquad.c" in the archive.

Added on : 07/07/06 by sundar_ranga[ AT ]yahoo[ DOT ]com
Comment :
could u plz tell me how to vary the shelf slope parameter . I want a slope of 6db/octave with second order . what Parameter i have to vary to acheive this???        

Added on : 07/07/06 by scoofy[ AT ]inf[ DOT ]elte[ DOT ]hu
Comment :
you have to vary the Q parameter to change the slope.

Added on : 09/08/09 by tomizett at uk2 dot net
Comment :
My apologies if I'm asking a daft question, but I seem to lack the mathematics skill to work this kind of thing out for myself.
I seem to be getting bad values (feedback coef.s > 1) out of these equations, and I think it's down to me feeding them bad Q values. What is the Q parameter that is used in this work? The only Q I've encountered before if centre-frequency/bandwidth, but this Q seems to be a different beast. Could anyone suggest how I should set the Q to (say) maintain a constant Fc/BW for a sweepable peaking EQ, or obtain a butterworth HP/LP filter?
Many thanks, Tom.

Add your own comment
Comments are displayed in fixed width, no HTML code allowed!


Are you human?

Site created and maintained by Bram
Graphic design by line.out | Server sponsered by fxpansion