Skip to content
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

Fix possible HLSError (BufferFullError) on Firefox #2224

Merged
merged 1 commit into from
Dec 14, 2020
Merged

Fix possible HLSError (BufferFullError) on Firefox #2224

merged 1 commit into from
Dec 14, 2020

Conversation

Delgan
Copy link
Contributor

@Delgan Delgan commented Dec 12, 2020

Changes
Limit the BufferLength to 6s on Firefox too. See #2148.

Issues
Fixes #2223.

@sonarcloud
Copy link

sonarcloud bot commented Dec 12, 2020

Kudos, SonarCloud Quality Gate passed!

Bug A 0 Bugs
Vulnerability A 0 Vulnerabilities
Security Hotspot A 0 Security Hotspots
Code Smell A 0 Code Smells

No Coverage information No Coverage information
4.0% 4.0% Duplication

@thornbill thornbill added the stable backport Backport into the next stable release label Dec 14, 2020
@thornbill thornbill merged commit ebb4b05 into jellyfin:master Dec 14, 2020
joshuaboniface pushed a commit that referenced this pull request Dec 31, 2020
 Fix possible HLSError (BufferFullError) on Firefox

(cherry picked from commit ebb4b05)
Signed-off-by: Joshua M. Boniface <joshua@boniface.me>
@joshuaboniface joshuaboniface removed the stable backport Backport into the next stable release label Dec 31, 2020
njsmith added a commit to njsmith/jellyfin-web that referenced this pull request Aug 10, 2021
The hls.js maxBufferLength parameter sets the minimum amount of video
that hls.js will try to buffer. We used to have this set to 30
seconds, but this caused problems with high-bitrate videos trying to
buffer too much data and making Chrome/Firefox cranky, so
maxBufferLength was reduced in jellyfin#2148 and jellyfin#2224.

However, those PRs *also* reduced maxMaxBufferLength to 6 seconds,
which doesn't make sense -- basically this is telling hls.js that it
must *never* buffer more than 6 seconds at a time, even if there's
plenty of memory and it wouldn't make the browser cranky at all. And
obviously such a tiny buffer makes it very easy for small network
glitches to cause user-visible playback problems.

So this PR removes the maxMaxBufferLength configuration entirely,
accepting hls.js's default (which is currently 600 seconds).

Fixes jellyfin#2856
viggy96 pushed a commit to viggy96/jellyfin-web that referenced this pull request Aug 24, 2021
The hls.js maxBufferLength parameter sets the minimum amount of video
that hls.js will try to buffer. We used to have this set to 30
seconds, but this caused problems with high-bitrate videos trying to
buffer too much data and making Chrome/Firefox cranky, so
maxBufferLength was reduced in jellyfin#2148 and jellyfin#2224.

However, those PRs *also* reduced maxMaxBufferLength to 6 seconds,
which doesn't make sense -- basically this is telling hls.js that it
must *never* buffer more than 6 seconds at a time, even if there's
plenty of memory and it wouldn't make the browser cranky at all. And
obviously such a tiny buffer makes it very easy for small network
glitches to cause user-visible playback problems.

So this PR removes the maxMaxBufferLength configuration entirely,
accepting hls.js's default (which is currently 600 seconds).

Fixes jellyfin#2856
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Playback stops due to HLS Error (bufferFullError) on Firefox with 1080p file
4 participants