Musical structure analysis
Libretto
What it is
Scores a symbolic work across 29 weighted axes (form, harmony, melody, rhythm, texture, coherence) → one number. MIDI parser, drag-and-drop web UI, comparator, one-click push into Reaper.
The architect's call
Zero dependencies: MIDI parser and writer hand-written on the standard library. Born from rewriting a prototype that crashed and whose theory was wrong — the MIDI mapping confused index with semitones, invalidating every interval computation, and an unbounded "correlation" produced scores above 1. Validated on real MIDI: an assembled song scores 0.70 against 0.33–0.46 for isolated loops — the discrimination is sharp. 236 tests, 64 commits.
The code
View the repository ↗Try the demo ↗
Capabilities engaged
Your data cannot leave the building?
That is precisely the problem I solve. A 30-minute call is enough to scope an audit.