Target Curve Interpolation
On this page
A target curve is a handful of points; the corrections need a gain at every frequency of their grid. This page explains how LinFIR fills in between the points. The curves themselves are described in Target Curves.
In Two Steps
Step 1: Log-space interpolation
- Creates 5,000 log-spaced frequencies from minimum to maximum input frequency
- Uses logarithmic interpolation between user control points
- Preserves smooth transitions in log-frequency domain
Step 2: Linear resampling
- Resamples 5,000-point curve to target frequencies (FFT bins)
- Linear interpolation ensures smooth curve on target grid
- No artifacts or discontinuities
Result: High-quality curve suitable for both FIR convolution and IIR optimization
Why on a Logarithmic Axis
Hearing, and every frequency graph of LinFIR, works in octaves: 20 to 40 Hz is as wide as 10 to 20 kHz. Interpolating between the points along the logarithm of the frequency draws the curve you see between them on the graph, a straight line from one point to the next, whatever their spacing in hertz. Interpolating in hertz would bend the curve between widely spaced points (a 100 Hz to 10 kHz segment would spend most of its change in the treble).
The 5,000 intermediate points are spaced evenly on the logarithmic axis, finer than any correction resolution; the second step only reads them at the frequencies of the filter's grid.