Subtractive synthesis: from raw wave to shaped voice
Learning objectives
- learner can build a complete subtractive voice — oscillator source → filter → envelopes/VCA → modulation — as a coherent signal flow
- learner can design contrasting subtractive voices (bass, lead, pad) and reason about them in synth-agnostic signal-flow terms
- learner can add monophonic performance features (glide/portamento, note priority) for expressive playing
Capstone — one whole task that evidences the objectives
Design three contrasting voices — a plucky bass, a screaming lead with glide, and a slow-swelling pad — from the same saw/pulse oscillator using only subtractive tools, and describe each as a signal-flow diagram that would transfer to any synth.
Prerequisite modules
This module builds toward the bread-and-butter skill of electronic music: dialing in a usable bass, lead, or pad on demand. In a live-coding or laptop-performance rig — where Surge XT or any softsynth sits behind your patterns — you rarely get to browse presets mid-set; you need to conjure “plucky bass” or “swelling pad” from a raw sawtooth in seconds, and that fluency is exactly what subtractive synthesis was built for, from Detroit techno basslines to synthwave leads.
The arc starts supported: you begin by tracing the classic VCO → VCF → VCA chain on a single patch, leaning on “Subtractive synthesis filters harmonically rich oscillator output to sculpt timbre” and the unit-generator idea that every voice is generators and modifiers wired together. Middle exercises hand you Welsh’s Cookbook-style recipes — named targets like strings or brass with suggested waveform, cutoff, and ADSR settings — so you practice the moves before inventing your own. When you add expressive playing, “Setting a synth to monophonic mode is required for portamento/glide” and the note-priority atom are your just-in-time pointers for making a lead sing rather than stutter. By the capstone, the recipes are gone: same oscillator, three contrasting voices, and a synth-agnostic signal-flow diagram for each.
The required atoms gate that capstone directly — the subtractive model, the signal-flow framing that makes your designs transfer beyond one UI, the contrast with FM that sharpens what “subtractive” means, and the mono-mode/glide/priority cluster for the lead. The supporting atoms enrich rather than gate: the Surge XT cluster grounds everything in one concrete free instrument (modulation routing, mono play modes, portamento options), while atoms on felt sound qualities, emulation limits, gear minimalism, and the cross-domain analogy of signal-flow versus canvas thinking in generative graphics give you taste and realism about what subtractive voices can and cannot do.
Runnable examples
Generated from the context/ instrument corpus by concept (redistributable idioms only). Do not edit — regenerate with gen-module-examples.mjs.
lowpass-sweep
Noise n => LPF f => dac; 0.2 => n.gain;
chuck-0003 · MIT
s("hh*8").lpf(sine.range(200,4000).slow(4))
strudel-0015 · CC0
highpass-sweep
s("hh*8").hpf(saw.range(200,4000).slow(4))
strudel-0016 · CC0
hpf (400 ~~ 4000 $ osc 0.1) 1 (saw 55) >> audio
punctual-0008 · CC0-1.0
fm-timbre
note("c3").s("sine").fm(4).fmh(2).fmi(3)
strudel-0204 · CC0
osc (midicps 24 * (1 ~~ 4 $ osc 110)) >> audio
punctual-0006 · CC0-1.0
saturation-drive
d1 $ sound "bd*2" # shape 0.4
tidal-0033 · CC0
{ (SinOsc.ar(110) * 5).tanh * 0.2 }.play
supercollider-0009 · CC0
Atoms in this module
Required — these gate the capstone
Supporting — enrichment, not gating
Part of curricula
- Dawless Performer — hardware jam to recorded live take — Signals, voices, and the DAWless mindset required
- Electronic Music Producer — from raw sound to a released track — Design your palette — synthesis and groove required
- Live Coder — zero to performing live-coded music — Generative Systems & the SuperCollider Stack recommended
- Synthesist / Sound Designer — deep DSP to a performed live synth rig — Hearing sound as spectrum, shaping a first voice required
Unlocks — modules that require this one