Turning Piano Audio into MIDI and Sheet Music
What happens between a recording and a score
A while back I recorded myself improvising over a simple chord loop. Forty seconds of something that felt genuinely good. By the next morning I could still hum it, but my hands had lost it completely. The voice memo sat on my phone for weeks, and every time I tried to work it out by ear I gave up around bar three.
That kind of work is slow in a way that's hard to explain to non-musicians. You scrub back four bars, guess whether the inner voice went to D or E flat, play it, rewind, guess again. An hour gets you half a page. Ivory exists because the listening part of this job can now be done by software, and done well. What's left for you is knowing what to do with the output, because MIDI and sheet music are not the same thing and they solve different problems.
What MIDI actually is
MIDI is not audio, and that trips up nearly everyone at first. A MIDI file contains no sound at all. It contains instructions, the way a player piano roll contains holes rather than music. The roll never sang; it told the piano what to do.
So when Ivory turns the audio to piano notes and MIDI from your recording or a YouTube link, what it actually writes down is the performance itself:
- Pitch, meaning which keys were pressed.
- Velocity, how hard each one was struck. This is where the dynamics live.
- Timing, when every note starts and stops, down to the millisecond.
The point of all this is that data can be edited where audio cannot. Load the file into Logic, Ableton or FL Studio and you can fix the one note you fluffed, drag the tempo down without the pitch sagging, or hand the whole part to a string patch and hear your late-night improvisation played by a section. Try doing any of that to an MP3.
Sheet music is the harder problem
MIDI is honest to a fault. It records exactly what you played, hesitations included, and no human can sight-read that.
Notation requires interpretation. Something has to decide the time signature, split the notes between the hands, name the chords, and round your slightly late eighth note to an eighth note instead of writing it as a dotted 64th tied to something unspeakable. Quantization is a judgment call, not arithmetic: push it too hard and the score loses the feel of the playing, leave it too loose and the page becomes unreadable.
Ivory makes those calls for you and hands back a score you can read off a tablet, or export as PDF and MusicXML, the interchange format that Sibelius, Finale and MuseScore all speak.
How this works in practice
Ivory is built as a workspace rather than a converter, so the flow has a few stops:
- 1. Get the recording in Phone recordings are fine, truly. Drop in an MP3, WAV or MP4 up to 15MB, or paste a YouTube link if the performance lives online.
- 2. Listen and pick it apart The transcription opens in a web player where the piano roll scrolls along with the score. Slow a fast run to half speed, loop the two bars that keep escaping you, transpose the whole piece into a singer's key. This is where most of the actual learning happens.
- 3. Fix what the AI got wrong And it will get some things wrong. A pedal wash can smear two chords together; a grace note sometimes lands as a real one. The editor runs in the browser, you drag or stretch or delete notes directly, and correcting a transcription still beats writing one from scratch by a comfortable margin.
- 4. Take it where you work MIDI for the DAW, MusicXML for notation software, PDF for the music stand. DAW plugins are on the way, but the exports already cover most setups.
Get the notes down
Most musical ideas die in the voice memos folder. If there's a recording you keep meaning to work out, feed it to Ivory and see what comes back. The first minute is free, which is enough to know whether it heard what you played.
Written by
Co-Founder, Ivory
Marius is a co-founder of Ivory and works on the machine learning models that turn piano recordings into MIDI and sheet music. He writes about the technology behind automatic music transcription.