È possibile migliorare la qualità di ogni singolo titolo disponibile nel catalogo Netflix occupando meno spazio sui server e pesando meno sulla banda degli utenti? Sì, se ci lavorano per qualche anno un buon numero di esperti e sviluppano un nuovo approccio alla codifica dei filmati: garantendo all’azienda e agli utenti un risparmio medio del 30 per cento sulla mole di dati necessaria a visualizzare un lungometraggio sul proprio schermo. Con un evidente vantaggio strategico per Netflix: meno banda significa poter arrivare in più nazioni, anche se hanno infrastruttura Internet non all’avanguardia.
Il team guidato da Anne Aaron, PhD di Stanford che guida la truppa dei tecnici impegnati su questo progetto, ha cambiato in maniera significativa l’approccio seguito nell’encoding dei flussi video che Netflix mette a disposizione dei clienti: invece di impostare lo stesso profilo di compressione per tutti, senza tenere conto di che tipo di materiale il software stia trattando, hanno elaborato un complesso algoritmo automatico che studia il filmato che si accinge a encodare e regola di conseguenza i parametri di funzionamento. Ora ogni film, cartone animato, singolo episodio di una serie TV verrà trattato singolarmente per offrire la massima qualità possibile .
L’esempio utilizzato per spiegare la differenza tra diversi filmati è relativo a un cartone animato e a un film d’azione: nel primo ci possono essere aree del fotogramma con colori uniformi, che possono essere gestite con maggiore aggressività per aumentare la compressione totale e quindi ridurre il peso del prodotto finale. Il secondo invece, pensate alle esplosioni e ai movimenti continui delle auto coinvolte in un inseguimento, richiede un bitrate più alto per riuscire a restituire una buona qualità finale dell’immagine. I problemi che i ricercatori hanno individuato in questo caso sono due: come fare ad analizzare nel dettaglio la qualità finale del prodotto, senza dover guardare fisicamente uno per uno i filmati , e come fare per evitare di tenere un approccio conservativo che finisca per richiedere un profilo troppo alto di codifica appesantendo eccessivamente il file (e quindi complicando la vita a chi non è dotato di una banda troppo larga).
Il risultato degli sforzi di Aaron e compagni consiste nella scelta di una metrica definita ad hoc , frutto anche del lavoro di ricerca precedente di altre università e aziende, che consenta di definire numericamente la qualità percepità del flusso video a fronte del bitrate utilizzato: la metrica scelta è quella PSNR ( Peak Signal-To-Noise Ratio ), ma lo stesso approccio dicono potrebbe essere seguito anche con altre metriche equivalenti. Analizzando questo singolo valore la macchina è in grado da sola di valutare quale sia il metodo di codifica più adeguato al singolo filmato, e dunque ridurre al massimo il peso finale senza che ciò vada a scapito della qualità. Nell’immagine seguente lo stesso fotogramma a sinistra con la codifica originale (1.750kbps), a destra con il nuovo approccio (1.540kbps: persino più leggero).
Lato utente questo significa in parole povere che a fronte della stessa connessione si potrà ottenere un video di qualità superiore : Netflix già da tempo eroga diversi flussi video a bitrate variabili a seconda della velocità di download rilevata, e per esempio mette a disposizione sia un flusso da 4.300kbps che uno da 5.800 per la risoluzione 1080p scegliendo di volta in volta quale utilizzare. Scorrendo la tabella, si vede però che con meno di 2 megabit di banda ora si era costretti a ripiegare sulla risoluzione 480p: grazie al nuovo approccio, invece, sul flusso da 1.750kbps potrà tranquillamente passare la risoluzione 720p grazie alla codifica tarata titolo per titolo. Un vantaggio soprattutto per le connessioni mobile, dove spesso ci sono anche tetti fissati al traffico mensile.
A monte di tutto questo lavoro c’è stata anche una revisione totale delle procedura di codifica seguite da Netflix: ora il singolo filmato viene diviso in spezzoni che vengono elaborati in parallelo da diversi server che operano nelle farm di Netflix, e in prospettiva lo stesso metodo di ottimizzazione della codifica verrà applicato direttamente ai singoli spezzoni invece che all’intero filmato. Il codec utilizzato resta per ora principalmente X264, soprattutto per garantire retro-compatibilità con i dispositivi in circolazione, ma in futuro è prevista anche l’introduzione del nuovo codec HEVC che dovrebbe garantire ancora maggiore efficienza e qualità visiva.
La conversione dell’intero catalogo Netflix secondo questo nuovo approccio di ottimizzazione per-titolo è stata avviata ufficialmente la scorsa settimana, e si concluderà nel primo trimestre 2016. Una buona notizia soprattutto per gli utenti italiani, visto che la prima tornata dell’indice Netflix di velocità degli ISP che coinvolge il nostro Paese ha sancito che la miglior connessione Netflix in media dei provider del Belpaese la garantisce Fastweb con 3,59Mbps. Meglio di noi anche la Spagna: le prime sei posizioni della classifica iberica fanno segnare un risultato superiore alla medaglia d’oro italiana.
Luca Annunziata