Questo articolo spiega come abilitare l’accelerazione hardware nel browser Chromium in esecuzione su Raspberry Pi OS (per Raspberry Pi 4).
Abilitando l’accelerazione GPU, l’utilizzo della CPU dovrebbe essere molto inferiore durante la riproduzione di video supportati (ad esempio su YouTube). Nel mio caso, utilizzando un Raspberry Pi 4 Model B, i principali processi di rendering e gpu Chromium sono passati da ~ 160% e ~ 130% a meno del 30% e 23% di utilizzo della CPU (secondo htop) dopo aver abilitato l’accelerazione hardware. Come nota a margine, questo è un prerequisito per un articolo che ho intenzione di scrivere presto.
Il sistema operativo Raspberry Pi viene fornito con tutto ciò che è necessario per eseguire Chromium con accelerazione hardware su un Raspberry Pi 4, ma non funziona immediatamente. Per Raspberry Pi 4 non è necessario installare pacchetti aggiuntivi, abilitare OpenGL e così via, poiché sono già abilitati. Dovrai solo abilitare alcuni flag del browser Chromium; sotto c’è anche una “correzione” per lo strappo dello schermo che si verifica durante la riproduzione di video a schermo intero con accelerazione hardware.
L’ho testato utilizzando un Raspberry Pi 4 Model B (utilizzando il sistema operativo Raspberry Pi), quindi posso solo confermare che funziona. In base a ciò, potrebbe essere necessario abilitare OpenGL con KMS falso / completo utilizzando raspi-config per i modelli Raspberry Pi precedenti (non sono sicuro che siano necessari passaggi aggiuntivi sui modelli precedenti). Questo non è necessario per Raspberry Pi 4.
Tuttavia, dal momento che posso testarlo solo su un Raspberry Pi 4 Model B, e non mi piace scrivere articoli su cose che non posso testare da solo, mi sto concentrando solo su Raspberry Pi 4 e le relative istruzioni in questo articolo.
Abilita l’accelerazione hardware nel browser Chromium in esecuzione su sistema operativo Raspberry Pi (Raspberry Pi 4)
Per abilitare l’accelerazione hardware nel browser Chromium in esecuzione su Raspberry Pi OS (Raspberry Pi 4), segui i 3 passaggi (beh, più come 2.5) di seguito:
1. Abilita l’accelerazione hardware nel browser Chromium.
Abilita i seguenti flag in chrome://flags
:
- Ignora l’elenco di rendering del software:
chrome://flags/#ignore-gpu-blocklist
- Decodifica video con accelerazione hardware
chrome://flags/#enable-accelerated-video-decode
- Rasterizzazione GPU:
chrome://flags/#enable-gpu-rasterization
Riavvia Chromium quando hai finito.
2. Assicurati che l’estensione h264ify Chromium sia abilitata.
Chromium su Raspberry Pi OS viene fornito con le estensioni uBlock Origin e h264ify installate per impostazione predefinita. Assicurati che h264ify sia abilitato, quindi YouTube utilizza video con codifica h264 per i quali Raspberry Pi supporta la decodifica video con accelerazione hardware.
3. Opzionale: correggere il tearing del video a schermo intero.
Per correggere il tearing del video a schermo intero (correzione tramite), dovremo disabilitare il compositore. Per fare ciò, apri un terminale sul Raspberry Pi ed esegui il seguente comando per eseguire la versione console dello strumento di configurazione del software Raspberry Pi:
sudo raspi-config
Utilizzare il Up
/ Down
i tasti freccia per navigare nel suo menu e Tab
per selezionare pulsanti come Finish
, OK
o Back
. Per disabilitare il compositore, vai a Advanced Options -> Compositor
e scegli No
per disabilitarlo.
Quando hai finito, scegli Finish
e riavvia il sistema.
Questo è tutto. Il tuo browser web Chromium dovrebbe ora essere con accelerazione hardware ed essere in grado di eseguire la decodifica video con accelerazione hardware.
Correlati: Come abilitare la decodifica video con accelerazione hardware nei browser Google Chrome, Brave, Vivaldi e Opera su Debian, Ubuntu o Linux Mint
Come verificare se il browser Chromium è dotato di accelerazione hardware
Per verificare se il browser Chromium utilizza l’accelerazione hardware, visita chrome://gpu
in Chromium:
Se l’accelerazione hardware è abilitata, dovrebbe mostrare tutti i campi relativi all’accelerazione hardware in verde.
Ecco come appariva prima di abilitare i flag sopra menzionati (quindi nello screenshot qui sotto, l’accelerazione hardware non è abilitata):
Per verificare se la decodifica video con accelerazione hardware funziona in Chromium, riproduci un video di YouTube, quindi premi Ctrl + Shift + i
che aprirà Chrome DevTools. Quindi, fai clic sul menu con 3 punti verticali dal lato in alto a destra di Chrome DevTools e scegli More tools -> Media
:
Nel nuovo Media
Nella scheda DevTools, fai clic sul video di YouTube a sinistra (sotto Players
), quindi assicurati che il file Properties
è selezionata la sottoscheda e scorri verso il basso fino al file Video Decoder
sezione. Con Chromium 88+ su Raspberry Pi OS, il Decoder name
il valore dovrebbe essere MojoVideoDecoder
se la decodifica video con accelerazione hardware è abilitata e funzionante. Fino a Chromium 86 (non sono sicuro della versione 87), il decoder era chiamato MmalVideoDecoder
quando la decodifica video con accelerazione hardware era abilitata e funzionante.
Dovresti anche notare che l’utilizzo della CPU è molto inferiore, ad esempio durante la riproduzione di un video 1080p su YouTube.
Potresti anche voler abilitare Widevine nel browser Chromium in esecuzione su Raspberry Pi OS, che consente la riproduzione di Netflix, Amazon Prime, Hulu e così via.