New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Low latency catch up #2605
Low latency catch up #2605
Conversation
} | ||
|
||
function needToCatchUp() { | ||
if (playbackController.getIsDynamic() && streamProcessor.getType() === 'video') { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This implies that only video content will ever be sped up?
Whilst some audio content will be particularly sensitive to playback rate, it should be up to the content provider to determine whether or not to apply speed up to a particular stream type (and the appropriate rate if any).
The usual example of low latency is hearing your neighbours celebrating a goal through the wall. This applies equally to sports audio services.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good catch, I added that check in a first approach, I think it can be removed now
Worth noting that, whilst this solves the request in #2600, if a device does not support playbackRate to anything other than 1.0 (ie actually playing faster), the player will remain in catch up state forever. |
@bbcrddave how can we check if a device supports changing |
Sure, every browser will let you set and get playbackRate and most will play back at or around the rate that you specify. Some devices, unfortunately, will fail to play back at the rate set, and won't throw an exception. There's not much you can do but the comment wasn't against merging this PR as is, it was simply to point out that changing the playback rate may need to be supplemented with some other catch up mode (eg seek) for some devices. |
6666585
to
7c9cba3
Compare
Changed the approach in 7c9cba3, now we won't check buffer, but |
715e75a
to
f14e6ff
Compare
Checking the buffer level and target live delay, if it's behind the playback rate will be increased by 5% by default, configurable from 0% to 20%
Fixes #2600