Repository navigation
New score followers, a method registry, and a standardized evaluation output. Not backwards compatible with 0.3.
Added
- Korzeniowski particle filter for audio and MIDI (
method="pfkorz"), and the OLTW variantsarzt_tempoandarzt_multi_fold. register_method()and a YAML method registry for custom score followers.- SPARC smoothness in
evaluate_alignment(), using configurable onset-wise windows and last-position hold resampling. Compare smoothness only within the same input type (audio or MIDI). - Python 3.13 and NumPy 2 support.
Changed
method="pf"(ParticleFilter) is removed; usemethod="pfkorz".alignment_pathrows are now(performance time in seconds, score position in beats), the reverse of 0.3.- Custom followers now receive observations through
__call__(observation, perf_time)instead of a single(observation, perf_time)tuple. evaluate_alignment()returns flat fields (mean_b,median_b,std_b,accuracy_<tolerance>b,skewness,kurtosis,smoothness).- Removed millisecond-based alignment metrics (
in_seconds,TOLERANCES_IN_MILLISECONDS,ms_tolerances) and thereturn_detailsoption onevaluate_alignment(). - Latency keys are renamed from
f_avg_latencyandi_avg_latencytofeature_latency_msandinference_latency_ms.
Fixed
- Corrected CQT/STFT magnitude features, non-4/4 chord durations, MIDI onset timestamps, and grace-note tempo initialization.
- Included bundled example assets in distribution wheels.
What's Changed
- Feature/outerhmm update by @laurenceyoon in #62
- swap alignment_path row order to (perf_sec, score_beat) by @laurenceyoon in #63
- remove evaluation functionality from core matchmaker repository by @darth-alexus in #64
- Rework Dixon OLTW trackers, LSE features, and alignment path output by @laurenceyoon in #65
- Add Particle Filter Score Follower by @C-Suhit in #66
- Parangonar by @sildater in #57
- Feature/clean method registration by @darth-alexus in #67
- update requirement to allow numpy>2 by @CarlosCancino-Chacon in #71
- Feature/baseline updates by @laurenceyoon in #69
- add finite starting tempo to SLT_OLTW when the score opens with a grace note by @darth-alexus in #70
- update docs add python 3.13 support by @laurenceyoon in #72
- New Matchmaker release (0.4.0) by @laurenceyoon in #73
Full Changelog: v0.3.0...v0.4.0