VP8 - VP8

VP8
Logo VP8
Tipo di supporto Internet video / VP8
Sviluppato da Google
Versione iniziale 13 settembre 2008
Tipo di formato Video compresso
Contenuta da WebM , Matroska
Esteso da VP7
Esteso a VP9
Standard RFC6386
Formato aperto ? Sì (specifica sotto CC-by )

VP8 è un formato di compressione video aperto e privo di royalty creato da On2 Technologies come successore di VP7 e di proprietà di Google dal 2010.

Nel maggio 2010, dopo l'acquisto di On2 Technologies, Google ha fornito una promessa irrevocabile di brevetto sui suoi brevetti per l'implementazione del formato VP8 e ha rilasciato una specifica del formato sotto la licenza Creative Commons Attribution 3.0 . Nello stesso anno, Google ha anche rilasciato libvpx , l' implementazione di riferimento di VP8, con la licenza BSD rivista .

Opera , Firefox , Chrome e Chromium supportano la riproduzione di video VP8 in tag video HTML5 . Internet Explorer supporta ufficialmente VP8 con un codec separato. Secondo Google VP8 viene utilizzato principalmente in connessione con WebRTC e come formato per brevi animazioni in loop, in sostituzione del Graphics Interchange Format (GIF).

VP8 può essere multiplexato nel formato contenitore basato su Matroska WebM insieme a Vorbis e Opus audio. Il formato immagine WebP si basa sulla codifica intra-frame di VP8. Il successore diretto di VP8, VP9 , e l'emergente formato video Internet esente da royalty AV1 di Alliance for Open Media (AOMedia) sono basati su VP8.

Caratteristiche

VP8 supporta solo segnali video a scansione progressiva con sottocampionamento cromatico 4: 2: 0 e 8 bit per campione . Nella sua prima versione pubblica, l'implementazione VP8 di On2 supporta processori multi-core con un massimo di 64 core contemporaneamente. Almeno nell'implementazione (da agosto 2011), VP8 è relativamente poco adattato alle alte risoluzioni ( HD ). Con solo tre frame buffer di riferimento necessari, VP8 consente implementazioni di decodificatori con un ingombro di memoria relativamente ridotto. Il formato presenta una modalità intra pura, ovvero utilizzando solo fotogrammi codificati in modo indipendente senza previsione temporale, per consentire l'accesso casuale in applicazioni come l'editing video.

Tecnologia

VP8 è un formato di codifica di trasformazione tradizionale basato su blocchi . Ha molto in comune con H.264 , ad esempio alcune modalità di previsione. Al momento della prima presentazione di VP8, secondo On2 il filtro in-loop e i Golden Frames erano tra le novità di questa iterazione. La prima definizione di tale filtro si trova già nello standard H.263 , tuttavia, e i Golden Frames erano già in uso in VP5 e VP7.

La trasformata discreta del coseno (DCT) su blocchi 4 × 4 e la trasformata di Hadamard (WHT) servono come trasformate di frequenza di base. È possibile fare riferimento a un massimo di tre fotogrammi per la previsione temporale: l'ultimo fotogramma dorato (può essere un fotogramma intra), fotogramma di riferimento alternativo e il fotogramma immediatamente precedente. I cosiddetti frame di riferimento alternativi (altref) possono fungere da frame di solo riferimento per la loro visualizzazione possono essere disattivati. In questo caso il codificatore può riempirli con dati immagine utili arbitrari, anche da fotogrammi futuri, e quindi servire allo stesso scopo dei fotogrammi b dei formati MPEG. Macroblocchi simili possono essere assegnati a uno fino a quattro segmenti (anche spazialmente disgiunti) e quindi condividere parametri come il frame di riferimento utilizzato, la dimensione del passo del quantizzatore o le impostazioni del filtro. VP8 offre due diversi filtri di deblock regolabili che sono integrati nei loop del codec (filtro in-loop). Molti strumenti di codifica utilizzano probabilità che vengono calcolate continuamente dal contesto recente, a partire da ogni fotogramma intra. I blocchi macro possono comprendere 4 × 4, 8 × 8 o 16 × 16 campioni. I vettori di movimento hanno una precisione di un quarto di pixel.

Storia

VP8 è stato rilasciato per la prima volta da On2 Technologies il 13 settembre 2008, come On2 TrueMotion VP8, in sostituzione del suo predecessore, VP7 .

Dopo che Google ha acquisito On2 nel febbraio 2010, sono state fatte richieste a Google di rilasciare il codice sorgente VP8. In particolare, la Free Software Foundation ha emesso una lettera aperta il 12 marzo 2010, chiedendo a Google di sostituire gradualmente l'uso di Adobe Flash Player e H.264 su YouTube con una miscela di HTML5 e un VP8 liberato.

La notizia di un imminente annuncio di rilascio open source è stata pubblicata il 12 aprile 2010. Il 19 maggio, alla sua conferenza I / O di Google, Google ha rilasciato il software codec VP8 con una licenza simile a BSD e la specifica del formato bitstream VP8 con una licenza irrevocabile licenza di brevetto gratuita. Ciò ha reso VP8 il secondo prodotto di On2 Technologies ad essere aperto, in seguito alla donazione del codec VP3 nel 2002 alla Fondazione Xiph.Org , da cui derivò il codec Theora .

Nel febbraio 2011, MPEG LA ha invitato i titolari di brevetti a identificare i brevetti che potrebbero essere essenziali per VP8 al fine di formare un pool di brevetti VP8 congiunto . Di conseguenza, a marzo il Dipartimento di Giustizia degli Stati Uniti (DoJ) ha avviato un'indagine su MPEG LA per il suo ruolo nel tentativo di soffocare la concorrenza. Nel luglio 2011, MPEG LA ha annunciato che 12 titolari di brevetti avevano risposto alla sua richiesta di formare un pool di brevetti VP8 , senza rivelare i brevetti in questione, e nonostante On2 avesse fatto di tutto per evitare tali brevetti.

Nel novembre 2011, l' Internet Engineering Task Force ha pubblicato la RFC 6386 informativa, VP8 Data Format and Decoding Guide.

Nel marzo 2013, MPEG LA ha annunciato di aver abbandonato i suoi sforzi per formare un pool di brevetti VP8 dopo aver raggiunto un accordo con Google per concedere in licenza i brevetti che sostiene "potrebbero essere essenziali" per l'implementazione di VP8 e ha concesso a Google il diritto di concedere in sublicenza questi brevetti a qualsiasi utente di terze parti di VP8 o VP9 . Questo accordo ha aperto la strada a una possibile standardizzazione MPEG come codec video Internet esente da royalty, dopo che Google ha presentato VP8 al comitato MPEG nel gennaio 2013.

Nel marzo 2013, Nokia ha presentato una rivendicazione di brevetto contro HTC e Google per l'utilizzo di VP8 in Android in un tribunale tedesco; tuttavia, il 5 agosto 2013 il progetto webm ha annunciato che il tribunale tedesco ha stabilito che VP8 non viola il brevetto di Nokia.

Nokia ha rilasciato una dichiarazione ufficiale sui diritti di proprietà intellettuale (IPR) all'IETF in merito alla VP8 Data Format and Decoding Guide che elenca 64 brevetti concessi e 22 domande di brevetto in attesa.

Implementazioni

libvpx

L' implementazione di riferimento di un codec VP8 (e VP9) si trova nella libreria di programmazione libvpx che viene rilasciata come software gratuito . Ha una modalità per la codifica a un passaggio e due passaggi , rispettivamente, mentre la modalità a un passaggio è nota come interrotta e non offre un controllo efficace sul bitrate di destinazione.

Attualmente, libvpx è l'unica libreria software in grado di codificare flussi video VP8. Un codificatore basato sul framework x264 chiamato xvp8 è in fase di sviluppo da parte del team x264.

Codifica

È disponibile un wrapper Video per Windows del codec VP8 basato sulla libreria Google VP8 ( FourCC : VP80).

Il team hardware del progetto WebM in Finlandia ha rilasciato un codificatore hardware RTL per VP8 che è disponibile gratuitamente per i produttori di semiconduttori.

I chipset mobili Nvidia Tegra hanno codifica e decodifica hardware VP8 completa (a partire da Tegra 4 ).

Nexus 5 potrebbe utilizzare la codifica hardware

Decodifica

libvpx è in grado di decodificare flussi video VP8.

Il 23 luglio 2010, Fiona Glaser, Ronald Bultje e David Conrad del team FFmpeg hanno annunciato il decoder ffvp8. Attraverso i test hanno determinato che ffvp8 era più veloce del decoder libvpx di Google. Il team hardware del progetto WebM ha rilasciato un decodificatore hardware RTL per VP8, che è rilasciabile alle aziende di semiconduttori a costo zero. TATVIK Technologies ha annunciato un decoder VP8 ottimizzato per il processore ARM Cortex-A8 . Il mini chipset ARMADA 1500 di Marvell dispone del supporto per la decodifica hardware VP8 SD e HD (utilizzato in Chromecast ). Intel ha il pieno supporto alla decodifica VP8 integrato nei suoi chipset Bay Trail . Intel Broadwell aggiunge anche il supporto per la decodifica hardware VP8.

Supporto del sistema operativo

Supporto VP8 da diversi sistemi operativi
Microsoft Windows Mac OS BSD / Linux Sistema operativo Android iOS
Supporto codec Solo app di terze parti Solo app di terze parti
Supporto container Su Windows 10 Anniversary Update (1607) :
WebM (.webm non è riconosciuto; richiede una pseudo estensione)
Matroska (.mkv)

Aggiornamento di Windows 10 ottobre 2018 (1809) :
WebM (.webm è riconosciuto ufficialmente)

WebM (.webm)
Matroska (.mkv)
WebM (.webm)
Matroska (.mkv)
WebM (.webm)
Matroska (.mkv)
WebM (.webm)
Matroska (.mkv)
Appunti Su Windows 10 :
- Su Anniversary Update (1607), il supporto limitato è disponibile in Microsoft Edge ( solo tramite MSE ) e nelle app Universal Windows Platform .

- Nell'aggiornamento di aprile 2018 (1803) con Web Media Extensions preinstallate, Microsoft Edge (EdgeHTML 17) supporta i video VP8 incorporati nei tag <video>.

- Nell'aggiornamento di ottobre 2018 (1809), le estensioni video VP9 sono preinstallate. Consente la codifica del contenuto VP8 e VP9 su dispositivi che non dispongono di un codificatore video basato su hardware.

Nessun supporto nativo nel framework multimediale nativo di macOS. - - Supporto introdotto in Android 2.3.3+

- Streaming in Android 4.0+

Nessun supporto nativo nel framework multimediale nativo di iOS.

Formati correlati

WebM

Sempre il 19 maggio 2010, è stato lanciato il progetto WebM , con contributi di "Mozilla, Opera, Google e più di quaranta altri editori, fornitori di software e hardware" in un grande sforzo per utilizzare VP8 come formato video per HTML5. Nel formato contenitore WebM , il video VP8 viene utilizzato con audio Vorbis o Opus . Internet Explorer 9 supporterà la riproduzione di video VP8 se è installato il codec appropriato. Android è abilitato per WebM dalla versione 2.3 - Gingerbread. A partire da Android 4.0, VP8 potrebbe essere letto all'interno di mkv e WebM potrebbe essere trasmesso in streaming. Adobe ha anche annunciato che Flash Player supporterà la riproduzione di VP8 in una versione futura.

WebP

Il 30 settembre 2010 Google ha annunciato WebP , il loro nuovo formato di immagine, sul blog Chromium . WebP si basa sulla codifica intra-frame di VP8 e utilizza un contenitore basato su RIFF ( Resource Interchange File Format ).

Confronto con H.264

Sebbene H.264 / MPEG-4 AVC contenga tecnologia brevettata e richieda licenze da titolari di brevetti e royalties limitate per l'hardware, Google ha rilasciato irrevocabilmente i brevetti VP8 che possiede con una licenza pubblica esente da royalty.

Secondo un confronto tra VP8 (codificato con la versione iniziale di libvpx) e H.264 condotto da StreamingMedia, si è concluso che "H.264 può avere un leggero vantaggio qualitativo, ma non è commercialmente rilevante" e che "Anche il lato di visione -a fianco (cosa che nessun telespettatore fa mai), pochissimi spettatori potrebbero vedere la differenza ". Hanno anche affermato che "H.264 ha un vantaggio di implementazione, non un vantaggio tecnologico".

Google afferma che VP8 offre la "consegna di video in tempo reale della massima qualità" e Libvpx include una modalità in cui verranno utilizzate le massime risorse della CPU possibili mantenendo la velocità di codifica quasi esattamente equivalente alla velocità di riproduzione (in tempo reale), mantenendo la qualità come più in alto possibile senza ritardi. D'altra parte, una revisione condotta da streamingmedia.com nel maggio 2010 ha concluso che H.264 offre una qualità leggermente migliore rispetto a VP8.

Nel settembre 2010 Fiona Glaser, uno sviluppatore dell'encoder x264 , ha espresso diversi punti di critica per VP8, sostenendo che le sue specifiche erano incomplete e le prestazioni del filtro di deblock dell'encoder erano inferiori a x264 in alcune aree. Nelle sue specifiche, VP8 dovrebbe essere leggermente migliore del profilo di base H.264 e del VC-1 di Microsoft . La codifica è da qualche parte tra Xvid e VC-1. La decodifica è più lenta dell'H.264 di FFmpeg , ma questo aspetto difficilmente può essere migliorato a causa delle somiglianze con H.264. Dal punto di vista della compressione, VP8 offre prestazioni migliori rispetto a Theora e Dirac . Secondo Glaser, l'interfaccia VP8 è priva di funzionalità ed è difettosa e le specifiche non sono completamente definite e potrebbero essere considerate incomplete. La maggior parte del codice di VP8 è copia-incollato C del codice , e dal momento che la fonte costituisce la specifica attuale, eventuali bug sarà anche essere definito come qualcosa che deve essere attuata di essere in regola.

Nel 2010, è stato annunciato che il formato audio / video WebM sarebbe basato su un profilo del formato contenitore Matroska insieme al video VP8 e all'audio Vorbis .

Guarda anche

Riferimenti

Ulteriore lettura

link esterno