Skip to content

Releases: video-dev/hls.js

v1.3.0-beta.1

15 Dec 22:36
800c35f
Compare
Choose a tag to compare
v1.3.0-beta.1 Pre-release
Pre-release

Summary

HLS.js v1.3.0-beta.1 is a preview release highlighting improved DRM support coming to HLS.js version 1.3.

This release introduces support for FairPlay Streaming with modern EME, PlayReady support, and improved Widevine support.

Changes Since The Last Release

v1.2.9...v1.3.0-beta.1

Demo Page

https://hls-js-b1cb1eb0-2e11-40ac-808b-56bf07ffda6a.netlify.app/demo/

API Changes

See https://github.com/video-dev/hls.js/blob/v1.3.0-beta.1/docs/API.md for API details and examples.

Config changes

  • Added drmSystems for defining key-system specific license urls and certificates
    • drmSystems['com.widevine.alpha'].licenseUrl replaces widevineLicenseUrl (deprecated but still supported)
  • drmSystemOptions takes additional optional arguments used for defining MediaKeySystemConfiguration
  • licenseXhrSetup
    • includes additional keyContext and licenseChallenge arguments
    • is optionally async: takes a return value of a Uint8Array, a Promise which resolves with a Uint8Array or undefined (returning a value transforms the licenseChallenge license request body)
  • licenseResponseCallback includes an additional keyContext argument
  • Changes to the integration of EMEController and KeyLoader may impact custom config.emeController implementations
    • A new keyLoader constructor argument has been added to StreamController, AudioStreamController, and SubtitleStreamController via BaseStreamController (this allows all stream controllers to share a common KeyLoader instance)
    • KeyLoader utilizes an instance of EMEController for handling HLS Keys

New Error Event ErrorDetails constants have been added to help with identifying issues when negotiating with CDMs

  • New KEY_SYSTEM_ERROR type error details:
    • KEY_SYSTEM_SERVER_CERTIFICATE_REQUEST_FAILED
    • KEY_SYSTEM_SERVER_CERTIFICATE_UPDATE_FAILED
    • KEY_SYSTEM_NO_INIT_DATA
    • KEY_SYSTEM_SESSION_UPDATE_FAILED
    • KEY_SYSTEM_STATUS_OUTPUT_RESTRICTED
    • KEY_SYSTEM_STATUS_INTERNAL_ERROR

Event object additions

  • MANIFEST_LOADED event data includes sessionKeys
  • MANIFEST_PARSED event data includes sessionData and sessionKeys
  • KEY_LOADED event data includes keyInfo

Fragment object changes

  • The levelkey property has been replaced by an array: levelkeys
    • (levelkey has been deprecated and will not be supported)

LevelDetails object additions

  • encryptedFragments property has been added (assists in dealing with "clear-lead" streams where initial segments are not encrypted)

Feedback

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

v1.2.9

08 Dec 22:44
Compare
Choose a tag to compare

Summary

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

Changes Since The Last Release

v1.2.8...v1.2.9

  • Fix audio and subtitle controller loading before player seeks to startPosition (#5098) @robwalch

Demo Page

https://hls-js-1ddaca7e-016f-45b6-aaea-7c0f72e4e974.netlify.app/

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.

v1.2.8

28 Nov 23:31
Compare
Choose a tag to compare

Summary

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

Changes Since The Last Release

v1.2.7...v1.2.8

  • Improve webworkify handling of named functions where name is in quotes (#5036) by @robwalch
    • Resolves #5015 (v1.2.5 throws an error in a next.js production build)
  • Bugfix: Fragment LoadStats total set to 0 with progressive: true (#5054) by @robwalch
    • Fixes #5050 (LoadStats properties loaded and total is 0 for a download fragment when using FetchLoader)
  • Document new gap controller behaviour on v1.x (#5066) by @itsjamie
    • In response to #4066 (Playback does not Start in 1.0.x Versions with A/V Offset in First Segment)

Demo Page

https://hls-js-c7fd2a21-dc83-431c-ba38-cdfc9ae85a20.netlify.app/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.

v1.2.7

12 Nov 02:17
Compare
Choose a tag to compare

Summary

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

Changes Since The Last Release

v1.2.6...v1.2.7

  • Bugfix: Fix ID3 in AAC start time regression introduced in v1.2.1 (#5014) @jprjr

Demo Page

https://hls-js-c26d5ecc-3c7e-4c1c-81dd-05648534771d.netlify.app/

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.

v1.2.6

12 Nov 01:58
Compare
Choose a tag to compare

Summary

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

Changes Since The Last Release

v1.2.5...v1.2.6

  • Update fragPrevious when attempting to load an already-buffered fragment (#5013) @erkreutzer
  • Fallback to inline demuxing on Worker error (#5016) @robwalch

Demo Page

https://hls-js-ca8b2d52-fcac-4573-8aa7-4d4f55f49361.netlify.app/

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.

v1.2.5

05 Nov 02:56
Compare
Choose a tag to compare

Summary

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

Changes Since The Last Release

v1.2.4...v1.2.5

Bugfixes and Improvements

  • ID3: add duration to metadata samples, mimic Safari behavior on unbounded cues (#4967) @jprjr
  • Bugfix: Subtitles not working on live with EXT-X-PROGRAM-DATE-TIME gaps (#4999) @erankor
  • Bugfix: Exception when xhr.response is null (#4980) @asashakira
  • Bugfix: MPEG-2 TS segments not starting with TS packet sync byte (#5006) @robwalch
  • Bugfix: MPEG-2 TS DTS/PTS overlap between segments #4976 (#4977) @robwalch
  • Bugfix: HEVC 608 captions (#4972) @erankor
  • Bugfix: Support Opus lowercase CODECS entry (#4526) @stolen
  • Bugfix: Live stream not seeking to start position (#4951) @kmamal

Tasks

Documentation

  • Added deprecated event descriptions to API.md and MIGRATING.md (#5009) @tailgo

Demo Page

https://hls-js-acf592b8-566a-4553-aa84-d2d6adcdc0db.netlify.app/

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.

v1.2.4

30 Sep 22:41
Compare
Choose a tag to compare

Summary

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

Changes Since The Last Release

v1.2.3...v1.2.4

Demo Page

https://hls-js-357e5663-c334-422c-88d9-fcfbf938b5dc.netlify.app/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.

v1.2.3

13 Sep 01:26
4ddf764
Compare
Choose a tag to compare

Summary

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

Changes Since The Last Release

v1.2.2...v1.2.3

  • Bugfix: Caption missing after seeking back to start when stream is played from discontinuity break (#4889) @littlespex
  • Bugfix: Load last VTT fragment in infinite loop (WebVTT with AES-128) (#4901) @mtoczko
  • Bugfix: Initial timestamps must be unsigned for tfdt v1 box for Safari iPad OS 16/Ventura (#4900) @robwalch
  • CI: Fix npm publishes not happening (#4892) @tjenkinson

Demo Page

https://hls-js-a7277301-16b6-4ae9-b56a-dbb2ae208a9c.netlify.app/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.

v1.2.2

09 Sep 21:56
6216ab9
Compare
Choose a tag to compare

Summary

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

Changes Since The Last Release

v1.2.1...v1.2.2

Demo Page

https://hls-js-e9b6f668-5edb-4682-a6af-034455d028b1.netlify.app/

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.

v1.2.1

17 Aug 01:28
Compare
Choose a tag to compare

Summary

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

Changes Since The Last Release

v1.2.0...v1.2.1

Demo Page

https://hls-js-c682795c-032a-4c39-9374-225b776c04f6.netlify.app/

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.