audio-limiter
LIB-
Web Audio API Limiter built with AudioWorklet
audio-limiter is a high-performance limiter node designed specifically for Web Audio API environments. It uses AudioWorklet
to achieve low-latency, real-time audio processing directly in the browser.
Limiters are essential for controlling dynamic range and preventing clipping in digital audio chains. This library gives developers full control over signal limiting without relying on native DSP plugins or server-side processing.
Key features:
- Real-time peak limiting using AudioWorklet
- Lightweight and modular – built for browsers
- Typed in TypeScript, bundled with Webpack
- Tested with Jasmine and Karma
- Integrates easily with Web Audio graph
Use cases:
- Browser-based audio synths and samplers
- Live audio streaming or podcast tools
- Web-based DAWs and sound editors
- Limiting output gain in interactive experiences
Example usage:
// Create limiter node in Web Audio context
const limiter = await createLimiterNode(audioContext);
// Connect nodes
sourceNode.connect(limiter).connect(audioContext.destination);
The node operates independently from the main thread, ensuring glitch-free limiting even under heavy UI workloads. Its core is designed to be highly portable and hackable for advanced audio workflows.