Usage examples

Bring a song. Pick an instrument. Play.

Tono is currently a local-first command-line practice engine. These examples show the intended workflow without hiding the actual processing behind a hosted service.

Roland AE-01

tono song.mp3 practice.mp4 --instrument ae01

Slow the practice session down

tono song.mp3 practice.mp4 \
  --instrument ae01 \
  --tempo-scale 0.70

Roland AE-20 with metronome

tono song.mp3 sax.mp4 \
  --instrument ae20 \
  --tempo-scale 0.75 \
  --metronome both

Guitar

tono song.mp3 guitar.mp4 \
  --instrument guitar \
  --tempo-scale 0.50

Practice video

The generated MP4 combines instrument guidance, timing and the backing track so it can be played directly.

Local-first

Your source audio and generated material can stay on your own machine. No Tono account is required.

Import a melody (0.1.1)

These examples require Tono 0.1.1 or later. Import one melody from MIDI, uncompressed MusicXML, or timed note JSON.

tono melody.mid --instrument ae01 --backing backing.mp3

tono melody.musicxml --instrument ae01 --audio performance.mp4 --make-bgm \
  --part lead --separation-model htdemucs-6s

tono melody.json --instrument ae01 --tempo-scale 0.5

Without backing audio, Tono generates reference tones. Use --melody-track N for a specific MIDI track or MusicXML part, and --audio-offset 7.68 if melody time zero occurs 7.68 seconds into the backing. Crop times refer to the melody timeline.

PDF, PNG and JPG scores need conversion to MusicXML or MIDI using music-recognition software first. Check the recognized notes, rhythm and tempo before importing. Compressed MXL must be exported as uncompressed MusicXML.

Review first, then play (0.1.1)

Both song and melody-import workflows create practice.html beside practice.mp4 in one practice folder (for example tono-practices/song_ae01_YYYYMMDD/). Open it in your browser to practice every note in order, including repeats, rests and hold durations, then press Play. It never autoplays. Move or share the whole practice folder; opening the MP4 directly skips the overview.