| Name |
Last commit
|
Last update |
|---|---|---|
| .. | ||
| escales | ||
| manifeste | ||
| semaphore | ||
| tasks | ||
| tide-table | ||
| ui | ||
| .gitignore | ||
| DESIGN.md | ||
| PRODUCT.md | ||
| README.md | ||
| serve.py |
Directly addresses the #7 finding: per-stem PLP grids are weak on sparse-onset stems (Doors/vocals recall 0.06 vs Gil-Scott-Heron 0.56), because PLP needs onsets to lock a pulse and a vocal stem barely has them. Fix: find_takes now computes ONE beat grid from the most rhythmic stem (drums → bass → first available) and reuses it for every stem, so vocals/other are cut on the same musical bar lines as the drums instead of each guessing its own. analyze_stem gained an optional `grid=(peaks,times,bpm)` param (None ⇒ per-stem, the CLI case); find_takes and build_finder_eval both pass the shared grid. Verified on Loituma: "beat grid from drums" → all four stems analysed on it, including a cross-stem bass+vocals take at 137s. 8 finder tests (added: analyze_stem honours a shared grid and adopts its tempo). build_finder_eval re-run with per-track drums grid is in flight to quantify the recall lift over the 0.27 baseline; the correctness win (shared grid ≫ weak per-stem grid on sparse stems) holds regardless. Pt.2 (sub-bar chop mode) remains on #18.
| Name |
Last commit
|
Last update |
|---|---|---|
| .. | ||
| escales | Loading commit data... | |
| manifeste | Loading commit data... | |
| semaphore | Loading commit data... | |
| tasks | Loading commit data... | |
| tide-table | Loading commit data... | |
| ui | Loading commit data... | |
| .gitignore | Loading commit data... | |
| DESIGN.md | Loading commit data... | |
| PRODUCT.md | Loading commit data... | |
| README.md | Loading commit data... | |
| serve.py | Loading commit data... |