[EME] Surface events to GeckoView to approve or deny MediaKeySystemAccess
Categories
(Core :: Audio/Video: Playback, enhancement, P2)
Tracking
()
Tracking | Status | |
---|---|---|
firefox75 | --- | fixed |
People
(Reporter: bryce, Assigned: bryce)
References
(Blocks 1 open bug)
Details
Attachments
(5 files)
Bug 1587522 - Add media.eme.require-app-approval pref to control if EME needs app permission. r?alwu
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review |
GeckoView would like to be able to approve or deny Navigator.requestMediaKeySystemAccess()
. This allows for flexibility in Apps interaction with EME. The way Gecko currently handles EME does not enable this. We'd want to do something similar to what gUM does.
Useful references:
- GeckoView permission manager.
- browser-media.js which handles some of the existing EME messages on desktop.
- MediaManager which managers the gecko side of sending notifications for gUM.
- GetUserMediaRequest which is passed around to represent a gUM request.
Assignee | ||
Updated•6 years ago
|
Assignee | ||
Comment 1•6 years ago
•
|
||
Bug 1593843 has done this for the autoplay side and is a good reference for how to do it using ContentPermissionRequestBase
based machinery rather than JS level message managers.
My current WIP uses the message manager approach, similar to some of our existing EME and gUM code. However the ContentPermissionRequestBase
based approach looks like it has benefits as it's been suggested to me it may be more robust for Fission use cases and enabling flexibility in permissions for nested contexts.
Assignee | ||
Updated•6 years ago
|
Assignee | ||
Comment 2•6 years ago
|
||
Add a pref that we can gate the EME app approval behaviour behind. If the pref
is true we'll ask app for approval via a permission request. The intended use
for this is to allow GeckoView to seek explicit approval from the embedding app.
Having this pref is also useful for testing outside of GeckoView as it allows
runtime configuration of the permission check.
Assignee | ||
Comment 3•6 years ago
|
||
This class will be used to surface permission requests to GeckoView.
Depends on D56102
Assignee | ||
Comment 4•6 years ago
|
||
Depends on D56103
Assignee | ||
Comment 5•6 years ago
|
||
Add a test to cover app approval for EME. The test is not currently targeted at
android despite the feature being made for GeckoView. This is because we do not
have clearkey support on Android, and cannot guarantee Widevine support. If we
have broad Widevine support on Android we could rework the test to use that when
on Android.
For now having some test coverage on clearkey platforms seems better than having
no test coverage.
Depends on D56104
Assignee | ||
Comment 6•6 years ago
|
||
Assignee | ||
Comment 7•5 years ago
|
||
Depends on D56104
Assignee | ||
Comment 8•5 years ago
|
||
Comment 10•5 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/5243ee8be876
https://hg.mozilla.org/mozilla-central/rev/a95e3da9c1b5
https://hg.mozilla.org/mozilla-central/rev/f9ef7c41805c
https://hg.mozilla.org/mozilla-central/rev/76602e77f731
https://hg.mozilla.org/mozilla-central/rev/0bc46cd428e4
Description
•