FA-91569 / Digital signal filters / Member archive
Polyphase interpolator drops trailing taps of shorter phases · case 04
When the filter length is not a multiple of L the last taps are never applied.
Case contract
Input [h, L, samples] (integers). Zero-stuff by L and filter with h, scaled by gain L: y[mL + p] = L sum_j h[jL + p] x[m - j]; return len(samples) * L outputs in time order.
Why this case matters
Interpolators feed DACs and sample-rate converters; gain and phase-indexing slips cause level errors and imaging.
One recorded failure
Sample boundary fixtureThis sample comes from the broken implementation of a controlled reproducer.
| Boundary fixture | Actual | Expected | Outcome |
|---|---|---|---|
| regression: random interpolator 18 | [16, 8, 4, -6, -16, -2, -24, -10, -24, -2] | [16, 8, 4, -6, -32, -2, -12, -10, -20, -2] | Failed |
MEMBER ARCHIVE
The complete case is available to members.
This record includes three runnable implementations, regression fixtures, execution results, and source hashes.
Member access is invitation-based. Sign in with your invited account to inspect the sources.
Sign in to the archive ↗