Ein Videocodec ist eine Software oder ein Gerät, das die Kodierung und Dekodierung von digitalem Video ermöglicht und gegebenenfalls Videokomprimierung und/oder -dekomprimierung nutzt. Die meisten Codecs sind typischerweise Implementierungen von Videocodierungsformaten .
Die Komprimierung kann verlustbehaftete Datenkomprimierung nutzen , wodurch Qualitätsmessungen an Bedeutung gewinnen. Kurz nachdem die Compact Disc als digitale Alternative zu analogem Audio weit verbreitet war, wurde es möglich, auch Videos digital zu speichern und zu nutzen. Schnell entstanden verschiedene Technologien, um dies zu ermöglichen. Das Hauptziel der meisten Videokomprimierungsverfahren ist es, Videos zu erzeugen, die der Originalqualität möglichst nahekommen und gleichzeitig eine möglichst kleine Dateigröße aufweisen. Es gibt jedoch auch einige andere Faktoren, die als Vergleichsgrundlage dienen können.
Einführung in den Vergleich
Folgende Merkmale werden bei Videocodec- Vergleichen verglichen:
- Videoqualität pro Bitrate (oder Bitratenbereich ). Die Videoqualität gilt gemeinhin als Hauptmerkmal bei Codec - Vergleichen. Videoqualitätsvergleiche können subjektiv oder objektiv sein .
- Leistungsmerkmale wie Komprimierungs-/Dekomprimierungsgeschwindigkeit, unterstützte Profile/Optionen, unterstützte Auflösungen, unterstützte Ratensteuerungsstrategien usw.
- Allgemeine Softwareeigenschaften – zum Beispiel:
- Hersteller
- Unterstützte Betriebssysteme ( Linux , macOS , Windows )
- Versionsnummer
- Veröffentlichungsdatum
- Lizenztyp (kommerziell, kostenlos, Open Source )
- Unterstützte Schnittstellen (VfW, DirectShow usw.)
- Preis (Preis-Leistungs-Verhältnis, Mengenrabatte usw.)
Videoqualität
Die Qualität, die ein Codec erreichen kann, hängt maßgeblich vom verwendeten Komprimierungsformat ab. Ein Codec ist kein Format, und es können mehrere Codecs dieselbe Komprimierungsspezifikation implementieren – beispielsweise erreichen MPEG-1-Codecs typischerweise kein vergleichbares Qualitäts-/Größenverhältnis wie Codecs, die die modernere H.264-Spezifikation implementieren. Aber auch das Qualitäts-/Größenverhältnis der von verschiedenen Implementierungen derselben Spezifikation erzeugten Ausgabedateien kann variieren.
Jede Komprimierungsspezifikation definiert verschiedene Mechanismen zur Reduzierung der Dateigröße von Rohvideo (im Wesentlichen eine Sequenz unkomprimierter Digitalbilder in voller Auflösung). Diese reichen von einfacher Bitkomprimierung (wie Lempel-Ziv-Welch ) bis hin zu psychovisueller und Bewegungsanalyse und legen fest, wie das Ergebnis als Bitstrom gespeichert wird. Solange die Encoder-Komponente des Codecs die Spezifikation einhält, kann sie beliebige Kombinationen dieser Methoden zur Verarbeitung verschiedener Inhaltsabschnitte nutzen. Die Decoder-Komponente eines ebenfalls spezifikationskonformen Codecs erkennt die verwendeten Mechanismen und interpretiert den komprimierten Datenstrom, um ihn zur Anzeige wieder in Rohvideo umzuwandeln (dieses ist jedoch nicht identisch mit dem Rohvideoeingang, es sei denn, die Komprimierung erfolgte verlustfrei). Jeder Encoder implementiert die Spezifikation mit eigenen Algorithmen und Parametern. Daher variiert die komprimierte Ausgabe verschiedener Codecs, was zu Unterschieden in Qualität und Effizienz führt.
Bevor man die Videoqualität verschiedener Codecs vergleicht, ist es wichtig zu verstehen, dass jeder Codec innerhalb einer Videosequenz eine unterschiedliche Qualität für eine bestimmte Anzahl von Einzelbildern liefern kann. Zahlreiche Faktoren tragen zu dieser Variabilität bei. Erstens verfügen alle Codecs über einen Bitratensteuerungsmechanismus , der die Bitrate und die Qualität für jedes einzelne Einzelbild festlegt. Der Unterschied zwischen variabler Bitrate (VBR) und konstanter Bitrate (CBR) führt zu einem Kompromiss zwischen einer gleichbleibenden Qualität über alle Einzelbilder hinweg einerseits und einer konstanteren Bitrate andererseits, die für manche Anwendungen erforderlich ist. Zweitens unterscheiden einige Codecs zwischen verschiedenen Bildtypen, wie z. B. Schlüsselbildern und Nicht-Schlüsselbildern, die sich in ihrer Bedeutung für die Gesamtbildqualität und im Ausmaß ihrer Komprimierbarkeit unterscheiden. Drittens hängt die Qualität von Vorfiltern ab, die in allen modernen Codecs enthalten sind. Weitere Faktoren können ebenfalls eine Rolle spielen.
Bei ausreichend langen Clips lassen sich Sequenzen auswählen, die kaum unter der Komprimierung gelitten haben, und solche, die stark beeinträchtigt wurden, insbesondere bei Verwendung von CBR . Hierbei kann die Qualität zwischen den einzelnen Frames aufgrund der unterschiedlichen Komprimierungsgrade, die zur Erzielung einer konstanten Bitrate erforderlich sind, stark variieren. Daher können in einem langen Clip, beispielsweise einem Spielfilm, zwei beliebige Codecs bei einer bestimmten Sequenz des Clips sehr unterschiedliche Ergebnisse liefern, während die Codecs über einen längeren Sequenzabschnitt hinweg eine annähernd gleiche Qualität aufweisen können (oder umgekehrt). Pressemitteilungen und Amateurforen wählen in Rezensionen mitunter Sequenzen aus, die bekanntermaßen einen bestimmten Codec oder eine bestimmte Art der Bitratensteuerung bevorzugen.
Objektive Videoqualität
Objektive Videobewertungsverfahren sind mathematische Modelle, die menschliche Beurteilungen der Bildqualität vorhersagen sollen, wie sie häufig in subjektiven Qualitätsbewertungsexperimenten veranschaulicht werden. Sie basieren auf Kriterien und Metriken, die objektiv gemessen und automatisch von einem Computerprogramm ausgewertet werden können. Objektive Methoden werden anhand der Verfügbarkeit eines originalen, unkomprimierten Videosignals klassifiziert, das als qualitativ hochwertig gilt. Daher lassen sie sich wie folgt einteilen:
- Vollständige Referenzmethoden (FR), bei denen das gesamte ursprüngliche Videosignal verfügbar ist
- Methoden mit reduzierter Referenz (RR), bei denen nur Teilinformationen des Originalvideos verfügbar sind, und
- Referenzlose Verfahren (NR), bei denen das Originalvideo überhaupt nicht verfügbar ist.
Subjektive Videoqualität
Hierbei geht es darum, wie ein Zuschauer ein Video wahrnimmt und wie er seine Meinung zu einer bestimmten Videosequenz äußert. Subjektive Videoqualitätstests sind hinsichtlich Zeitaufwand (Vorbereitung und Durchführung) und Personalaufwand recht kostspielig.
Es gibt viele Möglichkeiten, Experten Videosequenzen zu zeigen und ihre Meinungen aufzuzeichnen. Einige davon wurden standardisiert, hauptsächlich in der ITU-R-Empfehlung BT.500-13 und der ITU-T-Empfehlung P.910.
Der Grund für die Messung der subjektiven Videoqualität ist derselbe wie für die Messung der durchschnittlichen Bewertung von Audioaufnahmen. Expertenmeinungen können gemittelt und der Mittelwert mit einem Konfidenzintervall angegeben werden. Für die Mittelwertbildung können zusätzliche Verfahren angewendet werden. Beispielsweise können die Meinungen von Experten, deren Ansichten als instabil gelten (etwa wenn ihre Korrelation mit der durchschnittlichen Meinung gering ist), verworfen werden.
Bei Videocodecs ist dies eine sehr häufige Situation. Wenn Codecs mit ähnlichen objektiven Ergebnissen unterschiedliche subjektive Ergebnisse liefern, können die Hauptgründe dafür folgende sein:
- Vor- und Nachfilter werden in Codecs häufig eingesetzt. Codecs verwenden oft Vorfilter wie Rauschunterdrückung , Flimmerreduzierung und Bildstabilisierung. Rauschunterdrückung und Flimmerreduzierung erhalten normalerweise den PSNR- Wert und verbessern gleichzeitig die Bildqualität (die besten langsamen Rauschunterdrückungsfilter erhöhen den PSNR-Wert auch bei mittleren und hohen Bitraten). Bildstabilisierung verringert den PSNR-Wert deutlich, verbessert aber die Bildqualität. Nachfilter weisen ähnliche Eigenschaften auf: Blockentfernung und Rauschunterdrückung erhalten den PSNR-Wert, verbessern aber die Qualität; Körnung (vorgeschlagen in H.264 ) verbessert die Videoqualität deutlich, insbesondere auf großen Plasma-Bildschirmen, verringert aber den PSNR-Wert. Alle Filter verlängern die Komprimierungs-/Dekomprimierungszeit, verbessern somit die Bildqualität, verringern aber die Kodierungs- und Dekodierungsgeschwindigkeit.
- Die Suchstrategie für die Bewegungsschätzung (ME) kann bei gleichem PSNR-Wert zu unterschiedlicher Bildqualität führen. Die sogenannte echte Bewegungssuche erreicht in der Codec-ME üblicherweise nicht die minimalen SAD-Werte ( Summe der absoluten Differenzen ), kann aber eine bessere Bildqualität liefern. Solche Methoden benötigen zudem mehr Komprimierungszeit.
- Rate-Control-Strategie . VBR führt im Allgemeinen zu besseren visuellen Qualitätsmarkierungen als CBR bei gleichen durchschnittlichen PSNR-Werten für Sequenzen.
Für subjektive Tests eignen sich lange Sequenzen nur schwer. Üblicherweise werden drei oder vier zehnsekündige Sequenzen verwendet, während für objektive Messgrößen ganze Filme zum Einsatz kommen. Die Sequenzauswahl ist wichtig – Sequenzen, die denen ähneln, die Entwickler zur Optimierung ihrer Codecs verwenden, sind aussagekräftiger.
Leistungsvergleich
Geschwindigkeitsvergleich
Die Anzahl der Bilder pro Sekunde ( FPS ) wird üblicherweise zur Messung der Kompressions-/Dekompressionsgeschwindigkeit verwendet.
Bei der Abschätzung wahrscheinlicher Codec-Leistungsunterschiede sollten folgende Punkte berücksichtigt werden:
- Gleichmäßigkeit der Dekompressions- (manchmal auch Kompressions-) Framezeit – Große Unterschiede in diesem Wert können zu einer störend ruckeligen Wiedergabe führen.
- Die SIMD- Unterstützung variiert je nach Prozessor und Codec – z. B. MMX , SSE , SSE2 , die jeweils die CPU-Leistung bei bestimmten Aufgaben beeinflussen (oft auch bei solchen, die mit Codecs zusammenhängen).
- Die Unterstützung für Multithreading variiert erheblich je nach Prozessor (Anzahl der CPU-Kerne), und Codecs haben unterschiedliche Strategien für die Nutzung dieser Kerne – das Vorhandensein von Hyper-Threading beeinflusst die Codec-Geschwindigkeit, da es die Ressourcenzuweisung auf niedriger Ebene auf der CPU verändert.
- RAM- Geschwindigkeit – im Allgemeinen wichtig für die meisten Codec-Implementierungen.
- Prozessor-Cache-Größe – niedrige Werte können mitunter zu erheblichen Geschwindigkeitseinbußen führen, z. B. bei CPUs mit kleinem Cache wie einigen Modellen der Intel Celeron- Serie.
- GPU- Nutzung durch Codecs – einige Codecs können ihre Leistung durch die Nutzung von GPU-Ressourcen drastisch steigern.
So kann beispielsweise Codec A (der für die Speichernutzung optimiert ist – d. h. weniger Speicher benötigt) auf modernen Computern (die typischerweise nicht speicherbegrenzt sind) eine geringere Leistung erbringen als Codec B. Auf einem älteren Computer mit reduziertem Arbeitsspeicher (oder Cache) können die gleichen Codecs hingegen gegensätzliche Ergebnisse liefern.
Profile unterstützen
Moderne Standards definieren ein breites Spektrum an Funktionen und erfordern für ihre Implementierung einen sehr hohen Aufwand an Software oder Hardware sowie entsprechende Ressourcen. In der Regel werden in einem bestimmten Produkt nur ausgewählte Profile eines Standards unterstützt. (Dies ist beispielsweise bei H.264-Implementierungen sehr üblich.)
Der H.264-Standard umfasst die folgenden sieben Fähigkeitssätze, die als Profile bezeichnet werden und auf bestimmte Anwendungsklassen abzielen:
- Baseline-Profil (BP) : Dieses Profil wird hauptsächlich für kostengünstige Anwendungen mit begrenzten Rechenressourcen verwendet und findet breite Anwendung in Videokonferenzen und mobilen Anwendungen.
- Main Profile (MP) : Ursprünglich als Mainstream-Verbraucherprofil für Rundfunk- und Speicheranwendungen gedacht, verlor dieses Profil an Bedeutung, als das High Profile (HiP) für diese Anwendungen entwickelt wurde.
- Erweitertes Profil (XP) : Dieses Profil ist als Streaming-Video-Profil gedacht und verfügt über eine relativ hohe Komprimierungsfähigkeit sowie einige zusätzliche Tricks zur Robustheit gegenüber Datenverlusten und Server-Stream-Wechseln.
- High Profile (HiP) : Das primäre Profil für Rundfunk- und Datenspeicheranwendungen, insbesondere für hochauflösende Fernsehanwendungen. (Dies ist beispielsweise das Profil, das bei HD DVD und Blu-ray Disc verwendet wird.)
- High 10 Profile (Hi10P) : Dieses Profil geht über die Fähigkeiten heutiger Mainstream-Konsumentenprodukte hinaus und baut auf dem High Profile auf, indem es die Unterstützung für bis zu 10 Bit pro Abtastwert der dekodierten Bildgenauigkeit hinzufügt.
- High 4:2:2 Profile (Hi422P) : Dieses Profil richtet sich in erster Linie an professionelle Anwendungen, die Interlaced-Video verwenden, und baut auf dem High 10 Profile auf. Es bietet Unterstützung für das 4:2:2-Chroma-Sampling-Format und nutzt dabei bis zu 10 Bit pro Sample an dekodierter Bildgenauigkeit.
- High 4:4:4 Predictive Profile (Hi444PP) : Dieses Profil baut auf dem High 4:2:2 Profile auf und unterstützt bis zu 4:4:4 Chroma-Sampling, bis zu 14 Bit pro Sample und zusätzlich eine effiziente verlustfreie Regionscodierung sowie die Codierung jedes Bildes als drei separate Farbebenen.
- Multiview High Profile : Dieses Profil unterstützt zwei oder mehr Ansichten unter Verwendung sowohl der Inter-Picture- (temporalen) als auch der MVC-Inter-View-Vorhersage, unterstützt jedoch keine Feldbilder und keine Makroblock-adaptive Frame-Field-Codierung.
Der Standard enthält außerdem vier zusätzliche All-Intra-Profile , die als einfache Teilmengen anderer entsprechender Profile definiert sind. Diese sind hauptsächlich für professionelle Anwendungen (z. B. Kamera- und Bearbeitungssysteme) gedacht:
- High 10 Intra-Profil : Das High 10-Profil ist ausschließlich für die Nutzung innerhalb von Intra-Bereichen vorgesehen.
- Hohes 4:2:2 Intra-Profil : Das hohe 4:2:2-Profil ist ausschließlich für die Intra-Nutzung vorgesehen.
- Hohes 4:4:4 Intra-Profil : Das hohe 4:4:4-Profil ist ausschließlich für die Intra-Nutzung vorgesehen.
- CAVLC 4:4:4 Intra-Profil : Das High 4:4:4-Profil ist auf die Verwendung von Intra-Daten und auf die CAVLC -Entropiekodierung beschränkt (d. h. es unterstützt kein CABAC ).
Darüber hinaus enthält der Standard nun auch drei Scalable Video Coding- Profile.
- Skalierbares Basisprofil : Eine skalierbare Erweiterung des Basisprofils.
- Scalable High Profile : Eine skalierbare Erweiterung des High Profile.
- Scalable High Intra Profile : Das Scalable High Profile ist ausschließlich für die Nutzung innerhalb von Intra-Bereichen vorgesehen.
Für einen genauen Vergleich von Codecs müssen die Profilvariationen innerhalb jedes Codecs berücksichtigt werden.
Siehe auch MPEG-2 Profile und Levels .
Unterstützte Strategien zur Ratenkontrolle
Die Ratensteuerungsstrategien von Videocodecs lassen sich wie folgt klassifizieren:
- Variable Bitrate ( VBR ) und
- Konstante Bitrate ( CBR ).
Variable Bitrate (VBR) ist eine Strategie zur Maximierung der visuellen Videoqualität bei minimaler Bitrate. Bei schnellen Bewegungen benötigt eine variable Bitrate mehr Bits als bei Zeitlupen ähnlicher Dauer, erzielt aber dennoch eine gleichbleibende Bildqualität. Für Echtzeit- und ungepuffertes Videostreaming mit fester Bandbreite – z. B. bei Videokonferenzen über Kanäle mit fester Bandbreite – muss eine konstante Bitrate (CBR) verwendet werden.
CBR wird häufig für Videokonferenzen sowie Satelliten- und Kabelfernsehen verwendet. VBR wird häufig für die Erstellung von Video-CDs/DVDs und für Video-Einspielungen in Programmen eingesetzt.
Die Bitratensteuerung eignet sich für Videostreaming. Für die Offline-Speicherung und -Wiedergabe ist es in der Regel vorzuziehen, mit konstanter Qualität (üblicherweise durch Quantisierung definiert ) zu kodieren, anstatt die Bitratensteuerung zu verwenden. [ 1 ] [ 2 ]
Softwareeigenschaften
Codec-Liste
| Codec | Ersteller/Betreuer | Erster öffentlicher Veröffentlichungstermin | Neueste stabile Version | Lizenz | Patentierte Komprimierungsformate | Kompressionsmethode | Basisalgorithmus | OpenCL- Unterstützung | nVidia CUDA- Unterstützung | Intel SSE- Unterstützung | Intel AVX- Unterstützung | Intel Quick Sync Video- Unterstützung |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| AOM Video 1 ( AV1 ) | Allianz für offene Medien | 25.06.2018 | 1.0.0 Errata 1 (2019) [ 3 ] | 2-Klausel-BSD | Patentiert, aber frei lizenziert | Verlustbehaftet / Verlustfrei | DCT | Unbekannt | Unbekannt | Ja | Ja | Ja |
| libtheora ( Theora ) | Xiph.org | 25.09.2002 | 1.1.1 (2009) [ 4 ] | BSD-Stil [ 5 ] | Patentiert, aber frei lizenziert [*] | Verlustbehaftet | DCT | Unbekannt | Unbekannt | Ja | NEIN | Unbekannt |
| dirac-research ( Dirac ) | BBC-Forschungsabteilung | 17.09.2008 | 1.0.2 (2009) [ 6 ] | MPL 1.1 , GNU GPL 2, GNU LGPL 2.1 | keiner | Verlustbehaftet / Verlustfrei | DWT | Unbekannt | Unbekannt | Unbekannt | NEIN | Unbekannt |
| CineForm | GoPro | 2001 | 10.0.2 (2019) [ 7 ] | Apache-Lizenz 2.0 , MIT-Lizenz | keiner | Verlustbehaftet | DWT | NEIN | NEIN | Ja | NEIN | NEIN |
| Schrödinger ( Dirac ) | David Schleef | 22.02.2008 | 1.0.11 (2012) [ 6 ] | MPL 1.1 , GNU GPL 2, GNU LGPL 2, MIT-Lizenz | keiner | Verlustbehaftet / Verlustfrei | DWT | Ja | Ja | Unbekannt | Unbekannt | Unbekannt |
| x264 | x264-Team | 2003 | r3079 (2021) [ 8 ] | GNU GPL | MPEG-4 AVC/H.264 | Verlustbehaftet / Verlustfrei | DCT | Ja | NEIN | Ja | Ja | Ja |
| x265 | x265 Team | 2013 | 3.5 (2021) [ 9 ] | GNU GPL | HEVC/H.265 | Verlustbehaftet / Verlustfrei | DCT | NEIN | NEIN | Ja | Ja | Ja |
| Xvid | Xvid-Team | 2001 | 1.3.7 (2019) [ 10 ] | GNU GPL | MPEG-4 ASP | Verlustbehaftet | DCT | Unbekannt | Unbekannt | Unbekannt | Unbekannt | Unbekannt |
| FFmpeg ( libavcodec ) | FFmpeg-Team | 2000 | 4.4.1 (2021) [ 11 ] | GNU LGPL | MPEG-1 , MPEG-2 , MPEG-4 ASP, H.261 , H.263 , VC-3 , WMV7 , WMV8 , MJPEG , MS-MPEG-4v3, DV , Sorenson-Codec usw. | Verlustbehaftet / Verlustfrei | DCT | Ja | Ja | Ja | Ja | Ja |
| FFavs ( libavcodec ) | FFavs-Team | 2009 | 0.0.3 (2009) [ 12 ] | GNU LGPL | MPEG-1, MPEG-2, MPEG-4 ASP usw. | Verlustbehaftet / Verlustfrei | DCT | Unbekannt | Unbekannt | Unbekannt | Unbekannt | Unbekannt |
| OpenH264 | Cisco-Systeme | 2014-05 | 2.1.1 (2020) [ 13 ] | 2-Klausel-BSD | MPEG-4 AVC/ H.264 | Verlustbehaftet | DCT | NEIN | NEIN | Ja | NEIN | NEIN |
| Amsel | Forbidden Technologies plc | 2006-01 | 9 (2017) [ 14 ] | Eigentumsrechtlich geschützt | Amsel | Verlustbehaftet | Adaptives Codieren | Unbekannt | Unbekannt | Unbekannt | Unbekannt | Unbekannt |
| DivX | DivX, Inc. | 2001 | DivX Software 11 (2024) [ 15 ] | Eigentumsrechtlich geschützt | MPEG-4 ASP , H.264 | Verlustbehaftet | DCT | Unbekannt | Unbekannt | Unbekannt | Unbekannt | Ja [ 16 ] |
| DivX ;-) | ein Hack des MPEG-4v3-Codecs von Microsoft [ 17 ] [ 18 ] | 1998 | 3.20 alpha [ 19 ] (2000) | Eigentumsrechtlich geschützt | Microsofts MPEG-4v3 (nicht MPEG-4-kompatibel) | Verlustbehaftet | DCT | Unbekannt | Unbekannt | Unbekannt | Unbekannt | Unbekannt |
| 3ivx | 3ivx Technologies Pty. Ltd. | 2001 | 5.0.5 (2012) [ 20 ] | Eigentumsrechtlich geschützt | MPEG-4 ASP | Verlustbehaftet | DCT | Unbekannt | Unbekannt | Unbekannt | Unbekannt | Unbekannt |
| Nero Digital | Nero AG | 2003 | 1.5.4.0 (2010) | Eigentumsrechtlich geschützt | MPEG-4 ASP , H.264 [ 21 ] | Verlustbehaftet | DCT | Unbekannt | Unbekannt | Unbekannt | Unbekannt | Unbekannt |
| ProRes 422 / ProRes 4444 | Apple Inc. | 2007 | Unbekannt | Eigentumsrechtlich geschützt | ProRes | Verlustbehaftet | DCT | Unbekannt | Unbekannt | Unbekannt | Unbekannt | Unbekannt |
| Sorenson Video | Sorenson Media | 1998 | Unbekannt | Eigentumsrechtlich geschützt | Sorenson Video | Verlustbehaftet | DCT | Unbekannt | Unbekannt | Unbekannt | Unbekannt | Unbekannt |
| Sorenson Spark | Sorenson Media | 2002 | Unbekannt | Eigentumsrechtlich geschützt | Sorenson Spark | Verlustbehaftet | DCT | Unbekannt | Unbekannt | Unbekannt | Unbekannt | Unbekannt |
| VP3 | On2 Technologies | 2000 | Unbekannt | BSD-Stil [ 5 ] | Patentiert, aber frei lizenziert [*] | Verlustbehaftet | DCT | Unbekannt | Unbekannt | Unbekannt | Unbekannt | Unbekannt |
| VP4 | On2 Technologies | 2001 | Unbekannt | Eigentumsrechtlich geschützt | VP4 | Verlustbehaftet | DCT | Unbekannt | Unbekannt | Unbekannt | Unbekannt | Unbekannt |
| VP5 | On2 Technologies | 2002 | Unbekannt | Eigentumsrechtlich geschützt | VP5 | Verlustbehaftet | DCT | Unbekannt | Unbekannt | Unbekannt | Unbekannt | Unbekannt |
| VP6 | On2 Technologies | 2003 | Unbekannt | Eigentumsrechtlich geschützt | VP6 | Verlustbehaftet | DCT | Unbekannt | Unbekannt | Unbekannt | Unbekannt | Unbekannt |
| VP7 | On2 Technologies | 2005 | Unbekannt | Eigentumsrechtlich geschützt | VP7 | Verlustbehaftet | DCT | Unbekannt | Unbekannt | Unbekannt | Unbekannt | Unbekannt |
| libvpx ( VP8 ) | On2 Technologies (jetzt im Besitz von Google ) | 2008 | 1.11.0 (2021) [ 22 ] | BSD-Stil | Patentiert, aber frei lizenziert | Verlustbehaftet | DCT | Unbekannt | Unbekannt | Unbekannt | Unbekannt | Unbekannt |
| libvpx ( VP9 ) | 2013 | 1.11.0 (2021) [ 22 ] | BSD-Stil | Patentiert, aber frei lizenziert | Verlustbehaftet / Verlustfrei | DCT | Ja, nicht in libvpx, sondern in proprietären VP9 OpenCL-Codecs von Luxoft und Ittiam. | Unbekannt | Unbekannt | Unbekannt | Unbekannt | |
| DNxHD | Avid Technology | 2004 | Unbekannt | Eigentumsrechtlich geschützt | VC-3 | Verlustbehaftet | DCT | Unbekannt | Unbekannt | Unbekannt | Unbekannt | Unbekannt |
| Cinema Craft Encoder SP2 | Custom Technology Corporation | 2000 | 1.00.01.09 (2009) [ 23 ] | Eigentumsrechtlich geschützt | MPEG-1, MPEG-2 | Verlustbehaftet | DCT | Unbekannt | Unbekannt | Unbekannt | Unbekannt | Unbekannt |
| TMPGEnc Kostenlose Version | Pegasys Inc. | 2001 | 2.525.64.184 (2008) [ 24 ] | Eigentumsrechtlich geschützt | MPEG-1, MPEG-2 | Verlustbehaftet | DCT | Unbekannt | Unbekannt | Unbekannt | Unbekannt | Unbekannt |
| Windows Media Encoder | Microsoft | 1999 | 9 (2003) (WMV3 in FourCC ) | Eigentumsrechtlich geschützt | WMV , VC-1 , (in frühen Versionen MPEG-4 Part 2 und nicht MPEG-4-konform MPEG-4v3, MPEG-4v2) | Verlustbehaftet | DCT | Unbekannt | Unbekannt | Unbekannt | Unbekannt | Unbekannt |
| Cinepak | Entwickelt von SuperMac, Inc., erworben und patentiert von Radius, Inc. Wird derzeit von Compression Technologies, Inc. betreut. [ 25 ] | 1991 | 1.10.0.26 (1999) | Eigentumsrechtlich geschützt | Cinepak | Verlustbehaftet | VQ | Unbekannt | Unbekannt | Unbekannt | Unbekannt | Unbekannt |
| Indeo Video | Intel Corporation , derzeit angeboten von der Ligos Corporation | 1992 | 5.11 | Eigentumsrechtlich geschützt | Indeo Video | Verlustbehaftet | DCT | Unbekannt | Unbekannt | Unbekannt | Unbekannt | Unbekannt |
| TrueMotion S | On2 Technologies | 1995 | Unbekannt | Eigentumsrechtlich geschützt | TrueMotion S | Verlustbehaftet | Intra-Frame-Codierung | Unbekannt | Unbekannt | Unbekannt | Unbekannt | Unbekannt |
| RealVideo | RealNetworks | 1997 | RealVideo 10 [ 26 ] | Eigentumsrechtlich geschützt | H.263 , RealVideo | Verlustbehaftet | DCT | Unbekannt | Unbekannt | Unbekannt | Unbekannt | Unbekannt |
| Huffyuv | Ben Rudiak-Gould | 2000 | 2.1.1 (2003) [ 27 ] | GNU GPL 2 | keiner | Verlustfrei | Huffman | Unbekannt | Unbekannt | Unbekannt | Unbekannt | Unbekannt |
| Lagarith | Ben Greenwood | 04.10.2004 | 1.3.27 (2011-12-08) [ 28 ] | GNU GPL 2 | keiner | Verlustfrei | Huffman | Unbekannt | Unbekannt | Unbekannt | Unbekannt | Unbekannt |
| Hauptkonzept | MainConcept GmbH | 1993 | 8.8.0 (2011) | Eigentumsrechtlich geschützt | MPEG-1, MPEG-2, H.264/AVC, H.263, VC-3, MPEG-4 Part 2, DV, MJPEG usw. | Verlustbehaftet | DCT | Ja [ 29 ] | Ja [ 30 ] [ 31 ] | Unbekannt | Unbekannt | Ja [ 32 ] |
| CellB-Videocodierung | Sun Microsystems | 1992 [ 33 ] [ 34 ] [ 35 ] [ 36 ] | [ 37 ] | BSD-Stil | keiner | Verlustbehaftet | VQ | Unbekannt | Unbekannt | Unbekannt | Unbekannt | Unbekannt |
| Elecard | Elecard | 2008 | G4 (2010) [ 38 ] | Eigentumsrechtlich geschützt | MPEG-1, MPEG-2, MPEG-4, AVC | Verlustbehaftet | DCT | NEIN | Ja [ 38 ] | NEIN | Ja [ 38 ] | Ja [ 38 ] |
| Codec | Ersteller/Betreuer | Erster öffentlicher Veröffentlichungstermin | Neueste stabile Version | Lizenz | Patentierte Komprimierungsformate | Kompressionsmethode | Basisalgorithmus | OpenCL- Unterstützung | nVidia CUDA- Unterstützung | Intel SSE- Unterstützung | Intel AVX- Unterstützung | Intel Quick Sync Video- Unterstützung |
- Die Xiph.Org Foundation hat eine unwiderrufliche, kostenlose Lizenz für Theora und andere von VP3 abgeleitete Codecs für jedermann und jeden Zweck ausgehandelt. [ 39 ]
Native Betriebssystemunterstützung
Beachten Sie, dass die Unterstützung durch ein Betriebssystem nicht bedeutet, ob mit dem Codec codierte Videos auf dem jeweiligen Betriebssystem wiedergegeben werden können – beispielsweise sind mit dem DivX-Codec codierte Videos auf Unix-ähnlichen Systemen mit kostenlosen MPEG-4 ASP-Decodern (FFmpeg MPEG-4 oder Xvid) abspielbar, der DivX-Codec (ein Softwareprodukt) ist jedoch nur für Windows und macOS verfügbar.
| Codec | macOS | andere Unix- und Unix-ähnliche Systeme | Windows |
|---|---|---|---|
| 3ivx | Ja | Ja | Ja |
| Amsel | Ja | Ja | Ja |
| Cinepak | Ja | NEIN | Ja |
| DivX | Ja | NEIN | Ja |
| FFmpeg | Ja | Ja | Ja |
| RealVideo | Ja | Ja | Ja |
| Schrödinger ( Dirac ) | Ja | Ja | Ja |
| Sorenson Video 3 | Ja | NEIN | Ja |
| Theora | Ja | Ja | Ja |
| x264 | Ja | Ja | Ja |
| Xvid | Ja | Ja | Ja |
| Elecard | Ja | NEIN | Ja |
Technische Details
| Codec | Kompressionsart | Basisalgorithmus | Höchste unterstützte Bitrate | Höchste unterstützte Auflösung | Variable Bildrate |
|---|---|---|---|---|---|
| Amsel | Verlustbehaftete Kompression | Unbekannt | Unbekannt | 384×288 (PAL), 320×240 (NTSC) | Ja |
| Cinepak | Verlustbehaftete Kompression | Vektorquantisierung [ 40 ] | Unbekannt | Unbekannt | Unbekannt |
| Dirac | Verlustbehaftete / verlustfreie Kompression | Wavelet-Kompression | Unbegrenzt [ 41 ] | Unbegrenzt [ 41 ] | Ja |
| Sorenson 3 | Verlustbehaftete Kompression | Diskrete Kosinustransformation | Unbekannt | Unbekannt | Unbekannt |
| Theora | Verlustbehaftete Kompression | Diskrete Kosinustransformation | 2 Gibbit/s | 1.048.560×1.048.560 [ 42 ] [ 43 ] | Durch Verkettung [*] |
| RealVideo | Verlustbehaftete Kompression | Diskrete Kosinustransformation | Unbekannt | Unbekannt | Ja |
| Elecard | Verlustbehaftete Kompression | Unbekannt | Unbegrenzt | 16k | Ja |
- Theora-Streams mit unterschiedlichen Bildraten können in derselben Datei verkettet werden, aber jeder Stream hat eine feste Bildrate. [ 42 ]
Vergleiche frei verfügbarer Codecs
Liste frei verfügbarer Vergleiche und deren Inhaltsbeschreibung:
| Name des Vergleichs | Vergleichsart | Veröffentlichungsdatum(e) | Liste der verglichenen Codecs | Kommentare |
|---|---|---|---|---|
| Reihe von Doom9-Codec-Vergleichen | Reihe subjektiver Vergleiche gängiger Codecs |
|
| Subjektiver Vergleich mit komfortabler Visualisierung |
| Reihe jährlicher Videocodec-Vergleiche der MSU | Reihe objektiver HEVC/AV1-Codec-Vergleiche |
|
| Detaillierte objektive Vergleiche |
| Reihe jährlicher H.264-Codec-Vergleiche der MSU | Eine Reihe objektiver H.264-Codec-Vergleiche mit der MPEG-4 ASP-Referenz |
|
| Detaillierte objektive Vergleiche |
| Vergleich einer Reihe verlustfreier Videocodecs | Zwei Größen- und Zeitvergleiche von verlustfreien Codecs (mit Verlustprüfung) |
|
| 2007 – detaillierterer Bericht mit neuen Codecs, einschließlich des ersten Standards H.264 (x264) |
| MSU MPEG-4 Codec-Vergleich | Objektiver Vergleich von MPEG-4-Codecs |
| DivX 5.2.1, DivX 4.12, DivX 3.22, MS MPEG-4 3688 v3, XviD 1.0.3, 3ivx D4 4.5.1, OpenDivX 0.3 | Es wurden auch verschiedene DivX-Versionen verglichen. Die Xvid-Ergebnisse könnten fehlerhaft sein, da die Entblockierung bei der Verwendung mit DivX deaktiviert war. |
| Subjektiver Vergleich moderner Videocodecs | Wissenschaftlich fundierter subjektiver Vergleich unter Verwendung von 50 Experten und der SAMVIQ-Methodik |
| DivX 6.0, Xvid 1.1.0, x264, WMV 9.0 (2 Bitraten für jeden Codec) | Es wurde auch ein PSNR-Vergleich über VQM und SSIM durchgeführt. |
| Vergleich von MPEG-2-Videodecodern | Vergleich objektiver MPEG-2- Decoder |
| bitcontrol MPEG-2 Videodecoder, DScaler MPEG-2 Videodecoder, Elecard MPEG-2 Videodecoder, ffdshow MPEG-4 Videodecoder (libavcodec), InterVideo Videodecoder, Ligos MPEG Videodecoder, MainConcept MPEG Videodecoder, Pinnacle MPEG-2 Decoder | Objektgeprüfte (100 Mal pro Stream) Decoder „Crash-Test“ (Test an beschädigtem Stream – wie z. B. zerkratzter DVD oder Satellitenmaterial) |
| Codec-Vergleich | Persönliche subjektive Meinung |
| 3ivx, Avid AVI 2.02, Cinepak, DivX 3.11, DivX 4.12, DivX 5.0.2, DV, Huffyuv, Indeo 3.2, Indeo 4.4, Indeo 5.10, Microsoft MPEG-4 v1, Microsoft MPEG-4 v2, Microsoft RLE, Microsoft Video 1, XviD, 3ivx, Animation, Blackmagic 10-Bit, Blackmagic 8-Bit, Cinepak, DV, H.261, H.263, Motion-JPEG, MPEG-4 Video, PNG, Sorenson Video, Sorenson Video 3 | Manchmal ist der Vergleich kurz (bis zu einer Textzeile pro Codec). |
| Bewertung von Dirac und Theora | Wissenschaftliche Arbeit |
| Dirac, Dirac Pro, Theora I, H.264, Motion JPEG2000 (die getesteten Codecs stammen aus dem zweiten Quartal 2008) | Ein recht detaillierter Vergleich der im zweiten Quartal 2008 verfügbaren Software; allerdings wurde eine fehlerhafte Version von ffmpeg2Theora verwendet. |
| VP8 versus x264 | Objektiver und subjektiver Qualitätsvergleich von VP8 und x264 |
| VP8, x264 | VQM, SSIM und PSNR für 19 CIF-Videoclips mit Bitraten von 100, 200, 500 und 1000 kbit/s |
Siehe auch
- Vergleich der Videoplayer-Software
- Liste der Codecs
- Strukturelle Ähnlichkeit
- FILM-Index
- Vergleich von Audiocodierungsformaten
- Vergleich der Videocontainerformate
- Vergleich von Videobearbeitungssoftware
Anmerkungen und Verweise
- ^ Google – VP9-Bitratenmodi im Detail
- ^ Werner Robitza - CRF-Leitfaden
- ^ „AV1 Bitstream & Decoding Process Specification“ (PDF) . The Alliance for Open Media. Archiviert (PDF) vom Original am 2. Mai 2019. Abgerufen am 31. März 2019 .
- ^ Xiph.Org Foundation (2009) Theora-Entwicklungswebsite – Neuigkeiten , abgerufen am 06.10.2009.
- ^ a b "Weiterleitung" . Abgerufen am 22. November 2016 .
- ^ a b Dirac-Videokomprimierung
- ^ Veröffentlichungen · gopro/cineform-sdk
- x264 Encoder 164 r3079 kostenlos herunterladen – VideoHelp , abgerufen am 14.12.2021
- ^ „Versionshinweise – x265-Dokumentation“ . x265.readthedocs.io . Abgerufen am 14.12.2021 .
- ^ „Xvid.com“ . Abgerufen am 14.12.2021 .
- ^ FFmpeg.org , abgerufen am 14.12.2021
- ^ FFavs, archiviert am 16.12.2009 in der Wayback Machine
- ^ OpenH264-Releases
- ^ „Next generation of Blackbird video codec - Blackbird“ . Blackbird plc . Abgerufen am 14. Dezember 2021 .
- ^ „DivX Software Version History – DivX“ . DivX, LLC . Abgerufen am 14. Dezember 2021 .
- ^ „HEVC - DivX Labs“ . Archiviert vom Original am 11. Januar 2017. Abgerufen am 22. November 2016 .
- ^ VirtualDub -Dokumentation: Codecs , abgerufen am 08.08.2009
- ^ FOURCC.org Video Codecs - Komprimierte Formate (Archiviert am 23.05.2009 in der Wayback Machine , abgerufen am 08.08.2009)
- ^ Tom's Hardware (22.10.2001) : Eine schwierige Entscheidung: DivX 3.20a Codec immer noch besser als DivX 4.01 Codec , abgerufen am 08.08.2009
- ^ 3ivx , Abgerufen am 27.12.2014
- ^ Nero AG Was ist Nero Digital? , Abgerufen am 08.08.2009
- ^ a b refs/tags/v1.11.0 - webm/libvpx - Git at Google , Abgerufen am 14. Dezember 2021
- ^ Custom Technology Corporation CINEMA CRAFT - Download , abgerufen am 11.08.2009
- ^ Pegasys Inc. Neuigkeiten , abgerufen am 11.08.2009
- ^ Compression Technologies, Inc. , derzeitiger Betreiber von Cinepak
- ^ RealNetworks- Produkte – Codecs (Archiviert am 04.08.2004 in der Wayback Machine)
- ^ Huffyuv v2.1.1 , Abgerufen am 09.08.2009
- ^ Lagarith Lossless Video Codec , abgerufen am 10.02.2018
- ^ GmbH, MainConcept. „SDKs – Software Development Kits: MainConcept“ . Abgerufen am 22. November 2016 .
{{cite web}}CS1-Wartung: Veralteter Archivierungsdienst ( Link ) - ^ „MainConcept präsentiert neueste GPU-CUDA-Codierung auf der NVIDIA Technology Conference!: MainConcept“ . Archiviert vom Original am 2. Oktober 2010. Abgerufen am 26. Oktober 2010 .
- ^ GmbH, MainConcept. „SDKs – Software Development Kits: MainConcept“ . Abgerufen am 22. November 2016 .
{{cite web}}CS1-Wartung: Veralteter Archivierungsdienst ( Link ) - ^ GmbH, MainConcept. „SDKs – Adobe Plugins – Transkodierungssoftware – MainConcept-Produkte: MainConcept“ . Abgerufen am 22. November 2016 .
{{cite web}}CS1-Wartung: Veralteter Archivierungsdienst ( Link ) - ^ Speer, Michael F.; Don, Hoffman (21. August 1995). „RTP Payload Format of Sun's CellB Video Encoding“ . cs.columbia.edu . Archiviert vom Original am 10. August 2021.
- ^ "Holiday_greeting_1992" . GitHub . 11. Februar 2020.
- ^ Hoffman, Don; Speer, Michael F. (Oktober 1996). "RTP Payload Format of Sun's CellB Video Encoding" . Ietf Datatracker .
- ^ „XIL Programmer's Guide“ (PDF) . docs.oracle.com . Sun Microsystems. 1997. Archiviert (PDF) vom Original am 17. Oktober 2022.
- ^ „Netzwerk-Videotool“ . GitHub . 14. Oktober 2021.
- ^ a b c d „Elecard Group - Codec SDK G4 - h.264 codec, Codec SDK, Software Development Kit, mpeg2 decoder, mpeg-2 decoder, avc codec, MPEG Decoder, MPEG Encoder, MPEG Multiplexer, MPEG Audio Decoder, Graph Viewer, AVC Encoder, AAC Decoder, AAC Encoder, mpeg-4, API, sample application, source code“ . Abgerufen am 10. Februar 2018 .
- ^ Theora.org FAQ: Ist VP3 nicht eine patentierte Technologie?
- ^ Technische Beschreibung des Cinepak-Codecs (Archiviert am 05.02.2007 im Internet Archive) .
- ^ a b Bildrate, Auflösung usw. werden als Daten variabler Länge codiert.
- ^ a b "Theora-Formatspezifikation" (PDF) . (827 KB)
- ^ Benötigt etwa 3 Terabyte pro unkomprimiertem Frame bei maximaler Auflösung (S. 37, Theora I Spezifikation, 7. März 2006).