Hardware video decoding drastically decreases CPU usage when watching videos.

NOTE: This message might become outdated with time, please refer to the wiki page for the up-to-date information.

extra/chromium is now being compiled with VA-API support!

IMPORTANT: There is no official support for HW acceleration from Chromium or Arch Linux teams, this is the place to get help from friendly community.

===========================================================================================

Depending on your GPU model, you may achieve HW acceleration on H.264 and VP8/VP9 video codecs.

To see whether you are currently using Hardware or Software acceleration, play a video and in a new tab open chrome://media-internals/, click on the video and check the video_decoder field:

Hardware acceleration: MojoVideoDecoder, GpuVideoDecoder

Software acceleration: VpxVideoDecoder, FFmpegVideoDecoder (some say it's Hardware acceleration?)

Also check chrome://gpu and ensure that you see:

Video Decode: Hardware accelerated

Here's a list of Chromium flags that may or may not be useful, experiment by adding some of them to ~/.config/chromium-flags.conf:

--enable-gpu-rasterization

--ignore-gpu-blacklist

--disable-gpu-driver-workarounds

For more info, see wiki for Hardware video acceleration in Chromium

---------------------------------------------------------------------------------

When asking for support, please post the output of $ vainfo (from libva-utils package).

---------------------------------------------------------------------------------

Drivers: See wiki for Hardware video acceleration

Notes for NVIDIA GPU:

VP8/9 video decoding WILL NOT WORK!

GeForce GTX 750 SE and after support HEVC and VP9 video decoding but VDPAU,the only VAAPI backend available for Nvidia users with libva-vdpau-driver, doesn't support VP8/9.

4 ways to solve this:

- Add VP9 support to VDPAU but it hasn't been actively maintained since at least 3 years

- Force the use of an other codec with an extension like h264ify

- Stream the video to mpv using https://aur.archlinux.org/packages/play-with-mpv-git/ and configure it to use the new NVDEC engine which does support VP9

- Make NVDEC able to be used by VA-API but it seems a dead-end (see https://devtalk.nvidia.com/default/topi … aapi-nvdec- )

Last edited by maximbaz (2020-07-09 14:21:31)