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

Can't enable widevine on Ubuntu 22.04 (arm64) #28903

Closed
gonzolively opened this issue Mar 5, 2023 · 4 comments
Closed

Can't enable widevine on Ubuntu 22.04 (arm64) #28903

gonzolively opened this issue Mar 5, 2023 · 4 comments
Assignees

Comments

@gonzolively
Copy link

gonzolively commented Mar 5, 2023

Description

Upon visiting any site with DRM-protected content (Netflix, Amazon Prime, etc.) I get an error message essentially saying to enable the widevine plugin. I've tried visiting the extensions page and enabling it manually, however upon page refresh the toggle goes back to the off position. I am also unable to find the widevine extension by checkout out components. For what it's worth, I never get the "puzzle piece" icon in the URL bar asking me to install the plugin. This feels like a Linux arm64 issue.

Steps to Reproduce

  1. Visit a streaming service with DRM-protected content
  2. Recieve "widevine-related" error message.
  3. Head to the extensions page and try to enable manually
  4. Refresh the page and see that the plugin has not been installed
  5. Also unable to find the widevine plugin in the components page.

Actual result:

Unable.to.install.widevine.mov

Expected result:

  1. Plugin install successfully
  2. Able to watch drm-protected content.

Reproduces how often:

  1. Happens every time

Brave version (brave://version info)

Version: 1.48.171
Chromium: 110.0.5481.177
OS: Ubuntu 22.04 [arm64]
Kernel: 5.15.0-67-generic

Version/Channel Information:

I've only tried the most current version that I got via the main release repo for brave-browser (arm64):
Repo URL: https://brave-browser-apt-release.s3.brave.com/ (stable main)

Other Additional Information:

  1. Tried the same troubleshooting steps after creating a separate profile to no avail.
  2. Issue does not resolve after disabling brave shields or brave rewards.
  3. I have not tried this on chrome, as I want to use brave-browser to sync across devices.
@mherrmann
Copy link

This seems to be really hard to implement at the moment. The only binaries that seem to be available are from the Raspberry PI repository (source). Arch Linux users have used these binaries to get Widevine to run on Arm64 Linux (source). But it requires binary-patching the libwidevinecdm.so file to support non-4k page sizes, and spoofing the user agent to be ChromeOS for watching Netflix. In short, it is technically possible, but very tedious and likely brittle.

@mherrmann
Copy link

The situation has improved slightly: Starting with Brave 1.63.x, it is possible to manually install Widevine on Arm64 Linux and get Brave to use it. Please see this PR for instructions. You still need to obtain Arm64 Widevine yourself. But this is possible by copying out the files /opt/WidevineCdm from Raspberry Pi OS.

@mherrmann
Copy link

We now have official instructions for enabling Widevine on Arm64 Linux here: https://support.brave.com/hc/en-us/articles/23881756488717-How-do-I-enable-Widevine-DRM-on-Linux

@theofficialgman
Copy link

@gonzolively Ubuntu 22.04 does not have GLIBC 2.36+ (support for RELR, required by ChromeOS ARM64 Widevine) which is currently the only public way to obtain a widevine version "compatible" (with patching) for ARM64 linux (it can be obtained from commondatastorage.googleapis.com, see https:/AsahiLinux/widevine-installer/blob/7a3928fe1342fb07d96f61c2b094e3287588958b/widevine-installer#L16-L19 for an example). All distros with GLIBC 2.35 and older you will have to patch GLIBC source code to include chromeOS RELR support, built it, and install it and keep it updated as your distro patches GLIBC for security bugs and overwrites your custom version.

@mihaiplesa mihaiplesa closed this as not planned Won't fix, can't repro, duplicate, stale Mar 19, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants