home/ modules/ filters-fundamentals

Filters: types, cutoff, resonance, and rolloff

  • learner can choose the right filter type (LP/HP/BP) and set cutoff, resonance/Q, and slope for a spectral shaping goal
  • learner can explain filter behavior from first principles — poles, half-power point, self-oscillation, keytracking — and predict its effect on a rich source

Route a sawtooth through a resonant filter and produce four distinct results — a warm bass, an airy chord voice floating above the sub, a whistling self-oscillation tone, and a keytracked timbre-preserving patch — describing the cutoff/Q/slope settings for each.

The filter is the single most-touched control in subtractive synthesis and in a live-coded set alike: whether you are carving a techno bassline in SuperCollider, keeping a dub chord from fighting the sub, or riding a cutoff sweep as the one gesture the crowd can hear evolving, everything hinges on knowing what a filter will do before you turn the knob. This module builds toward exactly that fluency — one raw sawtooth, four deliberately different sonic outcomes, each justified in terms of type, cutoff, Q, and slope.

The arc starts fully supported. You first internalise the map — the idea that a filter selectively attenuates frequency ranges, and the basic response shapes — then anchor the vocabulary that makes settings predictable rather than guessed: the half-power (−3 dB) definition of cutoff, Q and its reciprocal rq, and the 6 dB-per-octave-per-pole rule for slope. Guided exercises then pull in the procedural atoms as just-in-time how-to pointers: murking a bright oscillator into a low-end bass with a mid-cutoff LPF, tightening sub-bass with a highpass below ~40 Hz, and thinning a chord into an airy voice by highpassing instead of lowpassing. Extreme resonance behaviour (self-oscillation) and keytracking close the set, so that by the capstone you patch all four targets unassisted.

Every required atom gates a capstone deliverable — you cannot describe the whistling tone without self-oscillation, nor the airy chord voice without knowing when to reach for a highpass, nor the timbre-preserving patch without keytrack. Supporting atoms deepen the picture: Surge XT’s filter configurations, offset mode, and scene highpass give a concrete rig to practise in, while ladder topology and the resonance-edge patch show where character and expressivity live beyond the numbers. The two bread-and-butter procedures — LPF bass definition and sub-bass highpassing — recur in nearly every session, so drill them inside real patches until they are automatic.

Walkthrough

A filter is the single most-used shaping tool in electronic music: it decides which frequencies of a raw wave you keep. You’ll build four distinct voices from one sawtooth, then stack them. At strudel.cc, Ctrl-Enter plays, Ctrl-. stops. Each step is a complete, playable program. (A sawtooth has all the harmonics — the perfect raw material for a filter to carve.)

1 — low-pass darkens (lpf). A low-pass filter passes frequencies below its cutoff and attenuates the rest. Drop the cutoff on a bright saw and it turns from buzzy to warm — the definition of a bass sound. Cutoff is the “brightness” knob ([[filter-spectral-shaping]], [[low-pass-filter-cutoff]], [[low-pass-filter-bass-definition]]).

setcpm(120/4)
note("c2 eb2 g2 c3").sound("sawtooth").lpf(600)

2 — resonance emphasises the cutoff (lpq). Q (resonance) boosts a narrow band right at the cutoff, adding a vocal, whistling peak. A little makes the filter sing; too much and it dominates. Here lpq(12) puts a clear resonant edge on the bass ([[filter-q-resonance]], [[resonant-filter-rq]]).

setcpm(120/4)
note("c2 eb2 g2 c3").sound("sawtooth").lpf(600).lpq(12)

3 — sweep the cutoff with a signal. The live-coding move: replace the static cutoff with a continuous signal. sine.range(300, 2200).slow(4) sweeps the filter open and shut over four cycles — a filter that breathes, no automation lane needed ([[filter-poles-rolloff]]).

setcpm(120/4)
note("c2 ~ eb2 g2").sound("sawtooth").lpf(sine.range(300, 2200).slow(4)).lpq(8)

4 — high-pass for air (hpf). A high-pass does the opposite: it removes the lows and keeps the highs. Use it to thin a chord into an airy voice that floats above the bass without fighting it for low-end space — the classic “pad up top” trick ([[high-pass-filter-sub-bass-tightness]], [[highpass-filter-airy-chord]]).

setcpm(120/4)
note("<[c3,eb3,g3] [g3,bb3,d4]>").sound("sawtooth").hpf(900).gain(0.7)

5 — self-oscillation (the whistle). Push resonance to the extreme and the filter feeds back into a pure sine tone at the cutoff — it “self-oscillates,” becoming an oscillator in its own right. lpq(28) on a low cutoff gives a whistling sine you can play ([[filter-self-oscillation]]).

setcpm(120/4)
note("c3 c3 c3 c3").sound("sawtooth").lpf(500).lpq(28).gain(0.5)

6 — four filter voices in one groove (the capstone). All the moves layered: a filter-swept warm bass, an airy high-passed chord above it, a resonant self-oscillation accent, over a 909 kick — each voice defined by how it’s filtered, not what note it plays ([[filter-types-frequency-response]]):

setcpm(120/4)
$: sound("bd*2, ~ sd").bank("RolandTR909")
$: note("c2 ~ eb2 g2").sound("sawtooth").lpf(sine.range(300, 900).slow(4)).lpq(6).gain(0.9)
$: note("<[c4,eb4,g4] [d4,g4,bb4]>").sound("sawtooth").hpf(1200).gain(0.4)
$: note("c6 ~ ~ ~").sound("sawtooth").lpf(700).lpq(26).gain(0.22)

What good sounds like. Each voice should own its own frequency band: the low-passed bass warm and round with no fizz, the high-passed chord airy and out of the bass’s way, the resonance singing without swamping the mix. The beginner failure is everything low-passed to the same dull cutoff, so voices mask each other — reach for the high-pass to carve space, not just more low-pass. Sweep slowly; a filter opening over 8 bars is a whole arrangement move. (Keytracking — cutoff following pitch so timbre stays constant up the keyboard — has no direct Strudel control; it lives in soft-synths like Surge.) (Skill map: live-coder Domain A4/B2 — the signal chain and carving space with filters.)

Now make it yours. Widen the sweep range for a bigger arc. Trade lpf for hpf on the bass and hear it vanish. Pattern the resonance: .lpq("<4 20>"). Add .room(0.3) to the airy chord for space. Drive the cutoff from the drums’ energy by matching the sweep’s .slow() to your phrase length.

Runnable examples

Generated from the context/ instrument corpus by concept (redistributable idioms only). Do not edit — regenerate with gen-module-examples.mjs.

resonant-filter

SinOsc s => LPF f => dac; 400 => f.freq;

chuck-0002 · MIT

play :e2, cutoff: 90, res: 0.9, release: 0.3

sonicpi-0022 · CC0

sub-bass

osc 27.5 >> audio

punctual-0002 · CC0-1.0

synth :subpulse, note: :e1, sustain: 0.4, amp: 1.4

sonicpi-0016 · CC0

Atoms in this module

Required — these gate the capstone

A filter selectively attenuates or boosts specific frequency ranges in a signal
Concept L1 Foundations BD
The four basic filter types are defined by which frequency region they pass or attenuate
Concept L1 Foundations BEF
A low-pass filter passes frequencies below its cutoff and attenuates those above it
Concept L1 Foundations BE
A filter's cutoff frequency is the point where output falls to 0.707 of maximum — the half-power (−3 dB) point
Concept L2 First instrument B
A bandpass filter's Q is its center frequency divided by its bandwidth — high Q means a narrow, resonant peak
Concept L2 First instrument B
The rq (reciprocal-Q) parameter of a resonant filter controls the sharpness of the resonance peak at the cutoff
Concept L2 First instrument B
Filter pole count determines the steepness of frequency rolloff: each pole adds 6dB per octave of attenuation
Fact L2 First instrument B
A voltage-controlled filter at maximum resonance self-oscillates into a sine-wave oscillator
Concept L2 First instrument BE
Filter keytrack at 100% makes filter cutoff follow note pitch harmonically, preserving timbre across the keyboard
Principle L2 First instrument B
Keyboard follow routes note pitch to the filter so higher notes open the filter more
Concept L2 First instrument B
A low-pass filter at mid cutoff with minimal resonance murks a bright oscillator into a low-end bass
Procedure L1 Foundations B
High-pass filtering below ~40 Hz removes inaudible subsonic content that makes bass sound flabby
Procedure L2 First instrument BD
A highpass filter rather than lowpass keeps a synth chord thin and airy above the sub-bass
Concept L3 Craft B

Supporting — enrichment, not gating

Frequency response is measured within a stated tolerance window, not a single curve
Concept L2 First instrument BN
Setting filter resonance at the edge of self-oscillation creates a dynamically expressive patch
Concept L3 Craft B
Surge XT's eight filter configurations control serial, parallel, stereo, feedback, and ring-mod signal paths
Concept L2 First instrument B
Surge XT Filter 2 offset mode links its cutoff and resonance to Filter 1 as relative offsets
Concept L2 First instrument B
Surge XT's scene high-pass filter at the end of the voice chain removes DC and unwanted low end per scene
Concept L2 First instrument BD
A resonant filter's circuit topology, not just its cutoff, shapes its sonic character
Concept L3 Craft B
Surge XT's Vintage Ladder filter models the Moog ladder circuit via numerical integration of the differential equation
Concept L3 Craft B
A phaser with feedback adds sweeping notches and a resonant peak that animate a static chord
Concept L2 First instrument B