Static Wikipedia February 2008 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu

Web Analytics
Cookie Policy Terms and Conditions X264 - Wikipedia

X264

aus Wikipedia, der freien Enzyklopädie

Der korrekte Titel dieses Artikels lautet „x264“. Diese Schreibweise ist aufgrund technischer Einschränkungen nicht möglich.
Open Source H.264 Encoder - x264
Bild:X264_Logo.png
freier H.264-Encoder
Basisdaten
Entwickler: VideoLAN
Aktuelle Version: Build 622
(29.01.2007)
Betriebssystem: plattformunabhängig
Kategorie: Videokompression
Lizenz: GPL
Deutschsprachig: nein
Website: videolan.org

x264 ist ein freier und plattformübergreifender Encoder für das H.264 (MPEG-4 AVC) Video-Format und wird unter der GNU General Public License veröffentlicht. Der Encoder befindet sich zur Zeit noch in intensiver Entwicklung – es erscheinen fast täglich neue Revisionen- und ist deshalb als Software im Alpha-Stadium anzusehen. Die x264-Encoder-Bibliothek wird von Laurent Aimar, Loren Merritt, Eric Petit (OS X), Min Chen (vfw/asm), Justin Clay (vfw), Måns Rullgård, Radek Czyz, Christian Heine (asm), Alex Izvorski (asm) und Alex Wright entwickelt. Der Programmcode ist in ISO-C geschrieben.

x264 bietet sehr viele Features und liefert sehr gute Qualität bei hoher Geschwindigkeit. So wurde x264 etwa bei einem groß angelegten Codec-Vergleich auf Doom9.org als Sieger gekürt und konnte sich damit gegen Nero Digital behaupten. Genauere Angaben zur Arbeitsweise von H.264 finden sich unter dem entsprechenden Artikel, hier soll nur auf die Besonderheiten von x264 eingegangen werden. Seit einiger Zeit gibt es auch eine Implementierung vom Xvid-Team namens Xvid avc die unter GPL steht. Aber auch hiervon gibt es bisher noch keine Releases.

Inhaltsverzeichnis

[Bearbeiten] Bedienung

Der x264-Encoder wird u. a. als Kommandozeilenprogramm (CLI) zur Verfügung gestellt. Dieses Programm kann als Quelle unkomprimierte Rohdaten (YCbCr-Farbmodell 4:2:0-Format) und AVI-Dateien (nur unkomprimiert) sowie AviSynth-Skripte verarbeiten. Der encodierte Bitstream kann wahlweise in einem MP4- oder Matroska-Container ausgegeben werden. Auch die Ausgabe als Rohdaten ist möglich. Solche Rohdaten können dann z.B. mit MP4Box (GPAC) oder mkvmerge in einen geeigneten Container gemultiplext werden.

Alternativ dazu gibt es verschiedene grafische Benutzeroberflächen, die die Bedienung des CLI-Encoders vereinfachen. Die populärsten sind MeGUI, StaxRip, Gordian Knot 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 (VfW) Schnittstelle 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. Eine weitere Möglichkeit, den x264-Encoder über ein Kommandozeilen-Interface zu verwenden, ist mit MEncoder gegeben.

[Bearbeiten] Technisches

Als H.264-Encoder arbeitet x264 deutlich effizienter als Codecs, die auf dem einfacheren MPEG-4 ASP basieren (etwa der bekannte DivX-Codec), oder solche Encoder, 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 basiert dabei auf dem komplexesten und leistungsfähigsten Profil, dem High Profile, des H.264-Standards (Details im entsprechenden Artikel). Außerdem ist x264 in der Lage, gewisse Berechnungen parallel auszuführen, so dass 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 oder die Verarbeitung von Interlaced-Videos. 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. Zudem ist x264 in seiner frühen Entwicklungsphase noch nicht sehr auf Geschwindigkeit hin optimiert.

[Bearbeiten] Unterstützte H.264-Features

  • CAVLC/CABAC
  • Multiple-Referenzen
  • Intra-Frames: Alle Makroblock Typen (16×16, 8×8 (High Profile), und 4×4 mit allen Prognosen)
  • Innerhalb von P-Frames: Alle Partitionsgrößen (von 16×16 bis 4×4)
  • Innerhalb von B-Frames: 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) (High 4:4:4 Profile)
  • Benutzerdefinierte Quantisierungs-Matrizen (High Profile)
  • Optimiert für mehrere Prozessoren
  • Gemischte Referenz-Frames für Sub-Makroblöcke
  • Integrierter Deblocking-Filter

[Bearbeiten] Zusätzliche Features

  • Rate-Control: Konstante Quantisierung, Konstanter Rate-Faktor, Mittlere Datenrate mit einem oder mehreren Durchläufen
  • Rate-Distortion-Optimierung
  • Adaptive B-Frame-Steuerung
  • Szenen-Wechsel-Erkennung
  • Verschiedene Bewegungserkennungs-Modi (u. a Diamond, Hexagon, Multi-Hexagon)
  • DCT - Domain Rauschfilter
  • RD-Optimierte Quantisierung (Trellis)

[Bearbeiten] Open Source

x264 ist Open Source, d. h. der Quelltext ist frei verfügbar, sodass man das Programm selber kompilieren kann. Dabei ist es möglich, das Programm an den eigenen Hauptprozessor bzw. an das Betriebssystem anzupassen. Auf der x264-Homepage findet man zum aktuellen Zeitpunkt noch keine offiziellen Builds, sondern nur die jeweils aktuelle Fassung des Quellcodes. Allerdings sind bereits 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), Linux oder Mac OS X. Builds für die 64-Bit-Edition von Windows befinden sich zur Zeit in der Entwicklung. Die gebräuchlichsten x264-Builds für Windows dürften momentan wohl die von Sharktooth (Doom9.org-Forum) und Bob0r (www.x264.nl) sein. Dort sind fast täglich Updates verfügbar.

[Bearbeiten] Wiedergabe

Im Gegensatz zu beispielsweise XviD oder DivX beinhaltet der x264-Codec keinen Decoder. Um Videos, die mit x264 komprimiert wurden, auf dem PC abspielen zu können, benötigt man daher zusätzliche Software. Da solche Videos dem H.264-Standard entsprechen, kann man theoretisch jeden H.264-kompatiblen Decoder verwenden. Allerdings empfehlen die x264-Entwickler den freien Decoder-Filter ffdshow zu verwenden, um x264 komprimierte Videos unter Windows abzuspielen. ffdshow wird in Kooperation mit dem x264-Projekt speziell für die neuste Entwicklung des x264-Encoders optimiert. Es stehen aber auch weitere, allerdings kostenpflichtige, H.264-Decoder, wie etwa CoreAVCoder Nero Digital zur Verfügung. Neben der Installation von ffdshow (oder eines anderen geeigneten Decoders) ist ebenfalls das Vorhandensein eines DirectShow basierten Multimedia-Players wie beispielsweise dem Windows Media Player oder dem Media Player Classic notwendig.

Eine Alternative zu DirectShow-basierten Playern ist mit dem MPlayer und dem VLC media player gegeben. Beide beherrschen optional die Decodierung von H.264 und können alle relevanten Container lesen. Zudem sind beide Programme frei verfügbar. Der ffdshow-Filter, MPlayer und der VLC-Player greifen zur Decodierung von H.264 auf die libavcodec-Bibliothek zurück, welche benutzerdefinierte Quantisierungsmatrizen unterstützt.

Weiterhin ist QuickTime ab Version 7 von Apple Inc. in der Lage, H.264 abzuspielen. QuickTime ist für aktuelle Versionen von Mac OS X und Windows verfügbar.

Da x264 nicht an ein bestimmtes Containerformat gebunden ist, können die Videos als MP4-, aber auch als AVI-, Matroska- oder Ogg Media-Datei vorliegen. Es ist sogar möglich, x264-Videos als Roh-Daten zu speichern (.264). Benötigt werden neben einem Decoder also auch ein Splitter (Demuxer), der das jeweils benutzte Containerformat unterstützt. Unter Windows ist dafür der Haali Media Splitter zu empfehlen, ein Quellenfilter für DirectShow, der nahezu alle relevanten Containerformate beherrscht. Zusammenfassend gilt also: Zum Erstellen eines Videos benötigt man den x264-Encoder (Kommandozeilenbasiert) und ggf. eine obligatorische grafische Benutzeroberfläche. Zum Abspielen benötigt man dagegen den ffdshow-Filter, einen DirectShow-basierten Player, eventuell noch den Haali Media-Splitter oder einen Videoplayer welcher alle benötigen Codecs bereits beinhaltet wie z.B. den VLC media player.

Derzeit gibt es erst wenige Standalone-Player, die x264-komprimierte Videos abspielen können. Die Wiedergabe ohne Computer ist daher im Moment noch problematisch. Die ersten H.264-fähigen Standalone-Player (etwa Sonys PlayStation Portable und Apples iPod Video) sind zudem auf bestimmte Profile und Levels beschränkt, so dass nicht alle Features von x264 unterstützt werden. Es sollte auch beachtet werden, dass Standalone-Player normalerweise auf den MP4-Container beschränkt sind.

Mittlerweile wird die x264-Technik auch von Google in ihrer kostenlosen Videoabspielsoftware Google Video Player für Mac Computer verwendet. Die Software soll später hauptsächlich in Googles Videoportal verwendet werden können. Quelle: Heise-Meldung

[Bearbeiten] Einschränkungen

Durch die kontinuierliche Weiterentwicklung, die auf einer Verbesserung des Codecs abziehlt, enthält die Software noch einige Fehler bzw. nicht komplett umgesetzte Funktionen. Die Ausgabequalität kann damit von Version zu Version schwanken. Derzeit (Stand: Januar 2007) sei vor allem auf das Auftreten von Blockbildungen hingewiesen. Diese treten gelegentlich in sehr glatten oder kontrastarmen Flächen oder in dunklen Bildbereichen auf, da der Encoder der Szene zu wenig Bitrate zuordnet. In zukünftigen Versionen kann diese Einschränkung selbstverständlich behoben werden. Im Forum von Doom9.org werden diese Probleme diskutiert.


[Bearbeiten] Weblinks

Weiterführendes:

Static Wikipedia 2008 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -

Static Wikipedia 2007 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -

Static Wikipedia 2006 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu