forked from shaka-project/shaka-player
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
feat(MediaCap): get decodingInfo results before queryMediaKeys
Previously, we fill in the variants' drmInfos with the drm configurations of |clearKeys|, |servers| and |advanced| during initializing the DrmEngine, before we query the media keys. Now we need to call |MediaCapabilities.decodingInfo()| to get the mediaKeySystemAccess of the variants after the DrmEngine is created and configured, and the drm values are filled in for the variants, and before |DrmEngine.queryMediaKey_()|. The steps would be: 0. StreamUtils.setDecodingInfo() should not be called before DrmEngine is initialized and configured. 1. Create and configure DrmEngine. 2. Fill in drm values for the variants with configurations. 3. Call StreamUtils.setDecodingInfo() to get the decodingInfo of the variants. 4. Use the decodingInfo results to set up the Drm mediaKeys in DrmEngine. 5. When StreamUtils.filterManifest() is called, we can reuse the decodingInfo results instead of calling decodingInfo again. Previously we call filterManifest() when parsing the manifest, to filter out the unsupported streams. Now decodingInfo can tell us if a variant is supported and its MediaKeys at once. When initializing the DrmEngine, we get the decodingInfo results of the variants, and only use the supported streams to set up the MediaKeys. After that, we filter the manifest right after DrmEngine is initialized. Thus, we can skip filterManifest() in manifest parsers. Using decodingInfo to get media keys will be in the next CL. Issue shaka-project#1391 Change-Id: Ieb401a1e4dfbcc958f7a14fa96df546237b0f446
- Loading branch information
1 parent
ea20df0
commit acfa1a8
Showing
6 changed files
with
83 additions
and
61 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters