hls.js icon indicating copy to clipboard operation
hls.js copied to clipboard

Multi-key handling

Open robwalch opened this issue 6 months ago • 1 comments

This PR will...

  • Group media key sessions by key tag (EXT-X-KEY) URI, and group all parsed key tags (LevelKey instances) and their key-ids in eme-controller session-context objects.
  • Fix key-status errors being ignored after key is usable.
  • Warn when "output-restricted" key status is received on level with HDCP-LEVEL=NONE
  • Fix error handling after after encountering same key URI that errored previously
  • Fix escalation of unresolved level removal to fatal

Why is this Pull Request needed?

  • Reduces license requests / sessions when multiple-keys are delivered in a single PSSH/URI
  • Fixes edge cases where key status updates were not handled

Are there any points in the code the reviewer needs to double check?

If you've recently reported issues related to EME playback, please review and leave feedback if you are able to test. Thanks!

  • @hongfeih-es
    • #7413
    • #7508
  • @ShubhamSharma2311
    • #7510
  • @mudit2108
    • #7469
  • @grabofus
    • #7383

Resolves issues:

  • Resolves #7474
  • Includes enhancements for #7469

Checklist

  • [ ] changes have been done against master branch, and PR does not conflict
  • [ ] new unit / functional tests have been added (whenever applicable)
  • [ ] API or design changes are documented in API.md

robwalch avatar Aug 30 '25 02:08 robwalch

  • [ ] Rebase over #7527

robwalch avatar Sep 05 '25 21:09 robwalch