Use CDM v11 interface if supported by plugin
Categories
(Core :: Audio/Video: GMP, enhancement)
Tracking
()
Tracking | Status | |
---|---|---|
firefox136 | --- | fixed |
People
(Reporter: aosmond, Assigned: aosmond)
References
(Blocks 1 open bug)
Details
Attachments
(1 file)
We have the header in place already with the relevant structs:
https://searchfox.org/mozilla-central/rev/a965e3c683ecc035dee1de72bd33a8d91b1203ed/dom/media/gmp/widevine-adapter/content_decryption_module.h#1212
But we should probably pull in the latest header since there are a few changes (11 wasn't declared as stable when we last pulled):
https://source.chromium.org/chromium/chromium/src/+/main:media/cdm/api/content_decryption_module.h;drc=27d34700b83f381c62e3a348de2e6dfdc08364b8;bpv=1;bpt=1;l=1
Here we should bump it to version 11, and the backwards compat to version 10:
https://searchfox.org/mozilla-central/rev/a965e3c683ecc035dee1de72bd33a8d91b1203ed/dom/media/gmp/GMPUtils.h#19-20
And here we should switch to accepting either:
https://searchfox.org/mozilla-central/rev/a965e3c683ecc035dee1de72bd33a8d91b1203ed/dom/media/gmp/ChromiumCDMAdapter.cpp#119
And when we create the host, we need to support creating the correct version requested, either 10 or 11:
https://searchfox.org/mozilla-central/rev/a965e3c683ecc035dee1de72bd33a8d91b1203ed/dom/media/gmp/ChromiumCDMAdapter.cpp#140
If only version 10 is supported, we should use a compatibility wrapper like we did in bug 1487811:
https://phabricator.services.mozilla.com/D5631
So that we are able to convert usage of the interfaces to the 11 variants:
https://searchfox.org/mozilla-central/rev/a965e3c683ecc035dee1de72bd33a8d91b1203ed/dom/media/gmp/widevine-adapter/content_decryption_module.h#868
https://searchfox.org/mozilla-central/rev/a965e3c683ecc035dee1de72bd33a8d91b1203ed/dom/media/gmp/widevine-adapter/content_decryption_module.h#1212
We should also update Clearkey to use the 11 variant as part of this work, so that when we want to drop 10, we are ready.
It may be possible to avoid supporting 10 if the plugins we are shipping with (4.10.2830.0) already support 11.
Assignee | ||
Updated•22 days ago
|
Assignee | ||
Updated•22 days ago
|
Assignee | ||
Comment 1•22 days ago
|
||
It appears the current Widevine CDM does not support version 11, so we need to support both at the same time.
Assignee | ||
Comment 2•22 days ago
|
||
This patch adds support for v11 to ensure forwards compatibility with
new CDM plugin versions. It uses a compatibility layer for v10 plugins.
Updated•22 days ago
|
Comment 4•21 days ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/d459910a82f3
https://hg.mozilla.org/mozilla-central/rev/11d73209a2e0
Description
•