Ano passado a Google acrescentou decodificação de vídeo acelerada no Chromium, antes a CPU era usada para fazer a decodificação por conta da ausência desse recurso, o recurso foi acrescentado porém não é habilitado por padrão, e ele pode ou não funcionar dependendo da versão do Chromium, nesse post eu vou instruir a como habilitar esse recurso.
Primeiramente é necessário acessar a página chrome://flags e habilitar as seguintes opções:
- Override software rendering list
- GPU rasterization
- Zero-copy rasterizer
Também é preciso instalar os drivers VAAPI
Drivers para placas Intel de 7ª geração e anteriores:
sudo apt install i965-va-driver-shaders libva-drm2 libva-x11-2
Drivers para placas Intel a partir de 8ª geração:
sudo apt install intel-media-va-driver-non-free libva-drm2 libva-x11-2
Após esse procedimento o navegador deve ser iniciado por linha de comando usando alguns argumentos específicos
Chromium:
google-chrome-stable --use-gl=desktop --enable-features=VaapiVideoDecoder --disable-features=UseChromeOSDirectVideoDecoder
Brave:
brave-browser --use-gl=desktop --enable-features=VaapiVideoDecoder --disable-features=UseChromeOSDirectVideoDecoder
Se estiver usando wayland substitua o argumento:
--use-gl=desktop
Por:
--use-gl=egl
No Manjaro é necessário instalar o pacote manjaro-vaapi
sudo pacman -S manjaro-vaapi
Também sugiro instalar a extensão enhanced-h264ify e desabilitar os codecs AV1, VP9, e VP8 caso vc tenha uma placa muito antiga que não tenha aceleração para nenhum desses codecs, se tiver uma placa de pelo menos 8ª geração desabilite somente o AV1, é um codec novo que poucos dispositivos tem aceleração de hardware e exige muito da CPU.
Vou relembrar mais uma vez que dependendo da versão do navegador pode ou não funcionar, acredito que no momento o recurso seja experimental e não esteja finalizado, e não sabemos quanto tempo pode levar até que seja finalizado e habilitado por padrão.