Closed Bug 1089883 Opened 10 years ago Closed 10 years ago

[EME] Indicate when playback is not possible due to a disabled CDM

Categories

(Firefox :: General, defect)

defect
Not set
normal

Tracking

()

RESOLVED FIXED
Firefox 37

People

(Reporter: kev, Unassigned)

References

Details

As a user, when I have disabled either Encrypted Media Extensions or a required Content Decryption Module, I am presented with an indicator informing me that the content will be unavailable for playback unless I re-enable the affected components (and, ideally, am presented to a link to same) so that I am aware of why supported content may not be viewed and how I can take corrective action.
Similarly to bug 1089885 comment 1 -- how does this work, technically? The additional wrinkle here is that we'd somehow need to know that a disabled CDM _would_ have been able to decrypt the media, had it been enabled. Can we determine that reliably enough? I suppose there's also the issue of if exposing this to content is a fingerprinting issue, but I'd suspect that this isn't a concern because there's a tiny set of possible CDMs, and the page should already be able to determine if they're working or not.
Flags: needinfo?(cpearce)
Similar to bug 1089885, Gecko would need to check the SystemId embedded in the MP4 file, determine that it corresponds to a keysystem that we *do* support but is disabled, and then report this to chrome/JS somehow.
Flags: needinfo?(cpearce)
Another shared question with bug 1089885 -- is this UI intended to be only for the browser's default video controls, or do we also need general chrome UI (say, a notification bar) for when the page isn't using our controls? The UX mocks seem to only show UI for default video controls. Many sites don't use the browser's default controls, and I'd fully expect the major sites most interested in DRM to be using their own controls. I think we'd like our own controls to be a capable model to demonstrate how controls can/should work, but if this is important information to expose to users we need to either always show it ourselves or rely on sites do the right things in their custom controls. Analogs in the existing web are a bit mixed... I think our experiences with HTML5 video (before we had H.264 support) was that sites didn't do a very good job of explaining what the problem was. I usually saw either a generic error or a suggestion to use a different browser. OTOH, with plugins most sites seem to handle missing plugins, leading to us having toned down and removed PFS. I think I'd gently lean towards wanting general chrome UI (like a notification bar). The disabled-cdm case is probably uncommon, but the unsupported-cdm case seems more likely to happen, and having a clear browser message we control would be nice.
Flags: needinfo?(kev)
Also, we probably want the same (or at least similar) UI here both for when the user has disabled a specific CDM, and when the user has globally disabled DRM.
We'd definitely want this to be general-level. It needs to cover the case where, per comment #2, any content that requires a particular CDM that is not present or missing would be flagged. It should be independent of any video controls or site content, as it's relying on client-side bits to play.
Flags: needinfo?(kev)
Flags: firefox-backlog+
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.