Low latency catch-up feature using playback rate
Created by: wilaw
When playing low latency live streams with small target buffers (in the realm of 3s or less) , there are inevitable perturbations in segment delivery which can offer exceed the buffer duration. Even as the player restarts as quickly as possible, as the stream progresses the live latency increases by the sum total of all rebuffers that have occurred, causing unacceptable latency within a short period of time.
One proven method of correcting for this drift is to have the player accelerate the rate of playback if the buffer is larger than the target. Small increases in playback rate are usually not noticeable to viewers. Video that has high quality audio along with lip sync is more sensitive to acceleration being noticeable, therefore one setting will not work for all content types. Additionally, providers may wish to turn this feature off all-together.
Feature request - when operating in low latency mode, increase the playback rate if the video buffer is above the target buffer. Use a playback rate of 1 if buffer <= target.
Suggested default rate: 5% API: set catch-up rate in range 0-20%. Setting it to 0% turns off this feature.
Cheers Will