muscriptor.cpp
A native C++ inference engine that transcribes audio into MIDI or note events, running on CPU, Apple Metal or NVIDIA CUDA through ggml.
It mirrors the options of the original Python muscriptor tool, taking a WAV file and writing a MIDI file, JSON or JSONL event stream, with control over model size, device, sampling temperature, beam width, classifier-free guidance and per-instrument filtering.
Three model sizes are available, small, medium and large, ranging from 103 million to 1.4 billion parameters, matching the sizes offered by the upstream MuScriptor project.
The inference code is MIT licensed; the model weights themselves are CC BY-NC 4.0, non-commercial, requiring the license to be accepted on Hugging Face before downloading. It builds from source with a Makefile that selects Metal, CUDA or CPU automatically.