Genre Arrangement and Harmonic Signatures
Learning objectives
- learner can reproduce the arrangement arc characteristic of a chosen genre
- learner can apply a genre's harmonic and chord-voicing signature
- learner can select tempo, mood and ambient/downtempo pacing appropriate to the style
Capstone — one whole task that evidences the objectives
Choose a genre (synthwave, trance, deep house, dubstep, nu-disco, goa, downtempo/ambient) and produce a one-minute arranged excerpt whose structure, chord voicing/harmonic character and pacing are unmistakably that genre.
Prerequisite modules
When you improvise a set live or sketch a track in the studio, “make it sound like deep house” is a real brief — a promoter, a collaborator, or your own set plan hands you a genre, and the audience knows within thirty seconds whether you nailed it. What sells a genre is rarely one sound: it is the conspiracy of arrangement arc, harmonic voicing, and pacing. This module builds exactly that three-way judgment, so that in a live-coding rig you can pull a style out of thin air by reaching for its structural and harmonic fingerprints rather than imitating a specific record.
Start supported: pick one genre and copy its skeleton with a reference open, the way “Synthwave arrangements copy a reference track’s classical verse-chorus song form” walks through timestamping sections. Then contrast arcs across the palette — the single recurring hook of trance, goa’s long drop-free crescendo, nu-disco’s filter-ramped single loop — until you can sketch a genre’s arc from memory. In parallel, drill the harmonic signatures: major-key pads for synthwave, minor/Phrygian darkness for dubstep, and deep house’s ever-present 7th, exercising the chord-reduction move (keep root and 7th, cut the rest) until voicing decisions are automatic. Finally, calibrate tempo and mood: 135–140 BPM uplift, ~90 BPM downtempo, and the ambient-versus-downtempo rhythm distinction.
Every required atom is a fingerprint the capstone must exhibit — you cannot make a one-minute excerpt “unmistakably” a genre without its arc, its voicing rule, and its tempo/mood band. Supporting atoms enrich rather than gate: triad and seventh-chord construction refresh prerequisites, lead-catchiness, arp texturing, hardstyle contrast, sleep-music’s extreme patience, and nu-disco’s live instrumentation character widen the map beyond what the excerpt itself demands.
Runnable examples
Generated from the context/ instrument corpus by concept (redistributable idioms only). Do not edit — regenerate with gen-module-examples.mjs.
four-on-the-floor
s("bd*4")
strudel-0001 · CC0
setcps 0.52
tidal-0044 · CC0
chord-stab
chord("<Cm7 Fm7>").voicing()
strudel-0010 · CC0
~stab: mix ~n1 ~n2 ~n3 >> mul ~env
glicol-0015 · MIT
arpeggio
n("0 2 4").scale("c:minor").arp("up")
strudel-0012 · CC0
d1 $ arp "up" $ n "c'min7" # sound "superpiano"
tidal-0012 · CC0
call-and-response
cat(s("bd sd"), s("~ cp ~ cp"))
strudel-0025 · CC0
d1 $ cat [sound "bd sn", sound "~ cp ~ cp"]
tidal-0024 · CC0
layer-subtraction
s("bd*4, hh*8, ~ sd").mask("<1 1 1 0>")
strudel-0024 · CC0
d1 $ mask "1 1 1 0" $ sound "bd*4, hh*8, ~ sn"
tidal-0023 · CC0
build-up
out: arrange ~intro 4 ~main 8 >> mul 0.6
glicol-0014 · MIT
SinOsc s => Envelope e => dac; e.duration(500::ms); e.keyOn();
chuck-0027 · MIT
chord-progression
play_chord progression.tick, release: 4, amp: 0.5; sleep 4
sonicpi-0017 · CC0
Pbind(\degree, Pseq([[0, 2, 4], [3, 5, 7], [4, 6, 8], [0, 2, 4]], 1), \dur, 2).play
supercollider-0031 · CC0
drop
s("bd*4, ~ sd, hh*8").mask("<0 0 0 1>")
strudel-0023 · CC0
d1 $ mask "0 0 0 1" $ sound "bd*4, ~ sn, hh*8"
tidal-0022 · CC0
chord-extension
[60,63,67,70] @=> int ch[]; SawOsc s => ADSR e => dac; e.set(2::ms,120::ms,0,2::ms);
for(0=>int i;i<ch.size();i++){ Std.mtof(ch[i]) => s.freq; e.keyOn(); 150::ms => now; }
chuck-0035 · MIT
Atoms in this module
Required — these gate the capstone
Supporting — enrichment, not gating
Part of curricula
- Electronic Music Producer — from raw sound to a released track — Write and arrange a full track required