Web Audio API is a browser API for processing, synthesizing, and analyzing audio in web applications. It provides a graph-based audio processing model where audio nodes are connected together to form a pipeline.
Web Audio in WebRTC
Web Audio integrates with WebRTC through MediaStreams. A WebRTC audio track from getUserMedia can be fed into a Web Audio processing graph via MediaStreamAudioSourceNode, processed through various audio nodes, and then output back to a MediaStream via MediaStreamAudioDestinationNode for sending over a PeerConnection.
Common WebRTC use cases for Web Audio:
- Audio mixing – combine multiple audio sources before sending (e.g., microphone + music in a broadcast)
- Audio analysis – visualize audio levels, detect speech activity, or measure volume
- Effects processing – apply gain, filtering, or spatial audio effects before transmission
- Custom noise suppression – implement application-level audio processing alongside WebRTC’s built-in AEC and AGC


