Glossary
Audio DSP and bbx_audio terminology.
A
ADSR: Attack-Decay-Sustain-Release. An envelope shape for amplitude or parameter control.
Anti-aliasing: Techniques to prevent aliasing artifacts when generating waveforms with sharp discontinuities. See PolyBLEP, PolyBLAMP.
Audio Thread: The high-priority thread that processes audio. Must be real-time safe.
B
Block: A DSP processing unit in bbx_audio. Implements the Block trait.
Buffer: A fixed-size array of audio samples, typically 256-2048 samples.
Buffer Size: Number of samples processed per audio callback.
C
Control Rate: Updating values once per buffer, not per sample. Used for modulation.
Cycle: An illegal loop in a DSP graph where a block's output feeds back to its input.
D
DAG: Directed Acyclic Graph. The structure of a DSP graph with no cycles.
Denormal: Very small floating-point numbers that cause CPU slowdowns.
DSP: Digital Signal Processing. Mathematical operations on audio samples.
E
Effector: A block that processes audio (gain, filter, distortion).
Envelope: A time-varying control signal, typically ADSR.
F
FFI: Foreign Function Interface. How Rust code is called from C/C++.
G
Generator: A block that creates audio from nothing (oscillator, noise).
Graph: A connected set of DSP blocks with defined signal flow.
L
Latency: Delay between input and output, measured in samples or milliseconds.
LFO: Low-Frequency Oscillator. A slow oscillator for modulation.
M
Modulation: Varying a parameter over time using a control signal.
Modulator: A block that generates control signals (LFO, envelope).
O
Oscillator: A block that generates periodic waveforms.
P
PolyBLAMP: Polynomial Band-Limited rAMP. Anti-aliasing technique for waveforms with slope discontinuities (triangle waves). Applies polynomial corrections near transition points.
PolyBLEP: Polynomial Band-Limited stEP. Anti-aliasing technique for waveforms with step discontinuities (sawtooth, square, pulse waves). Applies polynomial corrections near transition points to reduce aliasing.
Port: An input or output connection point on a block.
R
Real-Time Safe: Code that completes in bounded time without blocking.
S
Sample: A single audio value at a point in time.
Sample Rate: Samples per second, typically 44100 or 48000 Hz.
SIMD: Single Instruction Multiple Data. Processing multiple samples at once.
SPSC: Single-Producer Single-Consumer. A lock-free queue pattern.
T
Topological Sort: Algorithm that orders blocks so dependencies run first.
W
Waveform: The shape of a periodic signal (sine, square, saw, triangle).