Vantaggi molti, ma anche tanti dubbi

Netflix ci ha sorpreso da subito con la qualità del suo streaming, ma da qualche giorno le cose sono migliorate ancora, soprattutto per chi ha linee poco veloci.

Avatar di Giancarlo Calzetta

a cura di Giancarlo Calzetta

-

Offrire quindi uno streaming dedicato per titolo invece che standardizzato su valori medi offre ovviamente grandi vantaggi e anche alcuni spunti di riflessione.

Dal grafico qui sotto vediamo che per alcuni titoli, per lo più cartoni animati, il miglioramento è sconvolgente: consumando meno banda si ottiene una qualità molto superiore. Questo significa un vantaggio incredibile per quegli utenti che hanno a disposizione solo connessioni di scarsa qualità.02 CartoneAnimato

D'altro canto, l'analisi titolo per titolo ha anche portato alla luce un fenomeno al quale non molti utenti hanno mai pensato: su alcuni titoli particolarmente difficili da codificare, solitamente film d'azione dove la quantità di scene veloci è elevata, l'encoding a risoluzione inferiore fornisce una qualità dell'immagine superiore a quella full HD perché in quest'ultima restano visibili troppo frequentemente degli artefatti.

Un caso emblematico è rappresentato dal film rappresentato nel grafico qui sotto.03 filmAzione

La qualità dello streming è praticamente identica fino ai 3.000kbps, ma poi le cose cambiano: mentre la versione fullHD stenta a guadagnare qualità, la versione 720P continua a crescere bene offrendo immagini migliori anche al massimo della banda prevista nella vecchia birate ladder.

Per vedere un sorpasso, risicato, da parte dell'encoding in HD bisogna arrivare a 7000kbps.

Ecco, quindi, che il vantaggio di una codifica dedicata per ogni titolo diventa palese: avendo un metro di giudizio mirato per ogni film o puntata del telefilm, si può offrire sempre la qualità massima per la banda disponibile del cliente.

Purtroppo, questo nuovo approccio apre tutta una serie di domande a cui gli ingegneri di Netflix hanno dovuto trovare una risposta, mediando con le necessità della infrastruttura.

In particolare:

  1. Per ogni titolo, quanti livelli di encoding si dovrebbero prevedere per avere tra ogni livello una differenza appena notabile (Just Noticeable Difference – JNC)?
  2. Per ogni titolo, qual è l'accoppiata migliore risoluzione-bitrate per ogni livello qualitativo?
  3. Per ogni codifica, qual è la reale percezione dell'occhio umano?
  4. Come si può definire un sistema di analisi efficace e scalabile che risponda alle domande precedenti?

Dando una seconda occhiata alle domande, vediamo di evidenziarne meglio alcune criticità.

  1. Avere una serie di livelli di codifica molto vicini tra loro come percezione da parte dell'utente è importante perché quando si cambia da un livello all'altro non si deve creare una sensazione di interruzione che guasterebbe l'atmosfera di quanto si sta guardando. Ecco perché Netflix parte "basso" come risoluzione e poi, man mano che costruisce i buffer, sale o scende a seconda della banda disponibile.
  2. Questo punto è particolarmente complesso. A parità di valore nella scala del rapporto tra segnale e rumore, quale risoluzione bisogna scegliere? Meglio scegliere la risoluzione più elevata anche se questo significa più artefatti nelle zone buie o meglio una immagine meno rumorosa che però perderà un po' di contrasto a causa dell'upscaling?
  3. Anche questo punto non è di semplice risoluzione. Finora il PSNR ha svolto un buon lavoro, ma entro pochi mesi Netflix passerà a un sistema di valutazione diverso chiamato VMAF (Video Multi-Method Assessment Fusion) sviluppato in collaborazione con l'Università della California che dovrebbe rispecchiare meglio la percezione umana.
  4. Questo è un dato essenziale: per quanto il catalogo di Netflix sia limitato in Italia, a livello mondiale è enorme e quindi le procedure che vengono create per gestire l'encoding devono essere affidabili a livello completamente automatico.