Home Video Codec VVC: cos’è e come funziona l’erede dell’HEVC

Codec VVC: cos’è e come funziona l’erede dell’HEVC

Il nuovo codec video VVC, successore dell’HEVC, promette prestazioni interessanti e un risparmio di banda del 40-50% con la stessa qualità video Full HD, 4K e 8K. Scopriamo come funziona, dove si utilizza, quali sono i suoi segreti e perché la sua “versatilità” è così importante.

L’evoluzione delle tecnologie e dei servizi video che in pochi anni ha portato dalla ricezione “linearevia etere in formato SD o HD (quella dei canali televisivi terrestri e satellitari) a quella on-demand in streaming sulle reti IP in Full HD, 4K e 8K, ha accelerato il processo di sviluppo di soluzioni per “risparmiare banda” mantenendo elevata la qualità e la risoluzione video.

Come molti di voi sapranno certamente, i contenuti video ad altissima risoluzione (es.: 4K e 8K) occupano molta più “banda” rispetto a SD, HD e Full HD perché ogni singolo fotogramma è composto da molti più “byte”.

Se i vecchi DVD potevano ospitare 2-3 ore di video in formato SD con una capacità di soli 4,7 o 9,7 GB, gli stessi contenuti ma in Full HD o 4K potrebbero richiedere decine di GB se non vengono “compressi” con algoritmi sofisticati.

Senza contare poi che il futuro punta deciso verso l’8K dove la quantità di informazioni è destinata a quadruplicarsi rispetto al 4K (che a sua volta richiedeva 4 volte la quantità di “byte” del Full HD).

Con queste premesse è facile intuire che i codec video, cioè quegli strumenti che servono a “codificare” (in fase di ripresa o trasmissione) e “decodificare” (all’interno dell’apparecchio video come il Tv) il segnale video digitale per ridurne le dimensioni, giocheranno un ruolo sempre più fondamentale nel sistema di acquisizione e distribuzione dei contenuti, nella videosorveglianza, nelle videocomunicazioni e nel gaming.

Schema di funzionamento di un codec audio/video
Schema di funzionamento di un codec audio/video (Credit: Muvi)

In questo articolo vi spieghiamo cos’è e come funziona il nuovo codec VVC (Versatile Video Codec) che nei prossimi anni affiancherà e sostituirà l’attuale HEVC (H.265) utilizzato nelle trasmissioni televisive satellitari e terrestri (con lo switch-off del 2023), in quelle mobili (5G), nelle riprese video e in molti altri settori consumer e professionali.

Per poterne comprendere i punti di forza e le differenze con gli altri codec attualmente in uso, non solo l’HEVC H.265 ma anche l’MPEG-4 AVC H.264, dobbiamo innanzitutto fissare alcuni concetti base.

Codifica video e codec: perché sono fondamentali

La codifica video è una componente essenziale del processo di distribuzione dei contenuti su qualsiasi canale (canale DTT/SAT, rete IP, ecc.).

La sua funzione è quella di convertire un video da un formato di origine (ad esempio RAW) ad un altro (es.: MPEG-4 H.264, HEVC, ecc.) per archiviarlo su una memoria di massa (hard disk, SSD, disco ottico, ecc.) o distribuirlo su vari canali.

Il processo di codifica video richiede l’uso di strumenti hardware e software che, a seconda del tipo di processo (es.: live streaming, editing, ecc.), richiedono risorse, procedure e tecniche differenti. Alla base del processo di codifica troviamo il “codec”, acronimo di “COder” e “DECoder”.

Un codec svolge quindi un triplice ruolo: codifica il segnale originale (non solo video ma anche audio), lo comprime e infine lo decodifica (decoder, Tv, smartphone, ecc.) per facilitarne la trasmissione, la distribuzione, la gestione e l’archiviazione.

L’operazione di compressione serve a ridurre lo spazio occupato dal file o dal flusso (cioè risparmiare byte o bit per secondo – bps) cercando di preservare la qualità audio/video originale (risoluzione, frame rate, bitrate, livello di dettaglio, acustica, ecc.).

Il codec può comprimere il file/flusso senza distruggere una parte delle informazioni originarie (codec “lossless”, cioè senza perdita) oppure tralasciando quelle che, ai fini della qualità e della percezione visiva/acustica, sono poco significative (codec “lossy”, con perdita di informazioni).

Ad esempio, l’MP3 è un codec audio “lossy”, il FLAC audio è “lossless” mentre i codec video MPEG-4 H.264 e HEVC H.265 possono essere sia lossy che lossless a seconda del profilo e delle opzioni di codifica/decodifica utilizzati.

Nel corso degli anni, lo sviluppo dei codec ha subito una forte accelerazione grazie alle maggiori potenze di calcolo a disposizione, sia in fase di codifica che decodifica dal momento che i processori multi-core (CPU e GPU – processori grafici) sono ormai molto diffusi anche su Tv, decoder e smartphone di fascia economica.

Questi chip ad altre prestazioni hanno permesso di sviluppare codec multimediali sempre più precisi, sofisticati ed anche “intelligenti”, capaci di distinguere ogni singolo elemento di una scena sonora e visiva per ottimizzare la compressione in termini di megabyte occupati (archiviazione) e bitrate (trasmissione).

I codec più diffusi come quelli della serie MPEG (MPEG-2, MPEG-4, AVC, HEVC – Moving Picture Experts Group) di ISO/IEC (International Organization for Standardization/International Electrotechnical Commission) e la corrispondente serie H.26x di ITU-T (ITU Telecommunication Standardization Sector – H.262, H.264, H.265) possono ridurre il bitrate del video non compresso a meno dell’1% di quello originale senza alcun degrado evidente della qualità visiva.

Esistono altri codec video al di fuori delle serie MPEG e H.26x come VP8 e VP9 di Google e AV1 di Alliance for Open Media.

Cos’è il VVC e quando è nato

Versatile Video Coding (H.266) è il risultato più recente dello sforzo congiunto tra il Video Coding Experts Group dell’ITU-T (JVET) e l’MPEG dell’ISO/IEC, ovvero l’ultimo esemplare della famiglia di codec MPEG-2, AVC H.264 e HEVC H.265.

Logo del codec VVC
Logo del codec VVC

Lo sviluppo di VVC ha seguito un processo di standardizzazione ormai consolidato, avviato nel 2015 con una prima esplorazione tecnologica, proseguito nel 2018 con un invito formale a presentare proposte e concluso nel luglio 2020 come standard tecnicamente “congelato”.

Il processo di sviluppo ha coinvolto numerosi soggetti internazionali che operano nell’ecosistema dei media come produttori di contenuti, produttori, operatori, emittenti e fornitori di chipset. Durante tutto il processo, la documentazione, compresi i contributi tecnici, il testo della specifica in bozza, il software di riferimento e i flussi di bit di conformità sono stati resi disponibili pubblicamente.

Perché si chiama “versatile”?

Il termine “versatile” dell’acronimo VVC ha un significato molto importante se non addirittura fondamentale. Il successore dell’HEVC non solo ne migliora le prestazioni e l’efficacia come vedremo tra poco ma si candida a diventare un codec video per applicazioni a largo spettro, molto più “flessibile” e facilmente implementabile dei precedenti MPEG-x e H.26x.

VVC ha il potenziale necessario sia per migliorare l’esperienza utente per i servizi video esistenti (Tv, video, home entertainment, streaming, ecc.) sia per quelli multimediali che ci attendono prossimamente sulle reti 5G e 6G.

Aree applicative del nuovo codec VVC (Credit: Ericsson)

Molte applicazioni 5G nuove ed emergenti richiederanno presto un’efficienza di compressione video che va oltre le capacità dei codec attuali: pensiamo ad esempio alla Virtual Reality e all’Augmented Reality (anche in termini di Cloud Gaming) che richiedono risoluzioni molto elevate e ritardi minimi, allo streaming video 8K on demand ma soprattutto “live” dove il sistema deve essere ottimizzato per evitare i fastidiosi stop&go causati dai continui buffering (DAZN docet).

I contenuti girati in 4K e 8K risultano sempre più pesanti e complessi anche per l’elevata profondità di bit dei pixel, l’elevata frequenza dei fotogrammi (es.: HFR), l’ampia gamma di colori (Wide Colour Gamut) e l’HDR. Tutto questo incide fortemente sullo spazio o banda occupati dal flusso video e l’esigenza di un codec altamente efficiente ma soprattutto “poliedrico” diventa fondamentale.

40% di risparmio rispetto all’HEVC

VVC eredita dai precedenti codec la struttura ibrida a “blocchi” e gran parte delle tecnologie ereditate dall’HEVC anche se riviste e perfezionate. In più aggiunge nuovi strumenti di codifica inediti che migliorano sia l’efficienza che la versatilità.

A grandi linee, il risparmio di banda/storage rispetto all’HEVC è di circa il 40%: questo significa che un video HEVC che occupa 1 GB di spazio oppure 1 Gbps di banda richiederà solo 600 MB o 600 Mbps se viene codificato in VVC.

A parità di banda/storage utilizzati, invece, il VVC garantirà una qualità video superiore rispetto all’HEVC.

Questo ulteriore miglioramento, che va ad aggiungersi a quello ottenuto dall’HEVC rispetto l’AVC H.264 (+40%), potrebbe spingere molti operatori del mercato a compiere il fatidico passaggio dai codec di vecchia generazione come l’MPEG-4 e l’AVC al VVC, gli stessi soggetti che finora aveva rinviato il passaggio all’HEVC perché i costi da sostenere (progettazione, sviluppo, produzione, ecc.) erano troppo elevati rispetto ai benefici.

Bitrate richiesto dai codec H.264, VP9, HEVC, AV1 e VVC a parità di qualità video. Con il VVC si ottiene un risparmio del 40% rispetto all’HEVC e del 110% rispetto all’H.264 (AVC) – Credit: Ericsson

VVC è il codec perfetto per qualsiasi risoluzione video anche se i maggiori benefici si ottengono con il 4K, il 6K e l’8K (vedi sotto) grazie ai miglioramenti della struttura a blocchi.

Ecco i segreti del VVC

Il segreto dell’efficienza di codifica del VVC non dipende da un singolo strumento di compressione ma è il risultato della combinazione di vari strumenti che apportano piccoli ma significativi miglioramenti.

Gli strumenti più significativi sono il partizionamento dei blocchi, l’interprevisione avanzata, la quantizzazione dipendente, il filtraggio adattivo del ciclo e il filtro di deblocking migliorato.

Purtroppo l’aggiunta di questi strumenti incide molto sull’impatto “computazionale”, ovvero richiederà encoder e decoder più potenti (fino al doppio) rispetto a quelli che attualmente possono gestire un flusso video HEVC.

Partizionamento a blocchi

Come anticipato, VVC ripropone la tradizionale architettura di codifica ibrida basata su blocchi che non codifica direttamente i valori dei pixel ma prevede e codifica solo le informazioni di errore per compensare la previsione imprecisa.

Il processo viene eseguito su blocchi di pixel anziché sull’intera immagine perché consente di adattare le caratteristiche dell’immagine video locale riducendo al minimo l’errore di previsione. In questi casi il partizionamento è fondamentale per ottenere un’elevata efficienza di compressione.

Ogni immagine viene quindi suddivisa in quadrati non sovrapposti chiamati coding-tree unit (CTU) con dimensioni massima di 128×128 pixel (il doppio rispetto ai 64×64 pixel dell’HEVC).

I blocchi di grandi dimensioni migliorano l’efficienza di codifica di aree “piatte” come gli sfondi, in particolare per i video ad alta risoluzione (dall’HD in su). Per rappresentare in modo efficiente aree altamente dettagliate come trame e bordi, invece, VVC utilizza uno schema di partizionamento flessibile in grado di partizionare CTU da 128×128 pixel fino a unità di codifica (CU) di soli 4×4 pixel (8×8 pixel in HEVC) così da ottenere una precisione più elevata.

Il partizionamento a blocchi riduce il bitrate dell’8% rispetto all’HEVC ma, di contro, richiede un maggiore costo computazionale soprattutto per l’encoder che deve valutare molte più permutazioni per selezionare la partizione ottimale.

Partizionamento dei blocchi di codifica con HEVC e VVC – Credit: Ericsson

Pronostico di interpredizione avanzato

La predizione tra immagini (interpredizione) è una delle tecniche di risparmio più efficienti nella compressione video perché permette di copiare i valori del campione da immagini precedentemente codificate. Le informazioni su dove copiare (lo spostamento orizzontale e verticale di un blocco) sono memorizzate nel “vettore di movimento”.

Le tecniche più sofisticate che migliorano l’interprevisione nel VVC e assicurano un notevole risparmio di bitrate sono sostanzialmente cinque:

il modello di movimento affine, la risoluzione del vettore di movimento adattivo, il flusso ottico bidirezionale, il raffinamento del vettore di movimento laterale del decoder e la modalità di partizionamento geometrico.

Anche se la compensazione del movimento di traslazione era già presente nei precedenti codec (riutilizzo dei valori di campione non dallo stesso punto ma da altra posizione – es.: 1,6 pixel a sinistra), in VVC è possibile specificare anche la rotazione e lo zoom così da risparmiare molti più bit per le sequenze contenenti tale movimento.

Un’altra tecnica di risparmio di bit in VVC è la capacità di variare la precisione dei vettori di movimento. Ad esempio, l’encoder può segnalare al decodificatore che i vettori di movimento in entrata hanno una risoluzione intera o quattro volte intera. Ciò consente di risparmiare bit quando si prevedono aree lisce in cui l’esatta precisione del sub-pixel non fornisce molti miglioramenti dell’immagine rispetto alla precisione intera e anche quando si rappresentano grandi vettori di movimento.

L’interprevisione avanzata in VVC sfrutta anche il fatto che in alcuni casi le informazioni sul movimento non devono essere trasmesse esplicitamente (come vettori di movimento) ma possono invece essere dedotte da parti dell’immagine con movimento simile.

Ad esempio, lo strumento di flusso ottico bidirezionale in VVC può dedurre i vettori di movimento misurando il flusso ottico nelle immagini di riferimento e il perfezionamento del vettore di movimento laterale del decodificatore può dedurre i vettori di movimento riducendo al minimo le differenze tra le immagini di riferimento.

Il VVC sfrutta anche i movimenti di forme non rettangolari per allinearsi meglio con la forma degli oggetti in movimento: una metà del blocco può avere un vettore di movimento e l’altra metà del blocco può averne un altro con le metà separate da un’unica linea geometrica determinata da un angolo e da un offset.

Filtraggio adattivo del circuito

Il filtro adattivo ad anello (ALF) è un nuovo filtro “in loop” presente nel codec VVC che esegue la scansione dell’immagine dopo che è stata decodificata e applica selettivamente (su base CTU) uno dei numerosi filtri di risposta all’impulso finito bidimensionale prima che l’immagine venga emessa o utilizzata per la previsione.

Il codificatore video calcola gli insiemi di coefficienti di filtro che porteranno all’errore più piccolo e li trasmette al decoder video. Il filtro ALF ha la capacità di ripulire gli artefatti nell’immagine e contribuisce anche a una sostanziale riduzione di bit rispetto a HEVC.

Filtro adattivo ad anello (ALF) disattivato (immagine a sinistra) e attivato (destra) – Credit: IEEE

Filtro di sblocco migliorato

Lo svantaggio dell’approccio di compressione basato sul blocco è che può dare origine ad artefatti, ovvero bordi visibili sul perimetro del blocco. Il filtraggio di sblocco (deblocking filter) del VVC prende ispirazione da quello dell’HEVC per ridurre questi artefatti livellando selettivamente i limiti del blocco ma può utilizzare filtri più lunghi che nascondono meglio gli artefatti del blocco, specialmente per quelli più grandi (es.: 128×128 pixel) in aree relativamente “lisce”.

Per ulteriori segreti, strumenti e approfondimenti sul codec VVC (come ad esempio la quantizzazione dipendente) vi invitiamo a scaricare questo documento PDF di Ericsson.

Realtà virtuale e video 8K

Anche se il codec VVC ha tutte le carte in regola per ottimizzare la compressione di qualunque sorgente e contenuto video (anche SD, HD e Full HD in formato panoramico e ultra-panoramico – es.: 21:9, 32:9), i vantaggi più tangibili si ottengono con risoluzioni superiori (4K e 8K) e con i video immersivi (VR) che, secondo molti, rappresentano il futuro del gaming e dell’entertainment.

Dal momento che i video immersivi utilizzano immagini a 360° (sfera video), le tecniche attuali dividono l’intero contenuto video in piccole regioni rettangolari così da trasmettere e renderizzare in alta qualità solo l’area osservata dall’utente che indossa il visore VR (viewport).

Per adattarsi ai movimenti veloci della testa durante un’esplorazione o un videogioco d’azione, il video viene trasmesso anche per l’area non vista ma con qualità molto inferiore.

Visore 3D
Visore 3D (Credit: Ericsson)

A tal riguardo, VVC introduce il concetto di immagini secondarie per l’estrazione e la fusione in modo efficiente di parti di video di qualità diversa, requisito per formati immersivi a risoluzione maggiore. Un’immagine secondaria è un rettangolo all’interno dell’immagine video completa che è completamente indipendente dalle altre immagini secondarie e progettato per essere facilmente estratto e unito ad altre immagini secondarie.

L’uso di immagini secondarie riduce significativamente la complessità dei sistemi applicativi e, insieme alla maggior efficienza di compressione, rende VVC il codec perfetto per le applicazioni video immersive.

Per quanto riguarda invece i contenuti video 8K, un recente studio condotto dall’americana Cornell University ha confermato che il codec VVC offre un risparmio medio di circa il 40% rispetto all’HEVC. Ciò ha suscitato molto interesse nel mercato broadcasting con il consorzio DVB che di recente ha inserito questo codec nel suo “toolbox”.

Video sample 8K@60p utilizzati per il test
Video sample 8K@60p utilizzati per il test della Cornell University

Dal punto di vista numerico, lo studio ha evidenziato che il guadagno in compressione (o il risparmio di banda/storage) rispetto all’HEVC è pari al 31%, 26% e 35% a seconda della metrica utilizzata (PSNR, MS-SSIM e VMAF). Il risparmio sale invece tra il 40% e il 50% a parità di qualità video percepita dai partecipanti al test.

Quando arriverà il VVC?

Nonostante la finalizzazione dello standard VVC risalga ormai a 2 anni fa, al momento non esistono prodotti o soluzioni commerciali che supportano questo codec.

La storia insegna che il percorso di adozione dei nuovi codec video è lungo e spesso accidentato (compatibilità, chipset con elevata capacità di elaborazione, economie di scala, royalties, ecc.).

Per il momento stiamo assistendo alle prime implementazione pratiche con soluzioni di codifica e decodifica basate su software e hardware (SoC – System on a Chip) che verranno rilasciate entro la fine di quest’anno o nel corso del 2023.

Per quanto riguarda i diritti di utilizzo, segnaliamo che MPEG LA, società americana che si occupa di stipulare “patent pool” (consorzi tra aziende per la condivisione di licenze) relative ai codec MPEG, ha già lanciato il programma VVC a cui hanno aderito diversi nomi di spicco del mercato broadcasting come l’inglese BBC e la giapponese NHK.

Se tutto procederà senza intoppi, è probabile che nel biennio 2023-2025 assisteremo al lancio delle prime applicazioni VVC in ambito broadcasting, videocommunication, gaming, security e mobile services.

LASCIA UN COMMENTO

Inserisci il tuo commento
Inserisci il tuo nome

Se questo articolo ti è piaciuto e vuoi rimanere sempre informato sulle novità tecnologiche

css.php