Piano Practice Trainer for MIDI Files
Learn a piece from its MIDI file: falling notes, and the music waits for you.
Free preview.
- Free preview: the run’s counts in full, the first rows of the notes to practise and of the log, and wait mode, loops, one hand and tempo changes on the opening bars.
- Locked until you unlock it: download and copy.
- Unlock: Pro pass, ₹179 for 30 days, a one-time payment that never renews.
Ways to unlock shows how to get the full result.
Printing this result is locked in the free preview.
1. Choose a piece
The music
Choose a piece to begin 0:00 Keyboard: Space play or pause · ← → one bar · Z…/ and Q…] play notes
Sheet view
The notes as they are written, with a cursor on the beat. Chords and voices are drawn plainly: it is a reading aid, not an engraved score.
2. Practice tools
3. What you play on
Tap or click the keys, or use the two rows of your computer keyboard: the lower row (Z S X …) starts on that C and the upper row (Q 2 W …) an octave above it. The letters are printed on the keys.
Tap the keys on the piano above. On a screen this size the keyboard follows the music, so the keys you need are always in view.
Web MIDI works in Chrome and Edge (on a computer or Android) and in Firefox on a computer, which asks once to add a site permission for MIDI. Firefox for Android, Safari, iPhone and iPad have no Web MIDI — use the microphone or the on-screen keys there.
The page listens for the notes it is waiting for. One note at a time is reliable; chords are approximate, and a noisy room or a second instrument confuses it. Nothing is recorded and no sound leaves your device.
Through speakers the microphone hears the page too, so until you tick that the page ignores any note its own music could explain, and never plays the notes you are practising. With headphones on, it takes every note it hears.
This run
Notes to practise
| Bar | Note | Hand | Missed |
|---|
Practice log
| When | Piece | How | Bars | Tempo | Time | Accuracy |
|---|
Runs of at least ten seconds are kept here (listening, or with at least one key played), in this browser only, newest first. Nothing is uploaded.
Credits for the music and the sound
The pieces come from the Mutopia Project. The editions used here are in the public domain or under a Creative Commons Attribution-ShareAlike licence (Mutopia’s licences). Each piece names the person who typeset it, as the Creative Commons licences ask. The share-alike editions stay share-alike: if you pass one on, changed or not, it keeps that licence.
| Piece | Composer | Typeset by | Licence |
|---|---|---|---|
| Minuet in G major · BWV Anh. 114, from the Notebook for Anna Magdalena Bach | Christian Petzold (long credited to J. S. Bach) | Allen Garvin | Public domain |
| La candeur · Op. 100 No. 1 | Friedrich Burgmüller | Bas Wassink | Public domain |
| Melody · Album for the Young, Op. 68 No. 1 | Robert Schumann | Philippe Hézaine | CC BY-SA 2.5 |
| Old French Song · Album for the Young, Op. 39 No. 16 | Pyotr Ilyich Tchaikovsky | David McNamara | Public domain |
| The Happy Farmer · Album for the Young, Op. 68 No. 10 | Robert Schumann | Philippe Hézaine | CC BY-SA 2.5 |
| Arabesque · Op. 100 No. 2 | Friedrich Burgmüller | Bas Wassink | Public domain |
| Sonatina in C major, first movement · Op. 36 No. 1 | Muzio Clementi | Brian D. Rude | Public domain |
| Für Elise · WoO 59 | Ludwig van Beethoven | Stelios Samelis | Public domain |
| Prelude in C major · BWV 846, The Well-Tempered Clavier, Book 1 | Johann Sebastian Bach | Tobias Erbsland | Public domain |
| Gymnopédie No. 1 · Trois Gymnopédies | Erik Satie | Evin Robertson | Public domain |
| Prelude in A major · Op. 28 No. 7 | Frédéric Chopin | Magnus Lewis-Smith | Public domain |
| Prelude in E minor · Op. 28 No. 4 | Frédéric Chopin | Magnus Lewis-Smith | Public domain |
| Träumerei · Kinderszenen, Op. 15 No. 7 | Robert Schumann | Ying-Chun Liu | Public domain |
| Sonata in G major, Tempo di Menuetto · Op. 49 No. 2, second movement | Ludwig van Beethoven | Stelios Samelis | Public domain |
| Sonata in C major, first movement · K. 545 | Wolfgang Amadeus Mozart | Alejandro Sierra | CC BY-SA 3.0 |
| The Entertainer · A ragtime two-step | Scott Joplin | Chris Sawer | Public domain |
The piano sound is the Salamander Grand Piano (a Yamaha C5 recorded by Alexander Holm), under Creative Commons Attribution 3.0, as published at archive.org: 30 notes, shortened for the web and played back at the pitch each key needs. 3 of the 16 pieces are share-alike editions; the rest were placed in the public domain by their typesetters. The treble clef outline is GClef.svg from Wikimedia Commons, which Commons records as not eligible for copyright.
Locked in the free preview. Opens the ways to unlock this result.
Locked in the free preview. Batch runs unlock with a pass.
Locked in the free preview. Query results unlock with a pass.
About the Piano Practice Trainer for MIDI Files
Open a MIDI file of a piece and practise it: the notes fall towards an on-screen keyboard, the written notes scroll past in a simple sheet view, and the page hears what you play on a MIDI keyboard, through the microphone or on the computer keys. In wait mode the music stops at every chord until you have found the right keys, so you can work through a passage without the beat running away from you.
It comes with public-domain and Creative Commons piano editions from the Mutopia Project — the Minuet in G from the Notebook for Anna Magdalena Bach, Burgmüller studies, Schumann’s Album for the Young, Für Elise, the first Gymnopédie, Bach’s Prelude in C, Mozart’s K. 545 and The Entertainer — and you can open any MIDI file of your own, from a notation program, a keyboard or a piece you have typeset yourself.
This is a practice tool, not a course: it tells you which notes you missed and where, and keeps a log of what you practised. It does not teach technique, grade you or tell you what to learn next.
How to use it
- Choose a piece from the list, or open your own .mid file. The page reads its notes, bars, key and tempo and says what it found.
- Pick how to practise: Listen plays the piece, Play along scores what you play against it, and Wait for me holds each chord until you play it.
- Choose both hands or one hand, set the tempo (a percentage of the written speed), and switch on Loop these bars for a passage you want to repeat.
- Say what you are playing on: the on-screen keys and the computer keyboard need nothing; a MIDI keyboard needs Connect (Chrome or Edge, or Firefox on a computer); the microphone needs Listen.
- Press Play. The notes fall towards the keys that play them, the sheet view follows the beat, and a count-in gives you a bar to get ready.
- Read the figures after each run: how many notes you played right, what you missed, your accuracy, how early or late you were on average, and the notes to practise with the bar they are in.
- Keep what you practised: the log in this browser adds every run of at least ten seconds in which you listened or played. Without a pass the report and the log stay a free preview, with the first rows shown; a pass unlocks the full report, the whole log and the CSV.
Examples
Für Elise · Wait for me · right hand · loop bars 9–12 · tempo 60%
The music stops at every note of those four bars until you play it, then runs on; the report counts the chords you played without a wrong key
Wait mode is how most people learn a passage by heart: there is no penalty for being slow, only for the wrong key.
Minuet in G · Play along · left hand · tempo 75%
Only the left-hand notes are scored; the right hand still plays, so you hear the piece while you practise one hand
Switch off “Play the notes I am practising too” when you want to hear nothing but your own hand.
You play 48 of 50 notes, each about 70 ms after the beat
Accuracy 96%, “70 ms late on average” — steady but behind the beat, which usually means the tempo is a little fast
The figure takes off the output delay the browser reports for your speakers or headphones. With Bluetooth that report can fall short of the real delay, so use wired headphones when the timing matters.
A drum-kit MIDI file (channel 10 only)
Explained, not played: “This file only has drums (MIDI channel 10), which have no piano keys to practise.”
Common uses
- Learning a classical piece from its MIDI file, a few bars at a time, with the music waiting for you.
- Practising one hand at a time and then both, at a tempo you can actually play.
- Sight-reading practice: the sheet view scrolls with the beat and the falling notes show which key each note is.
- Checking whether your playing is really getting steadier, from the timing figure and the practice log.
- Practising on a laptop with no instrument at all, on the computer keys.
- Using a MIDI keyboard or digital piano as a practice instrument that keeps track of the notes you miss.
What a MIDI file is, and how to get one
A MIDI file (.mid) holds the notes of a piece — which key, when, how long, how hard — not a recording. That is why this page can slow it down, loop four bars, play one hand or wait for you: it is reading the notes, not stretching audio.
- From a notation program: MuseScore, Sibelius, Finale and Dorico export MIDI from their File → Export menu; LilyPond writes a MIDI file when the score has a
\midiblock. - From a digital piano or keyboard: many record to a USB stick as MIDI.
- From an open score library: the Mutopia Project publishes MIDI and PDF for every piece it typesets, under the licences on its licensing page. Its MIDI files come from LilyPond, which does not record an upbeat: for a piece that starts on one, choose its length under Upbeat before bar 1 so the bar lines fall where the printed music has them.
- What will not work: an MP3, a WAV, a YouTube link or a PDF of printed music. Those are sound or pictures, with no notes inside them. This page never downloads music from another site.
Format 0 and format 1 files are read; a format 2 file (separate patterns rather than one song) is explained and refused. Files timed in SMPTE time code are read as well, with their bars counted in 4/4 at 120 beats a minute.
MuseScore, Sibelius, Finale, Dorico, LilyPond and Yamaha are named on this page only to say where files and sounds come from; MySmartCoPilot is not affiliated with their makers.
How your playing is judged
In Play along, every note of the hands you chose is a target. A key counts as right when the same note is pressed within about 200 ms before or 250 ms after the note’s written time — the window people hear as “together”. Press the same key again inside that window and it is a repeat, not a mistake; press any other key and it is counted wrong. A target whose window has passed is missed.
At a slower tempo the window stays the same in real time (it stretches in the music’s time), so playing at 50 % is not made easier or harder than playing at 100 %. Your average offset is reported in milliseconds, timed from the moment each key went down and with the output delay the browser reports for your speakers or headphones taken off (with Bluetooth that report can fall short of the real delay).
In Wait for me nothing is timed. The music stops at each chord and waits; the keys of that chord may be pressed in any order and at any speed, and the page leaves those notes to you (your own keys make that sound). Accuracy is notes played right ÷ (right + missed + wrong keys), the same arithmetic in both modes.
The arrow keys move a run a bar back or ahead within the bars you are practising: the notes from there on are scored again, and the notes jumped over count as missed.
MIDI keyboard, microphone, or the computer keys
- MIDI keyboard (the best way). Plug it in over USB and press Connect (a Bluetooth MIDI keyboard has to be paired in your system’s settings first, and not every system passes one on to the browser). The page uses the Web MIDI API, which Chrome and Edge have on computers and Android, and Firefox on computers (it asks once to add a site permission for MIDI devices); Firefox for Android, Safari, iPhone and iPad do not have it at all. Every key, its velocity and the sustain pedal arrive as played, each with its own time stamp, which is why the timing figures mean something there. A digital piano with its own speakers already sounds: switch off Play the sound of my keys here too so you do not hear every note twice.
- Microphone (where Web MIDI is missing). The page knows which notes are due and asks the sound whether each of them is there, by looking for that note’s harmonic series above the neighbouring semitones and the noise. One note at a time is reliable on a real piano or keyboard; chords are approximate, a noisy room or a second instrument confuses it, and the microphone cannot tell how hard you played. Through speakers the microphone hears the page too, so until you tick I am wearing headphones the page never plays the notes you are practising and ignores any note its own music could explain (the other hand’s notes and their strongest overtones). Nothing is recorded and no audio leaves the page.
- On-screen keys and the computer keyboard. Tap or click the keys; on a computer the lower row (Z S X D C …) and the upper row (Q 2 W 3 E …) play two octaves from the C you choose. Good for learning where the notes are, useless for real technique.
The piano sound is the Salamander Grand Piano (a Yamaha C5 recorded by Alexander Holm under Creative Commons Attribution 3.0), about 0.9 MB of short recordings that load once.
Where the pieces come from, and what their licences ask
The pieces that come with the page are editions from the Mutopia Project. Each of these was either placed in the public domain by its typesetter or published under a Creative Commons Attribution-ShareAlike licence (Mutopia publishes under other Creative Commons licences too). The credits table on the page names the composer and the typesetter of every piece, and links to its page on Mutopia, because that is what those licences ask for.
Share-alike means share-alike: if you pass on one of those editions, changed or not, it keeps its licence and its credit. The public-domain editions carry no such condition. There is no modern pop music here and none can be added: a recent song’s notes are still under copyright, whoever typed them in.
Your own files are yours. They are read in this browser and never uploaded, and nothing about them is stored except the title, the bars you practised and your figures in the practice log on this device.
What the sheet view does and does not do
The sheet view is a reading aid built from the file’s notes: two staves, the key and time signature, bar numbers, noteheads with their stems, flags and dots, accidentals against the key, ledger lines, and a cursor on the beat. Notes that start together are drawn as one chord, and two voices at one moment get their own stems.
It is not an engraved score: there are no beams, slurs, ties, pedal marks, dynamics, triplet brackets or page turns, because a MIDI file does not record most of them and guessing them would be worse than leaving them out. A note value is the nearest written value to the note’s length, so a passage played with a lot of pedal or a detached touch can look odd. For reading practice, print the PDF of the piece from Mutopia and use this page for the sound and the waiting.
Limitations
- A practice tool, not a teaching course: no lessons, no grades, no technique or fingering advice, and no exercises chosen for you.
- No modern songs. The pieces that come with the page are public-domain or Creative Commons editions of classical music; a recent song’s notes are still under copyright, so they cannot be included.
- Firefox for Android, Safari, iPhone and iPad have no Web MIDI, so a MIDI keyboard cannot be used there. Use the microphone or the on-screen keys on those devices.
- Microphone mode is approximate for chords, cannot tell how hard you played, and needs a quiet room with one instrument (and headphones when the page plays the other hand).
- Bluetooth speakers and headphones delay the sound. The timing figure takes off the delay the browser reports, which with Bluetooth can be short of the real one, so wired headphones or the device’s own speaker are better for playing along.
- The sheet view draws noteheads, stems, accidentals and bars — not beams, slurs, ties, dynamics or fingering. Print the piece’s own PDF for proper reading practice.
- A phone shows only part of the keyboard at once (it follows the music), and the on-screen keys are no substitute for an instrument.
- The practice log lives in this browser and keeps the last 300 runs: clearing site data or changing device loses it. Download the CSV once unlocked to keep more.
Privacy
Everything happens in this browser. Your MIDI files are read on your device, what you play is scored on your device, and your practice log is kept in this browser until you clear it. Nothing is uploaded, no account is needed, and the microphone mode records nothing. The page downloads only the piano sound and the piece you choose.
Frequently asked questions
What do I get without a pass?
Without a pass, Piano Practice Trainer for MIDI Files shows the run’s counts in full, the first rows of the notes to practise and of the log, and wait mode, loops, one hand and tempo changes on the opening bars. Until you unlock it, the result can’t be downloaded or copied. A Pro or Premium pass, a one-time payment that never renews, unlocks the full result. The pricing page lists the passes and their prices.
Do I need a piano or keyboard?
No, but it helps. With no instrument you can still listen, watch the falling notes and play on the computer keys. With a MIDI keyboard (in Chrome or Edge, or Firefox on a computer) every note you play is read exactly, including how hard. With an acoustic piano, use the microphone and expect single notes to be read well and chords only roughly.
Does it work on an iPhone or iPad?
The page works, but Safari and every browser on iOS and iPadOS lack the Web MIDI API, so a MIDI keyboard cannot be read there. Use the microphone or the on-screen keys. On a computer, Chrome, Edge and Firefox all read MIDI keyboards; on Android, Chrome and Edge do, but Firefox does not.
Can I practise a song I like?
Open its MIDI file if you have one — anything you can export from a notation program or your keyboard works. The pieces supplied here are classical, because their notes are out of copyright or published under a Creative Commons licence. Nothing is downloaded from YouTube or any other site, and no copyrighted arrangement is provided.
Why does the microphone miss notes in a chord?
Because a browser cannot reliably pull three or four notes out of one microphone signal. The page uses what it knows — which notes are due — and looks for each of them in the sound. A note whose harmonics are buried under the others is missed. For chord work, a MIDI keyboard is the only accurate way.
Is my playing recorded or sent anywhere?
No. The microphone signal is analysed frame by frame and thrown away; nothing is recorded, nothing is uploaded, and you don’t need an account. Your MIDI files stay on your device, and the practice log is stored in this browser only.
Why are my bar numbers different from my printed music?
A MIDI file does not always say where bar 1 starts. A file from LilyPond (Mutopia’s among them) leaves the upbeat out, so the bar lines of a piece that starts on one fall in the wrong places. For your own file, choose the upbeat’s length under Upbeat before bar 1: the bar lines, bar numbers and loops then match the printed music, and the upbeat is shown as “pickup”. The pieces supplied here have their upbeats set already, and a file that marks its upbeat with a short first bar of its own time signature is read correctly as it is.
Which parts need a pass, and which do not?
Listening, playing along at the piece’s own tempo with both hands, the falling notes, the sheet view, the sound and every counter work for the whole piece. Wait mode, bar loops, one hand at a time and a changed tempo run on the opening bars (up to eight, never more than half the piece; switching one of them on during a run of the whole piece stops that run), and the report and the practice log show their first rows, with copying and the CSV unlocked by a pass.
Can I slow a piece down without it sounding odd?
Yes. The page plays the written notes, so slowing down to 40% changes nothing but the speed — no pitch change, no wobble, no stretched audio. The same is true of speeding up to 120%.