All projects

Beat Analyser

Audio in, timed rhythm and note events out

Released

Give it an MP3, WAV, FLAC, OGG or M4A file, or a YouTube link. It returns a ZIP with one CSV per track: kick, snare, hi-hat, beats, bass, chords and melody, plus the detected tempo and key. Built to feed game engines and procedural music with discrete events instead of raw audio.

How it works

  • Rhythm comes from a Rust extension: onsets, drum classes, tempo and the beat grid.
  • Notes come from the basic-pitch model running on ONNX Runtime.
  • Every CSV row is a time in seconds and a label, ready to load into a game or a sequencer.

Example

$ docker pull levialabs/beat-analyser
docker run --rm -p 127.0.0.1:80:8000 levialabs/beat-analyser
# Web UI on http://localhost