Live data from Hacker News

I reverse-engineered Netflix's 4K restrictions

github.com

1–10 of 102 posts

Re: I reverse-engineered Netflix's 4K restrictions

#2
I pay for Netflix Premium but was stuck at 1080p. Turns out Netflix layers multiple capability checks before serving 4K: user agent, screen resolution, Media Capabilities API, codec support, DRM robustness negotiation, and their Cadmium player's internal bitrate caps.

Built an extension that spoofs all of these. The interesting discovery: you have to intercept every layer. Miss one and you're back to 1080p.

Here's the catch though. Even with all the JavaScript spoofs working, Chrome still won't get 4K. Netflix requires Widevine L1 (hardware DRM), and Chrome only has L3 (software). The browser literally can't negotiate the security level Netflix wants. Edge on Windows has L1, so the extension actually delivers 4K there.

So what's the point on Chrome? Honestly, not much for 4K specifically. But the reverse-engineering was the interesting part. Understanding how Netflix fingerprints devices and decides what quality to serve. The codebase documents all the APIs they check.

On Edge: works reliably, getting 3840x2160 at 15000+ kbps. On Chrome: spoofs work, DRM negotiation fails, stuck at 1080p.

The repo has detailed documentation on what each spoof does and why. Happy to discuss the technical approach or answer questions.

Re: I reverse-engineered Netflix's 4K restrictions

#4
I may be an idiot, but: What does this actually, y'know, achieve? It seems the answer to me is probably nothing?

It doesn't work on Firefox. It appears not to work on Chrome. The suggestion is to use Edge, which on Windows already gets 4K support in Netflix anyway.

Re: I reverse-engineered Netflix's 4K restrictions

#5

I pay for Netflix Premium but was stuck at 1080p. Turns out Netflix layers multiple capability checks before serving 4K: user agent, screen resolution, Media Capabilities API, codec support, DRM robustness negotiation, and their Cadmium player's internal bitrate caps. Built an extension that spoofs all of these. The interesting discovery: you have to intercept every layer. Miss one and you're back to 1080p. Here's th…

i can understand the enthusiasm around LLM authored code bases.

but i cannot understand why someone would write comments on hacker news with an LLM. how could you say something was interesting, if you didn't even do it?

Re: I reverse-engineered Netflix's 4K restrictions

#6
Awesome. As someone who has spent some time researching DRM systems, figuring out these "soft" restrictions before you can achieve playback in the first place is often more challenging than breaking the DRM itself.

Does Edge currently ship Widevine L1? Last time I checked it was Playready SL3000, but that was a while ago now.

Re: I reverse-engineered Netflix's 4K restrictions

#7

I pay for Netflix Premium but was stuck at 1080p. Turns out Netflix layers multiple capability checks before serving 4K: user agent, screen resolution, Media Capabilities API, codec support, DRM robustness negotiation, and their Cadmium player's internal bitrate caps. Built an extension that spoofs all of these. The interesting discovery: you have to intercept every layer. Miss one and you're back to 1080p. Here's th…

That's crazy that Chrome, which basically owns the web standards, does not have a compliant implementation to run Netflix, which leads streaming market share.

Re: I reverse-engineered Netflix's 4K restrictions

#10
post #4

I may be an idiot, but: What does this actually, y'know, achieve? It seems the answer to me is probably nothing? It doesn't work on Firefox. It appears not to work on Chrome. The suggestion is to use Edge, which on Windows already gets 4K support in Netflix anyway.

Fellow idiot here, and the gist seems to be:

Here's a 4K enabler that only enables 4K where it's already enabled.

Post reply on HN