Closed Bug 1265038 Opened 8 years ago Closed 8 years ago

Shaka Player demo gets in an "Enable DRM" infinite page reload loop on OS X

Categories

(Core :: Audio/Video: Playback, defect)

Unspecified
macOS
defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla48
Tracking Status
firefox47 --- fixed
firefox48 --- fixed

People

(Reporter: cpeterson, Assigned: cpearce)

References

()

Details

Attachments

(1 file)

STR:
1. On OS X, load http://shaka-player-demo.appspot.com/demo/
2. Firefox will show the "Enable DRM" info bar (even though Widevine is enabled and Primetime is not available on OS X).
3. Click the "Enable DRM" button.


RESULT:
The page will reload and go back to step 2.

The following messages are logged to the browser console:

MediaKeySystemAccess::GetKeySystemStatus(org.w3.clearkey, minVer=-1) result=available version='1' msg=''
MediaKeySystemAccess::GetKeySystemStatus(com.widevine.alpha, minVer=-1) result=available version='1.4.8.866' msg=''
navigator.requestMediaKeySystemAccess promise rejected 0x80530009 'Key system string is invalid, or key system is unsupported'MediaKeySystemAccess::GetKeySystemStatus(com.adobe.primetime, minVer=-1) result=cdm-disabled version='' msg='Adobe EME disabled'
navigator.requestMediaKeySystemAccess promise rejected 0x80530009 'Adobe EME disabled'
With NSPR_LOG_MODULES=EME:5 I see:

[Main Thread]: D/EME Navigator::RequestMediaKeySystemAccess(keySystem='com.adobe.primetime' options=[{label=''}])
[Main Thread]: D/EME MediaKeySystemAccessManager::Request com.adobe.primetime
[Main Thread]: D/EME MediaKeySystemAccess::NotifyObservers() {"keySystem":"com.adobe.primetime","status":"cdm-disabled"}
[Main Thread]: D/EME navigator.requestMediaKeySystemAccess promise rejected 0x80530009 'Adobe EME disabled'
[Main Thread]: D/EME navigator.requestMediaKeySystemAccess failure latency 0ms reported via telemetry

So they're requesting Adobe EME, and we're saying it's preffed off.
We end up showing the "Adobe EME is preffed off" UI on MacOSX because we're
check for Adobe EME support based on platform, not based on whether it's
configured on in the mozconfig. We should really only check for Adobe EME
if 'ac_add_options --enable-eme=adobe' is present in the build config,
as otherwise preffing it on isn't going to work.

Review commit: https://reviewboard.mozilla.org/r/46965/diff/#index_header
See other reviews: https://reviewboard.mozilla.org/r/46965/
Attachment #8742181 - Flags: review?(jwwang)
Comment on attachment 8742181 [details]
MozReview Request: Bug 1265038 - Turn on Adobe EME by build config rather than per-platform basis. r?jwwang

https://reviewboard.mozilla.org/r/46965/#review43581
Attachment #8742181 - Flags: review?(jwwang) → review+
https://hg.mozilla.org/mozilla-central/rev/5bf181aae1ad
Status: NEW → RESOLVED
Closed: 8 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla48
Comment on attachment 8742181 [details]
MozReview Request: Bug 1265038 - Turn on Adobe EME by build config rather than per-platform basis. r?jwwang

Requesting uplift for Firefox 47.

Approval Request Comment
[Feature/regressing bug #]: Widevine EME support
[User impact if declined]: Sites that request a bunch of different EME key systems will see us prompt to enable Adobe EME on MacOSX, even though it doesn't exist on MacOSX
[Describe test coverage new/current, TreeHerder]: We don't have tests covering Adobe EME not working where we expect it not to work, only covering it working where we expect it to.
[Risks and why]: Low.
[String/UUID change made/needed]: None.
Attachment #8742181 - Flags: approval-mozilla-aurora?
Comment on attachment 8742181 [details]
MozReview Request: Bug 1265038 - Turn on Adobe EME by build config rather than per-platform basis. r?jwwang

Widevine related uplifts were pre-approved. Maybe we should add a negative test case to catch this one if it is easy to automate.
Attachment #8742181 - Flags: approval-mozilla-aurora? → approval-mozilla-aurora+
Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:49.0) Gecko/20100101 Firefox/49.0
Build ID: 20160524073714

The "Enable DRM" info bar is no longer displayed on the Shaka demo after the Widevine CDM plugin is installed.

But, the following messages are still displayed in the browser console:

Unknown message ('cdm-not-supported') dealing with EME key request: {"keySystem":"com.adobe.primetime","status":"cdm-not-supported"}
browser-media.js:88
MediaKeySystemAccess::GetKeySystemStatus(org.w3.clearkey, minVer=-1) result=available version='1' msg=''
MediaKeySystemAccess::GetKeySystemStatus(com.widevine.alpha, minVer=-1) result=available version='1.4.8.893' msg=''
navigator.requestMediaKeySystemAccess promise rejected 0x80530009 'Key system string is invalid, or key system is unsupported'MediaKeySystemAccess::GetKeySystemStatus(com.adobe.primetime, minVer=-1) result=cdm-not-supported version='' msg=''
navigator.requestMediaKeySystemAccess promise rejected 0x80530009 ''

Chris, is this intended?
Flags: needinfo?(cpearce)
(In reply to Simona B [:simonab] from comment #9)
> Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:49.0) Gecko/20100101
> Firefox/49.0
> Build ID: 20160524073714
> 
> The "Enable DRM" info bar is no longer displayed on the Shaka demo after the
> Widevine CDM plugin is installed.
> 
> But, the following messages are still displayed in the browser console:
> 
> Unknown message ('cdm-not-supported') dealing with EME key request:
> {"keySystem":"com.adobe.primetime","status":"cdm-not-supported"}
> browser-media.js:88
> MediaKeySystemAccess::GetKeySystemStatus(org.w3.clearkey, minVer=-1)
> result=available version='1' msg=''
> MediaKeySystemAccess::GetKeySystemStatus(com.widevine.alpha, minVer=-1)
> result=available version='1.4.8.893' msg=''
> navigator.requestMediaKeySystemAccess promise rejected 0x80530009 'Key
> system string is invalid, or key system is
> unsupported'MediaKeySystemAccess::GetKeySystemStatus(com.adobe.primetime,
> minVer=-1) result=cdm-not-supported version='' msg=''
> navigator.requestMediaKeySystemAccess promise rejected 0x80530009 ''
> 
> Chris, is this intended?

Yes. This is expected behaviour.
Flags: needinfo?(cpearce)
You need to log in before you can comment on or make changes to this bug.