v139 · webrtc
Audio Level for RTC Encoded Frames
This feature consists in exposing to the Web the audio level of an encoded frame transmitted via RTCPeerConnection and exposed using WebRTC Encoded Transform.
concepts
-
Encoded Frame Audio Level
Each encoded audio frame now carries an audioLevel metadata field (0–127 dBov). Pipelines doing per-frame transforms can read it directly without decoding the frame.
-
Silence Suppressor
Skip transmitting encoded audio frames whose audioLevel falls under a silence threshold — no decode required. The explainer's bandwidth-saving use case, simulated against a live mic.
-
Active Speaker & Dominance Router
A 4-participant SFU simulator. The router reads
audioLevelon every encoded frame, spotlights the loudest stream, and suppresses anyone below a configurable silence floor. Live mic input drives four virtual participants. -
Audio Mix Normalizer
Four simulated participants with animated level bars. Set a target loudness, click Normalize — each participant gets a computed gain factor shown as a color-coded badge. Includes the actual
RTCEncodedTransformcode pattern for readingaudioLeveland applying gain without decoding.
why it shipped
audioLevel is exposed via other APIs (RTCStats, RTCContributingSources) and supports well-known use cases such as indicating who's talking in a VC application, or detecting silence.