Jump to content

1080p Netflix on Windows 7 and Linux

EDIT: Apparently after he released it someone else made an addon for Firefox that does the same thing. 

https://addons.mozilla.org/en-US/firefox/addon/force-1080p-netflix/

https://github.com/vladikoff/netflix-1080p-firefox

 

Also relevant reddit thread from a month ago when he released it.

https://np.reddit.com/r/netflix/comments/7wrr78/i_made_a_chrome_extension_to_force_netflix_to/

-----------

 

As you may or may not know watching Netflix on Windows 7 or Linux has meant that no matter what you do you're limited to 720p.

Even on Windows 8/10 you must use IE, Edge, or the Netflix app to stream at resolutions greater than 720p. If you use Chrome, Firefox, Safari, or any other browser then you're stuck at 720p.

And for macOS, AFAIK, you can only get 1080p on Safari.

 

In fact, the only platform where you can watch 1080p Netflix on Chrome is ChromeOS as it has the DRM required by Netflix.

 

Fortunately someone has found a way to exploit this to enable 1080p streaming in Chrome (or chromium based browsers) on any platform.

I've tried it on Windows 7 and Ubuntu but seeing as it's enabled through a chrome extension I assume that it'll work on any OS. 

 

Below are links to the chrome extension and to the source code on github.

https://chrome.google.com/webstore/detail/netflix-1080p/cankofcoohmbhfpcemhmaaeennfbnmgp

https://github.com/truedread/netflix-1080p

 

You can press ctrl+shift+alt+D to check what bitrate and resolution it's streaming at or ctrl+shift+alt+S to manually select bitrate.

These shortcuts don't seem to be universal as ctrl+shift+alt+D didn't seem to work on Ubuntu so...yeah.

 

As is usually the case with third party tools, use it at your own risk.

 

Here's the explanation of how it works copy and pasted from the readme on github.

Quote

The core of Netflix playback lies in JavaScript: specifically its "cadmium playercore" JS. The way Netflix (poorly) enforces 1080p to only be played back on ChromeOS devices is through these lines of JavaScript:


a = /CrOS/.test(a.userAgent);
this.Fma = this.Aw = q.Gu.PV;
this.Qm = [x.$l.nV];
this.oo = [x.V.vA, x.V.wA];
a && this.oo.push(x.V.TH);

 

What it is doing is testing your User-agent for the "CrOS" string anywhere in it. If the search returns true, it appends the 1080p profile to the profile playback array (what this line a && this.oo.push(x.V.TH); is doing). If it returns false, it does nothing. The playback profile array is set up like so: this.oo = [x.V.vA, x.V.wA];, x.V.vA is the SD profile and x.V.wA is the 720p profile.

 

After reading this you think the easy solution would be to just change the User-agent to make it contain the string "CrOS" right? Not that simple. ChromeOS apparently has a different DRM implementation than chrome, even though both use Widevine. I could never get it to work when I tried, Netflix always threw license errors. The next easiest thing to do is just delete the conditional to append 1080p and just make the 1080p profile apart of the regular profiles (this.oo = [x.V.vA, x.V.wA]; -> this.oo = [x.V.vA, x.V.wA, x.V.TH];). This works perfectly.

 

All the Chrome extension has to do is redirect all requests to Netflix's playercore to the modified one it has in the root directory. That's it. A two line modification.

 

Linus Sebastian said:

The stand is indeed made of metal but I wouldn't drive my car over a bridge made of it.

 

https://youtu.be/X5YXWqhL9ik?t=552

Link to comment
Share on other sites

Link to post
Share on other sites

Interesting, but why would it be important for them to limit quality to 720p?

Computer engineering grad student, cybersecurity researcher, and hobbyist embedded systems developer

 

Daily Driver:

CPU: Ryzen 7 4800H | GPU: RTX 2060 | RAM: 16GB DDR4 3200MHz C16

 

Gaming PC:

CPU: Ryzen 5 5600X | GPU: EVGA RTX 2080Ti | RAM: 32GB DDR4 3200MHz C16

Link to comment
Share on other sites

Link to post
Share on other sites

7 hours ago, thegreengamers said:

Interesting, but why would it be important for them to limit quality to 720p?

7 hours ago, emosun said:

Really?

is netflix like..... running low on cash that they need to run everything at 720p? Even youtube streams 4k just fine and its free...

It's just a DRM thing.

AFAIK they don't have as high a degree of support for the Widevine DRM or something along those lines; in other words, they're less secure.

Linus Sebastian said:

The stand is indeed made of metal but I wouldn't drive my car over a bridge made of it.

 

https://youtu.be/X5YXWqhL9ik?t=552

Link to comment
Share on other sites

Link to post
Share on other sites

9 minutes ago, mvitkun said:

As you may or may not know watching Netflix on Windows 7 or Linux has meant that no matter what you do you're limited to 720p.

Really?

is netflix like..... running low on cash that they need to run everything at 720p? Even youtube streams 4k just fine and its free...

Link to comment
Share on other sites

Link to post
Share on other sites

27 minutes ago, emosun said:

Really?

is netflix like..... running low on cash that they need to run everything at 720p? Even youtube streams 4k just fine and its free...

its to stop people from being able to get a high res copy of the content as some of the drm can be bypassed

Link to comment
Share on other sites

Link to post
Share on other sites

12 hours ago, thegreengamers said:

Interesting, but why would it be important for them to limit quality to 720p?

Because DRM is the reason we can't have nice things

Don't ask to ask, just ask... please 🤨

sudo chmod -R 000 /*

Link to comment
Share on other sites

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×