ABA Media Platform · Back to Middle C
Tap a key. Every note is a stack of tones: the note, then quieter tones above it. They light up in teal on the keys they land on. Tap a teal card to hear that overtone alone, or tap Hear beside it for the overtone, then the note, twice, so you can catch it inside the note. Stack adds notes one at a time, each in its own color, and marks the keys where their overtones meet.
Hold is on: notes ring until you turn it off or tap the key again.
Your audio never leaves your machine. The Middle C Keyboard decodes and measures it in your browser, and never transmits it. It sends nothing at all, and it keeps no results.
What it shows. Drop in a song, a bass part or an export, and the keys light where its sound is strongest. Brighter means more. A dot means a clear note sits on that key, and the number in the dot says how far off the key it sits, in cents. What it doesn't do. It doesn't write down the notes you played. A note, and an overtone of a lower note, can land on the same key, and from the sound alone they look the same. When a card says "could be an overtone of C2", it means exactly that: could be. Low notes need time. The bottom of the keyboard is crowded: the lowest keys are less than 2 Hz apart. A low note has to ring for a while to land on one key: about a second for the lowest A, half a second for a bass guitar's low E, a quarter of a second from the E an octave above. A fast bass line lights two or three keys at the bottom. That is the true picture, not a fault. A file shorter than about 3 seconds can't measure the bottom three octaves at all. Drums and noise light keys too. A kick drum or a cymbal lights keys without a dot: sound there, no clear note.
Method: per-channel power spectra averaged over the whole file (Welch, Hann, 8192 points, 50% overlap) in three registers: A0–B2 resampled to about 3 kHz (0.37 Hz bins, 2.7 s windows), C3–B5 to about 12 kHz (1.46 Hz bins), C6–C8 at the file's rate (5.86 Hz at 48 kHz). At least 4.5 bins per semitone everywhere, and no zero-padding: the resolution is real listening time. A key's energy is the power within ±50 cents of its equal-tempered center (A4 = 440 Hz); its pitch is the refined spectral peak in that band, counted as a note only with 6 dB of prominence. Channels are averaged as power, so nothing out of polarity between left and right can cancel.
Limits. It averages over time: it shows what the file contains, not when. At the bottom, resolution is set by note length, roughly twenty cycles of the note. Cents read in the last few cents before the halfway point between keys can be off by about 3. Tuning is read against A440, so a track tuned to A432 shows every key about 32 cents flat, correctly. Stretched string partials, vibrato and bends widen peaks and can cost the dot. "Could be an overtone" is a 10-cent heuristic, not a measurement, and it misses stretched upper partials.
Verified against known-answer test files from this keyboard's own Export WAV: 24 Oct 2026, Chromium driven by a test script on the studio PC. Four exports from this page (A0 with overtones, E1 pure, C2 + G3 + E♭4, C4 + F♯4) were dropped on this page and read back from it: every key a partial lands on carried a dot, and no other key inside 40 dB did (8, 1, 21 and 15 keys); cents within 1 of the file's own answer (worst 0.23); single-partial levels within 0.5 dB (worst 0.31); keys two partials share sat inside their bounds; B♭6 in the tritone read two peaks (−14 and −31 cents). In compare mode a C4 sine through tanh(4x) marked G5, E6 and B♭6 new at 23.4, 45.0 and 66.3 dB under C4 (planted: 23.4, 45.0, 66.3). A five-minute stereo file at 48 kHz took 10.9 s to measure on that PC; the iPad is not yet timed.
1 The teal numbers count the overtones of the key you played. 1 is the first overtone, the octave, 12 keys up. 2 is the next, 19 keys up, and so on, each one quieter than the last. The teal keys are where they land.
−14 Gold shows where the file's energy sits: brighter means more. A dot means a clear note sits on that key, and its number says how far off the key it sits, in cents: empty when it lands on the key, 2 when two notes share the key. Striped keys are ones the file is too short to measure. Tap any key to hear it.
The first overtone is the octave, 12 keys up. Most overtones land on a key. Some land between two keys; those show how far off they sit, in cents (a hundredth of a key).
The twelve strongest keys, loudest first. Tap a card to hear a sine at the measured frequency; tap Hear beside it for that tone, then the key, twice.
No sound? Tap a key once to wake the audio, and turn off silent mode on your iPad or phone. On a computer keyboard, the letters A W S E D F T G Y H U J K play from the C on the left of the screen. The teal lights show the exact overtone series: A0 = 27.5 Hz, every key a twelfth of an octave, each overtone a whole-number multiple of the note. The played tone is shaped like a piano, and a piano string's upper overtones run slightly sharp of those multiples, so what you hear is a little brighter than the lights. Export WAV writes the exact series, for measuring.