FEC adds calculated redundancy to the stream. The simplest scheme — Reed-Solomon over k data packets producing n total (n > k) — lets the receiver reconstruct the original k from any k of the n. SMPTE 2022-1 specifies a column/row XOR FEC widely used in broadcast IP contribution. ULPFEC (RFC 5109, December 2007) is the FEC used inside WebRTC. RaptorQ (RFC 6330, August 2011) is a more efficient fountain code used in higher-end professional contribution.

The win of FEC is latency stability. There is no round-trip dance; the receiver decodes what arrived and gets the original data immediately. The cost is bandwidth: 25 % FEC overhead protects against up to 20 % loss, which is a steep tax to pay constantly when most of the time loss is near zero. Adaptive FEC schemes adjust the overhead based on observed loss, lowering the tax in good conditions.

For streaming, FEC is most useful on paths where ARQ-induced latency is unacceptable — WebRTC real-time media, satellite distribution, contribution over long bonded cellular. Pure FEC alone usually underperforms; the production pattern is FEC for first-line absorption plus ARQ for cleanup of anything FEC missed. SRT supports FEC via its packet filter API; RIST Main Profile has SMPTE 2022 FEC built in.