Additive synthesis and resynthesis: building timbre from partials
Learning objectives
- learner can build a timbre by summing enveloped sine partials, managing amplitude normalization and the expressiveness/parameter-count problem
- learner can use partial grouping, morphing, and noise-modulation to make additive synthesis controllable and expressive
- learner can run a resynthesis workflow: analyze a recorded tone into partials and reconstruct it additively
Capstone — one whole task that evidences the objectives
Analyze a short recorded instrument tone with FFT, then resynthesize it additively — reconstruct its partials with individual envelopes, group them under a single morph control, and compare the result to the original.
Prerequisite modules
This module builds toward one whole task: taking a real recorded tone — a plucked string, a struck key — apart with an FFT and putting it back together as a bank of enveloped sine oscillators you can actually perform with. In a live-coding rig this matters because additive patches are pure code: a SynthDef summing sines is trivially cheap to write mid-set, but naive versions clip the output bus and offer no single knob worth touching on stage. The craft here is making a hundred-parameter instrument feel like a one-parameter one.
The arc starts supported: build a small hand-tuned tone from a fundamental plus a few harmonics, leaning on the core idea that summing sine partials constructs timbre and on the harmonic-generator model of individually controllable harmonics. From the first exercise, the divide-by-N normalization move is drilled until automatic — every sum you write in the set needs it. The middle exercises confront why raw additive feels dead: the expressiveness problem, fragile transients, and noise-floor accumulation. Each pain gets a JIT counter-move: grouping harmonically related partials under shared envelopes, morphing between two complete parameter sets for a single performable control, and noise-modulating partials to reach breathy or drum-like timbres.
The required atoms gate the capstone directly — you cannot resynthesize a tone without the analysis-to-partial-tracks workflow, nor perform the result without grouping and morphing. Supporting atoms enrich rather than gate: Fourier duality and the harmonic series explain why the reconstruction works at all, cheap tricks like a sawtooth standing in for the highest partial or the odd/even harmonic warp offer resource-saving shortcuts beyond the capstone, and concatenative synthesis sketches where resynthesis goes next.
Runnable examples
Generated from the context/ instrument corpus by concept (redistributable idioms only). Do not edit — regenerate with gen-module-examples.mjs.
additive-synthesis
{ Klang.ar(`[[100, 200, 300, 400], [0.4, 0.3, 0.2, 0.1]]) * 0.1 }.play
supercollider-0022 · CC0
Atoms in this module
Required — these gate the capstone
Supporting — enrichment, not gating
Part of curricula
- Synthesist / Sound Designer — deep DSP to a performed live synth rig — The synthesis palette — FM, additive, wavetable, granular, drums required
Unlocks — modules that require this one