YouTube balbetta, riscalda il tuo laptop, mette in moto i tuoi fan o usa solo molta CPU? Anche se non l'hai mai notato, YouTube in Chrome utilizza quasi certamente più energia della batteria del necessario. Come gli altri problemi di prestazioni di Chrome, questo è probabilmente il peggiore sui Mac.
Questo è il risultato del passaggio a HTML5 video e stranezze con i codec video utilizzati da YouTube in Chrome rispetto ad altri browser. Abbi pazienza e ti spiegheremo perché Google ha reso la riproduzione di YouTube così inefficiente in primo luogo. Anche Firefox potrebbe avere lo stesso problema.
HTML5, H.264, VP8 e VP9
RELAZIONATO: 10 cose che non sapevi che il tuo browser web potesse ancora fare
YouTube ha ora in gran parte scaricato il plug-in video Flash per la riproduzione di video HTML5. Ma la riproduzione di video HTML5 non è standardizzata. I browser possono scegliere il codec video che desiderano utilizzare e non esiste un unico codec che tutti i browser preferiscono.
Quando YouTube utilizzava Flash, utilizzava il codec H.264 per riprodurre i video. I video con questo codec di solito hanno l'estensione file .mp4 e sono spesso indicati come video MP4. Questo è uno standard di fatto a livello di settore che va oltre i semplici browser web.
Safari, Internet Explorer, Microsoft Edge , Chrome e Firefox includono tutti il supporto per la riproduzione di video con codifica H.264, sebbene Firefox abbia puntato i piedi ed evitato di includerlo il più a lungo possibile.
Mentre Apple e Microsoft supportano solo H.264 per la riproduzione di video nei loro browser, anche Google ha spinto i propri codec. Google ha acquisito il codec VP8 e lo ha integrato in Chrome, e Firefox ha seguito l'esempio. Google sta ora spingendo il codec VP9 di nuova generazione, che ora è anche integrato in Chrome e Firefox. I file che utilizzano questo codec di solito hanno l'estensione .webm e talvolta sono anche chiamati file WebM.
Perché Google ha creato VP8 e VP9?
Sebbene H.264 sia uno standard di fatto a livello di settore, presenta un problema significativo. Le tecnologie sottostanti sono coperte da un'ampia varietà di brevetti. Per utilizzare queste tecnologie, ad esempio se le stavi incorporando in un prodotto, devi pagare una quota per il portafoglio di brevetti H.264.
Ecco perché Mozilla ha resistito così a lungo contro H.264: voleva che il Web fosse basato su uno standard aperto che non richiedesse alcuna commissione. Google ha rilasciato VP8 e VP9 con una promessa irrevocabile di brevetto, consentendo alle persone di fare quello che vogliono con esso: Google non tenterà di estrarre le tasse di brevetto. Cisco sta effettivamente pagando le tariffe di licenza e fornendo gratuitamente collegare per gli utenti di Firefox. Firefox scarica automaticamente questo plug-in e lo utilizza per abilitare il supporto H.264.
VP8 non ha guadagnato trazione
Ma Google non ha avuto particolarmente successo con VP8. All'inizio del 2011, Google annunciato sarebbe rimuovere il supporto H.264 da Chrome per supportare solo codec aperti come VP8 e Theora. Più di quattro anni dopo, Google non l'ha mai fatto e da allora non abbiamo più sentito parlare di quella promessa.
Mozilla avrebbe probabilmente tenuto duro affinché Google mantenesse la sua promessa, ma Google non avrebbe mai potuto - invece, Mozilla cedette e aggiunse il supporto H.264 anni dopo. H.264 è l'attuale codec standard de facto, piaccia o no e, quando si utilizza un browser Apple o Microsoft, è l'unico disponibile. È anche l'unica vera opzione per i browser mobili. Molti siti web hanno implementato video HTML5 con il solo supporto H.264 e Chrome e FIrefox ne verrebbero esclusi se non supportassero H.264.
Il vero problema: l'accelerazione hardware
C'è un semplice problema fondamentale qui. La decodifica H.264 (riproduzione) è accelerata dall'hardware. Ciò significa che il "lavoro" di riproduzione di un file video H.264 viene svolto dal processore grafico (GPU) in un modo molto più efficiente. Se la decodifica hardware non fosse disponibile, la CPU dovrebbe svolgere tutto il lavoro in modo meno efficiente. Ciò significa che la riproduzione richiede meno tempo della CPU, il che significa che viene sprecata meno energia della batteria e viene generato meno calore. Potrebbe anche significare una riproduzione più fluida se la CPU non riesce a tenere il passo con la riproduzione del video.
In realtà, tutti i componenti hardware moderni supportano la decodifica con accelerazione hardware H.264. Ciò include tutti i tipi di smartphone, tablet, PC, Mac e persino Chromebook. Quando un browser web, sì, anche Chrome, riproduce video H.264, viene trasferito alla GPU. Anche Adobe Flash supportava l'accelerazione hardware del video H.264.
Ma non esiste hardware in grado di accelerare i video VP8 e VP9. Quando Google annunciato VP8 a metà del 2010, una varietà di aziende, inclusi grandi nomi come nVIDIA, AMD e Qualcomm, hanno annunciato che avrebbero supportato VP8 nei loro prodotti. Ma, più di cinque anni dopo, nessun dispositivo è mai arrivato con la decodifica VP8 con accelerazione hardware.
Nel recente di Google annuncio di VP9, osserva che "Più di 20 partner di dispositivi in tutto il settore stanno lanciando prodotti nel 2015 e oltre utilizzando VP9". Lo stesso post rileva anche altri vantaggi di VP9, come file di dimensioni inferiori per la stessa qualità. Intel, nVIDIA, AMD e altre società si sono impegnate a supportare la decodifica con accelerazione hardware di VP9.
Abbiamo cercato di trovare hardware che supportasse la decodifica VP9 con accelerazione hardware e tutto ciò che abbiamo trovato è stato che Intel ha rilasciato nuovi Haswell e Broadwell autisti per Windows con "supporto parziale dell'accelerazione ardwareardware (sic)" per VP9 all'inizio del 2015. Chiaramente c'è ancora molto lavoro da fare.
Come gli altri problemi di prestazioni di Chrome, questo potrebbe essere peggiore su un Mac. Gli ingegneri di Chrome hanno risolto un bug sull'utilizzo elevato della CPU e sulla generazione di calore su un MacBook con estensione commento "L'utilizzo della CPU durante la riproduzione di VP9 su un Mac non è un bug." Potrebbe essere vero, ma Google probabilmente non dovrebbe offrire tutti quei video VP9 agli utenti di Chrome su Mac se un utilizzo elevato della CPU è normale. Ciò incoraggia gli utenti Mac a utilizzare invece Safari.
Come fare in modo che YouTube riproduca i video in modo più efficiente
È un problema di galline e uova, davvero: i produttori non implementeranno VP9 con accelerazione hardware fino a quando non verrà effettivamente utilizzato nel mondo reale. Google ha risolto questo problema aggiungendo VP8 e VP9 a Chrome e dicendo a YouTube di pubblicare video VP9 e VP8 su Chrome. YouTube può anche pubblicare video VP8 e VP9 su Firefox.
Ciò potrebbe far risparmiare un po 'di tempo per il download, ma significa che YouTube consuma più batteria e cicli della CPU in Chrome. Sui dispositivi con CPU particolarmente lente, i video possono persino balbettare invece di essere riprodotti senza problemi.
Per ottenere una riproduzione più efficiente, puoi semplicemente passare a Safari, Microsoft Edge o Internet Explorer. Ma non devi farlo. Puoi installare l'estensione del browser h264ify per Chrome, che costringerà Chrome a richiedere video H.264 da YouTube. Sembreranno uguali, ma Chrome li riprodurrà in modo più fluido.
Scarica h264ify per Chrome , ottenere h264ify per Firefox o consultare la pagina del progetto su GitHub per ulteriori dettagli
Come vedere se YouTube utilizza H.264, VP8 o VP9
Per verificare quale codec YouTube sta offrendo al tuo browser, fai clic con il pulsante destro del mouse su un video di YouTube durante la riproduzione e seleziona "Statistiche per nerd". A destra di "Tipo Mime", vedrai "video / mp4" e il codec "avc" per i video H.264 / MP4.
Per i video VP8 e VP9, vedrai "video / webm" e "vp9" o "vp8".
Alla fine, la spinta VP9 di Google potrebbe essere migliore per il Web e portare a hardware in grado di fornire una decodifica accelerata di questo nuovo codec. Ma, al momento, potresti voler risparmiare un po 'di durata della batteria e far funzionare il tuo laptop in modo più efficiente disattivando l'esperimento di Google e utilizzando invece il video H.264.
Credito immagine: Esther Vargas su Flickr