@audio/ eq-parametric
Status calibrated
npm1.1.2licenseMIT
N-band parametric EQ
import parametricEq from '@audio/eq-parametric'
Free-form multi-band EQ — any number of bands, each independently peaking, low-shelf, or high-shelf, each with its own fc/Q/gain. One RBJ biquad per band, cascaded in array order.
let params = { bands: [
{ fc: 100, type: 'lowshelf', gain: 2 },
{ fc: 3000, Q: 1.4, gain: -4 }, // type omitted → 'peak'
], fs: 44100 }
for (let buf of stream) parametricEq(buf, params)
| Param | Default | |
|---|---|---|
bands |
[] |
Array of { fc, Q, gain, type } |
bands[].fc |
— | Band center/corner frequency, Hz |
bands[].Q |
1 (peak) / 0.707 (shelf) |
Bandwidth (peak) or shelf slope |
bands[].gain |
0 |
Band gain, dB |
bands[].type |
'peak' |
'peak', 'lowshelf', or 'highshelf' |
fs |
44100 |
Sample rate, Hz |
Pass the same params object across successive calls — the filter cascade is cached on it; a change of any band's fc/Q/gain/type or fs by value rebuilds only the coefficients and each band's state carries over, so state continues across block boundaries and automation is click-free.
Use when: general-purpose multi-band corrective or creative EQ — mixing-channel EQ, mastering surgical cuts, anywhere a fixed band layout (graphic) or two-knob tone stack (baxandall/tilt) is too rigid.
Part of @audio/eq — the eq family umbrella.
MIT © audiojs