0 %

Nodes

Harmony nodes

Common-practice tonal harmonization — turn a melody into a four-part chorale, realize a figured bass, or recolor a progression with chromatic substitutions. The homophonic, functional complement to the counterpoint family.

NodeInputsOutputsDescription
Harmonize (Functional) midicents melody
number key (tonic)
string mode (major/minor)
number chromaticism (0/1)
string cadence (authentic / half / plagal / deceptive / none)
any progression
string roman
any chords
Chooses a common-practice chord progression that fits a melody (Bach-chorale / Classical idiom) by a Viterbi search over a tonic-subdominant-dominant grammar, ending on a selectable cadence — authentic, half, plagal, deceptive, or none. Chromaticism 1 adds V7 and secondary dominants. Wire Progression into SATB Voicing, or read the Roman-numeral analysis.
SATB Voicing any progression
number inversions (allow/root)
midicents soprano · alto · tenor · bass
any chords
Realizes a chord progression into four-part chorale texture with common-practice voice-leading: smooth motion, no parallel fifths or octaves, leading-tone and seventh resolution, choral ranges and doubling, and root-position framing at the cadence. Each voice wires to its own Voice node.
Chorale Harmonize midicents melody
number key
string mode
number chromaticism
number inversions
midicents soprano · alto · tenor · bass
any chords
string roman
Melody in, four-part chorale out — the functional harmonizer and the SATB voicer in one node, Bach-chorale / Classical idiom.
Figured Bass Realize midicents bass
string figures ("- 6 6/4 7")
number key
string mode
midicents soprano · alto · tenor · bass
any chords
string roman
Baroque continuo realization: derives the chord and inversion over each bass note from its figure (6, 6/4, 7, 6/5, 4/3, 4/2, plus accidentals) and voices three upper parts above the fixed bass with proper voice-leading.
Reharmonize string preset (classical / romantic / jazz)
any progression
number secondary dominants & leading-tone, tritone sub, modal interchange, passing & common-tone dim7
number altered dominant, dominant 9/11/13, cadential 6/4, Neapolitan, augmented 6th, chromatic mediant
number intensity (0–1)
any progression
string roman
any chords
Recolors a progression with classical-to-Romantic substitutions — secondary dominants and applied leading-tone sevenths, tritone subs, modal interchange, passing and common-tone diminished sevenths, altered dominants, dominant 9/11/13 extensions, the cadential 6/4, the Neapolitan, augmented-sixth and chromatic-mediant chords — keeping the melody intact. A Classical / Romantic / Jazz preset bundles the right devices, or choose them individually. Feed from Harmonize (Functional); the recolored progression goes on to SATB Voicing.
Harmonic Sequence string sequence (5ths / 5-6 / Pachelbel / fauxbourdon / custom)
number key
string mode
number chords (1–64)
number sevenths, transposition (diatonic / real), applied dominants
number start degree, step (degrees)
any progression
string roman
any chords
midicents bass
Generates a harmonic sequence — a model chord repeated at a recurring transposition. Descending/ascending fifths (the circle-of-fifths sequence), the descending and ascending 5-6 sequences, the Pachelbel/Romanesca ground and fauxbourdon (parallel 6/3 chains). Fifths run Diatonic (in key) or Real (modulating), with optional Sevenths (the 7–3 chain that voices cleanly) or Applied dominants (every chord the V7 of the next); the 5-6 / Pachelbel / fauxbourdon families are diatonic triadic with inversions. The Progression output (with a synthesized soprano) wires into SATB Voicing or Reharmonize.
Analyze Harmony any progression / chords
number key
string mode
string roman
string functions (T / PD / D)
any labels
any analysis
Roman-numeral analysis — the inverse of harmonization. Labels each chord of a Progression (from any harmony node) or a list of block Chords with a Roman numeral, inversion figure and tonal function, detecting chromatic types: secondary dominants and leading-tone sevenths, the Neapolitan, augmented sixths, borrowed (mixture) chords, altered dominants, chromatic mediants, the cadential 6/4 and common-tone diminished sevenths. Round-trips with Harmonize, Reharmonize and Harmonic Sequence.
Modulating Harmonize midicents melody
number home key
string mode
string modulate-to (dominant / subdominant / relative / parallel)
number modulate-at (0–1)
number return-home
midicents soprano · alto · tenor · bass
any chords
string roman
any progression
Harmonize a melody that changes key, using common-chord (pivot) modulation: a chord diatonic to both keys is reinterpreted at the seam (shown as "V = I" in the analysis), the new key is confirmed by its own dominant and cadence, and the music optionally modulates back home for the close.
Cadence string type (PAC / IAC / half / Phrygian half / plagal / deceptive / cadential 6/4)
number key (tonic)
string mode (major / minor)
any progression
string roman
any chords
midicents soprano
Spells a cadence — the closing gesture of a phrase — as a short chord formula in any key, each with an idiomatic soprano already fixed and the defining inversion realized (ii⁶ / iv⁶ / the 6/4). Wire the Progression into SATB Voicing, read the Roman numerals, or audition the Chords. Append it after a phrase, or study the cadence types side by side.

Studies that use these nodes

Wire these nodes into a piece of your own.

Create a free account14 days of Composer Pro, no card needed. Every account opens with the Examples folder.