Even on good networks, 0.5-2% of audio packets are lost. Without concealment you get clicks or silences that destroy intelligibility. PLC reconstructs missing packets from surrounding context — done well, listeners don't notice losses up to ~5%.
Silence substitution (don't)
Replacing the lost packet with silence is the simplest fix. It produces audible clicks at packet boundaries (energy discontinuity). Acceptable only if loss is rare (<0.1%) and packets are tiny (<5ms).
Last-packet repetition
Repeat the previous frame in place of the lost one. Cheap, mostly transparent for vowels. Audible 'metallic' quality for music or fast transients. Standard fallback when nothing better is available.
LPC extrapolation
Linear Predictive Coding analyzes the previous 20-30ms, fits an AR model, extrapolates forward to synthesize the missing frame. Used in G.711 PLC and Opus. Better than repetition for both speech and music, especially across consecutive losses.
Forward Error Correction (FEC)
Embed a low-bitrate copy of frame N inside frame N+1. If N is lost, the decoder reconstructs it from N+1's FEC bits. Adds ~10-20% bitrate; eliminates single-packet-loss artifacts entirely. Opus FEC is on by default in WebRTC.
Adaptive FEC + interleaving
In high-loss scenarios, interleave audio frames across packets so consecutive losses don't lose consecutive audio. Combined with FEC, this handles loss bursts up to 20% gracefully. Costs latency: 2-4× single-packet latency.