Connect with us

Linux

Come abilitare la decodifica video con accelerazione hardware nei browser Google Chrome, Brave, Vivaldi e Opera su Debian, Ubuntu o Linux Mint


Accelerazione hardware MojoVideoDecoder Google Chrome Vivaldi Opera Brave Linux

Google Chrome 88 (e versioni successive) ha reso disponibile la decodifica video con accelerazione hardware su Linux, ma non è abilitata per impostazione predefinita. Tuttavia, Google Chrome non è l’unico browser Web basato su Chromium a supportare l’accelerazione hardware su Linux. Questo articolo spiega come abilitare la decodifica video con accelerazione hardware nei browser Web Google Chrome, Brave, Vivaldi e Opera in esecuzione su Debian, Ubuntu, Pop! _OS o Linux Mint (solo Xorg).

L’utilizzo della decodifica video con accelerazione hardware nel browser Web dovrebbe comportare un minore utilizzo della CPU (e quindi un minore consumo della batteria) durante la riproduzione di video online.

Vale la pena notare che il browser Web Chromium aveva patch che consentivano di rendere disponibile la decodifica video con accelerazione hardware su Linux per un po ‘di tempo e alcune distribuzioni Linux lo impacchettavano utilizzando quelle patch. Quindi gli utenti di Chromium hanno avuto l’accelerazione hardware su Linux per un po ‘di tempo, a seconda della loro distribuzione Linux o se hanno installato Chromium patchato in qualche altro modo. Ad esempio, su Ubuntu / Linux Mint c’è un PPA con build Chromium con patch VA-API. Pertanto, queste istruzioni potrebbero funzionare anche per il browser Chromium, a seconda di come è costruito.

Vorrei anche aggiungere che queste istruzioni per abilitare la decodifica video con accelerazione hardware funzionano anche su altre distribuzioni Linux e non solo su distribuzioni Linux basate su Debian / Ubuntu, tuttavia i nomi dei driver sono diversi.

Ho testato queste istruzioni utilizzando il desktop Ubuntu 20.10 con grafica Nvidia ei browser Web elencati di seguito installati utilizzando la confezione originale di Ubuntu (utilizzando un pacchetto DEB). Testato anche utilizzando un laptop con grafica Intel (decima generazione) su Ubuntu 20.04 e 20.10. Non possiedo un dispositivo con grafica AMD per testarlo.

Nel mio test, sono stato in grado di far funzionare la decodifica video con accelerazione hardware su Linux utilizzando:

  • Google Chrome stabile 88
  • Brave stabile 1.19
  • Istantanea Vivaldi 3.6 / [Edit] Funziona anche l’ultimo Vivaldi stabile 3.6
  • Opera Beta 74

Ovviamente dovrebbe continuare a funzionare con versioni più recenti di queste (quindi Google Chrome 89, Brave 1.20, ecc.).

Per me, La decodifica video con accelerazione hardware non ha funzionato utilizzando:

  • Vivaldi stabile 3.5. Vivaldi stable è ora la versione 36 e ha una decodifica video con accelerazione hardware funzionante
  • Opera stabile 73
  • Microsoft Edge: non esiste nemmeno un file chrome://flags/#enable-accelerated-video-decode flag (per abilitare la decodifica video con accelerazione hardware).

Inoltre, questo non funziona su Wayland. Puoi utilizzare VA-API su XWayland, utilizzando l’estensione --use-gl=egl flag della riga di comando, ma non l’ho provato.

Come abilitare la decodifica video con accelerazione hardware nei browser Web Google Chrome, Brave, Vivaldi e Opera su Debian, Ubuntu o Linux Mint

Cose di cui hai bisogno per abilitare la decodifica video con accelerazione hardware nei browser web che ho menzionato sopra (quindi Google Chrome 88+, Brave 1.19+, Vivaldi 3.6+ e Opera 74+):

1. Abilita i seguenti flag del browser web:

  • Ignora elenco di rendering software: chrome://flags/#ignore-gpu-blocklist
  • Decodifica video con accelerazione hardware: chrome://flags/#enable-accelerated-video-decode

2. Installa il driver VA-API per poter decodificare il supporto (sorgente):

  • Per Intel Gen 7 e hardware precedente:
sudo apt install i965-va-driver-shaders

  • Per hardware Intel Gen 8+:
sudo apt install intel-media-va-driver-non-free

  • Per i driver Nouveau e AMD (Non sono riuscito a convincere alcun browser a utilizzare l’accelerazione hardware con i driver Nouveau, forse hai più fortuna):
sudo apt install mesa-va-drivers

  • Per driver Nvidia proprietari – è possibile installarli dai repository o utilizzando i driver GPU proprietari PPA (ad esempio, avviare la finestra di dialogo Driver aggiuntivi su Ubuntu e installarlo da lì). Se stai utilizzando driver Nvidia proprietari, avrai anche bisogno di una patch vdpau-va-driver. Puoi scaricarlo da qui per Debian / Ubuntu / Linux Mint / Pop! _OS, ecc. Il pacchetto Ubuntu 20.04 da lì funziona anche su Ubuntu 20.10 e versioni successive. Se vuoi vedere le patch usate da questo pacchetto, scarica l’archivio .debian.tar.gz (dallo stesso link come sopra) e guarda dentro la cartella “patches”. Nel caso in cui questo DEB non funzioni su Debian (non l’ho provato), usa lo stesso collegamento per scaricare gli archivi .orig.tar.gz e .debian.tar.xz e compila il pacchetto DEB sul tuo sistema.

Perché le versioni non libere di intel-media-va-driver e i965-va-driver? In teoria dovrebbe funzionare con la versione gratuita (?), Ma nel mio test su un laptop con Intel Gen 10, la decodifica video con accelerazione hardware ha funzionato solo con il intel-media-va-driver-non-free driver e non intel-media-va-driver (Non sono sicuro del driver i965, ma ho pensato che potesse essere simile). C’è anche qualcun altro qui, che dice che questo ha funzionato per loro.

3. Necessario solo per schede grafiche che non supportano la decodifica video hardware VP9: installa l’estensione per browser h264ify.

Se la tua scheda grafica non supporta la decodifica video hardware VP9, ​​installa l’estensione per browser h264ify (o avanzata-h264ify – alcuni utenti dicono che funziona per loro mentre l’estensione originale no; per me è il contrario) e assicurati è abilitato per VP9.

Se ancora non vedi MojoVideoDecoder nel file chrome://media-internals scheda (vedere di seguito nella sezione per come verificare se la decodifica video con accelerazione hardware è abilitata e effettivamente utilizzata dal browser), provare a riavviare il browser web dopo aver installato questa estensione. Ho visto casi in cui era necessario e alcuni in cui non era richiesto.

4. Avviare il browser web utilizzando il --use-gl=desktop flag per abilitare l’accelerazione hardware VA-API.

Per poter utilizzare VA-API per la decodifica video è necessario avviare il browser Web, sia esso Chromium, Google Chrome, Brave, Opera o Vivaldi, utilizzando il seguente flag della riga di comando: --use-gl=desktop. Questo fa sì che il browser web utilizzi OpenGL e disabiliti ANGLE come backend di rendering. Mentre ci sono posti in cui ho letto che questo non dovrebbe essere più necessario, questo è stato richiesto nel mio test, sia con la grafica Nvidia che con quella Intel (non ho la grafica AMD per testarla).

Ad esempio, per avviare Google Chrome utilizzando questo flag:

google-chrome-stable --use-gl=desktop

Avvia Brave usando questo:

brave-browser --use-gl=desktop

E così via.

Per rendere permanente questa modifica, copia il file .desktop del browser da /usr/share/applications per ~/.local/share/applications (se questa cartella non esiste, creala). Copiando il file qui, ci assicuriamo che non venga sovrascritto da un aggiornamento. Quindi, apri il file .desktop (es brave-browser.desktop, brave-browser-beta.desktop, google-chrome.desktop, ecc.) da questo ~/.local/share/applications posizione, con un editor di testo. In questo file, cerca la riga che inizia con Exec=e modifica il file eseguibile includendo --use-gl=desktop. Ad esempio per coraggioso: Exec=/usr/bin/brave-browser-stable --use-gl=desktopo per Google Chrome: Exec=/usr/bin/google-chrome-stable --use-gl=desktop %U

Nota importante: se viene visualizzata un’immagine video completamente bianca all’avvio del browser con --use-gl=desktop, dai un’occhiata chrome://flags e assicurati che Vulkan non sia abilitato lì. Avendo Vulkan abilitato e avviando il browser utilizzando il --use-gl=desktop l’opzione farà sì che ciò accada.

Un’altra nota, questa volta per gli utenti di Opera: se dopo aver utilizzato l’estensione h264ify, non è più possibile riprodurre video su YouTube e altri siti Web simili, vedere le soluzioni da qui per abilitare il supporto h264 in Opera (nota che se il browser web che stai utilizzando è Opera Beta, la cartella essere /opera-beta).

Questo è tutto.

Come verificare se la decodifica video con accelerazione hardware è abilitata e funziona in qualsiasi browser Web basato su Chromium

Ora controlliamo e vediamo se il browser web utilizza la decodifica video con accelerazione hardware.

Per prima cosa controlliamo se il browser supporta video con accelerazione hardware. Fallo aprendo una nuova scheda e visitando chrome://gpu. In questa pagina dovresti vedere “Video Decode: Accelerazione hardware“(in verde, come qui):

Chrome video decodifica hardware accelerato Linux

Ciò significa che il tuo browser web ora supporta la decodifica video con accelerazione hardware. Ma è effettivamente in grado di decodificare video hardware? Controlliamo anche quello, aprendo un video di YouTube in una scheda, lascia quella scheda in esecuzione e apri una nuova scheda con chrome://media-internals.

Nel chrome://media-internals scheda, fai clic sull’URL del video (per espanderlo), scorri verso il basso e guarda sotto Player Propertiese dovresti trovare il file kVideoDecoderName proprietà:

Google Chrome MojoVideoDecoder Linux

Se la kVideoDecoderName il valore è MojoVideoDecoder (in precedenza lo era GpuVideoDecoder, ma ora MojoVideoDecoder è utilizzato su Linux) significa che il video attualmente in riproduzione su YouTube nell’altra scheda utilizza la decodifica video con accelerazione hardware. Tutti gli altri valori di kVideoDecoderName (VpxVideoDecoder, FFmpegVideoDecoder e Dav1dVideoDecoder) indicano che il video riprodotto nell’altra scheda del browser utilizza il rendering software.


Ti e piaciuto questo articolo?
Supporta il mio lavoro, facendo una donazione!

Click to comment

Leave a Reply

Esegui l'accesso per Commentare.

Di tendenza

Close Popup
Questo sito utilizza i cookie per migliorare servizi ed esperienza dei lettori. Se decidi di continuare la navigazione senza blocchi premi su Accetto, oppure continua tranquillamente la navigazione, nessun dato sulla tua navigazione verrà raccolto.
Close Popup
Privacy Settings saved!
Impostazioni

Quando visiti un sito Web, esso può archiviare o recuperare informazioni sul tuo browser, principalmente sotto forma di cookies. Controlla qui i tuoi servizi di cookie personali.

Questi cookie sono necessari per il funzionamento del sito Web e non possono essere disattivati nei nostri sistemi.

Cookie tecnici
Per utilizzare questo sito web usiamo i seguenti cookie tecnici necessari:
  • wordpress_test_cookie
  • wordpress_logged_in_
  • wordpress_sec
  • swpm_session

Google Adsense
Usiamo la pubblicità di Google solo per mantenere attivi i nostro sito. Con ip anonimizzati.

Rifiuta tutti i Servizi
Save
Accetta tutti i Servizi