x264

x264
Open Source H.264 Encoder – x264
X264 Logo.png
freier H.264-Kodierer
Basisdaten
Entwickler x264-Team
Aktuelle Version Revision 2106
(22. Oktober 2011)
Betriebssystem plattformunabhängig
Programmier­sprache ISO-C
Kategorie Videokompression
Lizenz GPL, proprietär (wahlweise)
videolan.org/developers/x264.html

x264 ist ein plattformübergreifender Encoder für das Video-Format H.264 (MPEG-4 AVC) und wird unter der GNU General Public License veröffentlicht.

Die x264-Kodierer-Bibliothek wird von Laurent Aimar, Loren Merritt, Jason Garrett-Glaser, Eric Petit, Min Chen, Justin Clay, Måns Rullgård, Radek Czyz, Christian Heine, Holger Lubitz, Alex Izvorski und Alex Wright entwickelt. Der Programmcode ist in ISO-C geschrieben.

Inhaltsverzeichnis

Bedienung

Der x264-Kodierer wird u. a. als Kommandozeilenprogramm (CLI) zur Verfügung gestellt. Das Programm kann als Quelle unkomprimierte Rohdaten (YCbCr-Farbmodell 4:2:0-Format), AviSynth-Skripte, sowie alle von FFmpeg lesbaren Formate verarbeiten.[1]

Alternativ dazu gibt es verschiedene grafische Benutzeroberflächen, die die Bedienung des CLI-Kodierer vereinfachen. Die populärsten sind StaxRip, MeGUI, Gordian Knot, HandBrake und x264gtk. Auch der plattformunabhängige Video-Editor Avidemux bietet die Möglichkeit, Videos mit x264 zu enkodieren. Darüber hinaus ist ein Wrapper für die Video-for-Windows-Schnittstelle (VfW) verfügbar, der die Verwendung von x264 in VirtualDub ermöglicht. Allerdings unterliegt das VfW-Interface von x264 einigen Einschränkungen und wird von den Entwicklern nicht empfohlen. Um dieser Empfehlung Nachdruck zu verleihen, wurde die VfW-Version mittlerweile eingestellt. Mit DTS x264 VfW existiert eine inoffizielle Version, die die Kompatibilität mit dem AVI-Format wieder herstellt, die Dekodierung von Videos unterstützt und wie gewohnt verwendet werden kann.[2] Eine weitere Möglichkeit, den x264-Kodierer über ein Kommandozeilen-Interface zu verwenden, ist mit MEncoder oder FFmpeg gegeben.

Technische Details

Als H.264-Kodierer arbeitet x264 deutlich effizienter als Kodierer, die auf dem einfacheren MPEG-4 ASP basieren (etwa der DivX-Codec bis v6), oder solche Kodierer, die das noch ältere MPEG-2-Verfahren verwenden. Das bedeutet, dass x264 im Vergleich zu früheren Codecs bei gegebener Datenrate eine bessere Bildqualität liefert bzw. bei gegebener Qualität eine stärkere Kompression erreicht. x264 unterstützt auch die anspruchsvolleren Profile wie etwa das High Profile und Hi10p des H.264-Standards (Details im entsprechenden Artikel). Außerdem ist x264 in der Lage, gewisse Berechnungen parallel auszuführen, sodass symmetrische Multiprozessorsysteme optimal ausgenutzt werden können. Allerdings wurden einige Funktionen des H.264-Standards im x264-Codec (noch) nicht implementiert, so etwa die Fehlerkorrektur des Baseline Profile. Beachtet werden sollte auch, dass x264 – wie jeder H.264-Codec – deutlich rechenintensiver ist als die einfacheren MPEG-4 ASP-basierten Codecs. Somit erfordert die Encodierung mehr Zeit und für die Wiedergabe werden höhere Anforderungen an das System gestellt. Die Wiedergabe mit Prozessoren unter 800 MHz kann daher Probleme bereiten, insbesondere wenn diese nicht über den SSE-Befehlssatz verfügen. Seit r1480 ist es mit dem x264-Encoder möglich, der Blu-ray-Spezifikation entsprechende Bitströme zu generieren und ihn somit bei der Erstellung von Blu-ray-Discs einzusetzen.

Unterstützte H.264-Merkmale

  • CAVLC/CABAC
  • Multiple Referenzen
  • Intra-Frames: Alle Makroblock-Typen (16×16, 8×8 (High Profile), und 4×4 mit allen Prognosen)
  • Innerhalb von P-Bildern: Alle Partitionsgrößen (von 16×16 bis 4×4)
  • Innerhalb von B-Bildern: Partitionen von 16×16 bis 8×8 (inklusive überspringen/direkt)
  • B-Frames als Referenz / beliebige Frame-Reihenfolge
  • 8×8 und 4×4 adaptive räumliche Transformierung (High Profile)
  • Verlustfreie Kompression (optional)
  • Benutzerdefinierte Quantisierungs-Matrizen (High Profile)
  • Optimiert für mehrere Prozessoren bzw. Mehrkernprozessoren
  • Gemischte Referenz-Frames für Sub-Makroblöcke
  • Integrierter Deblocking-Filter
  • Zeilensprungverfahren (MBAFF)
  • 8-, 9- und 10 bit Sampling-Tiefe
  • Unterstützung für 4:2:0, 4:2:2 und 4:4:4 Chroma Subsampling

Zusätzliche Merkmale

  • Frame-basiertes Multithreading, skaliert auf mindestens 16 CPU Kerne[3]
  • Verschiedene Modi zur Steuerung der Datenrate: Konstante Quantisierung, konstante Datenrate, mittlere Datenrate mit einem oder mehreren Durchläufen
  • Bitratensteuerung im Makroblock-Baum-Verfahren[4]
  • Lookahead VBV (Video Buffering Verifier)[5]
  • Psychovisuell optimierte Abstimmung der Bitrate auf die Bildqualität („Psy RDO“) und Trellis-Quantisierung („Psy Trellis“)[6]
  • Variance AQ (Adaptive Quantisierung)[7] und AutoVAQ[8]
  • Optimale adaptive B-Frame Steuerung[9]
  • Unterstützung mehrerer Slices („Multi-slice“), wird für BluRay Kompatibilität benötigt[10]
  • Lookahead-Funktion in einem separaten Thread („Threaded lookahead“)[11]
  • Weighted P-Frame Prediction (entwickelt im Rahmen von GSoC 2009)[12]
  • Bitrate/Qualität-Optimierung
  • Szenen-Wechsel-Erkennung
  • Verschiedene Bewegungserkennungs-Modi (u. a. Diamond, Hexagon, Multi-Hexagon sowie erschöpfende Suche)
  • DCT – Domain Rauschfilter
  • RD-Optimierte Quantisierung („Trellis“)

Freie und Open Source Software

x264 ist eine freie Open-Source-Software (FOSS). Dies bedeutet unter anderem, dass der Quelltext frei verfügbar ist und man somit das Programm selbst kompilieren kann. Dabei ist es möglich, das Programm an den eigenen Hauptprozessor und das Betriebssystem anzupassen. Auf der x264-Homepage findet man keine offiziellen Builds, sondern nur die jeweils aktuelle Fassung des Quellcodes. Allerdings sind diverse inoffizielle Builds verfügbar, so dass auch Anwender ohne spezielle Kenntnisse den x264-Codec einfach installieren und nutzen können. Fertige Builds gibt es zum Beispiel für Windows (32-Bit, 64-Bit), Linux oder Mac OS X. Die gebräuchlichsten x264-Builds für Windows dürften momentan wohl die von Sharktooth (Doom9.net-Forum) und Bob0r (www.x264.nl) sein. Dort sind fast täglich Updates verfügbar.

Am 14. Juli 2010 hat Jason Garrett-Glaser, der derzeitige Projektleiter, bekannt gegeben, dass x264 ab sofort auch mit einer kommerziellen Lizenz erworben werden kann, damit Lizenznehmer die Software auch vertreiben können, ohne (selbst) den Quellcode anbieten zu müssen.[13] Die günstigste Lizenzgebühr soll $10.000 für 10.000 Encoder-Einheiten betragen.[14] Der erste Lizenznehmer ist Pegasys TMPGEnc.[15]

Weblinks

Einzelnachweise

  1. FFMS2/libav*-Patch (x264-git) [1]
  2. Codecs.com: DTS x264 VfW
  3. http://git.videolan.org/gitweb.cgi?p=x264.git;a=blob_plain;f=doc/threads.txt
  4. http://forum.doom9.org/showthread.php?t=148686
  5. http://forum.doom9.org/showthread.php?t=148964
  6. http://forum.doom9.org/showthread.php?t=138293
  7. http://forum.doom9.org/showthread.php?t=132760
  8. http://forum.doom9.org/showthread.php?t=147067
  9. http://forum.doom9.org/showthread.php?t=139827
  10. http://git.videolan.org/gitweb.cgi?p=x264.git;a=commitdiff;h=4d553edf178bf0ae01547731a48e1fb08c5cc1f4
  11. http://git.videolan.org/gitweb.cgi?p=x264.git;a=commitdiff;h=5b3c89c592e412fc02fd8001ee361ea50c249153
  12. http://git.videolan.org/gitweb.cgi?p=x264.git;a=commit;h=87de2346225721e8ca68a1b59bc87133fc598a42
  13. http://www.heise.de/newsticker/meldung/Kommerzielle-Lizenzen-fuer-H-264-Encoder-x264-1037582.html
  14. http://mailman.videolan.org/pipermail/x264-devel/2010-July/007508.html
  15. http://x264dev.multimedia.cx/archives/584

Wikimedia Foundation.

Игры ⚽ Нужно сделать НИР?

Schlagen Sie auch in anderen Wörterbüchern nach:

  • X264 — Saltar a navegación, búsqueda x264 Desarrollador Equipo de x264 www.videolan.org …   Wikipedia Español

  • X264 — Usage workflow Тип Мультимедийный фреймворк Разработчик x264 team ОС кроссплатформенный …   Википедия

  • X264 — Développeurs L équipe de x264 Version avancée Git [+/−] …   Wikipédia en Français

  • x264 — Développeurs Équipe du projet VideoLAN Version avancée Git [ …   Wikipédia en Français

  • X264 — Open Source H.264 Encoder – x264 freier H.264 Kodierer Basisdaten Entwickler: VideoLAN Aktuelle  …   Deutsch Wikipedia

  • x264 — El texto que sigue es una traducción defectuosa o incompleta. Si quieres colaborar con Wikipedia, busca el artículo original y mejora o finaliza esta traducción. Puedes dar aviso al autor principal del artículo pegando el siguiente código en su… …   Wikipedia Español

  • x264 — Эта статья или раздел нуждается в переработке. Пожалуйста, улучшите статью в соответствии с правилами написания статей …   Википедия

  • X264 — lowercaseInfobox Software name = x264 caption = Usage workflow developer = x264 team operating system = Cross platform genre = Multimedia framework license = GPL website = http://www.videolan.org/developers/x264.htmlx264 is a free software… …   Wikipedia

  • X.264 — Open Source H.264 Encoder – x264 freier H.264 Kodierer Basisdaten Entwickler: VideoLAN Aktuelle  …   Deutsch Wikipedia

  • Comparison of video codecs — A video codec is software or a device that provides encoding and decoding which may or may not include the use of video compression and/or decompression for digital video. The compression may employ lossy data compression, so quality measurement… …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”