Web Audio

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
Tsahi Levent-Levi

Tsahi Levent-Levi

Independent WebRTC analyst. 20+ years in telecom, 13 focused on WebRTC. Writes for developers and product teams who need to understand, not just implement, real-time communications.