Skip to main content

sim_lib_audio_dsp/
lib.rs

1#![forbid(unsafe_code)]
2#![deny(missing_docs)]
3//! Reusable pure Rust DSP processors for the SIM audio graph.
4
5mod citizen;
6mod common;
7mod delay;
8mod dynamics;
9mod filter;
10mod fixture;
11mod gain;
12mod modulation;
13mod oversampling;
14mod runtime;
15mod smoothing;
16
17pub use citizen::{DspConfigDescriptor, dsp_config_class_symbol};
18pub use delay::{AllPassFilter, CombFilter, DelayLine, DelayProcessor, FractionalDelay};
19pub use dynamics::{
20    Compressor, DynamicsEnvelope, Gate, Limiter, SoftClipper, Waveshape, Waveshaper,
21};
22pub use filter::{
23    BiquadFilter, BiquadKind, OnePoleFilter, OnePoleMode, StateVariableFilter, StateVariableMode,
24};
25pub use fixture::{GoldenFixture, r30_delay_golden_fixture, r30_gain_golden_fixture, run_offline};
26pub use gain::{DcBlocker, Gain, Pan};
27pub use modulation::{Chorus, Flanger, ModulatedDelayProcessor, Vibrato};
28pub use oversampling::{NonlinearSampleProcessor, OversampledSoftClipper, OversamplingWrapper};
29pub use runtime::{AudioDspLib, audio_dsp_symbols, install_audio_dsp_lib};
30pub use smoothing::{SmoothValue, SmoothedGain};
31
32/// Cookbook recipes for this lib, embedded at build time.
33pub static RECIPES: sim_cookbook::EmbeddedDir =
34    include!(concat!(env!("OUT_DIR"), "/cookbook_recipes.rs"));
35
36#[cfg(test)]
37mod tests;