Feature #5875
closedIncrease maximum size of RIFO buffer to cater for higher prefill levels
100%
Description
Some transatlantic users experience high packet loss and large jitter. High packet loss can be worked around with FEC, implemented in an external program that forwards UDP packets with redundancy. The added redundancy adds additional jitter, as packets originally lost and recovered with FEC may pass packets not lost.
The additional jitter and packet reordering is not a problem if the RIFO is run at a sufficiently high prefill level. On average the RIFO stays at that prefill level but does experience local variations that are important.
However, if the RIFO is prefilled to and kept at a high level (around 700 frames) the level gets dangerously close to the maximum RIFO length, hardcoded to 800 frames.
Increasing the RIFO size is trivial, by changing a single #define. A doubling of its size to 1600 frames (200ms) may be appropriate.
A doubling of the size may seem overkill but in absolute terms, the memory footprint of the RIFO stays low (<= 52kB).