FEC stands for Forward Error Correction.

WebRTC uses IP networks to transport its data. IP networks are prone to errors causing packet loss. This means that media data sent by one WebRTC client to another might not be received on the other end due to congestion or network corruption.

FEC is a mechanism in which media packets are duplicated and sent multiple times across the network without any delay. This means that even if some of the packets aren’t received, the media stream can still be parsed and decoded properly. This assumes that the packets that got lost during transit have been sent multiple times.

FEC exist in WebRTC in different ways:

  • As part of the implementation of the Opus voice codec
  • REDundant coding for audio, where each audio frame can be sent more than once

Additional reading

Looking to learn more about WebRTC? 

Check my WebRTC training courses

About WebRTC Glossary

The WebRTC Glossary is an ongoing project where users can learn more about WebRTC related terms. It is maintained by Tsahi Levent-Levi of BlogGeek.me.