github video-dev/hls.js v0.10.0

latest releases: v1.5.17, v1.6.0-beta.1, v1.5.16...
6 years ago

IE11: ⚠️ This release has an issue with IE11 which has been addressed in v0.10.1. Please use that version instead if it concerns you.

TLDR

Many stability and efficiency fixes. Also, a lot of work done around subtitles.

Also: Improved alternate audio-track support, proper support for backup audio/video-track fallback behavior by media-group-IDs (so that e.g the same-level video-stream of the new group ID will be used in case of audio-fallback and vice-versa), support for various mp4 suffixes, no more unnecessary buffer-stall errors, and a few more things.

Note

While we didn't want to hold back on releasing the current stable state, issues related to gaps at start, seeking into gaps, and buffer-stall errors on seeking are still present in this release (regression from 0.8.x). We are planning to address them with the necessary time, as this requires a clean solution in order to avoid another regression in the area. We are hoping to release 0.10.1 asap with a fix for them:

#1780
#1781

API changes

bugfixes

  • Fixed undefined vars assumed by linter as DOM globals (no more linter globals)

  • Fix memory leak in destruction of TaskLoop sub-classes

  • Remove playbackRate factor for setting lastCurrentTime

  • Fixed FragmentTracker causing endless loading

  • Fix RemuxerTrackIdConfig as per iso/iec 14496-12 spec

  • Fall back to frag finding by SN if PDT search does not return a good fragment

  • Resolve partial frag loop loading

  • Activate level capping only when a video codec is found

  • Change example to use 'loadedmetadata' event rather than 'canplay' event

  • Fragment loading stuck issues resolved

  • TaskLoop: Clear timer when already set

features

  • Add a regex to check different mp4 suffix

  • Prevent excessive bufferStall errors through a 1 second debounce on reporting stalls

  • Refactor checkbuffer

  • Various subtitle bugfixes

  • Refactor timeline-controller to refer to 608/708 captions via name instead of number

  • Properly calculate the amount of sourcebuffers needed for streams with multiple non-alternate audio renditions

  • Redundant streams fallback behavior (backup) for alternate renditions with multiple media groups

dev-tooling / CI / releases

  • Use Array.from instead of Array.prototype.slice.call (where available)

  • Canary releases

  • Add ability to load demo page with canary build

  • unit test source-maps

  • Make MP4 inspect CLI tool

  • fix(deps): update to esdoc@1.1.0

  • Dissolve "helper" folder and towards more self-contained components

  • Demo config parameters serialized B64/JSON

  • Curly brace ESLint rule changes

  • Update PR template

  • Add limitMetrics option for demo page to limit the total number of metric entries per class

  • add package-lock.json

  • Remove old & insecure (404) favicons in demo HTML pages

testing

  • Fix stream var not defined in top scope

  • Browser tests setup: Replace deprecated method by setTimeouts

  • Fixed chrome not autoplaying when performing functional tests

documentation

  • Fix Getting Started Documentation

  • fixed typo

  • correct fragLoadingTimeout doc according to config

demo link

https://streambox.fr/mse/hls.js-0.10.0/demo/

Don't miss a new hls.js release

NewReleases is sending notifications on new releases.