video-dev/hls.js
 Watch   
 Star   
 Fork   
6 days ago
hls.js

v1.7.0-alpha.0

Summary

HLS.js v1.7.0-alpha.0 marks the creation of branch patch/v1.6x for LTS maintenance and merging of changes slated for 1.7.0 into development (master).

See the HLS.js Release Planning and Backlog board for more details on planned work, the deployments page for canary builds, and the roadmap for overall release features and theme.

21 days ago
hls.js

v1.6.13

Summary

HLS.js v1.6.13 includes bug fixes and improvements over the last release.

The initPTS fix addresses an edge-case introduced in v1.6.6 with #7311, where hls.js began using MSE timestampOffset in place or remapping media timestamps.

The content protection related fixes address issues resulting from an expectation for a KEYID attribute or a key ID value in the EXT-X-KEY tag or its URI.

Changes Since The Last Release

https://github.com/video-dev/hls.js/compare/v1.6.12...v1.6.13

  • Fix seeking back in live with timestamp wrapping (#7537) @robwalch
    • Fixes "fragParsingError" after seeking back in live - regression introduced in 1.6.6 with #7311 (#7536) @bmarshall
  • Use Widevine KEYID or parse PlayReady when level keys are present (#7545)
    • Fixes FairPlay parsing error - regression introduced in 1.6.11 (#7542) @Jason239
  • Get KEYID from init segment 'tenc' when not found elsewhere (#7547)
    • Fixes Widevine key parsing error - regression introduced in 1.6.11 with #7527 (#7541) @AfLosada

Demo Page

Get demo url from https://github.com/video-dev/hls.js/tree/deployments

API and Breaking Changes

If you are upgrading from version v0.14.17 or lower, see the MIGRATING guide for API changes between v0.14.x and v1.0.0.

Feedback

Please provide feedback via Issues in GitHub. For more details on how to contribute to HLS.js, see our CONTRIBUTING guide.

2025-09-09 23:08:08
hls.js

v1.6.12

Summary

HLS.js v1.6.12 includes bug fixes and improvements over the last release.

Changes Since The Last Release

https://github.com/video-dev/hls.js/compare/v1.6.11...v1.6.12

  • Fixed PlayReady regression:
    • Fix PlayReady key endianness (#7510) @ShubhamSharma2311
    • Error handling for PlayReady key with no status change (#7527) @robwalch
  • Use Widevine PSSH parsing when KEYID attribute missing from playlist (#7415) @yajin2021
  • Multivariant Playlist parsing fixes (#7523) @robwalch
    • Add missing stats.parsing.end timing to manifest events
    • Use playlist CODECS in mime-type when handling unknown codecs (fixes handling of AIV example content)
  • Setup as audio-only when main segment has no video and CODECS is missing (#7530)
  • Fix "Missing format identifier #EXTM3U" playlist parsing errors (#7533)

Demo Page

https://37434c54.hls-js-dev.pages.dev/demo/

API and Breaking Changes

If you are upgrading from version v0.14.17 or lower, see the MIGRATING guide for API changes between v0.14.x and v1.0.0.

Feedback

Please provide feedback via Issues in GitHub. For more details on how to contribute to HLS.js, see our CONTRIBUTING guide.

2025-08-26 01:10:32
hls.js

v1.6.11

Summary

HLS.js v1.6.11 includes bug fixes and improvements over the last release.

Changes Since The Last Release

https://github.com/video-dev/hls.js/compare/v1.6.10...v1.6.11

Bug Fixes

  • Fix Interstitial asset events not firing when attaching primary before last asset on PLAYOUT-LIMIT update (#7467) @robwalch
    • Issue reported by @martmol (follow up to #7239)
  • Handle EME key status errors such as "internal-error" and "output-restricted" before appending segments (#7414)
    • Fixes: Playback ends when the "keySystemStatusInternalError" occurs (#7413) @yajin2021
    • Fixes: HDCP error when playing manifests with both HD and SD levels (#7469) @mudit2108
  • Defer segment requests when network connection is lost (#7476) @robwalch
    • Resolves: Regression due to treating HTTP status 0 differently from 404 (#7471) @Frenzie
  • Fix exception when seeking to program end (#7478) @robwalch

Tasks

  • Add ESLint syntax rules to restrict async syntax (#7480) @robwalch
  • Improve functional test logs (#7481)

Documentation

  • Fix syntax in recoverMediaError example in API.md (#7470) @tmatth

Demo Page

https://9f517588.hls-js-dev.pages.dev/demo/

API and Breaking Changes

If you are upgrading from version v0.14.17 or lower, see the MIGRATING guide for API changes between v0.14.x and v1.0.0.

Feedback

Please provide feedback via Issues in GitHub. For more details on how to contribute to HLS.js, see our CONTRIBUTING guide.

2025-08-15 02:40:51
hls.js

v1.6.10

Summary

HLS.js v1.6.10 includes bug fixes and improvements over the last release.

Changes Since The Last Release

https://github.com/video-dev/hls.js/compare/v1.6.9...v1.6.10

  • Merge new Date Ranges in Playlist Delta Update when last details have none (#7462) @robwalch
  • Disable Low-Latency HLS part loading for VTT subtitle playlists (#7463)
  • Do not treat HTTP status 0 frag load errors as gaps (#7464)
  • Allow base and query URI differences in segment mismatch error check (#7465)
  • Minor improvements to docs (#7459) @anacrolix

Demo Page

https://e4afa090.hls-js-dev.pages.dev/demo/

API and Breaking Changes

If you are upgrading from version v0.14.17 or lower, see the MIGRATING guide for API changes between v0.14.x and v1.0.0.

Feedback

Please provide feedback via Issues in GitHub. For more details on how to contribute to HLS.js, see our CONTRIBUTING guide.

2025-08-07 15:56:37
hls.js

v1.6.9

Summary

HLS.js v1.6.9 includes bug fixes and improvements over the last release.

Changes Since The Last Release

https://github.com/video-dev/hls.js/compare/v1.6.8...v1.6.9

  • Prevent exception when mapping date ranges that referenced dropped PDT (#7450) @robwalch
  • Force schedule update on interstitial asset errors and improve seeking back through inlined asset lists (#7451)
  • Fallback to alternate or error when unhandled encryption is detected(#7454)
  • Remove unnecessary conditionals (#7455)

Demo Page

https://20f3b13d.hls-js-dev.pages.dev/demo/

API and Breaking Changes

If you are upgrading from version v0.14.17 or lower, see the MIGRATING guide for API changes between v0.14.x and v1.0.0.

Feedback

Please provide feedback via Issues in GitHub. For more details on how to contribute to HLS.js, see our CONTRIBUTING guide.

2025-08-05 08:37:29
hls.js

v1.6.8

Summary

HLS.js v1.6.8 includes bug fixes and improvements over the last release.

Changes Since The Last Release

https://github.com/video-dev/hls.js/compare/v1.6.7...v1.6.8

  • Interstitials improvements and fixes (#7425) @robwalch
  • Unblock audio appends when video source buffer is at end-of-stream (#7442)
  • Fix FairPlay Streaming EME "encryption" event handling (#7440)
  • Timestamp offset stability fix for muxed "audiovideo" mp4 (#7436)
  • Reset TS video parser with init segment (#7403)
  • Ignore offsets related to default_display_window_flag in HEVC-TS demuxer (#7418) @devoldemar
  • Improve recoverMediaError documentation in API.md (#7447) @robwalch

Demo Page

https://a0b0d665.hls-js-dev.pages.dev/demo/

API and Breaking Changes

If you are upgrading from version v0.14.17 or lower, see the MIGRATING guide for API changes between v0.14.x and v1.0.0.

Feedback

Please provide feedback via Issues in GitHub. For more details on how to contribute to HLS.js, see our CONTRIBUTING guide.

2025-07-08 03:54:43
hls.js

v1.6.7

Summary

HLS.js v1.6.7 includes bug fixes and improvements over the last release.

Changes Since The Last Release

https://github.com/video-dev/hls.js/compare/v1.6.6...v1.6.7

  • Fix Widevine KEYID parsing (#7380) @robwalch
    • Resolves No Playback of fmp4 + CBCS w/ Widevine (#7369) @Trevor-Uplynk
  • Fix requireKeySystemAccessOnStart with Live HLS or start offset (#7383) @grabofus
  • Initialize key-system access on first segment request with encrypted segments (#7384) @robwalch

Demo Page

https://4e5546da.hls-js-dev.pages.dev/demo/

API and Breaking Changes

If you are upgrading from version v0.14.17 or lower, see the MIGRATING guide for API changes between v0.14.x and v1.0.0.

Feedback

Please provide feedback via Issues in GitHub. For more details on how to contribute to HLS.js, see our CONTRIBUTING guide.

2025-07-03 05:06:22
hls.js

v1.6.6

Summary

HLS.js v1.6.6 includes bug fixes and improvements over the last release.

Changes Since The Last Release

https://github.com/video-dev/hls.js/compare/v1.6.5...v1.6.6

  • Fix parse PSSH box error (#7320) @yajin2021
  • Use SourceBuffer timestampOffset (#7311) @robwalch
    • Resolves audible artifacts on first audio segment boundary (#7310) @cjpillsbury
  • MediaCapabilities enhancements (#7354)
  • Support interstitial schedule navigation on INTERSTITIAL_ASSET_ENDED (#7329)
  • Fix QuotaExceededError regression caused by change in Chrome 138 (#7368)
    • Resolves stalling caused by change to QuotaExceededError code (22 -> 0) shipped in Chome 138 (#7367) @spiralman
  • Fix unnecessary setting of MediaSource duration with stale value (#7326)
    • Resolves LL-HLS buffer append errors where playlist duration is shorter than latest append (#7321) @SangwonOh
  • Fix errors in SourceBuffer creation when media parsed codec is unsupported (#7304)
    • Resolves playback failure when unable to parse AAC mp4a codec correctly (#7302) @denivladislav and (#7355) @doublex
  • Fix subtitle segment loading at live start (#7349)
    • Resolves loading correct subtitle segment when starting after discontinuity in live (#7347) @Frenzie
  • Update next load position if currentTime is not being used on seek (#7342)
    • Resolves loading correct segments after seeking in rare startup scenarios (#7327) @AlexanderSlesarenko
  • Functional test runner setup changes for running in Safari locally (#7313)

Demo Page

https://6fdff299.hls-js-dev.pages.dev/demo/

API and Breaking Changes

If you are upgrading from version v0.14.17 or lower, see the MIGRATING guide for API changes between v0.14.x and v1.0.0.

Feedback

Please provide feedback via Issues in GitHub. For more details on how to contribute to HLS.js, see our CONTRIBUTING guide.

2025-06-03 01:36:24
hls.js

v1.6.5

Summary

HLS.js v1.6.5 includes bug fixes and improvements over the last release.

Changes Since The Last Release

https://github.com/video-dev/hls.js/compare/v1.6.4...v1.6.5

  • Fixed live delta playlist discontinuity regression (#7292) @robwalch

Demo Page

https://7127ae6b.hls-js-dev.pages.dev/demo/

API and Breaking Changes

If you are upgrading from version v0.14.17 or lower, see the MIGRATING guide for API changes between v0.14.x and v1.0.0.

Feedback

Please provide feedback via Issues in GitHub. For more details on how to contribute to HLS.js, see our CONTRIBUTING guide.