52 · Spectral Control

Vocoder · One Sound Controls Another

A vocoder sounds complicated until we open it. One sound is measured frequency-band by frequency-band. Those measurements become control signals. Then they multiply matching bands of another sound.

1 · You already know every part

MODULATOR → FILTER → MEASURE → ENVELOPE → CONTROL

CARRIER → MATCHING FILTER → × ENVELOPE → SUM → OUTPUT

Now copy that little machine many times in parallel.

Start with a drum loop with a fast envelope attack and release we’re not hearing the drum loop mixed with the synth — we’re hearing the synth being controlled by measurements taken from the drum loop.

2 · Play the vocoder

MODULATOR · the spectral shape

No file loaded · built-in demo ready

CARRIER · the sound being shaped

15 ms
140 ms

Keyboard · hold notes or a chord

Computer keys: A W S E D F T G Y H U J K · or click/touch the keyboard.

Bands16 parallel channels
Carrier notesnone
ModulatorSTOPPED
ArchitectureFILTER → ENV → × → Σ

3 · Watch the voice become control information

Each meter is the envelope measured from one modulator band. The same envelope controls the matching carrier band.

BAND 1: VOICE → BPF → |x| → ENVELOPE → × ← CARRIER BPF

Try 4 bands, then 8, 16, 32 and 64. More bands describe the changing spectral envelope in finer detail. It is the same idea repeated at progressively finer frequency resolution.

4 · Why attack and release matter

Fast envelope

Tracks consonants and rapid changes more closely. The carrier articulation becomes sharper and speech tends to become easier to recognise.

Slow envelope

Smears the measurements through time. The carrier follows a smoother spectral shape and the result becomes more pad-like.

VOICE BAND → MEASURE → ENVELOPE FOLLOWER → CONTROL SIGNAL

That's the same envelope follower we already used for dynamics and modulation. It has simply been duplicated across frequency.

5 · One band is simple · a vocoder is lots of them

StageWhat happensOld idea
Split modulatorVoice enters many band-pass filtersFILTER
MeasureEnergy in each band becomes an envelopeMEASURE / ENVELOPE
Split carrierSynth enters matching band-pass filtersFILTER
Apply controlEach carrier band is multiplied by its voice envelope× MULTIPLY
RecombineAll controlled carrier bands are added togetherΣ ADD
FILTER → MEASURE → ENVELOPE → ×
FILTER → MEASURE → ENVELOPE → ×
FILTER → MEASURE → ENVELOPE → ×
⋮
Σ → OUTPUT

6 · From filter bands to FFT bins

A traditional vocoder uses a bank of filters. But we have just spent several pages learning another way to represent frequency in many discrete slots.

A FEW FILTER BANDS → MANY FINER BANDS → HUNDREDS OF FFT BINS

The implementation changes, but the underlying thought is familiar: measure spectral information from one sound and use it to transform another.

Next · Image → Sound → Image

What if the spectral data does not come from sound at all?

IMAGE PIXELS → TIME × FREQUENCY × MAGNITUDE → AUDIO

Draw a picture. Hear it. Export it. Then open the audio in a spectrogram and see the picture come back.