music

Audio to MIDI

Estimate notes from short audio, correct them on a piano roll, and save MIDI or CSV.

Local processing
About your filesFiles and content selected in this tool are processed in your browser and are not uploaded to a Browser Kitty backend.
Operation demo See the basic workflow in a short video.

About this tool

Audio to MIDI estimates note pitches and timing from a short recorded melody. Choose an audio file or make a microphone recording, and analyze it locally using the embedded Spotify Basic Pitch model.

Inspect the detected notes on a piano roll, compare them with the source, and edit missing or incorrect notes. Save MIDI or a CSV note table. Transcription is approximate; original tone, tempo and dynamics are not reproduced.

Good for

  • Turn a short melody recording into editable MIDI
  • Use detected pitches as a transcription draft and correct mistakes
  • Export note pitch and start/end timestamps to CSV

What it can do

Key capabilities available in this tool.

How to use

  1. Open the tool and choose one 0.5–60-second audio file of up to 50 MiB, or record up to 59 seconds using the microphone and preview it.
  2. Select Analyze audio and keep the page open until it finishes; cancel if needed.
  3. Listen to the source and synthesized notes to compare the estimated transcription.
  4. Correct pitches and start/end times on the piano roll, adding, removing, splitting or merging notes as needed.
  5. If too many notes are detected, try the Less sensitive preset, then check whether quiet notes were missed.
  6. Choose MIDI or note CSV, set a filename and save. The exports do not contain the original audio.

Supported

  • Input: one 0.5–60-second file up to 50 MiB; MP3/WAV and other browser-decodable M4A/AAC, OGG, FLAC or WebM files.
  • Microphone: up to 59 seconds when MediaRecorder and permission are available; file import works without mic support.
  • Analysis/editing: embedded Basic Pitch, sensitivity/range settings, piano roll, note changes and up to 100 undo/redo actions.
  • Output: MIDI (fixed 120 BPM, channel 1, piano sound, constant velocity) or CSV with exact note start/end seconds.
  • Tested targets: Chrome on Windows/Android with Japanese/English UI. The recording is not uploaded.

Limitations and notes

  • Note detection is approximate; polyphonic music, noise and overtones may create incorrect notes.
  • The app does not estimate tempo, dynamics, pitch bends or the original instrument sound. Export uses fixed 120 BPM.
  • One file at a time, up to 60 seconds / 50 MiB. Decoding may require much more memory than the original compressed file.
  • Session edits cannot be restored after closing or reloading the page; download MIDI/CSV first.
  • Outside Chrome on Windows/Android, DAW interpretations and assistive technologies remain unverified for v1.0.0.

Frequently asked questions

Does it upload my audio?

No. The model and runtime are embedded; analysis and editing run on your device. The hosted version initially downloads the HTML.

Does it perfectly transcribe every recording?

No. Notes are estimates, especially for polyphonic or noisy audio. Listen to the source and edit detected notes.

Does MIDI preserve the original sound and tempo?

No. It exports notes at fixed 120 BPM with a piano program and constant velocity, not the original recording or timbre.

Offline version and source code

The single HTML embeds the model, worker and runtime for offline file analysis and MIDI/CSV export in compatible Chrome, including DecompressionStream support. If microphone access fails from local HTML, use the HTTPS version.

View source on GitHub