Como habilitar decodificação de vídeo acelerada no Chromium e derivados

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.

6 curtidas

Só não consegui colocar o comando no lançador via menu libre - não sei pq, ele não aceitou

Olá :vulcan_salute:

Outra forma simples de definir flags específicas a navegadores base Chromium é dentro do arquivo chromium-flags.conf, pode ver mais informações aqui.

Use o Alacarte (alacarte).

2 curtidas