Audio to MIDI
Hum a melody, play a bassline, record a synth line — get back a .mid file you can drop into any DAW and play with a different sound. One instrument or voice at a time; a full mix has no single pitch to follow. Nothing uploads.
drop a melody, bassline or vocal here
or click to pick. One instrument at a time — not a full mix.
| Notes found | — |
|---|---|
| Tempo written | — |
| Range | — |
| Confidence | — |
What it can and cannot hear
This follows one pitch at a time. Give it a hummed melody, a bassline, a sung phrase, a flute or a monophonic synth lead and it will track the fundamental accurately. Give it a chord, a full mix or two instruments at once and it will return something confident and wrong, because there is no single fundamental to find.
That is not a rough edge to be fixed later. Polyphonic transcription — pulling four simultaneous notes out of a piano chord — is an open research problem, and the tools that attempt it are large neural networks with mixed results. A page that pretended otherwise would waste your time more expensively than one that says so.
If what you have is a full track and you want one part out of it, run it through the stem splitter first, then bring the isolated part back here.
How the pitch is found
The detector is YIN, which is autocorrelation with the specific fix for its worst failure. Plain autocorrelation matches a signal against a delayed copy of itself, and a delay of two periods lines up just as well as one — so it routinely reports a note an octave too low. YIN normalises by a running mean of the difference function, which suppresses those multiples, and then takes the first dip below a threshold rather than the deepest one.
Measured against pure tones from A2 to A5, this implementation lands within 0.7 cents — under one hundredth of a semitone. Against harmonically rich sawtooth waves, which are the classic octave trap, it makes no octave errors at all.
Turning pitches into notes
A pitch reading every ten milliseconds is not a melody. A note ends when the pitch moves by about a semitone, when the level drops, or when the detector loses confidence, and anything shorter than your minimum is discarded as a wobble at a note transition rather than something you played.
The pitch of each note is the median of its frames, not the mean. Attacks are messy — the first few milliseconds of a plucked string or a sung consonant can read wildly — and a mean lets those drag the note off. A median ignores them.
Velocity is scaled against the loudest note in your recording rather than an absolute level, so the dynamics of the performance survive. An absolute mapping puts every note of a normalised recording at 127 and flattens the phrasing completely.
Tempo and quantizing
Leave the tempo blank and the file is analysed with the same detector behind the BPM finder, and that tempo is written into the MIDI file so your DAW lays the notes on the right grid rather than assuming 120.
Snapping to a grid is off by default, and that is deliberate. Quantizing a hummed idea to sixteenths destroys the feel that made it worth recording, and it is trivial to quantize afterwards in any DAW but impossible to un-quantize. Turn it on when you are capturing something that was played to a click and you want it tidy.
Getting a clean result
- Record dry. Reverb and delay smear the pitch and create phantom notes at the tail of every phrase. If the recording has heavy effects, this will find notes that were never played.
- One take, one part. No harmonies, no double-tracking, no chords.
- Pick the range. Telling it you are working on a bassline stops it hearing a harmonic as the fundamental — the single most common source of a stray note an octave up.
- Trim the silence. Breaths and handling noise can register as very short notes; cutting the dead air first removes most of that.
- Humming works. A steady "ooh" or "ah" tracks better than "la la la", because consonants interrupt the pitch and produce extra note edges.
What the file contains
A standard MIDI file, type 0, one track, with your tempo and a 4/4 time signature written in. Note pitches, start times, lengths and velocities. It opens in Ableton, Logic, FL Studio, Reaper, GarageBand, MuseScore and anything else that reads MIDI.
It contains no sound. MIDI is a description of what to play, not a recording, so it will be silent until you point an instrument at it — which is the entire point: swap the sound, change the notes, transpose the key, fix the one wrong note by dragging it.
FAQ
Can it convert a full song to MIDI?
No. It follows one pitch at a time, so a mix or a chord has no single fundamental to track. Separate the part you want with the stem splitter first, then bring it here.
Does it work on chords?
No. Polyphonic transcription is an open research problem, and a tool that claimed to do it in a browser would be guessing.
Is my recording uploaded?
No. Pitch tracking and the MIDI file are both produced in your browser tab.
How accurate is the pitch?
Within 0.7 cents on pure tones from A2 to A5 — about one hundredth of a semitone — and with no octave errors on harmonically rich sources, which is where simpler detectors usually fail.
Why does my MIDI file play no sound?
Because MIDI holds notes, not audio. Load it into a DAW and assign an instrument; that is what makes it useful, since you can then change the sound or the notes.
Should I turn on quantizing?
Only if it was played to a click and you want it tidy. Quantizing is easy to do later in any DAW and impossible to undo, so the default keeps your timing.
It found notes I did not play. Why?
Usually reverb or delay on the recording, which smears the pitch at the end of each phrase. Record dry, and set the range to match your instrument.
Can I hum a melody into it?
Yes, and that is one of the things it does best. A steady "ooh" tracks better than "la la la", because consonants interrupt the pitch.
What tempo does it use?
It detects one and writes it into the file, so your DAW puts the notes on the right grid. You can also type a tempo if you already know it.
Which programs open the file?
Any of them. It is a standard type 0 MIDI file: Ableton, Logic, FL Studio, Reaper, GarageBand, MuseScore and the rest.