How Parameter Smoothing Stops MIDI CC Stepping
Parameter smoothing is a digital signal processing technique designed to eliminate audible "zipper noise" and harsh transitions caused by standard MIDI resolution. Because traditional MIDI Continuous Controller (CC) messages transmit data in discrete 7-bit steps (values ranging from 0 to 127), rapid parameter sweeps create abrupt stair-stepped jumps rather than fluid curves. Parameter smoothing intercepts these coarse values and calculates intermediate points at the audio-rate, transforming abrupt jumps into clean, continuous modulations.
The Origin of Stepped Artifacts (Zipper Noise)
Standard MIDI CC values are quantized to only 128 discrete integer states. When a musician or an automation lane rapidly moves a controller—such as turning a filter cutoff knob from 0 to 127 within a fraction of a second—the receiving audio engine does not receive a smooth curve. Instead, it receives a sequence of sparse, instantaneous jumps.
When a sensitive parameter like filter cutoff, delay time, or gain shifts instantaneously, it creates a discontinuity in the audio waveform. In the frequency domain, these sharp discontinuities generate high-frequency harmonic bursts. To human ears, this translates to a persistent, abrasive chattering or clicking known as "zipper noise."
How Parameter Smoothing Operates
Parameter smoothing acts as an intermediary buffer between the MIDI input and the audio rendering engine. Rather than allowing an incoming MIDI CC event to instantly rewrite an internal parameter value, the smoothing algorithm gradually transitions the parameter to the target value.
This is primarily accomplished through two common methods:
- Linear Ramping (Interpolation): When a new MIDI CC value arrives, the engine calculates a slope between the current parameter value and the incoming target value over a defined duration (typically between 5 and 20 milliseconds). The value changes by a microscopic amount every sample, creating a straight-line transition between the steps.
- Low-Pass Filtering (Exponential Smoothing): Many audio plugins feed raw CC data through a simple digital one-pole low-pass filter (also known as an exponential decay or leaky integrator). High-frequency transitions (the instant jumps) are rolled off, leaving behind a smooth, natural curve that gently glides toward the target value without overshoot.
Audio-Rate Decoupling
Crucially, parameter smoothing shifts the update frequency of the parameter from the control rate to the audio sample rate.
MIDI CC messages arrive intermittently, often at intervals of tens of milliseconds. Audio processing, however, occurs thousands of times per second (e.g., 44,100 or 48,000 times per second). Parameter smoothing computes the parameter value per-sample—or across tiny sub-blocks of samples—rather than per-MIDI-message. By the time the parameter modulates the audio stream, the discrete 128-step staircase is converted into a mathematically continuous curve, entirely preventing stepped artifacts while preserving responsive real-time control.