← Lab
combrange
confirmedupstream bugPython · madmom (Cython)Systems & data structuresJuly 25, 2026
the question
Does madmom's 2-D feed-backward comb filter filter every column of a multi-column signal?
what came out
madmom's `_feed_backward_comb_filter_2d` hardcodes the column loop to `range(2)`, so an 8x5 signal is filtered only on columns 0-1 and columns 2-4 return bit-identical raw input. A single-column signal indexes past the array (bounds-checking is compiled off), diverging from the recurrence and writing one element out of bounds. Fix: `range(signal.shape[1])`.
method & receipts
- Result: confirmed
- Reproducible — one script re-runs the whole thing from scratch.
- Tested — a correctness/benchmark suite ships alongside the code.
→ read the code and re-run it
github.com/v-code01/combrange