The DSP Toolbox

Most digital audio processors are built from combinations of a surprisingly small number of operations. Learn these building blocks and many “different” effects stop looking mysterious.

You have already used all of these. The synthesis and sampling pages were DSP lessons in disguise. Now we are going to name the operations underneath them.

1. The small toolbox

+ADDmix signals, combine paths, add feedback
×MULTIPLYgain, envelopes, windows, scaling
z−1DELAY / STOREremember earlier samples; read them later
⌁MEASURElevel, peak, RMS, frequency, timing
≷COMPAREabove/below threshold? larger/smaller?
ƒ(x)FUNCTIONtransform one value into another

z−1 is the standard DSP notation for a one-sample delay. We can also delay by many samples by storing a longer history in a buffer.

2. Click a processor — see what it is made from

Choose a processor above.

3. You already know these examples

ADSR
The signal is multiplied by a changing envelope value.
output = input × envelope
Mixer
Several signals are added together.
mix = A + B + C + …
Sampler
A buffer stores samples, then a read position chooses which stored values to output.
Granular
STORE + many read positions + WINDOW × + ADD overlapping grains.
Physical modelling
DELAY/STORE + FILTER + × gain + feedback + ADD.
Wavetable
STORE a tiny waveform and repeatedly read/interpolate it.

4. A filter is already a little DSP machine

A simple digital filter can combine the current input with earlier input or output samples. Those stored values are multiplied by coefficients and then added.

INPUT → × coefficient → + → OUTPUT
      ↑     ↑
    DELAY/STORE → × coefficient
So “filter” is a useful musical label, but underneath we often find: DELAY → MULTIPLY → ADD.

5. Dynamics add measurement and decisions

A compressor has to know something about the signal before it can decide how much gain to apply.

INPUT → MEASURE LEVEL → COMPARE WITH THRESHOLD → CALCULATE GAIN → × → OUTPUT

Attack, release, ratio, knee and detector behaviour make the system more sophisticated, but the conceptual skeleton is already visible.

6. Distortion can be a function

Distortion is a very direct DSP idea: change the numerical relationship between input and output.

output = ƒ(input)

A straight line gives clean gain. Bend, clip or curve that relationship and harmonics appear. Later we can draw the transfer function and hear it.

7. Reverb: the toolbox turns into a forest

A synthetic reverberator can contain many delayed paths, gains, filters, feedback loops and sums. The diagram becomes complicated, but the individual operations do not.

DELAY×+DELAY×FEEDBACK ↻ +FILTERDELAY×+FEEDBACK ↻ DELAYFILTER+×DELAY+
A forest of delays, multiplies, additions, filters and feedback. Complex result; small vocabulary.

8. The map for the DSP chapter

ADD → MULTIPLY → DELAY / STORE → MEASURE → COMPARE → FUNCTION
↓
FILTERS · DELAYS · MODULATION EFFECTS · DISTORTION · DYNAMICS · REVERB

We will now take these operations one at a time, make them audible and visual, then recombine them into familiar processors and effects.

The aim is not to turn every student into a DSP mathematician. It is to make the machinery understandable enough that a plugin, Max patch or block diagram can be reasoned about rather than memorised.