Karplus-Strong synthesizes a plucked string by recirculating a noise burst through a delay line and a lowpass averaging filter
The Karplus-Strong algorithm (published 1983) models a plucked string with a feedback delay loop and minimal computation. Fill a short delay line with a noise burst (or a triangular waveform, mean zero) as the pluck excitation, read it out as the first cycle of sound, then on each recirculation feed the output back through a simple lowpass ‘averaging’ filter (average of adjacent samples) before rewriting it. Delay-line length sets pitch: fundamental = sample rate / delay length, so a longer line gives a lower pitch; interpolating (non-integer) delays give precise tuning. The lowpass filter damps high frequencies faster than low ones each cycle — exactly how a real string’s bright attack decays to a warmer, quieter sustain — so the tone naturally decays. Feedback gain and filter cutoff jointly set sustain length and timbre; the initial waveform shape sets timbre but not pitch; sign randomisation reintroduces aperiodicity for drum-like sounds. Karplus-Strong is the foundational case of digital waveguide / physical-modeling synthesis, from which more complex instruments are built as networks of delay lines, filters, and junctions.
Examples
Delay length = 44100/440 ≈ 100 samples at 44.1 kHz → 440 Hz. SuperCollider: Pluck.ar(WhiteNoise.ar, Impulse.kr(1), 0.2, 440.reciprocal). Signal chain: delay(L) → lowpass → back to delay input, triggered by a noise pulse; a second delay line an octave up makes a two-string instrument. Roughly 3 multiplies + 2 adds per sample.
Assessment
Given a 44,100 Hz sample rate and a target of 220 Hz, compute the delay-line length. State what acoustic phenomenon the lowpass averaging filter models, and which parameter controls decay time. Predict what happens as feedback approaches 1.0, and what changes (and what doesn’t) if you initialize with a triangular waveform instead of noise.