Skip to main content

Lab · Biquad design

Computed

All-pass filters, corner by corner

Leaves every magnitude alone and shifts phase, passing through −180° at f0. Every ISO third-octave centre from 20 Hz to 20 kHz, solved at 48 kHz and seven other sample rates.

Every corner, with what changes across the sweep

The pole radius column is the one worth reading down. It rises toward 1 as the corner drops relative to the sample rate, and it is what decides the last column: the 3 corners at and below 40 Hz do not survive 16-bit fixed point at 48 kHz.

CornerAt f₀Pole radius @ 48 kHz16-bit fixed pointb0 · b1 · b2 · a1 · a2 @ 48 kHz
20 Hz0.00 dB0.998692diverges0.997385432 · -1.997378587 · 1.000000000 · -1.997378587 · 0.997385432
25 Hz0.00 dB0.998365diverges0.996732859 · -1.996722168 · 1.000000000 · -1.996722168 · 0.996732859
31.5 Hz0.00 dB0.997940holds · ≤ 0.000 dB0.995885155 · -1.995868188 · 1.000000000 · -1.995868188 · 0.995885155
40 Hz0.00 dB0.997385diverges0.994777708 · -1.994750364 · 1.000000000 · -1.994750364 · 0.994777708
50 Hz0.00 dB0.996733holds · ≤ 0.000 dB0.993476410 · -1.993433713 · 1.000000000 · -1.993433713 · 0.993476410
60 Hz0.00 dB0.996081holds · ≤ 0.000 dB0.992176820 · -1.992115377 · 1.000000000 · -1.992115377 · 0.992176820
80 Hz0.00 dB0.994778holds · ≤ 0.000 dB0.989582759 · -1.989473669 · 1.000000000 · -1.989473669 · 0.989582759
100 Hz0.00 dB0.993476holds · ≤ 0.000 dB0.986995516 · -1.986825285 · 1.000000000 · -1.986825285 · 0.986995516
125 Hz0.00 dB0.991852holds · ≤ 0.000 dB0.983771035 · -1.983505484 · 1.000000000 · -1.983505484 · 0.983771035
160 Hz0.00 dB0.989583holds · ≤ 0.000 dB0.979274600 · -1.978840513 · 1.000000000 · -1.978840513 · 0.979274600
200 Hz0.00 dB0.986996holds · ≤ 0.000 dB0.974161242 · -1.973484746 · 1.000000000 · -1.973484746 · 0.974161242
250 Hz0.00 dB0.983772holds · ≤ 0.000 dB0.967807571 · -1.966753982 · 1.000000000 · -1.966753982 · 0.967807571
315 Hz0.00 dB0.979597holds · ≤ 0.000 dB0.959610737 · -1.957945114 · 1.000000000 · -1.957945114 · 0.959610737
400 Hz0.00 dB0.974166holds · ≤ 0.000 dB0.948998646 · -1.946327611 · 1.000000000 · -1.946327611 · 0.948998646
500 Hz0.00 dB0.967816holds · ≤ 0.000 dB0.936667929 · -1.932521374 · 1.000000000 · -1.932521374 · 0.936667929
630 Hz0.00 dB0.959628holds · ≤ 0.000 dB0.920885114 · -1.914357062 · 1.000000000 · -1.914357062 · 0.920885114
800 Hz0.00 dB0.949033holds · ≤ 0.000 dB0.900663293 · -1.890251261 · 1.000000000 · -1.890251261 · 0.900663293
1 kHz0.00 dB0.936734holds · ≤ 0.000 dB0.877470465 · -1.861408445 · 1.000000000 · -1.861408445 · 0.877470465
1.25 kHz0.00 dB0.921614holds · ≤ 0.000 dB0.849372773 · -1.824671315 · 1.000000000 · -1.824671315 · 0.849372773
1.6 kHz0.00 dB0.900925holds · ≤ 0.000 dB0.811666661 · -1.772077397 · 1.000000000 · -1.772077397 · 0.811666661
2 kHz0.00 dB0.877973holds · ≤ 0.000 dB0.770836849 · -1.710497046 · 1.000000000 · -1.710497046 · 0.770836849
2.5 kHz0.00 dB0.850335holds · ≤ 0.000 dB0.723068837 · -1.631625797 · 1.000000000 · -1.631625797 · 0.723068837
3.15 kHz0.00 dB0.816178holds · ≤ 0.000 dB0.666146806 · -1.526503638 · 1.000000000 · -1.526503638 · 0.666146806
4 kHz0.00 dB0.774597holds · ≤ 0.000 dB0.600000000 · -1.385640646 · 1.000000000 · -1.385640646 · 0.600000000
5 kHz0.00 dB0.730270holds · ≤ 0.000 dB0.533294672 · -1.216444450 · 1.000000000 · -1.216444450 · 0.533294672
6.3 kHz0.00 dB0.680357holds · ≤ 0.000 dB0.462885225 · -0.993007581 · 1.000000000 · -0.993007581 · 0.462885225
8 kHz0.00 dB0.629016holds · ≤ 0.000 dB0.395661041 · -0.697830521 · 1.000000000 · -0.697830521 · 0.395661041
10 kHz0.00 dB0.590467holds · ≤ 0.000 dB0.348651394 · -0.349056666 · 1.000000000 · -0.349056666 · 0.348651394
12.5 kHz0.00 dB0.578174holds · ≤ 0.000 dB0.334285603 · 0.087266454 · 1.000000000 · 0.087266454 · 0.334285603
16 kHz0.00 dB0.629016holds · ≤ 0.000 dB0.395661041 · 0.697830521 · 1.000000000 · 0.697830521 · 0.395661041
20 kHz0.00 dB0.774597holds · ≤ 0.000 dB0.600000000 · 1.385640646 · 1.000000000 · 1.385640646 · 0.600000000

The other seven types

Method. RBJ Audio EQ Cookbook coefficients at Q = 1.0000, normalised to a₀ = 1. Pole radii are the roots of the denominator quadratic, not √|a₂| — the two disagree exactly when coefficient rounding pushes the poles onto the real axis, which is the case this table's last column is about. Every figure is solved; nothing is fetched.