How it works
Auto-PEQ explained
CurveLab computes parametric equalizer settings that nudge your IEM's measured frequency response toward a chosen target curve.
01
Frequency Response Measurements
A frequency response measurement shows how loud a headphone or IEM reproduces each frequency. CurveLab accepts CSV files with frequency/dB columns, or you can select from the built-in library of simulated headphones.
02
Target Curves
A target curve describes the "ideal" sound signature — typically based on research into how humans perceive sound (e.g. Harman target). CurveLab ships with Harman 2019, Harman 2018, Flat, Bass Boost, Bright, and Warm presets, with adjustable bass, ear-gain, treble, and tilt sliders.
03
The Optimization Algorithm
CurveLab uses a greedy parametric EQ optimizer:
1. Normalize both curves at 1 kHz.
2. Compute the error (target − measured).
3. Iteratively place biquad filters at the largest error points.
4. Run coordinate descent refinement passes.
5. Calculate preamp to avoid digital clipping.
04
Biquad Filter Math
Filters are calculated using the RBJ Audio EQ Cookbook formulas at 48000 Hz sample rate. Peaking (PK), low shelf (LS), and high shelf (HS) filter types are used. The magnitude response is computed exactly — not approximated.
05
Exporting EQ Settings
CurveLab exports to Equalizer APO / Peace, Wavelet GraphicEQ, Poweramp-style text, plain text, and generic JSON. Copy and paste into your EQ app of choice.
06
Limitations
CurveLab is an MVP. Measurements vary by rig, insertion depth, coupler type, and individual ear anatomy. High-frequency corrections above 8–10 kHz are less reliable. Narrow dips should not be aggressively boosted. Always adjust by ear after applying.