home/ modules/ voice-and-formant-synthesis

Voice and formant synthesis: the source-filter model

  • learner can model vocal timbre with the source-filter approach and formant resonances
  • learner can synthesize vowels and voice-like textures with formant, FOF, and VOSIM techniques

Synthesize a sung vowel that morphs from 'ah' to 'ee' by moving formant resonances over a glottal source, and reproduce it with a second technique (FOF or VOSIM) for comparison.

The whole task here is conjuring a voice out of nothing — no samples, no vocalist — the signature move behind choir pads in ambient sets, talking-bass leads, and the eerie half-human textures live coders drop into a set to make an audience lean in. On a live rig this matters because a synthetic vowel is fully parametric: you can sweep it from “ah” to “ee” with one mapped controller or one pattern line, which a sample never gives you.

The arc starts supported: build a static vowel by parking a handful of high-Q bandpass filters at published formant frequencies over a buzzy sawtooth “glottis.” The atom on modeling the vocal tract as source plus formant resonances is your map; the one on bandpass Q versus bandwidth is the JIT how-to for making each resonance narrow enough to read as vocal without ringing into whistle territory. Next, animate it — crossfade filter centers between vowel tables — before switching paradigms: the atoms on FOF grain-burst streams and VOSIM’s decaying sin-squared pulse trains show how the same formants emerge from time-domain grains rather than filters, which is why granular foundations are a prerequisite. The capstone is the unsupported version: a morphing sung vowel realized twice, once per paradigm, and compared by ear.

The three required atoms gate the capstone directly — no source-filter mental model, no FOF or VOSIM realization, no comparison. The supporting atoms enrich: vocoder banks and Surge XT’s Window oscillator offer alternate rig-ready routes to formant color, while critical-band awareness explains why closely spaced formants can turn rough.

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

formant-vowel

note("<c3 e3 g3>").vowel("<a e i o>")

strudel-0036 · CC0

d1 $ note "c e g" # sound "supersquare" # vowel "a e i"

tidal-0035 · CC0

Atoms in this module

Required — these gate the capstone

Voice synthesis models the vocal tract as a series of formant resonances shaped by the source-filter model
Concept L3 Craft BE
VOSIM synthesizes vowel formants using decaying squared-sine pulse trains
Concept L3 Craft B
FOF synthesis generates formant spectra from streams of grain bursts
Concept L3 Craft B

Supporting — enrichment, not gating

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
A filter selectively attenuates or boosts specific frequency ranges in a signal
Concept L1 Foundations BD
A vocoder imposes the spectral envelope of a modulator signal onto a carrier using a bank of matched band filters
Concept L3 Craft BD
Surge XT's Window oscillator multiplies a wavetable by a window waveform, creating formant-like timbres
Concept L3 Craft B
The critical band is the ear's frequency resolution width; partials within it interfere and cause roughness
Concept L2 First instrument BA