Wavetable Synthesis: Scanning & Position
A wavetable stores many single-cycle waveforms. Scanning through them changes timbre without changing pitch, a new dimension of control that subtractive filtering can't match.
Beyond a Single Table
In Part 76, we saw that a digital oscillator reads from a stored waveform. But what if it stored many waveforms and could smoothly morph between them? That's wavetable synthesis. Instead of changing timbre by filtering harmonics away (subtractive) or folding the waveform (West Coast), you move a "position" slider to scan through a stack of waveform frames. Each frame has its own harmonic content, and moving between them crossfades the spectra.
Spectral Interpolation
The smoothness of the scan depends on how frames are blended. Linear
interpolation in the time domain can cause audible clicks at frame
boundaries. Spectral interpolation (blending the Fourier
coefficients) guarantees smooth transitions and keeps the
waveform band-limited at all positions. This is what the browser's
PeriodicWave gives us for free.
Position as Expression
The wavetable position is an expressive parameter. Modulate it with an LFO for cyclic timbre movement. Push the LFO rate above 15 Hz and the modulation starts generating sidebands, the same FM territory we explored in Part 70.
Try it: start with "1. Static Sweep" and slowly drag the Position slider left to right. Watch the blue line move through the waveform frames and hear the timbre change. Then try "2. Envelope Morph" to hear the LFO scan automatically.
Advanced: draw your own waveform or import a WAV file
References
- Wikipedia: Wavetable Synthesis, origins and technique
- Native Instruments Massive X, modern wavetable synthesizer
- Xfer Serum, the wavetable synth that defined a generation