Audio → MIDI

Audio to MIDI Converter

Sheet music to MIDI: why this tool listens to audio, not reads scores

The short answer: this tool converts audio into MIDI. It does not read sheet music — a photo, a PDF, a scanned score, or a MusicXML file — there is no notation OCR here. If what you hold is a score on paper (or a score file), the step from notation to MIDI is a score-reading job, not an audio-analysis job. What this tool does give you is the audio→MIDI half: make the piece audible — play it, or export the score to audio — and drop that in. It returns a MIDI built to the real spec: format 1, 2 tracks, TPQ 480, up to 6 notes per frame, velocity reaching 127 at −2.22 dBFS, plus a CSV you can diff note-by-note. So the honest path from a score to a MIDI is: score → (render/play to audio) → (this tool) → MIDI. We cover the last arrow; turning the notation into sound is the step before it.

1. What this tool actually does

It takes sound — MP3, WAV, FLAC, OGG, M4A, or the audio pulled from a video — and returns a MIDI file plus a CSV. The detection runs on the real implementation constants, so the result is checkable:

On 11 known-answer clips it measured 86.7% recall / 91.5% precision. That is the audio→MIDI step, which is the half this tool owns.

2. What this tool does NOT do

Stated plainly, because “sheet music to MIDI” implies an input this site does not accept:

This is the boundary, said on the page rather than promised as a feature it lacks.

3. The honest path from a score to a MIDI

If your real goal is “MIDI from this piece of music,” and all you have is the score, here is the route that works:

Where each step happens
PathYou doThis tool doesAnother tool does
A. You can perform itRecord yourself playing the scoreYes — audio → MIDI + CSV—
B. You have the score as audioExport the score to WAV/MP3 (DAW render)Yes — audio → MIDI + CSVDAW renders score → audio
C. You have MusicXML/MIDI alreadyOpen the fileNo — not a score readerNotation app reads it directly

Paths A and B both end at this tool's door with an audio file. Path C never reaches here — if the score is already digital notation, the notation app already has what it needs. The point: get the piece into sound, and this converter handles the sound-to-MIDI half.

4. When to use this tool vs skip it

Match your input to the right tool
Your situationUse this toolUse something else
You have audio of the pieceYes — exactly what it does—
You have a .mid / MusicXML, want audioNo — audio out not supportedA synthesizer / DAW render
You have a photo/PDF score, want MIDINo — reads audio, not scoresA score-to-MIDI tool that reads notation
You have a score, can play/record itYes — record, then audio → MIDI—
You want to verify the MIDI is correctYes — the CSV gives 4-decimal timestamps—

5. "Music score to MIDI", "convert sheet music to MIDI", and the "converter" phrasing

Short answer: all three phrasings point at the same missing step — reading notation — and this tool does not read notation. Even on the workable route (render the score to audio, then convert), the exported file carries no score semantics at all: we parsed our own writer's output and found 0 key-signature (FF 59), 0 track-name, 0 lyric, 0 text, 0 instrument and 0 program-change events. The only meta events present are tempo (FF 51), 4/4 time signature (FF 58) and end-of-track (FF 2F).

What a score carries versus what the exported bytes contain
On the pageIn the fileMeasured on this engine
Key signatureNo FF 59 event0 written, even after detecting an 8-note C-major scale
Lyrics, expression text, staff namesNo FF 05, FF 01 or FF 03 events0 of each in a four-note export
Time signatureOne FF 58, 4/4Fixed; the separate tempo event carries the BPM you entered
Separate voices or staves1 note track, 1 channelA two-voice score still exports 2 tracks total: 1 meta track, 1 note track
Slurs, bends, vibratoNo pitch-bend eventsA 440→494 Hz glide returns 3 stepped pitches and 0 bend events
Notes0x90 / 0x80 pairs4 onsets at 0.0000, 0.4992, 0.9985 and 1.4977 s on the 11.610 ms grid

That gap is structural, not a missing feature. The detector estimates a fundamental from an FFT at 22050 Hz / 2048 samples / 256 hop; below roughly 181 Hz (near F#3) one semitone is narrower than a single 10.77 Hz FFT bin. A score already states its pitches exactly, so sending it through sound and back discards that precision and then re-measures it.

Three ways to decide where to go:

Where a dedicated score workflow differs

Optical music recognition works on images and MusicXML and can preserve staves, lyrics and key signatures; a browser pitch detector works on waveforms and preserves none of them by design. If your input is already digital notation, the MIDI-to-score boundary is the other direction to check, and what audio to sheet music actually measures explains why a transcription is not an engraving.

Questions

Can this tool read my sheet music PDF and make MIDI?

No. It converts audio to MIDI; it does not read notation. To get MIDI from a score, either play/record it and upload the audio, or export the score to audio in your notation app and upload that.

Why doesn't it just scan the notes?

Because the job here is detecting pitches and timing from sound. Reading notation — recognizing noteheads, stems, clefs, key — is a separate OCR step a score-reading tool does. We convert the audio you give us, not the picture of the score.

I have the score as a MIDI already. Do I need this?

No. If it is already a .mid or MusicXML, your notation app already has it — open it there. This tool is for turning sound into MIDI.

What if I record myself playing the score?

That is the cleanest route: the recording is audio, drop it in, and you get a MIDI plus a CSV you can check note-by-note. Polyphonic mode holds up to 6 notes per frame; the readable range is 55–1800 Hz.

Is the MIDI accurate enough to trust?

On 11 known-answer clips it measured 86.7% recall / 91.5% precision. The CSV lets you audit every note against your DAW before you rely on it, so misses are caught, not assumed away.

This page states the boundary honestly: this tool converts audio to MIDI and does not read sheet music. If you can make the piece audible, try the audio→MIDI step on the home page — drop a file, get a MIDI and a CSV, nothing uploaded.

Related guides