Cadenza

MIDI keyboard · macOS and Windows

Play it once.
Hand them the sheet music.

Cadenza reads your MIDI keyboard, names every chord as you play it, and turns a take into real notation — bars, note values, ties, two hands, the right key signature. Then it exports MusicXML, MIDI, or a PNG of the score.

macOS 12 or later (Apple silicon and Intel) · Windows 10 and 11 · No account, no card. €49 once, if you keep it.

The Cadenza control dock Recorder mode: eight bars of a performance written out on the grand staff The keyboard window with the notes of Cmaj9 lit and labelled
12 windows 88 keys 15 key signatures 3 sound engines 326 automated tests 0 bytes leave your machine

New — Recorder mode

The lesson is over and the student needs the four bars you just played.

Count in, play along to the click, stop. Cadenza writes it down properly — and gives you the file before they have closed the call.

The Recorder window: eight bars in F major on two staves, with pedal lines

A real take, not a mock-up. Eight bars played to a click at 88 BPM, quantised to a 1/16 grid. Key signature found by the app; hands split by the app; every note value, tie and rest decided by the app.

The hard parts are the whole point.

  • Bars, note values, ties and rests. Not a piano roll with stems drawn on it.
  • Two hands, split moment by moment. It weighs where each hand just was instead of cutting at a fixed note — so the melody can dip below middle C without swapping staves.
  • The key signature, then the accidentals that are still needed. Against the key at the barline, then against the last accidental on that line, in that octave. A tie does not repeat the sign.
  • Erase a chord by clicking it. Erase a whole bar by clicking beside it. ⌘Z takes it back, forty steps deep.
  • Fluffed bar six? Record from bar six. Whatever sounded before that point stays exactly where it was.
  • Edits land in the performance, not in the engraving. Change the grid, the swing, the hand boundary or the key afterwards and nothing you erased comes back. You never replay a take to re-quantise it.
The Recorder control rail: tempo, meter, bars, punch-in bar, grid, swing, key, hand split, erase, undo

One rail: tempo, meter, length, the bar to punch in from, grid, swing, key, hand split, erase, undo. Everything after the grid can be changed once the take exists.

The recordings shelf, listing kept takes with their bar count, tempo and date

Takes are kept inside the app, by name — a week of lessons stays where you left it, still re-quantisable tomorrow.

What it doesn't do yet

Triplets land in the right place but are written without tuplet brackets. One voice per staff. One key signature per take — it will not follow a modulation. The tempo is fixed at the start of a take, so heavy rubato fights the grid. If any of that is a dealbreaker, the trial will tell you in five minutes, and it is better that you find out now.

And this is the file

Ink on paper, not a screenshot of a screen.

The image below is a genuine PNG export of the take above — the same engraving, in black on white, straight out of the app. The MusicXML beside it opens in MuseScore or Sibelius.

The exported score: eight bars in F major, black on white

Five ways out.

Pick the one the next step needs. Nothing is locked to Cadenza: the notation formats are the ones every notation program reads, and the take itself is plain JSON you can open again and re-quantise.

.musicxml — notation .mid — quantised .mid — raw, as played .png — the page .cadenza.json — the whole take
  • The raw MIDI is what you actually played, to the millisecond — useful when the point of the recording is the timing.
  • The quantised MIDI is what is written on the page, so a DAW and the printout agree.
  • Stem directions are decided in the model, not in the drawing — so the picture and the MusicXML can never disagree.
The Recorder window itself in black-on-white mode

The whole app can go black on white — the same switch that makes it clean to record. The keys stay photographic; everything around them turns to paper.

Download the 14-day trial

Fourteen days, everything unlocked, no card.

How it decides

It will not add a note you didn't play.

One set of notes usually has more than one correct name. Cadenza picks one and follows a rule you can check. Here is what it does with the cases that break other tools — screenshots, not claims.

Cadenza naming C, E and G flat as C(♭5)
C · E · G♭

Three notes in, three notes named. Chord tools have been known to call this shape a D9. There is no D in it.

Cadenza naming C, G and B as Cmaj7(no3)
C · G · B

A shell voicing, named as a shell voicing. Not a Cmaj7 that promises an E you never touched.

Cadenza naming C, E flat and F as Cm(add11)
C · E♭ · F

Rooted where your hand is. Not four notes away, as an F7sus4 inversion that nobody was playing.

Cadenza naming B, D, F and A as B half-diminished 7
B · D · F · A

ø7, because it is ø7. Written the way a chart writes it, with the alternatives underneath and the degree in the key below that.

Cadenza naming G, B, F and A flat as G7 flat 9
G · B · F · A♭

The alteration in brackets. Where a musician expects to read it — and set in a font that actually has a ♭.

Cadenza naming F, A flat, C and E as F minor major 7
F · A♭ · C · E

Minor-major, not A♭aug over F. The chord that turns most naive detectors into a slash reading nobody would play.

The whole preference order, in five lines
  1. Coverage first. A name that leaves one of your notes unexplained is out before anything else is weighed.
  2. No phantom tones. A name may not promise notes nobody played.
  3. Inversions stay inversions. A slash reading is penalised, never preferred.
  4. Root in the bass wins. A shell voicing only convinces when it is rooted where you played it.
  5. Shells pay a surcharge. Dropping a third is a claim the engine has to earn.

Nothing here is a model or a guess. It is a lookup and a ranked preference, running offline on your machine — which is why it can promise never to invent a note, and a system that guesses cannot.

88 naming tests · 1 474 shapes swept · 0 invented notes

While your hands are still down

Four answers, at once.

Put one window on the screen your students are watching and harmony stops being abstract. The moment your hands land, the same chord appears four ways — and nobody has to redraw it on a whiteboard.

Cmaj9 lit on the keyboard, each key labelled with its chord tone, solfège and letter

1 · Do · C. Each pressed key carries its chord tone, its solfège name and its letter — the three things a student is holding in their head at once. Eighty-eight keys, and the labels appear only on the ones you are actually pressing.

A ii–V–I and a turnaround written on the grand staff as they were played

Written as you play. The staff keeps what came before, so a progression stays readable while you explain the last chord of it — and each chord carries the name it was given.

The name, the notes, the keys, the degree.

Four windows, one keyboard, no lag between them. Everything below happens in the same instant your hands land — and stays on screen after you take them off.

  • The chord namewritten the way musicians read it, with the honest alternatives underneath
  • On the grand staffreal notation, spelled for the chord: D♯ or E♭, never a coin toss
  • On the keyswhich notes, in which octave, labelled three ways
  • The degree in the keythe Roman numeral, so theory lands in context and not in a vacuum
  • Freeze itplay a chord, take your hands off, and it stays written while you talk about it
  • Velocity and pedal are read toosoft playing sounds soft and darker; the sustain pedal is what lets it tell a line from a chord
The chord window showing Cmaj9 with a quotation underneath

Three modes, one switch. The same three screenshots, taken from the same window.

Every chord gets a second opinion.

Play a chord and the app has something to say about it: a line from someone who spent their life at a piano, the theory behind the harmony, or a joke at your expense. You pick which, and you pick the themes it draws from. A shuffle bag makes sure nothing repeats until you have heard it all.

  • 895 quotations, from 162 musicians and teachers
  • 1 348 theory notes, chosen for the chord under your hands
  • 224 jokes, scaled to how far out the chord is
  • All of it in both languages — the interface, the theory and the jokes, in English and Lithuanian
A scale lit across the keyboard

It stays quiet until you are actually playing a line. Pedal down, six different pitch classes, no octave doubles, spread over more than half a second — then it names the scale. Three notes will not make it shout a mode at you.

And a dictionary that works both ways.

Type a chord and see it written, lit and voiced. Type a scale and watch it appear under your hands. Or play something and let the app do the typing.

The chord search window The scale search window

Not a dashboard

Twelve windows. One keyboard.

Cadenza is not one big window with panels inside it. Every panel opens as its own native window with its own name, so you can place it, size it, put it on a second screen, or capture it on its own.

The chord window The staff window The voicings window The control dock The metronome window The keyboard window
The control dock The staff window The keyboard window
Cadenza — Keyboard
Cadenza — Staff
Cadenza — Chord Display
Cadenza — Chord Search
Cadenza — Scale Search
Cadenza — Voicings
Cadenza — Progression
Cadenza — History
Cadenza — Favorites
Cadenza — Practice
Cadenza — Metronome
Cadenza — Settings

Fixed window titles, exactly as they appear in the macOS Window menu and in a capture source list. Plus Cadenza — Recorder, which is a mode rather than a panel.

One dock stays on top. Everything else goes where you want it.

  • 960 × 100, always on topopens and closes panels, and stays visible over your DAW, your browser or your video call
  • Layout presetssave an arrangement, recall it next session, switch between teaching and streaming in one click
  • It owns the MIDI port itselfno loopMIDI, no bridge app, no browser source that cannot see your keyboard
  • Positions are rememberedquit and reopen; every window comes back where you left it
  • No background throttlingthe panels keep drawing at full speed when the app is not the focused window, which is the whole point of putting them beside something else
The progression window with a ii–V–I collected and barlines added

Progression. Chords go in straight from your playing. Add barlines, play the whole thing back, export it as text or a Markdown table for homework.

The history window with the last chords played

History. Everything you played, in order, with its notes. Click any chord to bring it back.

For the stream and the projector

One switch and the whole app turns to paper.

Pure black on white. No shadows, no gradients, no glass. Dark grey is the first thing a stream encoder throws away, and a projector washes it out entirely — so there is a mode with nothing grey in it. The keys stay photographic; everything around them becomes paper.

The keyboard window in black-on-white mode
The chord window in black-on-white mode
The staff window in black-on-white mode

Three real windows, one setting. It flips live — no restart — and the accent colour you chose comes back when you switch it off.

Every panel is its own capture source.

No more sharing a whole desktop and hoping nothing pops up. Each window carries a fixed, distinct title, so a capture tool finds it and keeps it. Add the keyboard low, the chord name big, the staff wherever it fits — and leave the rest of the app off screen.

  • Distinct, fixed window titles — nothing is called "Window 2"
  • Six accent colours and six pressed-key colours, so the overlay can match your scene
  • Black on white cuts cleanly with a luma key; a dark theme does not
  • On macOS, a cropped display capture is the steadier route — see the FAQ, it is worth two minutes
The settings window

MIDI devices, language, colours, naming style, enharmonic spelling, sound engine, latency — one window, no submenus.

The rest of it

Everything else it does while you play.

Four drills, one engine

Chords, intervals, scales and sight reading — the same MIDI input, the same sound, the same chord brain, pointed at your weak spots instead of your repertoire. Hear a chord and find it, or read it and play it. Level-adaptive, with a score and a clock.

The practice window mid-drill

Four jazz voicings for whatever you just played

Shell, rootless A, rootless B and drop 2, suggested from the chord under your hands and playable with one click. The same list appears in the chord dictionary, so you can look a voicing up before you can play it.

The voicings window
3

Three sound engines

A sampled grand across three velocity layers, an FM Rhodes and a synth — level-matched, so switching does not change how loud you are.

EN / LT

Two languages, all the way down

Every string, every theory note and every joke exists in English and Lithuanian. No other tool in this category speaks Lithuanian at all.

0

Nothing leaves your machine

No account, no telemetry, no analytics, no server to phone home to. It runs with the network off.

A metronome the other windows agree with

30 to 300 BPM, a woody click, a pulse big enough to see from the piano bench — and the same tempo everywhere, including the Recorder's count-in.

The metronome window

Favourites, and the small things

Keep a chord you found and it is still there next week. Plus: enharmonic spelling you can force or leave to the key, a simple-names switch, all 24 keys driving the Roman numerals, several controllers at once, a hold mode for demonstrating, and per-window shortcuts for close, minimise and always-on-top.

The favourites window

Lietuviškai

Not half of it. The whole app.

Not just the menus. Chord names, scale degrees, mode descriptions, practice prompts, error messages, theory notes and jokes — every string exists in both languages. It switches in the settings window, immediately, with no restart.

The chord window in Lithuanian The practice window in Lithuanian

One price

€49 once. Not per month.

No subscription, no account, and no renewal email three years from now.

49

one-time · all v1 updates included

  • All twelve windows and the Recorder, fully unlocked
  • 14 days to try it first — everything on, no card
  • macOS and Windows, one licence
  • Activate on one machine, move it whenever you change computers
  • 14-day refund after you buy, no questions and no form
  • Your takes and exports are files on your disk — they stay readable whatever happens to the licence

VAT handled at checkout. Payment and licence keys through Lemon Squeezy as merchant of record, so that is the name that appears on your statement.

Teaching a studio or a class and need several seats? Write to me and we will sort it out.

Where it sits

What the cheap ones don't do, and what the expensive ones do that this doesn't.

The honest version. If all you want is a chord name on screen, there are tools at a fraction of this price and they are good at it. The column that matters is the first row: nothing else in this table both names what you play live and hands you engraved notation.

Cadenza€49 once Chordie$25 once Chord Whisper$2.99, macOS The Ultimate Piano$39 / 1 yr updates MuseScore 4free ScoreCloudfrom $5.99/mo
Play a take → engraved notation → MusicXMLlimited
Names chords live from a MIDI keyboard
Separate native windows, each with its own name12browser
Saved layout presets
Runs with the network off
Re-quantise, re-split hands and respell after the takepartly
Practice drills4some
English + LithuanianENENENEN+EN
Included updatesall v1unstatedunstated1 yearwhile subscribed
Code-signed by the vendornot yetn/a
Cost over three years€49$25$2.99$39+€0$215+

Compiled from each vendor's own public pages in August 2026; prices are as they list them and will change. Chordie, Chordio and Chord Whisper are good, focused tools — if a chord name on screen is all you need, they will do it for less. MuseScore is free and is the right answer for engraving a piece properly; the row above is about getting a performance into it, which is the part it is weakest at. "Not yet" on code signing is explained in the questions below.

Questions, answered.

macOS says the app is from an unidentified developer. Is something wrong?

No, and it is worth saying plainly: Cadenza is not code-signed yet. macOS shows that warning for every application whose developer has not paid Apple's yearly fee, whatever the app does. Nothing is wrong with the download.

To open it the first time: System Settings → Privacy & Security → scroll down to Security → Open Anyway. macOS only offers that button for a short while after you first try to launch, so do it right away. After that it opens like anything else. If you would rather not override anything, that is an entirely reasonable position — write to me and I will tell you when the signed build ships.

Will it work with my MIDI keyboard?

Any USB or Bluetooth MIDI keyboard your computer already recognises, and several controllers at once if you use more than one. Velocity is respected — soft playing sounds soft and darker — and the sustain pedal is read, which is what lets the app tell a line from a chord.

Cadenza reads MIDI, not audio. It does not listen to a microphone, so an acoustic piano without a MIDI output is outside what it can do.

How good is the notation, really?

Good enough to hand to a student, and not a substitute for an engraving program. It gets bars, note values, ties, rests, the key signature, the hand split and the accidental placement right — those are the parts a quantiser usually fails at, and there are automated tests over each of them.

What it does not do yet is printed on this page rather than hidden: no tuplet brackets on triplets, one voice per staff, one key signature per take, and a tempo fixed at the start. For a four-bar example, a warm-up or a lick you want to keep, that is plenty. For a twelve-page sonata, export the MusicXML and finish it in MuseScore.

How do I use it in a lesson?

Open the chord window, the staff and the keyboard, and put them on the screen your student is watching — a second monitor in the room, or a shared window on a call. Play; the name, the notation, the lit keys and the degree in the key update together.

Collect the chords into the progression panel as you go, then export it as text or a Markdown table. When the example needs to be written out, switch to the Recorder, play it once against the click, and send the MusicXML or the PNG before the call ends.

My capture source went black after I restarted Cadenza.

That is a capture-tool behaviour rather than a bug in the app: a window capture is bound to a window id, and quitting Cadenza destroys those ids. When it opens again the windows are new, so every source pointing at the old ones comes up empty and has to be re-picked.

The steadier setup on macOS is a display capture cropped to where you keep the windows — it survives restarts, and it is generally faster than window capture is on that platform. Save your arrangement as a layout preset so the windows come back to the same coordinates every time, and the crop keeps working.

Do I need an internet connection?

Only to activate the licence the first time. After that Cadenza runs fully offline — no telemetry, no analytics, no account, nothing to phone home to. Chord and scale definitions live inside the app, not on a server.

Which systems are supported?

macOS 12 or later, on Apple silicon and Intel, and Windows 10 and 11 (64-bit). The macOS build is the one developed against daily; the Windows build is the same code and the same licence.

Is it for beginners or for professionals?

Both, from different directions. A beginner gets plain chord names, labelled keys and four structured drills. A teacher gets four synchronised views to demonstrate with and a way to hand the demonstration over as a file. A jazz player gets ø7, m(maj7) and 7(♭9) spelled the way a chart spells them, rootless voicings named as rootless voicings, and a window layout that survives being streamed.

What happens when the trial ends?

The app still opens and your files stay yours. Every take you kept is a file on your disk and every export you made stays readable in the program that opened it. Nothing gets locked in a format only Cadenza can read.

Why Lithuanian?

Because it is home, and because no other tool in this category speaks it. The whole interface, every theory note and every joke exists in both languages — not a half-translated menu.

Play it once.

macOS 12 or later · Windows 10 and 11 · no account, no card

Cadenza is made by one person, in Lithuania. It exists because every chord tool I tried would sooner or later name a chord I had not played — a root that was not there, an extension it invented to make the arithmetic work. That is the one thing this app refuses to do, and everything else on this page was built around that refusal.

There is no account, no telemetry and no server. Once you have downloaded it, I have no idea what you play. Support email goes to the person who wrote the code. If it does not do what this page says it does, write and I will refund you.

— Vytautas