Closed Bug 1920197 Opened 2 years ago Closed 2 years ago

Implement support for fetching beta Widevine releases via Chrome component update service

Categories

(Core :: Audio/Video: GMP, task)

task

Tracking

()

RESOLVED FIXED
133 Branch
Tracking Status
firefox-esr115 --- fixed
firefox-esr128 --- fixed
firefox132 --- wontfix
firefox133 --- fixed

People

(Reporter: aosmond, Assigned: aosmond)

References

Details

Attachments

(3 external files, 1 obsolete file)

Now that we support pulling binaries from the Chrome component update service, it would be good if a user could flip a pref to pull the beta releases for Widevine, i.e. providing the testrequest option in the request like we support in our python script:
https://searchfox.org/mozilla-central/rev/a6f4fbcd9b1ce352b7d6d1b87204d3e015266b57/dom/media/tools/generateGmpJson.py#260

This will allow us to do testing without pushing to balrog first, which should make early testing easier for devs/QA. We used to only gain access to the new Widevine releases via Lorry once they shipped out to the Chrome release population, or if we manually extracted the libraries from a Chrome install. But now with the update service, we can do it as soon as it goes out to the Chrome beta population.

Notes:

  • We verify the downloaded binaries via the hash supplied via balrog (or the fallback JSON). We will need to just trust what we fetched, so this isn't something we want users to try out for themselves in general.
  • Since we want to avoid redownloading again and again, we will want to avoid following redirects like in the python script so that we can figure out the version number we would fetch otherwise (unless there is some other value in the header we can check as well)

This patch allows us to download Widevine updates directly from the
Chromium update service, bypassing balrog and fallback configuration
options. This will be useful in the early stages of testing Widevine
updates, allowing us to use whatever Google has pushed to its own users,
including beta updates, before we engage release engineering.

Relevant Widevine L3 prefs have been added:

  • media.gmp-widevinecdm.force-chromium-update
  • media.gmp-widevinecdm.force-chromium-beta

which force the use of the Chromium update service, and requesting beta
versions (if available) respectively.

Similarly, Widevine L1 prefs have been added as well:

  • media.gmp-widevinecdm-l1.force-chromium-update
  • media.gmp-widevinecdm-l1.force-chromium-beta
Pushed by aosmond@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/6b000b63a588 Add prefs to allow updating Widevine directly from the Chromium update service. r=media-playback-reviewers,alwu
Status: ASSIGNED → RESOLVED
Closed: 2 years ago
Resolution: --- → FIXED
Target Milestone: --- → 133 Branch

This patch allows us to download Widevine updates directly from the
Chromium update service, bypassing balrog and fallback configuration
options. This will be useful in the early stages of testing Widevine
updates, allowing us to use whatever Google has pushed to its own users,
including beta updates, before we engage release engineering.

Relevant Widevine L3 prefs have been added:

  • media.gmp-widevinecdm.force-chromium-update
  • media.gmp-widevinecdm.force-chromium-beta

which force the use of the Chromium update service, and requesting beta
versions (if available) respectively.

Similarly, Widevine L1 prefs have been added as well:

  • media.gmp-widevinecdm-l1.force-chromium-update
  • media.gmp-widevinecdm-l1.force-chromium-beta

Original Revision: https://phabricator.services.mozilla.com/D223017

Attachment #9434015 - Flags: approval-mozilla-esr128?

This patch allows us to download Widevine updates directly from the
Chromium update service, bypassing balrog and fallback configuration
options. This will be useful in the early stages of testing Widevine
updates, allowing us to use whatever Google has pushed to its own users,
including beta updates, before we engage release engineering.

Relevant Widevine L3 prefs have been added:

  • media.gmp-widevinecdm.force-chromium-update
  • media.gmp-widevinecdm.force-chromium-beta

which force the use of the Chromium update service, and requesting beta
versions (if available) respectively.

Original Revision: https://phabricator.services.mozilla.com/D223017

Attachment #9434016 - Flags: approval-mozilla-esr115?

esr128 Uplift Approval Request

  • User impact if declined: Will make Widevine updates more difficult during testing phase before deployment
  • Code covered by automated testing: yes
  • Fix verified in Nightly: yes
  • Needs manual QE test: no
  • Steps to reproduce for manual QE testing: N/A
  • Risk associated with taking this patch: Low
  • Explanation of risk level: Only changes behaviour when certain prefs set
  • String changes made/needed: N/A
  • Is Android affected?: no

esr115 Uplift Approval Request

  • User impact if declined: Will make Widevine updates more difficult during testing phase before deployment
  • Code covered by automated testing: yes
  • Fix verified in Nightly: yes
  • Needs manual QE test: no
  • Steps to reproduce for manual QE testing: N/A
  • Risk associated with taking this patch: Low
  • Explanation of risk level: Only changes behaviour when certain prefs set
  • String changes made/needed: N/A
  • Is Android affected?: no
Attachment #9434016 - Flags: approval-mozilla-esr115?

This patch allows us to download Widevine updates directly from the
Chromium update service, bypassing balrog and fallback configuration
options. This will be useful in the early stages of testing Widevine
updates, allowing us to use whatever Google has pushed to its own users,
including beta updates, before we engage release engineering.

Relevant Widevine L3 prefs have been added:

  • media.gmp-widevinecdm.force-chromium-update
  • media.gmp-widevinecdm.force-chromium-beta

which force the use of the Chromium update service, and requesting beta
versions (if available) respectively.

Original Revision: https://phabricator.services.mozilla.com/D223017

Attachment #9434100 - Flags: approval-mozilla-esr115?
Attachment #9434016 - Attachment is obsolete: true

esr115 Uplift Approval Request

  • User impact if declined: Will make Widevine updates more difficult during testing phase before deployment
  • Code covered by automated testing: yes
  • Fix verified in Nightly: yes
  • Needs manual QE test: no
  • Steps to reproduce for manual QE testing: N/A
  • Risk associated with taking this patch: Low
  • Explanation of risk level: Only changes behaviour when certain prefs set
  • String changes made/needed: N/A
  • Is Android affected?: no
Attachment #9434015 - Flags: approval-mozilla-esr128? → approval-mozilla-esr128+
Attachment #9434100 - Flags: approval-mozilla-esr115? → approval-mozilla-esr115+
Regressions: 1935522
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: