Simple Science

Scienza all'avanguardia spiegata semplicemente

# Ingegneria elettrica e scienze dei sistemi# Elaborazione di immagini e video

Avanzamenti nel Controllo della Complessità di Codifica Video

Nuovi metodi migliorano l'efficienza di codifica nello streaming video.

― 7 leggere min


Svolta nel ControlloSvolta nel Controllodella Complessità diCodifica Videodella codifica video.Nuovo metodo migliora l'efficienza
Indice

Recenti sviluppi nella tecnologia di Codifica video hanno migliorato il modo in cui comprimiamo i file video. Tuttavia, questi miglioramenti hanno anche portato a richieste maggiori sulle risorse di calcolo. Con l'aumento significativo del traffico video online negli ultimi anni, c'è una crescente necessità di codifica efficace che bilanci qualità ed efficienza. Per affrontare questo, sono necessari meccanismi per controllare la Complessità degli encoder. Questi meccanismi aiutano a gestire il tempo di elaborazione, garantendo un buon compromesso tra prestazioni e complessità.

Un modo per raggiungere questo è attraverso un metodo chiamato "speed-adaptive Preset switching" in SVT-AV1. Questa tecnica consente agli utenti di impostare un limite di tempo per la codifica del video, assicurando che il processo di codifica rimanga entro questo limite pur utilizzando tutta la gamma di opzioni di preset disponibili. Questo approccio ha mostrato una precisione media dell'8,9% e non aggiunge alcun ritardo extra al processo di codifica.

La spinta verso uno streaming video efficiente

Con l'aumento della potenza di calcolo, le soluzioni a vari problemi stanno diventando più accessibili. Tuttavia, l'evoluzione rapida della tecnologia può anche essere costosa per consumatori e aziende. Per tenere il passo con la tecnologia all'avanguardia senza spendere una fortuna, molti si affidano ai servizi di cloud computing. Questi servizi offrono potenza di elaborazione avanzata a prezzi ragionevoli, rendendo più facile per gli utenti accedere alle ultime tecnologie.

Quando si utilizzano questi servizi, è utile sapere in anticipo il tempo di elaborazione previsto dei programmi. Essere in grado di controllare quanto sia complesso un compito porterà a una maggiore efficienza nei data center. Questo diventa particolarmente importante nel mondo dello streaming video, che attualmente rappresenta una grande parte del traffico web. Poiché la codifica video richiede notevoli risorse di calcolo, è essenziale avere un controllo efficace della complessità per i compiti di codifica video.

L'ascesa del codec AV1

Nel 2018, l'Alliance of Open Media ha introdotto il codec AV1, un nuovo standard di codifica che offre un risparmio di bitrate migliore rispetto al suo predecessore, VP9. Tuttavia, questo comporta un compromesso: tempi di codifica più lunghi. L'anno successivo, Intel ha rilasciato SVT-AV1, un'implementazione open-source che mirava a ridurre parte della complessità introdotta da AV1. Nonostante ciò, la complessità complessiva è rimasta alta, rendendo necessario l'uso di preset per gestire efficacemente le opzioni di codifica.

Questi preset aiutano a limitare le scelte di ottimizzazione dell'encoder, permettendo agli utenti di prendere decisioni rapide riguardo al bilanciamento tra qualità di codifica e tempo di elaborazione. Tuttavia, controllare accuratamente il tempo all'interno di questi preset si è rivelato una sfida.

Metodi esistenti di controllo della complessità

Il primo metodo conosciuto di controllo della complessità per AV1 si basa su ottimizzazione multi-obiettivo, in cui un controller decide se mantenere o cambiare la configurazione attuale per ottimizzare la velocità. Questo metodo consente riduzioni di complessità che vanno dal 10% al 40%. Inoltre, altri codec come il Versatile Video Coding (VVC) e l'High Efficiency Video Coding (HEVC) hanno i loro metodi di controllo della complessità, che coinvolgono varie strategie come la restrizione dei processi di partizione o la regolazione di alcuni parametri in base al contenuto codificato.

Un nuovo approccio al controllo della complessità in SVT-AV1

Il nuovo metodo proposto per SVT-AV1 si concentra sul controllo della complessità su tutta la gamma di preset con alta precisione. Facendo così, questo metodo consente agli utenti di specificare un tempo target per la codifica senza dover selezionare manualmente un preset. Anche se potrebbe esserci una leggera perdita nelle prestazioni di compressione, la capacità di controllare accuratamente la complessità lo rende uno strumento prezioso per codificare video in modo efficiente.

Feedback sulla velocità in SVT-AV1

Per implementare lo speed-adaptive preset switching, è fondamentale valutare continuamente la velocità di codifica durante il processo. In SVT-AV1, ogni passaggio del processo di codifica avviene simultaneamente, elaborando i dati video in un modo first-in, first-out. Una volta che il primo fotogramma è codificato, il tempo impiegato per l'ultimo passaggio di elaborazione viene utilizzato per stimare la velocità di codifica e informare gli aggiustamenti del preset per i fotogrammi successivi.

Sfide nella stima della velocità

Calcolare la velocità di codifica può essere difficile a causa dell'elaborazione parallela e del modo in cui i fotogrammi vengono memorizzati. Misurare il tempo impiegato per un fotogramma include anche il tempo per altri fotogrammi elaborati simultaneamente. Pertanto, le misurazioni precise della velocità sono solo stime.

Utilizzo di tabelle di ricerca per le stime di velocità

Per facilitare il passaggio tra i preset, viene creata una tabella di ricerca basata sui tempi di codifica per varie sequenze video e configurazioni. Questa tabella aiuta a abbinare le velocità di codifica desiderate con il preset appropriato. Utilizzando i tempi di codifica medi in vari scenari, la tabella offre stime di velocità approssimative per diversi preset.

Il processo decisionale

Per ogni fotogramma, il preset attuale viene confrontato con la velocità target. Se è necessario un cambiamento, un calcolo determina quanto più veloce o più lento deve essere il processo di codifica. Sulla base di questo calcolo, il preset viene regolato di conseguenza. Questo metodo garantisce che l'encoder possa adattarsi rapidamente per soddisfare i requisiti di velocità senza ritardi significativi.

Valutazione del nuovo metodo di controllo della complessità

Il nuovo metodo di controllo della complessità è stato testato su più sequenze video per misurare la sua efficacia nel raggiungere velocità target. La complessità è stata misurata in termini di tempo di elaborazione durante la codifica. Per ciascun test, sono state scelte specifiche velocità target e l'obiettivo era raggiungere queste velocità mantenendo un livello ragionevole di prestazioni di compressione.

Precisione delle stime di velocità

Assicurare stime di velocità accurate è fondamentale per il successo del controllo della complessità. Sono state condotte valutazioni per confrontare le velocità stimate con le prestazioni reali, considerando vari fattori come la complessità video e le dimensioni del buffer. I risultati hanno indicato che il metodo proposto mantiene una forte prestazione in termini di stima della velocità, consentendo un efficace controllo della complessità.

Valutazione delle prestazioni di compressione

Oltre a misurare il componente di controllo della velocità, è essenziale valutare il compromesso tra complessità e prestazioni di compressione. È stato calcolato il bitrate aggiuntivo richiesto quando si utilizza il nuovo metodo di controllo rispetto a un metodo di codifica tradizionale. I risultati hanno mostrato che piccole risoluzioni video hanno funzionato bene, con il nuovo metodo che si avvicina ai livelli di prestazione consolidati.

Direzioni future per il controllo della complessità

Il metodo proposto per gestire la complessità in SVT-AV1 apre nuove opportunità per l'efficienza della codifica video. Il lavoro futuro si concentrerà sul perfezionamento delle tecniche di stima del tempo, specialmente per i fotogrammi iniziali, per migliorare ulteriormente la precisione. Identificando quali passaggi di codifica contribuiscono di più al tempo di elaborazione, i ricercatori possono fare previsioni e aggiustamenti migliori.

Inoltre, c'è potenziale per introdurre modelli di previsione della velocità più avanzati per migliorare l'efficacia complessiva del metodo. Man mano che le richieste di codifica video continuano a crescere, trovare modi per migliorare il controllo della complessità diventerà sempre più importante sia per i fornitori di servizi che per i consumatori.

In conclusione, l'integrazione dello speed-adaptive preset switching in SVT-AV1 rappresenta un notevole sviluppo nella tecnologia di codifica video. Gestendo efficacemente la complessità con alta precisione e minima perdita di prestazioni, questo metodo è destinato a beneficiare il campo più ampio delle comunicazioni multimediali, portando infine a un'esperienza migliore per utenti e fornitori di servizi.

Altro dagli autori

Articoli simili