Chromium foi atualizado no Fedora com um patch que habilita o suporte VAAPI (API de aceleração de vídeo). Quando VAAPI é usado, a reprodução do vídeo deve ser mais suave, usando menos CPU e melhorando o uso de energia.
Embora este patch tenha sido rejeitado pelos mantenedores do Chromium, existem alguns pacotes de terceiros que incluem o patch VAAPI, para Ubuntu, Arch Linux e outros. E agora, o Fedora inclui isso por padrão!
Por que isso é tão importante? Por exemplo, meu laptop (usando Chromium no Fedora 29) usava muito a CPU ao reproduzir vídeos do YouTube, fazendo com que esquentasse muito e drenasse a bateria:
Este é o mesmo vídeo/laptop Fedora, mas desta vez usando Chromium com decodificação de vídeo acelerada por hardware (VAAPI) habilitada, mostrando um uso de CPU muito menor:
Outra captura de tela mostrando as diferenças no uso da CPU durante a reprodução de um vídeo usando Firefox, Chromium sem o patch VAAPI e Chromium com VAAPI, de fedoramagazine.org (Créditos: Tobias Wolfshappen):
Para gráficos AMD, o Chromium deve usar decodificação de vídeo acelerada por hardware por padrão, mas esse não é o caso para gráficos Intel, que requerem o pacote libva-intel-driver
do RPM Fusion. Quanto à Nvidia, não tenho certeza porque meu laptop Fedora usa gráficos Intel; mas você provavelmente precisa de um vdpau-va-driver
corrigido para fazê-lo funcionar, como é o caso do Ubuntu.
Para gráficos Intel e AMD, se você quiser habilitar a decodificação de vídeo acelerada por hardware para vídeos h264, você precisará instalar algumas coisas adicionais. Isso ocorre porque a compilação do Fedora Chromium não suporta h264 por padrão.
Algumas GPUs mais antigas não suportam decodificação de hardware para codecs VP8/VP9. Não há nada que possa ser feito sobre isso - em tais casos, os vídeos VP8/VP9 não serão acelerados por hardware.
Um site que usa VP8/VP9 por padrão é o YouTube. No entanto, o YouTube pode ser forçado a usar h264 em vez de VP8/VP9 e, assim, obter decodificação de vídeo acelerada por hardware.
Relacionado: Como ativar a aceleração de hardware no Chromium no Ubuntu ou Linux Mint (VA-API Patched PPA Builds)
As instruções abaixo explicam como habilitar a decodificação de vídeo acelerada por hardware no Fedora com gráficos Intel, bem como habilitá-la para vídeos h264, para gráficos Intel e AMD, e forçar o YouTube a usar h264 em vez de VP8/VP9. Você também encontrará instruções sobre como verificar se o Chromium está usando decodificação de vídeo acelerada por hardware.
Pré-requisitos:
Sign In
na tela de login e selecione GNOME on Xorg
). Meu laptop com gráficos Intel não podia usar VAAPI em Wayland (XWayland) no Fedora 29, mas não tenho certeza se esse também é o caso para gráficos AMD.I. Gráficos AMD/Intel: ative o RPM Fusion e instale chromium-libs-media-freeworld
para suporte a h264.
Veja estas instruções para instalar o repositório RPM Fusion (baixe e instale o pacote para sua versão Fedora ou siga as instruções de linha de comando). Assim que o RPM Fusion estiver habilitado, instale o pacote chromium-libs-media-freeworld
em seu sistema Fedora:
sudo dnf install chromium-libs-media-freeworld
II. Gráficos AMD/Intel: force o YouTube a usar h.264 em vez de VP8/VP9.
Instale a extensão do Chrome h264ify para forçar o YouTube a transmitir vídeos h.264 em vez de vídeos VP8/VP9.
Isso porque, como mencionei acima, muitas GPUs não suportam decodificação de hardware para codecs VP8/VP9, e eles são usados por padrão no YouTube.
III. Apenas gráficos Intel: instale os pacotes libva-intel-hybrid-driver
e libva-intel-driver
do RPM Fusion para que o Chromium use VAAPI.
sudo dnf install libva-intel-driver libva-intel-hybrid-driver
Como uma observação lateral, os sinalizadores Hardware-accelerated video decode
e Hardware-accelerated mjpeg decode for captured frame
são habilitados por padrão nas compilações do Fedora Chromium, então você não precisa habilitá-los manualmente.
Para verificar se o Chromium está usando decodificação de vídeo GPU, comece reproduzindo um vídeo no YouTube. Em seguida, abra uma nova guia no Chromium e digite o seguinte na barra de URL: chrome://media-internals
Na guia chrome://media-internals
, clique no URL do vídeo (para expandi-lo), role para baixo e procure em Player Properties
, e você deve encontrar a propriedade video_decoder
. Se o valor video_decoder
for GpuVideoDecoder
, significa que o vídeo que está sendo reproduzido no YouTube na outra guia está usando decodificação de vídeo acelerada por hardware. Você também deve notar um uso de CPU muito menor no Chromium ao reproduzir vídeos.
Se estiver escrito FFmpegVideoDecoder
ou VpxVideoDecoder
, a decodificação acelerada de vídeo não está funcionando ou talvez você tenha esquecido de instalar (ou desabilitar) a extensão h264ify do Chrome ou o pacote chromium-libs-media-freeworld
do RPM Fusion.
Esse post foi traduzido do site LinuxUprising.com pela rtland.team.
Confira a versão original desse post em inglês:
Fedora Updates Chromium With VAAPI Support, Here's How To Enable Hardware-Accelerated Video Decoding