VP8

aus Wikipedia, der freien Enzyklopädie
Zur Navigation springen Zur Suche springen
VP8
Dateiendung: keine
Entwickelt von: On2 (Google)
Erstveröffentlichung: 13. September 2008
Art: lossy Video
Enthalten in: WebM, Matroska
Erweitert von: VP7
Erweitert zu: VP9
Standard(s): RFC 6386[1]
www.webmproject.org


VP8 ist ein lizenzgebührenfreies Format für verlustbehaftet komprimierte Videodaten. Er baut auf der Entwicklungsreihe TrueMotion auf, einer Reihe von Videoformaten, die vom Unternehmen On2 Technologies entwickelt und vertrieben wurden.

Zusammen mit dem Audioformat Vorbis und einem Teilbereich von Matroska als Containerformat bildet VP8 die erste Version des von Google für Internet-Video empfohlenen Formates WebM. Auf der Intra-Bild-Kodierung von VP8 basiert das Grafikformat WebP.

Laut Google wird VP8 hauptsächlich im Zusammenhang mit WebRTC und als Format für Animationen, als Ersatz für das Graphics Interchange Format (GIF) eingesetzt.[2]

VP8 wird in den Webbrowsern Opera, Firefox, Chrome und Chromium unterstützt.[3] Internet Explorer unterstützt VP8 offiziell mit separat zu installierendem Codec.[4]

Merkmale[Bearbeiten | Quelltext bearbeiten]

VP8 unterstützt nur Vollbild-Videosignale mit 4:2:0-Farbunterabtastung und 8 Bits pro Abtastwert. Die VP8-Implementierung von On2 unterstützt in der ersten veröffentlichten Version Mehrkernprozessoren mit bis zu 64 Kernen gleichzeitig. Zumindest mit der (August 2011) verfügbaren Implementierung ist VP8 vergleichsweise schlecht an hohe Auflösungen (HD) angepasst. Laut Aussage von On2 Technologies ist im Vergleich zu VP7 bei gleicher Qualität die doppelte Dekodiergeschwindigkeit möglich. Laut x264-Entwickler Jason Garrett-Glaser ist der VP8-Dekodierer – in der ursprünglich veröffentlichten Open-Source-Version von Google – langsamer als der H.264/AVC-Dekodierer aus dem FFmpeg-Projekt.[5] Die nur drei vorzuhaltenden Referenzbilder ermöglichen eine vergleichsweise speichersparende Dekodiererimplementierung. Das Format bietet auch einen reinen Intra-Modus, also mit wahlfrei zugreifbaren, eigenständig kodierten Einzelbildern ohne zeitliche Vorhersage und gegenseitige Abhängigkeiten; zum Beispiel als Zwischenformat für Videoschnitt oder ähnliches.

Qualitätsvergleich zu H.264/AVC[Bearbeiten | Quelltext bearbeiten]

Laut On2 ist VP8 konkurrenzfähig zu H.264/AVC. On2 gab an, VP8 habe vergleichsweise dramatisch überlegene Qualität.[6] Ein von On2 Technologies veröffentlichtes Vergleichsvideo[7] soll die Verbesserungen gegenüber (einer Implementation des Standards) H.264/AVC demonstrieren. Dem gegenüber verglich ein x264-Entwickler VP8 mit der Qualität von H.264/AVC Constrained Baseline.[5] In ersten unabhängigen Tests erwiesen sich VP8 und H.264/AVC im niedrigsten Profil „Baseline“ als gleichwertig,[8][9] diese Ergebnisse wurden in anderen Artikeln jedoch angezweifelt.[10] Im ersten veröffentlichten Test, der eine objektive Metrik (SSIM) verwendet, konnte VP8 für einige Beispielvideos bei hohen Bitraten Xvid – einen Codec, der den älteren MPEG-4-ASP-Standard implementiert – nicht schlagen (bei niedrigen Bitraten ist VP8 stets deutlich überlegen), und es schnitt für alle Beispielvideos schlechter als x264 ab. Nur für ein Video konnte es – bei deutlich langsamerer Geschwindigkeit – ähnliche, wenngleich unterlegene, Qualität wie x264 erreichen. Dieser Test führt VP8 lediglich in einem Anhang auf, da die aktuelle Version zu langsam ist, um die für einen fairen Vergleich vorgegebenen Geschwindigkeitskriterien nur annähernd erreichen zu können.[11] 2010 stellte ein weiterer Qualitätstest mittels algorithmischer Bewertung nach Spitzen-Signal-Rausch-Verhältnis (PSNR) eine „etwas“ niedrigere (1–4 dB) Qualität fest.[12] Ein im August 2011 veröffentlichter Qualitätstest mit subjektiven Bewertungen menschlicher Probanden zeigt gegenüber H.264 (JM und x264) großteils niedrigere Bewertungen für VP8-Videos gleicher Bitrate, bescheinigte zusammenfassend allerdings konkurrenzfähige Qualität.[13]

Patentsituation[Bearbeiten | Quelltext bearbeiten]

Zur Patentfreiheit gibt es verschiedene Ansichten – unter anderem Zweifel an der Unbelastetheit, die bis zu der Aussage reichen, dass die wichtigen Techniken für Videokompression derart von Patenten abgedeckt seien, dass sämtliche Videoformate betroffen seien. Es gab schon beim Vorgänger Theora Befürchtungen über sogenannte U-Boot-Patente, die einige große Firmen von der Nutzung abhielten. 2010 wurde von der MPEG LA versucht, einen Patent-Pool zusammenzustellen, der Ansprüche gegen Theora und andere freie Formate bündeln sollte.[14] Auch aus der Freie-Software-Szene gibt es unterschiedliche Ansichten. Der x264-Entwickler Jason Garrett-Glaser kam nach seiner Analyse des Verfahrens zu dem Schluss, dass es viel zu viele Ähnlichkeiten zu H.264/AVC aufweise, um nicht von denselben Patentansprüchen betroffen zu sein. Christopher Montgomery („Monty“, Entwickler von Vorbis und Theora) hingegen hält die Patentdrohungen für erfahrungsgemäß substanzlos.[15]

Ein Mitarbeiter des Joint Technical Committee 1 der ISO und der IEC kommt in seiner Analyse zum Schluss, dass On2 jedenfalls große Anstrengungen unternommen hat, gegen keine Patente zu verstoßen, er weist aber auch auf die Schwierigkeiten hin, mit einem modernen Video-Codec keine Verletzungen zu begehen. Außerdem hält er es aufgrund der aktuellen Gesetzeslage in den USA für unwahrscheinlich, dass die Öffentlichkeit je erfährt, wie die firmeninternen Untersuchungen der Patentsituation genau ausgesehen haben.[16]

Abgesehen von der schwierigen Patentsituation war die ursprüngliche Software-Lizenz von VP8 nicht mit den Anforderungen der Open Source Initiative vereinbar.[17] Google hat den umstrittenen Paragraphen am 4. Juni 2010 aus der Lizenzdatei entfernt.[18]

Am 7. März 2013 traf Google mit MPEG LA eine finanziell gestützte Übereinkunft, um mögliche Patentansprüche und die Formung eines VP8-Patentpools abzuwenden. Dadurch steht es Google zu, sowohl VP8, als auch den Nachfolger VP9 quelloffen und gebührenfrei zu verbreiten.[19]

Technik[Bearbeiten | Quelltext bearbeiten]

VP8 ist ein klassisches blockbasiertes Transformations-Verfahren. Es hat viele Gemeinsamkeiten mit H.264/AVC, zum Beispiel einige Prädiktionsmodi.[20] Zum Zeitpunkt der ersten Vorstellung von VP8 zählten laut On2 der in-loop-Filter[21] und die Golden Frames[22] zu den Neuheiten gegenüber den Vorgängern. Die erste Definition eines solchen Filters fand sich jedoch schon im Standard H.263, Golden Frames wurden schon in VP5[23] und VP7[24] benutzt.

Als grundlegende Frequenztransformationen dienen die Diskrete Kosinustransformation (DCT) mit 4×4-Blöcken und die Hadamard-Transformation (WHT). Zur zeitlichen Vorhersage können von einem Einzelbild aus maximal drei andere Bilder referenziert werden: jeweils das letzte Golden Frame (eventuelles Intra-Bild), Alternate-Reference-Bild und unmittelbar vorausgehende Bild. Sogenannte Alternate-Reference-Bilder (altref) können als reine Referenzbilder genutzt werden, indem ihre Darstellung deaktiviert werden kann. Sie können vom Kodierer dann mit beliebigen nützlichen Bilddaten gefüllt werden, auch aus zukünftigen Bildern, und damit die Funktion der B-Bilder der MPEG-Formate erfüllen.[25] Ähnliche Makroblöcke eines Einzelbildes können einem von bis zu vier (auch räumlich unzusammenhängenden) Segmenten zugeordnet werden und dann darüber Parameter wie zum Beispiel das verwendete Referenzbild, Quantisierungsschrittweite und Filtereinstellungen teilen. VP8 bietet zweierlei in die Codec-Schleife integrierte Filter (in-loop filtering) gegen Blockartefakte mit anpassbarer Stärke. Viele Kodierwerkzeuge nutzen Wahrscheinlichkeiten, die ausgehend von Schlüsselbildern oder wahlweise auch Golden Frames fortlaufend aus dem aktuellen Kontext berechnet werden. Makroblöcke können 4×4, 8×8 oder 16×16 Bildpunkte umfassen. Bewegungsvektoren haben eine Präzision von einem Achtel Bildpunkt.

libvpx[Bearbeiten | Quelltext bearbeiten]

Die Referenzimplementierung eines VP8-Codecs findet sich (neben VP9) in der Programmbibliothek libvpx, die als freie Software unter den Bedingungen einer BSD-Lizenz veröffentlicht wurde. Mitgeliefert werden die darauf aufbauenden Kommandozeilenwerkzeuge vpxenc und vpxdec. Es existiert je ein Modus für Kodierung in einem einzigen und in zwei Durchläufen, wobei der Einzeldurchlaufmodus als kaputt gilt und keine brauchbare Kontrolle über die Zielbitrate bietet.[26][27] Eine detaillierte Formatanalyse bescheinigte dem Referenzkodierer im August 2011 eine schlechte Ausnutzung der Möglichkeiten der Alternate-Reference-Bilder und hält alleine dabei mit einem entsprechend verbesserten Kodierer eine über 10 Prozent höhere Effizienz für möglich. Weitere Kritik betraf die Qualität der Bitratensteuerung und die Nutzung der Bildsegmentierung.

Geschichte[Bearbeiten | Quelltext bearbeiten]

Im September 2008 veröffentlichte On2 Technologies VP8 als Nachfolger ihrer früheren Ausgaben der TrueMotion-Videoformatserie wie VP6 und zuletzt VP7. Er sollte zu einer Verbesserung der Kompression bei gleichzeitiger Verringerung der Komplexität führen. VP8 wurde ursprünglich als proprietäre, lizenzgebührenpflichtige Technik entwickelt und nach der Übernahme durch Google Inc. offengelegt.

Seit dem Bekanntwerden von Googles Bemühungen, das Herstellerunternehmen On2 zu übernehmen, gab es Erwartungen, dass VP8 nach erfolgter Geschäftsübernahme freigegeben werden solle. Nachdem Monate später am 19. Februar 2010 die Übernahme für 134 Millionen US-Dollar besiegelt war, gab es intensivierte Spekulationen über die Freigabe.[28] Infolge der Übernahme ersuchte die Free Software Foundation (FSF) Google am 30. April in einem offenen Brief um die Freigabe der Videotechnik und sprach von einer Chance, die Abhängigkeit von patentbelasteten Videoformaten wie H.264 und der proprietären Flash-Technik von Adobe im Internet zurückzudrängen.[29] Durch einen solchen Schritt gab Google mit seinem populären (weltgrößten) Video-Portal YouTube den Auseinandersetzungen um das Standardformat für Web-Video mit HTML5 neue Impulse. Google hat auf seiner Entwicklerkonferenz Google I/O am 19. Mai 2010 den Referenz-Codec des Formates als Freie Software im Quelltext zur (patent-)freien Nutzung für jedermann unter der modifizierten BSD-Lizenz freigegeben[30] und gleichzeitig das auf Matroska basierende WebM-Containerformat für den Einsatz im Internet vorgestellt, bei dem neben VP8 für die Audiokompression Vorbis eingesetzt wird.

Die Freigabe bedeutete einen großen Fortschritt im Bereich patentfreier Videokompressionssoftware, wo VP8 neben dem für Echtzeitanwendungen weniger geeigneten Dirac an die Stelle des qualitativ deutlich unterlegenen Theora treten kann. Die Hersteller des Großteils der populären Webbrowser (Internet Explorer,[31] Firefox, Opera, Chrome) kündigten mit Freigabe an, das Format in Verbindung mit HTML5 in der jeweils nächsten (Haupt-)Version zu unterstützen und teils gleichzeitig Entwicklerversionen mit eingebauter Unterstützung zu veröffentlichen.[32]

Seit 23. Juni 2010 enthält FFmpeg einen nativen VP8-Dekodierer.[33] Nach einmonatiger Optimierung benötigt diese Implementierung zwischen 20 % und 40 % weniger Ressourcen zum Dekodieren eines VP8-Videos als Googles Dekodierer.[34]

Skype führte in Version 5 VP8 für die Videokompression bei Telefonaten ein.[35]

Unter dem Projektnamen VP-Next fing Google an, das Nachfolgeformat VP9 zu entwickeln. Er ist als Vorschlag für eine Grundlage für einen zukünftigen Internetstandard bei der IETF in der Diskussion.[36] Ende 2012 wurde Unterstützung für VP9 in Chromium eingebaut.[37]

Literatur[Bearbeiten | Quelltext bearbeiten]

  • Daniel Wolf: WebM / VP8. Hrsg.: RWTH Aachen. Aachen 31. August 2012 (tcs.rwth-aachen.de [PDF]).
  • Sean A. Cassidy: An Analysis of VP8, a new video codec for the web. Hrsg.: Rochester Institute of Technology. Rochester, New York November 2011 (englisch, scholarworks.rit.edu).
  • Christian Feller, Juergen Wuenschmann, Thorsten Roll, Albrecht Rothermel (Universität Ulm): The VP8 Video Codec. Overview and Comparison to H.264/AVC. In: IEEE (Hrsg.): IEEE International Conference on Consumer Electronics. ICCE-Berlin September 2011, S. 57–61, doi:10.1109/ICCE-Berlin.2011.6031852 (englisch, moscow.sci-hub.bz [PDF]).

Weblinks[Bearbeiten | Quelltext bearbeiten]

Einzelnachweise[Bearbeiten | Quelltext bearbeiten]

  1. RFC 6386 – VP8 Data Format and Decoding Guide. November 2011 (englisch).
  2. Alex Converse: New video compression techniques under consideration for VP10 – Präsentation bei den VideoLAN Dev Days 2015 in Paris, Google, 19. September 2015.
  3. Nokia lines up patents against VP8 video codec. Archiviert vom Original (nicht mehr online verfügbar) am 28. Mai 2013; abgerufen am 25. März 2013.
  4. Dean Hachamovitch: HTML5 Video Update—WebM for IE9. Microsoft IEBlog, 16. März 2011.
  5. a b Jason Garrett-Glaser: The first in-depth technical analysis of VP8. (Memento des Originals vom 11. April 2015 im Internet Archive)  Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis.@1@2Vorlage:Webachiv/IABot/x264dev.multimedia.cx x264, 19. Mai 2010 (englisch), Analyse des x264-Entwicklers Jason Garrett-Glaser mit Vergleich von VP8 und H.264/AVC.
  6. Volker Zota: Videocodec TrueMotion VP8 tritt gegen H.264 an. heise.de, 11. September 2008.
  7. Vergleichsvideo. (Memento vom 6. August 2009 im Internet Archive) on2.com
  8. Jan Ozer: First Look: H.264 and VP8 Compared. Information Today, 20. Mai 2010 (englisch). In diesem Artikel wird Googles VP8-Kodierer mit Sorenson Squish verglichen, nicht mit einem modernen H.264/AVC-Kodierer wie x264
  9. quAVlive. (Memento des Originals vom 20. Juni 2011 im Internet Archive)  Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis.@1@2Vorlage:Webachiv/IABot/www.quavlive.com (englisch)
  10. Florian Kalenda, Stephen Shankland: Kritiker zweifeln an Qualität von Googles Videocodec VP8. ZDnet, 2. Juni 2010.
  11. Anhang 8: VP8 encoder comparison with x264 and XviD. M. S. U. Graphics & Media Lab, 16. Juni 2010: MPEG-4 AVC/H.264 Video Codecs Comparison 2010.
  12. Patrick Seeling, Frank H. P. Fitzek, Gergö Ertli, Akshay Pulipaka, Martin Reisslein: Video Network Traffic and Quality Comparison of VP8 and H.264 SVC. In: Proceedings of the 3rd workshop on Mobile video delivery (MoViD). Association for Computing Machinery, New York 2010, S. 33–38, doi:10.1145/1878022.1878031 (englisch, s3.amazonaws.com [PDF]).
  13. Francesca De Simone, Lutz Goldmann, Jong-Seok Lee, Touradj Ebrahimi: Performance analysis of VP8 image and video compression based on subjective evaluations. In: SPIE Optics and Photonics (Hrsg.): Applications of Digital Image Processing XXXIV. Band 8135. San Diego CA August 2011, doi:10.1117/12.896313 (englisch, infoscience.epfl.ch [PDF]).
  14. Jörg Thoma: MPEG LA will mögliche Patentverstöße prüfen. golem.de, 21. Mai 2010.
  15. Volker Zota: Steve Jobs: Patentpool mit Ansprüchen gegen Ogg Theora und andere. heise.de, 3. Mai 2010.
  16. Carlo Daffara’s Patentanalyse.
  17. Cade Metz: Google open codec ‘not open’, says OSI man – Net video play faces serious questions. The Register, 24. Mai 2010.
  18. Harald Bögeholz: WebM-Projekt bessert seine Open-Source-Lizenz nach. heise.de, 6. Juni 2010.
  19. Google and MPEG LA Announce Agreement Covering VP8 Video Format. businesswire.com, Pressemitteilung, 7. März 2013.
  20. Kurzbeschreibung. MultimediaWiki.
  21. Loop Filter. (Memento vom 18. September 2008 im Internet Archive) on2.com
  22. Golden Frames. (Memento vom 22. Oktober 2008 im Internet Archive) on2.com
  23. Beschreibung von VP5. MultimediaWiki.
  24. Beschreibung zu VP7. (Memento vom 23. März 2010 im Internet Archive) on2.com
  25. Yaowu Xu: Inside WebM Technology: The VP8 Alternate Reference Frame. blog.webmproject.org, 27. Mai 2010.
  26. Dan Grois, Detlev Marpe, Tung Nguyen, Ofer Hadar: Comparative assessment of H.265/MPEG-HEVC, VP9, and H.264/MPEG-AVC encoders for low-delay video applications. In: Proceedings of SPIE – Applications of Digital Image Processing XXXVII. Band 9217. San Diego CA 2014, doi:10.1117/12.2073323 (englisch).
  27. Jan Ozer: VP9 Finally Comes of Age, But Is it Right for Everyone? streamingmedia.com, Juni 2016.
  28. Volker Zota: Google schließt Übernahme des Codec-Spezialisten On2 Technologies ab. heise.de, 19. Februar 2010.
  29. Open letter to Google: free VP8, and use it on YouTube. Free Software Foundation (FSF), 19. Februar 2010 (englisch) – Offener Brief an Google.
  30. Jens Ihlenfeld: WebM: VP8 ist Open Source. golem.de, 19. Mai 2010.
  31. Volker Zota: Microsoft fährt zweigleisig: IE9 unterstützt neben H.264 auch Googles VP8/WebM. heise.de, 20. Mai 2010.
  32. Volker Zota: Google I/O: „Open Web Media Project“ soll VP8 als Videostandard fürs Web etablieren. heise.de, 19. Mai 2010.
  33. VP8 in FFmpeg integriert. lists.mplayerhq.hu
  34. Jason Garrett-Glaser: Announcing the world’s fastest VP8 decoder: ffvp8 (Memento des Originals vom 14. April 2015 im Internet Archive)  Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis.@1@2Vorlage:Webachiv/IABot/x264dev.multimedia.cx x264, 23. Juli 2010 (englisch); Bericht über Optimierungen an ffvp8.
  35. Jens Ihlenfeld: Videotelefonie: Skype stellt auf Googles VP8-Codec um. golem.de, 4. August 2011.
  36. Audio-Mitschnitt. (MP3; ≈60 MB), Präsentationsfolien. (PDF; ≈6233 kB) BoF-Treffen im Rahmen der Konferenz IETF85 in Atlanta, USA mit einer Präsentation zu VP-Next.
  37. Stephen Shankland: Google’s new VP9 video technology reaches public view. CBS Interactive, 28. Dezember 2012.