Rust · no audio crates · hand-written WAV
Reverb is an audio synthesis engine in Rust with oscillators, an ADSR envelope, mixing, and a hand-written WAV file writer. No audio crates, no shortcuts. Here is the real math, running in your browser.
A short pipeline turns a note name into raw audio samples, with nothing borrowed along the way.
Sine, square, sawtooth, and triangle waves at any frequency and sample rate, computed directly from phase.
Attack, decay, sustain, and release shape every note so it fades in and out instead of clicking.
Notes chain into a track, tracks mix together, and the result is normalized to stay in range.
A RIFF header, fmt chunk, and data chunk written byte by byte. No audio or WAV crates involved.
The same oscillator and envelope math you just heard, writing WAV files to disk.
# build the release binary cargo build --release # render a single tone reverb tone --freq 440 --secs 2 -o out.wav # render the built-in demo track reverb demo -o demo.wav cargo test