Handling Packet Loss

When a network is performing badly and packets are being lost you need a mechanism for recovery. QuickLink StudioCall can provide reliable real-time video and audio communication when packets are lost in the communication path. In addition to codec error resilience, QuickLink StudioCall uses forward error correction (FEC) and packet retransmissions based on negative acknowledgments (NACK) to provide a best-in-class video/audio broadcast experience. 

Forward error correction: In each packet QuickLink StudioCall adds additional information to enable a video or audio frame to be reconstructed due to packet loss. The FEC level in the server channel input settings can be set to either Default, Low, Medium or High. The higher the level of protection the better chances of reconstruction but this uses more data so will result in an overall softer picture. 

To activate this, click on the settings cog of a server channel while logged into the QuickLink StudioManager Portal.

This opens up the channel settings. From here you can select your preferred FEC level.FEC_level.png
Default = the default level of FEC as determined by WebRTC.Low = 15%Medium = 30%High = 50%
Packet retransmissions based on negative acknowledgment (NACK): the sender will resend the packets after the receiver makes the request with a negative acknowledgement message (NACK) indicating which packets were lost. Request for retransmission is immediate after detecting a gap in the missing sequence. Requests stop when the packet is received, or the protection period (Buffer) runs out. The larger the buffer the more chances of a successful retransmit but this will increase overall latency. The buffer time period can be increased or decreased in the server channel output settings. 
To set the buffer, click on the settings cog of a server channel while logged into the QuickLink StudioManager Portal
Select the Output tab. Output_tab.png
Set the buffer to your desired level. The default is 250ms. set_buffer.png

These mechanisms can be combined depending on the network conditions. 

To learn more about how web-rtc handles packet loss please read this article: - https://static.googleusercontent.com/media/research.google.com/en//pubs/archive/41611.pdf 
Was this article helpful?
1 out of 1 found this helpful
Share it, if you like it.