Audio, MIDI & scores

A concert grand in the box, and your own if you prefer

Keyflow bundles a Yamaha grand SoundFont, renders stereo 44.1 kHz through the Windows audio device, answers all three pedals, plays through your MIDI keyboard or the computer keys, and reads MIDI and MusicXML scores properly — tempo maps, meter changes, per-track colours and all.

YDP Grand Piano · FreePats44.1 kHz stereoThree pedals (CC 64 / 66 / 67)MIDI in & outMIDI 0/1/2 · MusicXML
The Concert Grand start menuConcert Grand menu
The start menu: “Audio & MIDI Hardware Setup” opens the sound pages, “Perform & Play” the session dialog.
44.1 kHzstereo render through waveOut
3MIDI pedals supported
113 MiBbundled SoundFont
500songs indexed from one folder

The bundled piano

A Yamaha Disklavier Pro multisample, loaded for you

  • Keyflow ships the YDP Grand Piano SF2 from FreePats, built from a Yamaha Disklavier Pro multisample, with the acoustic-grand preset already selected.
  • It loads automatically when the app opens — a few seconds, and the label on the Audio page tells you when it is ready.
  • Load any uncompressed .sf2 of your own from Settings → Audio → LOAD SOUNDFONT, then pick a bank/program preset from the list below it. Polyphony is handled for you.
  • Hall reverb runs in real time in stereo, is on by default, has its own bypass button and keeps ringing after you release a key.
The design dock, where every sound and stage setting livesDesign dock
The dock holds the Audio and MIDI pages next to the stage pages — one search box covers all of them.

What the built-in synthesizer does not do

.sf3 is not supported, and some advanced SF2 parts — modulators, instrument filters and the reverb/chorus effects — are not fully reproduced, so the sound can differ from a dedicated SoundFont synthesizer depending on the file. The bundled SoundFont is about 113 MiB; its authors, source and CC BY 3.0 licence are credited in Assets/ATTRIBUTION.txt inside every package.

Pedals & input

Three pedals, four ways to play a note

Sustain · CC 64

The damper pedal: the sound keeps going after you release the key.

Sostenuto · CC 66

Holds only the notes that were already sounding when the pedal went down.

Una corda · CC 67

The soft pedal: lower gain and a gentler timbre.

Computer keyboard

A W S E D F T G Y H U J K play one octave from middle C; hold a key to sustain, release to send Note Off.

On-screen piano

Click or drag over the keys with the full colour, spark and flame response.

MIDI instrument

Velocity, Note On/Off and all three pedals enter the same feedback pipeline; the badge above the keyboard reads MIDI IN · C4 when a note arrives.

MIDI devices

Plug it in before you launch, or refresh later

SituationWhat Keyflow does
Keyboard plugged in at launchThe first MIDI input found is connected automatically.
Plugged in laterSettings → MIDI → Refresh devices selects and connects the new instrument; the device you chose is kept after a refresh.
Playing through an external synthWinMM MIDI output sends Note On/Off to the device you pick — an extra audio path beside the internal SoundFont.
Keeping timeA metronome that follows the tempo map and accents the first beat of each bar.
Working with tracksThe track list shows names, and each track can be soloed, muted or recoloured.

Importing scores

MIDI and MusicXML, read the way they were written

  • MIDI formats 0, 1 and 2 — format 2 is a set of independent sequences, so they play one after another.
  • Both time divisions: PPQ, and SMPTE where ticks are absolute time, so the tempo only changes the metronome's speed and never moves a note.
  • Tempo maps, meter, track names, note durations and velocities are read; drum channel 10 is ignored; seek, tempo and A-B loop work on top of all of it.
  • MusicXML in .musicxml, .xml and compressed .mxl (read through META-INF/container.xml): instruments, beats per bar, tempo maps, meter changes mid-song, chords, backup/forward and part names.
  • Broken files are rejected with a reason instead of half-loading, and a MIDI file with an unknown format or an unusable division says so.
The Play dialog with a score loadedChoose a score
The Play dialog: MIDI and MusicXML files, per-hand presets, recent songs and the folder library.

Library

Two lists: what you just played, and the folder you keep

PartHow it works
RECENTThe twelve newest songs with their note and track counts, length, tempo and the preset they were last played at. Click a row to reopen it with those exact values, × to forget it; the Play dialog shows the first five.
LIBRARYCHOOSE FOLDER indexes every MIDI file and MusicXML score under it — three levels deep, up to 500 files — reading each one with the app's own reader to get its notes, tracks, length and tempo.
Tags & searchAdd tags with + TAG… (up to eight per song, trimmed and lower-cased) and remove them by clicking. Search matches titles, file names and tags, and every word has to match.
Folder watcherThe folder is watched, so adding, editing or deleting a file updates the list by itself; RESCAN re-reads everything but reuses the entries that did not change and keeps their tags.
On diskThe index lives in library-index.json and only re-reads files that changed; a corrupt index reads as an empty library instead of an error, and the search box stays hidden until something is indexed.

Sound and recording are wired together

Recording taps the very PCM blocks the engine plays, and the tap is attached only while a recording runs — so performing costs nothing extra. MP4 gets those samples as AAC inside the file; AVI and PNG sequences get a 16-bit stereo WAV beside them. How a take is written →

Play the first note in a minute

The SoundFont loads itself, the first MIDI input connects itself, and the computer keyboard plays right away.