Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Map EXT-X-SESSION-KEY to Variant KEY tags by URI #4927

Open
1 of 2 tasks
robwalch opened this issue Sep 27, 2022 · 0 comments
Open
1 of 2 tasks

Map EXT-X-SESSION-KEY to Variant KEY tags by URI #4927

robwalch opened this issue Sep 27, 2022 · 0 comments

Comments

@robwalch
Copy link
Collaborator

robwalch commented Sep 27, 2022

Is your feature request related to a problem? Please describe.

Add support for EXT-X-SESSION-KEY tags in Multi-Variant Playlists.

Describe the solution you'd like

  • Use session keys to begin key selection and key-system access prior to level loading (added in Multi-DRM Support #4930)
  • Key-loader and EME-controller provide some level of mapping between session-keys and level-keys to avoid duplication or parsing of the same keys based on key URI

Additional context

See EXT-X-SESSION-KEY under https://datatracker.ietf.org/doc/html/draft-pantos-hls-rfc8216bis#section-4.4.6.5

robwalch added a commit that referenced this issue Dec 15, 2022
* Add support for com.apple.fps keySystem

* Improve support for DRM key-systems and key handling
Resolves #2833 #2737 #4318 #4538

* Update README `licenseXhrSetup` example

* Update api-extractor markdown

* Attach CDM on start when even when initial fragments do not have a key associated with them

* Handle expired key status correctly

* Map key-sessions by key ID and log key ID more often than URI

* Support "clear-lead" key-session creation without new config

* Emit and handle FRAG_PARSING_ERROR from transmuxers (#5018)

* Emit and handle FRAG_PARSING_ERROR from transmuxers
Related to #5011
* Switch levels on Key and Fragment parsing errors or escalate to fatal error

* Route all key-system errors to `onFragmentOrKeyLoadError`

* Populate EMEKeyError.err for better demo error logging

* Remove `useEmeEncryptedEvent` and mark `widevineLicenseUrl` as deprecated in API.md

* Add support for EXT-X-SESSION-KEY tags (for key-system access on manifest loaded)
#4927

* Throw before licenseXhrSetup if key was removed

* Make key session promise chain more consice

* Stop on fatal key system errors

* Only request access to key-systems for keys matching those found in the config one at time (to avoid gaining access to WV and PR on Edge)

* Modify key-system helpers so that it's easier to support additional key-system strings

* Add undocumented `generateRequest` ("Content ID") filter

Co-authored-by: Vincent Valot <vincent.valot@bedrockstreaming.com>
@robwalch robwalch changed the title EXT-X-SESSION-KEY support EXT-X-SESSION-KEY support (Epic) May 13, 2024
@robwalch robwalch changed the title EXT-X-SESSION-KEY support (Epic) Map EXT-X-SESSION-KEY to Variant KEY tags by URI May 13, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Development

No branches or pull requests

1 participant