When I try to view a video on Hulu e.g. Rick and Morty S2E1, the page won't load. Hulu shows me an error page with this text "Error playing this video. Sorry, we encountered an error playing this video. Please ensure your browser is supported. Error code: 3001"
Same problem on Netflix - gives me a "Missing Component" error"
Seems to affect all sites that need Widevine - Amazon Video, BBC, Hulu, Netflix and Spotify


Video should play
Easily reproduced (always)
Version 0.55.22 Chromium: 70.0.3538.77 (Official Build) (64-bit)
widevine related issue?
@rebron confirmed it's a widevine issue. I didn't notice it in the URL bar.

Why doesn't Widevine come pre-installed?
@karenkliu I think the disclaimer does a fair job explaining why it's not bundled by default - maybe we should make the need for this component more obvious than just a puzzle piece?
@bradleyrichter @bsclifton I don't think it's obvious at all to the user why Widevine doesn't come bundled with Brave. Why does Brave "discourage" it? Is there an impact to user privacy by enabling it? Why would there be "damages or losses" by using it? Damages to what? Loss of what?
The wikipedia page https://en.wikipedia.org/wiki/Widevine describing it just makes it seem like it's a benign thing to enforce licensing and make sure creators + the platforms get paid for the content.
It's a huge product problem if Brave users can't figure out how to make Amazon Video, BBC, Hulu, Netflix and Spotify work in Brave and don't understand why we're making it harder for them to stream from these huge content platforms.
@bbondy moving this discussion to Github from Slack so that it's tracked with an issue.
Per Slack. We discourage it because it's a closed source CDM and because we decided as a company not to promote DRM.
Is there an impact to user privacy by enabling it?
Yes.
Why would there be "damages or losses" by using it? Damages to what? Loss of what?
Yes, we don't know what it does, or if it does more than what it says.
It's a huge product problem if Brave users can't figure out how to make Amazon Video, BBC, Hulu, Netflix and Spotify work in Brave and don't understand why we're making it harder for them to stream from these huge content platforms.
Yep, so let's figure out a better UI for it, but we can't include it by default.
@BrendanEich and @diracdeltas
I think we could just open the flyout by default so that people would notice it better.
I agree with @bbondy; this seems to be an issue of helping the user discover that the problem is widevine and install it smoothly as opposed to a problem of bundling widevine by default.
Once widevine is installed, they won't run into this issue in the future. (unlike Flash, widevine doesn't prompt anymore once it's installed)
@bbondy we should have this dialogue come out when Widevine needs to be installed

Adding example of the current flow that was added into #1634 which I closed as duplicate as this one has more activity:

@rebron @tomlowenthal can we do something like this:

UX:
Widevine is already installed but not running. The first time the user encounters a site that needs Widevine, prompt the user for permission to run it in an obvious way by showing this notification in the page content area so that the user is sure to notice it.
If the user clicks block, this permission notification will show everytime a site needs it to run.
If the user clicks allow, this permission notification will never show again because Widevine will always run on sites that need it.
+1 on the bubble notification. If user ignores this it can still be run from the URL slide notification.
@karenkliu there is no need to prompt users to run widevine if it's already installed. the only case we would show a prompt is if widevine is needed but not installed. this matches the browser-laptop behavior.
therefore the prompt should say 'install widevine' or something to make it clear that clicking the affirmative option will install new software.
@diracdeltas when @tomlowenthal looked at it with me he mentioned that the prompt makes it seem like it's not installed, but from the speed at which the page was able to play correctly after clicking install, he made the assumption that it was actually already installed in the browser and clicking install made it run instead of downloading new software and installing it.
If that's not true then yes, of course we should change the prompt to "install widevine" instead of "run" and only show it when it's not already installed.
@karenkliu the intended behavior is that widevine only prompts if it's not installed. if it's already installed and still prompting, we should remove those prompts. not sure about tom's assumption since i haven't verified it.
+1 from Twitter: https://twitter.com/porteneuve/status/1075049456133906432?s=09
Is it possible to popup if not installed and then popup with block, allow once, allow? I'm not sure I want to run Widevine everytime if I didn't explicitly allow it to run
@angezanetti we have no ability right now for a per run permission prompt. I'm not opposed to the idea, please post another issue for that since this one is tracking just the ability for users to see an install prompt.
@mkarolin:
To close on the implementation, we'll go with the following screen -> https://github.com/brave/brave-browser/issues/1940#issuecomment-436438375
Only change from that screen is we're going with "Install Widevine" instead of "Run Widevine"
Need to check PermissionRequest is suitable for this widevine bubble.
If not, need to implement custom facilities for managing its bubble.
Verification passed on
Brave | 0.63.4 Chromium: 73.0.3683.67聽(Official Build)聽dev聽(64-bit)
-- | --
Revision | a83fd4f3207ae83412d329a9ca1239dd1e068345-refs/branch-heads/3683@{#760}
OS | Windows聽7 Service Pack 1 Build 7601.24312
Used test plan from https://github.com/brave/brave-core/pull/1772
also checked netflix.com

Verified passed with
Brave | 0.63.14 Chromium: 73.0.3683.75聽(Official Build)聽dev(64-bit)
-- | --
Revision | 909ee014fcea6828f9a610e6716145bc0b3ebf4a-refs/branch-heads/3683@{#803}
OS | Mac OS X

Verification passed on
Brave | 0.63.14 Chromium: 73.0.3683.75聽(Official Build)聽dev(64-bit)
-- | --
Revision | 909ee014fcea6828f9a610e6716145bc0b3ebf4a-refs/branch-heads/3683@{#803}
OS | Ubuntu 18.04 LTS
Used test plan from https://github.com/brave/brave-core/pull/1772

Most helpful comment
@rebron @tomlowenthal can we do something like this:

UX:
Widevine is already installed but not running. The first time the user encounters a site that needs Widevine, prompt the user for permission to run it in an obvious way by showing this notification in the page content area so that the user is sure to notice it.
If the user clicks block, this permission notification will show everytime a site needs it to run.
If the user clicks allow, this permission notification will never show again because Widevine will always run on sites that need it.