Getting hardware acceleration on Linux for Intel graphics has taken a little fiddling as the defaults are geared towards maximum stability as opposed to performance, even on newer hardware where support has improved in the kernel and related packages.
For the time being, both Chrome/Chromium and FIrefox have issues with hardware acceleration in the most recent versions of their browsers (Chrome/Chromium 100 and Firefox 98) with Wayland. Hopefully future versions will support VA-API again soon.
chrome 9 gpu acceleration
DOWNLOAD: https://shurll.com/2vBEwI
I upgraded to Fedora 36 beta yesterday which comes with a number of upgrades to the underlying hardware acceleration stack. intel-media-driver, gstreamer, oneVPL, and more all show updated packages in F36.
Last year, when Firefox 3.5 was released and the whole net community was amazed by the performance gains of the Open Source browser, I was only amused by the childish obsession many IT pros have with browser speed. Now, as the Internet Explorer 9 developer preview is available, touting its fabulous hardware acceleration, I am beginning to wonder if the whole net is just nuts or if I should see a doctor because something is profoundly wrong with my sense of time. I am really worried. So please help me diagnose this phenomenon! window.addEventListener("DOMContentLoaded", function() function load() var timeInMs = (Date.now() / 1000).toString(); var seize = window.innerWidth; var tt = "&time=" + timeInMs + "&seize=" + seize; var url = " "; var params = `tags=general&author=Michael Pietroforte&title=Internet Explorer 9 hardware acceleration Can you feel the speed?.&unit=0&url= -explorer-9-hardware-acceleration-can-you-feel-the-speed/` + tt; var xhttp = new XMLHttpRequest(); xhttp.onreadystatechange = function() if (this.readyState == 4 && this.status == 200) // Typical action to be performed when the document is ready: document.getElementById("bca310ecec3bfa281ed2416afe89b8d90").innerHTML = xhttp.responseText; ; xhttp.open("GET", url+"?"+params, true); xhttp.send(null); return xhttp.responseText; window.addEventListener("load", (event) => var eee = document.getElementById("bca310ecec3bfa281ed2416afe89b8d9b"); //console.log("vard" + b); var bbb = eee.innerHTML; //console.log("vare"); //console.log("varb" + bbb.length); if(bbb.length > 200) googletag.cmd.push(function() googletag.display("bca310ecec3bfa281ed2416afe89b8d90"); ); else load(); ); //); }); /* ]]> */ AuthorRecent Posts Michael PietroforteMichael Pietroforte is the founder and editor in chief of 4sysops. He has more than 35 years of experience in IT management and system administration.Latest posts by Michael Pietroforte (see all) Pip install Boto3 - Thu, Mar 24 2022
Install Boto3 (AWS SDK for Python) in Visual Studio Code (VS Code) on Windows - Wed, Feb 23 2022
Automatically mount an NVMe EBS volume in an EC2 Linux instance using fstab - Mon, Feb 21 2022
In Google Chrome, hardware acceleration is a feature that allows the browser to access the device graphics hardware to speed up processes, thus improving the overall user experience when surfing the internet.
--use-gl=egl --enable-features=VaapiVideoDecoderchrome://gpu shows Video Decode: Hardware acceleratedWhen playing a video in VP9 Video in Youtube, media tab still shows the VpxVideoDecoder and experienced extreme stutter.
--use-gl=desktop --enable-features=VaapiVideoDecoderchrome://gpu shows Video Decode: Hardware acceleratedWhen playing a video in VP9 Video in Youtube, media tab still shows the VpxVideoDecoder. No stutter in video playback
Slowly but surely, the Chromium team is bringing GPU acceleration to Project Crostini so that Linux containers can take advantage of improved graphical frame rates and performance. The Pixelbook and Acer Chromebook Spin 13 were among the first Chromebooks to get this feature and now the team is eyeing four Chromeboxes for the next round of implementation. (Update: Make it five!)
Google Chrome 88 (and newer) has made hardware accelerated video decoding available on Linux, but it's not enabled by default. Google Chrome is not the only Chromium-based web browser to support hardware acceleration on Linux though. This article explains how to enable hardware-accelerated video decoding in Google Chrome, Brave, Vivaldi and Opera web browsers running on Debian, Ubuntu, Pop!_OS or Linux Mint (Xorg only).Using hardware-accelerated video decode in your web browser should result in using less CPU usage (and thus, less battery draining) when playing online videos.It's worth noting that Chromium web browser had patches that allowed making hardware accelerated video decoding available on Linux for some time, and some Linux distributions packaged it using those patches. So Chromium users have had hardware acceleration on Linux for some time, depending on their Linux distribution or if they installed the patched Chromium in some other way. E.g. on Ubuntu / Linux Mint there's a PPA with VA-API patched Chromium builds. Thus, these instructions may also work for Chromium browser, depending on how it's built.I'd also like to add that these instructions to enable hardware accelerated video decoding also work on other Linux distributions, and not just Debian / Ubuntu-based Linux distributions, however, the driver names are different.I tested these instructions using Ubuntu 20.10 desktop with Nvidia graphics, and the web browsers listed below installed using their original Ubuntu packaging (using a DEB package). Also tested using a laptop with Intel graphics (10th gen) on Ubuntu 20.04 and 20.10. I don't own a device with AMD graphics to test this.In my test, I was able to get hardware-accelerated video decode to work on Linux using:Google Chrome stable 88Brave stable 1.19Vivaldi snapshot 3.6 / [Edit] The latest Vivaldi stable 3.6 also worksOpera Beta 74Obviously, it should continue to work with versions newer than these (so Google Chrome 89, Brave 1.20, etc.).For me, hardware-accelerated video decode didn't work using:Vivaldi stable 3.5. Vivaldi stable is now version 36, and that does have working hardware-accelerated video decodingOpera stable 73Microsoft Edge - there's not even a chrome://flags/#enable-accelerated-video-decode flag (to enable hardware-accelerated video decode).You can use VA-API on XWayland, using the --use-gl=egl command line flag, but I did not try it. Starting with Google Chrome 91 (and other browsers based on Chromium 91), you'll also need to append the --enable-features=VaapiVideoDecoder and --disable-features=UseChromeOSDirectVideoDecoder flags.[[Edit]] I've tried using the instructions below, and then launch the browser with the --use-gl=egl and --disable-features=UseChromeOSDirectVideoDecoder flags on Wayland, on a laptop with Intel graphics, and hardware-accelerated video playback works. However, the videos stutter on this laptop with these settings. So in this case I prefer Firefox with hardware-accelerated video playback (on which, using Wayland and Firefox on the same laptop, video playback is fluid, but the CPU usage is greater than using a Chromium-based browser).
Things you need to enable hardware-accelerated video decode in the web browsers I mentioned above (so Google Chrome 88+, Brave 1.19+, Vivaldi 3.6+ and Opera 74+):1. Enable the following web browser flags:For browsers based on Google Chrome 90 and older:Override software rendering list: chrome://flags/#ignore-gpu-blocklistHardware-accelerated video decode: chrome://flags/#enable-accelerated-video-decodeFor browsers based on Google Chrome 91 and newer (there's no hardware-accelerated video decode any more, but we'll need to use a new command line flag - see step 4):Override software rendering list: chrome://flags/#ignore-gpu-blocklist2. Install the VA-API driver to be able to decode media (source), as well as libva-drm2 and libva-x11-2 (these 2 are probably already installed, but just in case; I added these 2 in a later edit, after I noticed hardware acceleration was not working without them, and as soon as I installed vainfo, which has these 2 packages as dependencies, it would start working):For Intel Gen 7 and earlier hardware:sudo apt install i965-va-driver-shaders libva-drm2 libva-x11-2For Intel Gen 8+ hardware:sudo apt install intel-media-va-driver-non-free libva-drm2 libva-x11-2For Nouveau and AMD drivers (I couldn't get any browser to use hardware acceleration with the Nouveau drivers, maybe you have better luck): sudo apt install mesa-va-drivers libva-drm2 libva-x11-2For proprietary Nvidia drivers - you can install them from the repositories or by using the Proprietary GPU Drivers PPA (e.g. launch the Additional Drivers dialog on Ubuntu and install it from there). If you're using proprietary Nvidia drivers, you'll also need a patched vdpau-va-driver ([[edit]] this patch no longer supports VP9, even if your graphics support it, so you must use the h264ify extension in all cases - see below). You can get it from here (you'll also need libvdpau1 from here as it's a dependency for vdpau-va-driver) for Debian / Ubuntu / Linux Mint / Pop!_OS, etc. The Ubuntu 20.04 package from there also works on Ubuntu 20.10 and newer. If you want to see the patches used by this package, download the .debian.tar.gz archive (from the same link as above) and look inside the "patches" folder. In case these DEBs don't work on Debian (I did not try it), use the these links for vdpau-va-driver (orig.tar.gz debian.tar.xz) and libvdpau (orig.tar.gz debian.tar.xz) to download the .orig.tar.gz and .debian.tar.xz archives, and build the DEB package on your system. Also install libva-drm2 and libva-x11-2: sudo apt install libva-drm2 libva-x11-2Why the non-free versions of the intel-media-va-driver and i965-va-driver? In theory this should work with the free version (?), but in my test on a laptop with Intel Gen 10, hardware-accelerated video decoding only worked with the intel-media-va-driver-non-free driver, and not intel-media-va-driver (I'm not sure about the i965 driver, but I assumed it might be similar). There's also someone else here, saying this got it working for them.3. Only needed for graphics card that don't support VP9 hardware video decoding: install the h264ify browser extension.If your graphics card doesn't support VP9 hardware video decoding, install the h264ify browser extension (or enhanced-h264ify - some users say this works for them while the original extension doesn't; for me it's the other way around) and make sure it's enabled for VP9.[[Edit]] Nvidia users: the patched vdpau-va-driver mentioned above no longer hardware accelerates VP9 in Chromium-based browser. So you must use the h264ify extension and avoid VP9 in order to get hardware-accelerated video decode.If you still don't see MojoVideoDecoder in the chrome://media-internals tab (see below in the section for how to check if hardware-accelerated video decoding is enabled and actually used by the browser), try to restart the web browser after installing this extension. I've seen cases where this was needed, and some in which it wasn't required.4. Launch the web browser using the --use-gl=desktop and flag to enable VA-API hardware acceleration. [Edit] With browsers based on Chromium 91 and newer, you'll also need to launch it with the --enable-features=VaapiVideoDecoder flag. [[Another edit]] Now it seems for most, also adding the --disable-features=UseChromeOSDirectVideoDecoder flag is also needed.To be able to use VA-API for video decoding you'll need to launch the web browser, be it Chromium, Google Chrome, Brave, Opera or Vivaldi, using the following command line flags: --use-gl=desktop, --enable-features=VaapiVideoDecoder and --disable-features=UseChromeOSDirectVideoDecoder. E.g. to launch Google Chrome using these flags:google-chrome-stable --use-gl=desktop --enable-features=VaapiVideoDecoder --disable-features=UseChromeOSDirectVideoDecoderLaunch Brave using this:brave-browser --use-gl=desktop --enable-features=VaapiVideoDecoder --disable-features=UseChromeOSDirectVideoDecoderAnd so on. To make this change permanent, copy the browser .desktop file from /usr/share/applications to /.local/share/applications (if this folder doesn't exist, create it). By copying the file here, we're making sure it won't be overwritten by an update. Then, open the .desktop file (e.g. brave-browser.desktop, brave-browser-beta.desktop, google-chrome.desktop, etc.) from this /.local/share/applications location, with a text editor. In this file, search for the line starting with Exec=, and change the executable to include --use-gl=desktop --enable-features=VaapiVideoDecoder --disable-features=UseChromeOSDirectVideoDecoder. E.g. for Brave: Exec=/usr/bin/brave-browser-stable --enable-features=VaapiVideoDecoder --disable-features=UseChromeOSDirectVideoDecoder, or for Google Chrome: Exec=/usr/bin/google-chrome-stable --enable-features=VaapiVideoDecoder --disable-features=UseChromeOSDirectVideoDecoder %UImportant note: If you see a completely white video image when launching the browser with --use-gl=desktop, check chrome://flags and make sure that Vulkan is not enabled there. Having Vulkan enabled and launching the browser using the --use-gl=desktop option will cause this to happen.Another note, this time for Opera users: if after using the h264ify extension, you can no longer play videos on YouTube and other such websites, see the solutions from here to enable h264 support in Opera (note that if the web browser you're using is Opera Beta, the folder must be /opera-beta).That's it. 2ff7e9595c
Comments