Skip to content

Conversation

@robwalch
Copy link
Collaborator

@robwalch robwalch commented Sep 4, 2025

This PR will...

  • Add error handling for keys with no status change in PlayReady. These keys produce "internal-error" status changes in Chrome, but report no status change at all in PlayReady.
  • Removes hanging promises for session removal.
  • Adds logging for append queing.

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

Currently this will prevent switching up to levels with bad keys. HLS.js will also switch down after starting on a level with a bad key, but a reset (hls.recoverMediaError() or detach/attach media element) may be required to restore playback.

This PR contains some of the changes from #7517 without the changes that group keys into sessions. This is to reduce the complexity of changes going into the next patch, and to simplify key error handling as sessions to keys are still one-to-one.

Resolves issues:

#7519

CC

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 robwalch force-pushed the bugfix/playready-key-timeout-error-handling-patch branch from b711714 to 331a02e Compare September 4, 2025 20:52
Log append queing
@robwalch robwalch merged commit 127f746 into patch/v1.6.x Sep 5, 2025
14 checks passed
@robwalch robwalch deleted the bugfix/playready-key-timeout-error-handling-patch branch September 5, 2025 21:35
@robwalch robwalch mentioned this pull request Sep 5, 2025
3 tasks
robwalch added a commit that referenced this pull request Sep 6, 2025
* Error handling for PlayReady key with no status change
#7508

* Remove hanging promises (except for renewal)

* Log append queing
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

2 participants