- Home
- Hardware
- SDKs
- Cloud
- Solutions
- Support
- Ecosystem
- Company
- Contact
ESP-Audio-Effects is a professional audio processing library developed by Espressif for the ESP32 series. It provides essential capabilities including audio format conversion, dynamic range control, and sound effects processing, making it well suited for embedded audio applications such as smart speakers, headphones, and voice-interactive devices.
Designed for minimal resource consumption, the library offers consistent APIs across all modules. Each module can be integrated independently or combined into a flexible audio pipelines tailored to their product requirements.
Features
- Format Conversion
- Audio Routing
- Dynamic Processing
- Audio Effects
- Rate Conversion
- Bit Conversion
- Channel Conversion
Specifications
- 4 kHz to 192 kHz
- Supports multiples of 4 kHz or 11.025 kHz
- s16, s24, and s32 formats
- Three complexity levels
Bit Conversion
Converts audio between u8, s16, s24, and s32 formats for compatibility with different audio sources and devices.
Specifications
- Multichannel audio
- Supports arbitrary sample rates
- u8, s16, s24, and s32 formats
- Interleaved and non-interleaved layouts
Channel Conversion
Converts audio between channel configurations using a configurable weighting matrix.
Specifications
- Multichannel audio
- Supports arbitrary sample rates
- u8, s16, s24, and s32 formats
- Interleaved and non-interleaved layouts
- Audio Interleaver
- Audio Mixer
Audio Interleaver
Interleaves separate channel buffers into a continuous multichannel stream, or deinterleaves a stream into individual channel buffers.
Specifications
- Multichannel audio
- Supports arbitrary sample rates
- s16, s24, and s32 sample formats
Audio Mixer
Mixes multiple audio inputs into a single output with independently configurable weights and smooth fade transitions.
Specifications
- Multichannel audio
- Supports arbitrary sample rates
- s16, s24, and s32 formats
- Two configurable weight sets
- Smooth transitions between weight sets
- Interleaved and non-interleaved layouts
- Automatic Level Control
- Dynamic Range Control
- Multiband Compressor
Automatic Level Control
Automatically adjusts gain to maintain a stable output level as input volume changes. Per-channel gain control supports microphones and other sources with varying input levels.
Specifications
- Multichannel audio
- Supports arbitrary sample rates
- s16, s24, and s32 sample formats
- Gain range: (−64, 63] dB
- Supports interleaved and non-interleaved layouts
Dynamic Range Control
Shapes audio dynamics with a configurable gain curve for compression, limiting, expansion, and noise gating. Supports up to six curve points, independent timing controls, and hard- or soft-knee transitions.
Specifications
- Multichannel audio
- Supports arbitrary sample rates
- s16, s24, and s32 sample formats
- Up to six configurable curve points
- Makeup gain: −10.0 to 10.0 dB
- Attack time: 0 to 500 ms
- Release time: 0 to 500 ms
- Hold time: 0 to 100 ms
- Knee width: 0.0 to 10.0 dB
- Supports interleaved and non-interleaved layouts
Multiband Compressor
Splits audio into four configurable frequency bands and applies compression to each band independently. Crossover frequencies and compression settings can be adjusted per band.
Specifications
- Multichannel audio
- Supports arbitrary sample rates
- s16, s24, and s32 sample formats
- Four configurable frequency bands
- Independent compression settings per band
- Threshold: −100 to 0 dB
- Compression ratio: 1:1 to ∞:1
- Makeup gain: −10 to 10 dB
- Attack time: 0 to 500 ms
- Release time: 0 to 500 ms
- Hold time: 0 to 100 ms
- Knee width: 0 to 10 dB
- Solo and bypass controls per band
- Supports interleaved and non-interleaved layouts
- Equalizer
- Fade
- Sonic
- Howl Suppression
- Reverb
- Delay
Equalizer
Supports multiple filter types to independently adjust different frequency ranges. Center frequency, Q factor, and gain can be updated at runtime without reinitialization.
Specifications
- Multichannel audio
- Supports arbitrary sample rates
- s16, s24, and s32 sample formats
- Supports single or multiple filter configurations
- Filter types: High-Pass, Low-Pass, High-Shelf, Low-Shelf, and Peaking
- Supports real-time filter parameter updates
- Supports interleaved and non-interleaved layouts
Specifications
- Multichannel audio
- Supports arbitrary sample rates
- Supports s16, s24, and s32 sample formats
- Modes: Fade-In and Fade-Out
- Curves: Linear, Quadratic, and Square Root
- Supports interleaved and non-interleaved layouts
Sonic
Adjusts playback speed and pitch independently or together. Speed changes preserve pitch, while pitch changes preserve playback speed.
Specifications
- Multichannel audio
- Supports arbitrary sample rates
- s16, s24, and s32 sample formats
- Speed range: 0.5× to 2.0×
- Pitch range: 0.5× to 2.0×
Howl Suppression
Detects and suppresses acoustic feedback between microphones and speakers in real time. Detection thresholds are configurable, with independent processing for each channel.
Specifications
- Supports sample rates: 8, 16, 32, 44.1, and 48 kHz
- s16, s24, and s32 sample formats
- Supports any number of channels with independent per-channel processing
- Configurable detection threshold
- Supports interleaved and non-interleaved layouts
Reverb
Simulates room reflections and sound diffusion to add depth and spatial presence. Built on the Freeverb (Schroeder–Moorer) algorithm for natural reverb with efficient resource use.
Specifications
- Multichannel audio
- Supports arbitrary sample rates
- s16, s24, and s32 bit depths
- Room size factor: [0.0, 1.0]
- High-frequency damping factor: [0.0, 1.0]
- Wet signal (reverb) level: [96.0, 0.01] dB
- Dry signal (original) level: [96.0, 0.01] dB
- Reverb pre-delay: [0, 200] ms
- Supports interleaved and non-interleaved layouts
Delay
Creates natural echo effects using delayed copies of the input signal. A lightweight feedback delay line provides adjustable echo repetition, decay, and spatial depth.
Specifications
- Multichannel audio
- Supports arbitrary sample rates
- s16, s24, and s32 sample formats
- Configurable maximum delay: [0, 1000] ms
- Delay range: [0, max_delay_ms] ms
- Feedback coefficient range: [0.0, 0.95]
- Supports interleaved and non-interleaved layouts
Key Benefits
Ultra-Low Resource Usage
Most modules use less than 1% CPU on the ESP32-S3 at 240 MHz, with memory usage measured in kilobytes. Even the most demanding module, the multiband compressor, uses less than 5% CPU.
Flexible Parameter Control
Parameters can be adjusted at runtime. The equalizer supports independent filter, frequency, and gain settings, while dynamic range and multiband compression offer configurable gain curves and timing controls.
Simple, Consistent APIs
All 14 modules share a consistent API pattern, simplifying integration, module replacement, and pipeline expansion.
Flexible Module Combination
Modules can run independently or be chained together, with support for a wide range of sample rates and channel configurations.
Support Across the ESP32 Series
This framework supports the full range of Espressif ESP32 SoCs and integrates seamlessly with existing ESP-IDF and ESP-GMF projects.

