Skip to content

CONCEPT Cited by 1 source

Forward error correction (audio)

Definition

Forward Error Correction (FEC) in RTC audio streams means sending redundant copies of (or parity information for) prior audio frames along with current frames, so a receiver can reconstruct missing frames after packet loss without requiring a retransmission round-trip. In low-latency audio calls, retransmission is usually impossible (the window closes within ms), so FEC is the primary packet-loss mitigation mechanism (Source: sources/2024-06-13-meta-mlow-metas-low-bitrate-audio-codec).

Inband vs out-of-band FEC

Named by the MLow source:

  • Inband FEC — redundancy packed inside the codec bitstream itself (e.g. Opus's LBRR — low-bitrate redundancy). Cheaper on-the-wire: you're still sending one stream.
  • Out-of-band FEC — redundancy packets alongside the main stream.

The MLow comparison against Opus is specifically about inband FEC.

Bitrate-gated

Inband FEC has a minimum-bitrate threshold because the redundant frames take bitrate budget:

  • Opus inband FEC floor: 19 kbps at 10% packet loss. Below this, Opus cannot pack inband FEC at all.
  • MLow can pack inband FEC at 14 kbps at 30% packet loss — per the post's audio sample evidence. MLow's lower baseline bitrate for the same quality leaves bitrate headroom that FEC consumes.

The mitigation / quality dynamic

A better codec creates FEC headroom. Meta's forward plan:

"We're continuing to work on improving the audio recovery in heavy packet loss networks by pumping out more redundant audio, which MLow allows us to do efficiently."

I.e., the bitrate won from codec improvements is spent on redundancy, not on fidelity. See patterns/aggressive-fec-at-low-bitrate.

Network-adaptive coupling

FEC choices interact with bandwidth-adaptive codec modes: as BWE pushes bitrate down, FEC frames have to come out of the same budget. A lower codec floor means more FEC headroom at any given network quality.

Seen in

Last updated · 319 distilled / 1,201 read