Jump to content

Linux OS with DRM enable & GPU hardware accelerated – How to


2020

Recommended Posts

This tutorial is based on my knowledge and experience in testing Tinkerboard. It has not been tested on other devices and I do not take any responsibility nor am I liable for any damage that may be caused through the use of this tutorial.

 

Debian / XFCE minimal desktop

  1. Download the latest current version of Bullseye (Panfrost drivers included) for your device and follow the instructions 
    https://www.armbian.com/download/
  2. After the first login type ... 
    exit (exit from root, login with your new user id)
    sudo apt update
    sudo apt upgrade (if the kernel installation prompts for modifications, just say Yes or Ok)
    sudo apt install task-xfce-desktop xfce4-terminal firefox-esr network-manager-gnome gparted
    sudo reboot
  3. Login graphically with your user id ...
    Open Firefox and check if you have access to internet
  4. Open xfce terminal and add the basic xfce packages
    sudo apt install pulseaudio pavucontrol gvfs gvfs-backends policykit-1 udisks2 catfish mousepad xarchiver gdebi gigolo
    sudo reboot

 

Find out ...

  1. ARM architecture of your computer processor
    https://en.m.wikipedia.org/wiki/List_of_ARM_microarchitectures
  2. Latest Chrome version
    https://www.google.com/search?q=The+latest+user+agents+for+Chrome&oq=The+latest+user+agents+for+Chrome&aqs=chrome..69i57j69i60l3&sourceid=chrome&ie=UTF-8
  3. Download the user agents text file for the latest Chrome version with the platform Chrome OS
    ARMv7 (armhf / 32-bit)
    https://user-agents.net/download?browser=chrome&version=87-0&browser_bits=32&platform=chromeos&platform_bits=32&name=armv7l or 
    ARMv8 (arm64 / 64-bit)
    https://user-agents.net/download?browser=chrome&version=87-0&platform=chromeos&name=aarch64 (use the highest version)

 

Vivaldi browser installation

  1.  Download Vivaldi (https://vivaldi.com/download/archive)
    ARMv7 (armhf / 32-bit)
    https://downloads.vivaldi.com/stable/vivaldi-stable_3.4.2066.106-1_armhf.deb or
    ARMv8 (arm64 / 64-bit)
    https://downloads.vivaldi.com/stable/vivaldi-stable_3.4.2066.106-1_arm64.deb
  2. Open GDebi and install your specific Vivaldi browser

 

Create a desktop launcher

  • Name: DRM browser
  • Command: /usr/bin/vivaldi-stable --disable-seccomp-filter-sandbox --user-agent="Mozilla/5.0 (X11; CrOS armv7l 13505.40.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.54 Safari/537.36"
     *** Use the latest user agents text string ***

 

Open Vivaldi with the DRM browser launcher and verify the parameters ...

  • user agent: https://whatmyuseragent.com
  • components: vivaldi://components (check if Widevine Content Decryption Module is loaded)
  • gpuvivaldi://gpu
  • flags:  vivaldi://flags Enable > Override software rendering list

 

Widevine-flash installation

  1. Close any opened Vivaldi Browser
  2.  Open xfce terminal and download the script that fetches a ChromeOS image and extracts the Widevine and Flash
    ARMv7 (armhf / 32-bit)
    git clone https://gist.github.com/e025024ecffa45ee4325a3915fd8dad1.git widevine-flash
    ARMv8 (arm64 / 64-bit)
    git clone https://gist.github.com/7e1e1c313843d6a8180cfc1f47bee6aa.git widevine-flash
    cd widevine-flash
    sudo sh ./widevine-flash_arm32.sh or sudo sh ./widevine-flash_arm64.sh (and follow the instructions)
  3. Open Vivaldi with the DRM browser launcher and check if DRM is working
    https://bitmovin.com/demos/drm

 

Now you are ready to watch Netflix :-) Cheers!

Link to comment
Share on other sites

  • lanefu pinned this topic

Hiya!

Thanks for pointing. Me is trying to make a youtube box out of a nanopc-T4 freed after some research I bought it for.

I'm honestly shocked by the fact that firefox in Armbian 20.08.2 boils the CPU to whizzing fan and the fps in youtube is 10-15! The default ubuntu install from friendlyelec was running absolutely cool and smooth.

I think that Armbian does not use any HW acceleration by default...

Link to comment
Share on other sites

On 12/4/2020 at 6:21 PM, 2020 said:

This tutorial is based on my knowledge and experience in testing Tinkerboard. It has not been tested on other devices and I do not take any responsibility nor am I liable for any damage that may be caused through the use of this tutorial.

 

Debian / XFCE minimal desktop

  1. Download the latest current version of Bullseye (Panfrost drivers included) for your device and follow the instructions 
    https://www.armbian.com/download/
  2. After the first login type ... 
    exit (exit from root, login with your new user id)
    sudo apt update
    sudo apt upgrade (if the kernel installation prompts for modifications, just say Yes or Ok)
    sudo apt install task-xfce-desktop xfce4-terminal firefox-esr network-manager-gnome gparted
    sudo reboot
  3. Login graphically with your user id ...
    Open Firefox and check if you have access to internet
  4. Open xfce terminal and add the basic xfce packages
    sudo apt install pulseaudio pavucontrol gvfs gvfs-backends policykit-1 udisks2 catfish mousepad xarchiver gdebi gigolo
    sudo reboot

 

Find out ...

  1. ARM architecture of your computer processor
    https://en.m.wikipedia.org/wiki/List_of_ARM_microarchitectures
  2. Latest Chrome version
    https://www.google.com/search?q=The+latest+user+agents+for+Chrome&oq=The+latest+user+agents+for+Chrome&aqs=chrome..69i57j69i60l3&sourceid=chrome&ie=UTF-8
  3. Download the user agents text file for the latest Chrome version with the platform Chrome OS
    ARMv7 (armhf / 32-bit)
    https://user-agents.net/download?browser=chrome&version=87-0&browser_bits=32&platform=chromeos&platform_bits=32&name=armv7l or 
    ARMv8 (arm64 / 64-bit)
    https://user-agents.net/download?browser=chrome&version=87-0&platform=chromeos&name=aarch64 (use the highest version)

 

Vivaldi browser installation

  1.  Download Vivaldi (https://vivaldi.com/download/archive)
    ARMv7 (armhf / 32-bit)
    https://downloads.vivaldi.com/stable/vivaldi-stable_3.4.2066.106-1_armhf.deb or
    ARMv8 (arm64 / 64-bit)
    https://downloads.vivaldi.com/stable/vivaldi-stable_3.4.2066.106-1_arm64.deb
  2. Open GDebi and install your specific Vivaldi browser

 

Create a desktop launcher

  • Name: DRM browser
  • Command: /usr/bin/vivaldi-stable --disable-seccomp-filter-sandbox --user-agent="Mozilla/5.0 (X11; CrOS armv7l 13505.40.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.54 Safari/537.36"
     *** Use the latest user agents text string ***

 

Open Vivaldi with the DRM browser launcher and verify the parameters ...

  • user agent: https://whatmyuseragent.com
  • components: vivaldi://components (check if Widevine Content Decryption Module is loaded)
  • gpuvivaldi://gpu
  • flags:  vivaldi://flags Enable > Override software rendering list

 

Widevine-flash installation

  1. Close any opened Vivaldi Browser
  2.  Open xfce terminal and download the script that fetches a ChromeOS image and extracts the Widevine and Flash
    ARMv7 (armhf / 32-bit)
    git clone https://gist.github.com/e025024ecffa45ee4325a3915fd8dad1.git widevine-flash
    ARMv8 (arm64 / 64-bit)
    git clone https://gist.github.com/7e1e1c313843d6a8180cfc1f47bee6aa.git widevine-flash
    cd widevine-flash
    sudo sh ./widevine-flash_arm32.sh or sudo sh ./widevine-flash_arm64.sh (and follow the instructions)
  3. Open Vivaldi with the DRM browser launcher and check if DRM is working
    https://bitmovin.com/demos/drm

 

Now you are ready to watch Netflix :-) Cheers!

I completed all step (64bit), but DRM isn't working yet

widevine is listed on vivaldi's componets as Widevine Content Decryption Module with version 0.0.0.0, is this right?

when i run vivaldi into command line, i see "ERROR:chrome_content_client.cc(343)] Failed to locate and load the component updated flash plugin."

pluggin is located in /opt/WidevineCdm/_platform_specific/linux_arm/libwidevinecdm.so  (this path have permission to everyone 775)

file exists ~/.config/vivaldi/WidevineCdm/latest-component-updated-widevine-cdm content =>  {"Path":"/opt/WidevineCdm"}

what is wrong?

 

My system is rockpi4 Armbian ubuntu 18.04  64bit

 

 

 

Link to comment
Share on other sites

Unfortunately ChromeOS image no longer provides 64bit components ... try to install the 32bit version of Vivaldi and follow the ARMv7 instructions. 

 

(widevine is listed on vivaldi's componets as Widevine Content Decryption Module with version 0.0.0.0, is this right?) this is normal!

Link to comment
Share on other sites

On 1/3/2021 at 7:17 PM, 2020 said:

Unfortunately ChromeOS image no longer provides 64bit components ... try to install the 32bit version of Vivaldi and follow the ARMv7 instructions. 

 

(widevine is listed on vivaldi's componets as Widevine Content Decryption Module with version 0.0.0.0, is this right?) this is normal!

works!! i have installed vivaldi 32bit, 

 

I noticed widevine module is 4.10.1679.0 version, when version is 0.0.0.0 means widevine module is not loaded

Link to comment
Share on other sites

Need help.. I've been told theres a new file to work on widevine 64
But I can't make the magic happen

Can  anyone give me a hand here?

***ARMv8 (arm64 / 64-bit)***
git clone https://gist.github.com/vyn20/7e1e1c313843d6a8180cfc1f47bee6aa widevine-flash
cd widevine-flash
sudo sh ./widevine-flash_arm64.sh 
***(and follow the instructions)***
tar zxvf widevine-flash-20230317_armhf.tgz
3. Open Vivaldi with the DRM browser launcher and check if DRM is working
https://bitmovin.com/demos/drm

I am trying to apply this here: https://forum.radxa.com/t/guide-openfyde-rock-5b-the-best-options/15338

Link to comment
Share on other sites

Widevine for arm64 has been released, and I have tested that it does work on a Raspberry Pi.

 

The Raspberry Pi has packaged it for PiOS.
 

sudo apt install libwidevinecdm0

 

I used this to get the .so shared object file, and to understand the expected directory structure. I transfered it to an Orange Pi 5 running Armbian. However, it didn't work. My understanding is that this was because, by default, chromium-browser is hard coded not to attempt to load Widevine on arm64 systems. Presumably, this will be fixed upstream for chromium-browser in the near future. However, it would be nice if it was fixed earlier in the Armbian repo, and particularly if it was fixed in the hardware accelerated version provided by Liu Jian Feng.

 

sudo add-apt-repository ppa:liujianfeng1994/panfork-mesa
sudo add-apt-repository ppa:liujianfeng1994/rockchip-multimedia
sudo apt update
sudo apt dist-upgrade
sudo apt install mali-g610-firmware rockchip-multimedia-config

 

I believe the gpu accelerated chomium-browser is from rockchip-multimedia-config.

 

Unfortunately, being a newbie, I do not know how to go about requesting any of this.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...

Important Information

Terms of Use - Privacy Policy - Guidelines