Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Netflix isn't working even with Widevine correctly loaded. #12427

Closed
yoannmoinet opened this Issue Mar 24, 2018 · 24 comments

Comments

Projects
None yet
5 participants
@yoannmoinet
Copy link

yoannmoinet commented Mar 24, 2018

Hi there, I have an issue when opening Netflix with Electron.
I had a Widevine plugin working for some time, and it started to fail unexpectedly.

Could you help troubleshoot this please?

  • Electron version: 1.8.4

  • Operating system: macOS High Sierra 10.13.3

  • My environment

env version
ares "1.10.1-DEV"
atom-shell "1.8.4"
chrome "59.0.3071.115"
electron "1.8.4"
http_parser "2.7.0"
modules "57"
node "8.2.1"
openssl "1.0.2l"
uv "1.13.1"
v8 "5.9.211.38"
zlib "1.2.11"
  • Plugins

screen shot 2018-03-24 at 11 16 43

Expected behavior

When widevine plugin is correctly loaded, it should play Netflix.

Actual behavior

Getting an error in Netflix, eventhough shaka and bitmovin show a correctly loaded and activated widevine plugin.

screen shot 2018-03-24 at 10 21 28

How to reproduce

I've created a very simple repo which will help reproduce the issue easily.
You'll be able to also load Bitmovin and Shaka to ensure Widevine is indeed correctly enabled.

git clone git@github.com:yoannmoinet/netflix-and-electron.git
cd netflix-and-electron
npm install
npm start

Thank you so much for your help.

@welcome

This comment has been minimized.

Copy link

welcome bot commented Mar 24, 2018

👋 Thanks for opening your first issue here! If you're reporting a 🐞 bug, please make sure you include steps to reproduce it. We get a lot of issues on this repo, so please be patient and we will get back to you as soon as we can.

To help make it easier for us to investigate your issue, please follow the contributing guidelines.

@sofianguy

This comment has been minimized.

Copy link
Member

sofianguy commented Mar 26, 2018

Thanks for reaching out!

Because we treat our issues list as the team's backlog, we close issues that are questions since they don't represent a task needing to be completed. For most questions about Electron there are a lot of options.
Check out the Electron community. There are also a bunch of helpful people in this community forum that should be willing to point you in the right direction.

@sofianguy sofianguy closed this Mar 26, 2018

@yoannmoinet

This comment has been minimized.

Copy link
Author

yoannmoinet commented Mar 26, 2018

@sofianguy It might have been formuled as a question, but I do think it's a bug on Electron's part, or a bad documentation.

And I did everything needed to describe it as well as I could, with repro steps and all.

@yoannmoinet

This comment has been minimized.

Copy link
Author

yoannmoinet commented Mar 26, 2018

Even though this issue has been closed, I've new informations for any new person that will come here for answers, because this is an Electron issue nonetheless.

It appears that Netflix implemented a new VMP (verified media path) support to the Widevine browser CDM lately. So the little players/browsers won't be able to play DRM content without a proper, whitelisted, Widevine CDM installation coming from Google.

Brave got the same issue, Vivaldi as well.

I've contacted them to see what are the steps to get a legit widevine plugin.
Also, I've created a bountied question on StackOverflow.

Basically, it means that Electron based apps won't be able to play Netflix anymore.

All Hail DRM.

@levrik

This comment has been minimized.

Copy link
Contributor

levrik commented Apr 4, 2018

@yoannmoinet Really? I just started building an Netflix Desktop app based on Electron...

@yoannmoinet

This comment has been minimized.

Copy link
Author

yoannmoinet commented Apr 4, 2018

@levrik I confirm, there is no solution as of now. I'm still waiting after Google to get a widevine legit plugin. But I'm not really confident.

In the mean time, I'm working on a shady solution. We'll see where that takes me.

If you get it to work, I'm really interested, because I have a desktop app, published on the AppStore that isn't working with Netflix anymore.

@levrik

This comment has been minimized.

Copy link
Contributor

levrik commented Apr 4, 2018

@yoannmoinet What is the app you have published?

@yoannmoinet

This comment has been minimized.

Copy link
Author

yoannmoinet commented Apr 4, 2018

@levrik

This comment has been minimized.

Copy link
Contributor

levrik commented Apr 4, 2018

@yoannmoinet uh.. an paid app. That's bad that it isn't working anymore. In the meanwhile I found this: https://github.com/castlabs/electron-releases
It gets it's Widevine binaries from this URL https://redirector.gvt1.com/edgedl/widevine-cdm/1010-win-x64.zip which seems to be Google owned according to whois entry.

EDIT: Seems to be an version with an evaluation license only. From LICENSE.txt inside the zip file:

If you are interested in licensing the Software, please contact
widevine@google.com.

@yoannmoinet

This comment has been minimized.

Copy link
Author

yoannmoinet commented Apr 4, 2018

Thank you @levrik, I've tried your link.
Unfortunately it's missing the adapter needed by Electron.

I might try using the Brave's engine Muon that is a fork of Electron, they have a different way to register the widevine plugins.

@levrik

This comment has been minimized.

Copy link
Contributor

levrik commented Apr 4, 2018

@yoannmoinet The adapter is inside the GitHub releases of the linked repo. Also wanted to try out Muon. Will do so tomorrow after work.

@yoannmoinet

This comment has been minimized.

Copy link
Author

yoannmoinet commented Apr 4, 2018

oh man... it's working when using the electron-releases package.
Thank you so much @levrik.

Unfortunately it won't build with it.

At least, I'm able to make Netflix work in development. It lets me have a new way to investigate the issue.

@levrik

This comment has been minimized.

Copy link
Contributor

levrik commented Apr 5, 2018

@yoannmoinet Do you plan to write an message to that mail address from the LICENSE.txt? If yes, would be interested in the outcome.

@yoannmoinet

This comment has been minimized.

Copy link
Author

yoannmoinet commented Apr 5, 2018

I might, I've already contacted Google on another email address (widevine-support@google.com) to get a legit plugin. I'll try again on this one.

@levrik

This comment has been minimized.

Copy link
Contributor

levrik commented Apr 12, 2018

@yoannmoinet Nice, please keep me posted. Also via mail if you don't want to post that in public (see my GitHub profile for that).

@ccj242

This comment has been minimized.

Copy link

ccj242 commented May 22, 2018

@yoannmoinet any updates on this? I have contacted widevine myself and have yet to hear back.

@yoannmoinet

This comment has been minimized.

Copy link
Author

yoannmoinet commented May 25, 2018

@ccj242 unfortunately still nothing from Google (widevine).
I'll keep you posted here once I have something new.

@alexanderturinske

This comment has been minimized.

Copy link
Contributor

alexanderturinske commented Jun 29, 2018

Looking at the castlabs/electron-releases repo, it seems several have been able to build using it and the certificates they received from Google; does this mean that the Widevine plugin is no longer viable in versions of electron >v1.7.x? (as VMP was introduced in Chrome 59, which was introduced in v1.8.0). From the maintainer of castlabs/electron-releases, "regular Electron does not provide Widevine support without manually installing a Widevine CDM, which makes just signing it pointless. Even with a manual CDM installation there are other aspects of VMP that need to be fulfilled that stock Electron does not, this is part of the value the castLabs Electron releases bring to the table.", so there should probably be something in the docs mentioning that.

EDIT 07/03/18
Answer:
< v1.8.x: One only needs to include the Widevine plugin found in the docs
>= v1.8.x: One needs to include the Widevine plugin AND Verified Media Path (VMP) application signing, which can be done more easily with castlabs/electron-releases, which handles the plugin for you and supplies a script to sign the application, but VMP requires getting a certificate, passphrase, and key from Google, which can be requested at widevine@google.com, but it WILL take time to get it back (weeks to months).
Additionally, the castLabs version will always be behind the electron version and does not support Linux. Also, one cannot simply take their signing script and use it on the normal version of electron as they have done special work to electron to make it compatible with VMP-signing.

Relates to: #10806

@alexanderturinske

This comment has been minimized.

Copy link
Contributor

alexanderturinske commented Aug 6, 2018

@yoannmoinet Did they get back to you?

@ccj242

This comment has been minimized.

Copy link

ccj242 commented Aug 6, 2018

To share my experience, my non-profit sent 3 certified letters to widevine headquarters in addition to countless online forms and emails sent and have received no word whatsoever. Very frustrating. I'm beginning to worry this is a lost cause. Has this been your experience too @yoannmoinet?

@alexanderturinske

This comment has been minimized.

Copy link
Contributor

alexanderturinske commented Aug 6, 2018

My company uses DRMToday (paid-service owned by castLabs) and they were able to get us the necessary items, though it still took months.

alexanderturinske added a commit to alexanderturinske/electron that referenced this issue Aug 10, 2018

Update using-widevine-cdm-plugin.md
Describe changes in Widevine CDM plugin based on new widevine requirements

Relates to: electron#12427 
Relates to: electron#10806
@yoannmoinet

This comment has been minimized.

Copy link
Author

yoannmoinet commented Aug 16, 2018

@alexanderturinske I've contacted widevine-support@google.com and they answered me 1.5 month later.

They asked if I had completed the 'Widevine MLA'.
I had no idea what it was, so I asked them.

No news for more than 2 weeks now. I'll ping them again.

@samuelmaddock samuelmaddock referenced this issue Oct 14, 2018

Open

Improve browser security #1

5 of 8 tasks complete

alexanderturinske added a commit to alexanderturinske/electron that referenced this issue Oct 19, 2018

Update using-widevine-cdm-plugin.md
Describe changes in Widevine CDM plugin based on new widevine requirements

Relates to: electron#12427 
Relates to: electron#10806

alexanderturinske added a commit to alexanderturinske/electron that referenced this issue Oct 19, 2018

Update using-widevine-cdm-plugin.md
Describe changes in Widevine CDM plugin based on new widevine requirements

Relates to: electron#12427
Relates to: electron#10806
@yoannmoinet

This comment has been minimized.

Copy link
Author

yoannmoinet commented Apr 2, 2019

I've passed the one year anniversary waiting for my license.
Still no license, but I've finally signed an agreement a few weeks ago.

Waiting for the next steps.

@ccj242

This comment has been minimized.

Copy link

ccj242 commented Apr 2, 2019

Don't get your hopes up, I signed my agreement a few months ago and after repeated emails, still have no response.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.