8.2.2 FEC (前向纠错) 源码实现 在实时音视频通信的战场上,丢包不是敌人,而是宿命——它从不预告,却总在关键时刻叩响 RTP 数据包的棺盖。当网络抖动超过 50ms、丢包率突破 3%,H.264 的 I 帧一旦丢失,解码器便陷入“失明”;Opus 的语音帧若被截断,听者耳中只剩突兀的“咔哒”与真空般的静默。此时,重传(ARQ)已来不及:WebRTC 的端到端延迟预算通常压在 150ms 以内,而一次 RTT 往返至少消耗 60–120ms。于是,我们转身向时间要空间——不是等待重传,而是提前埋下冗余;不是修复错误,而是让错误在抵达时已不复存在。这,就是前向纠错(FEC)的本质:一场静默而精密的预演。