Ogg ist ein Container-Dateiformat für Multimedia-Dateien, kann also gleichzeitig Audio-, Video- sowie Textdaten enthalten. Ogg wurde mit dem Ziel konzipiert, eine freie und von Softwarepatenten unbeschränkte Alternative zu proprietären Formaten zu bieten, um Multimedia-Inhalte effizient zu speichern und zu streamen. Die Streamingfähigkeit ist dabei das entscheidende Designmerkmal: Alles, was in einem Ogg-Container verpackt ist, kann ohne zusätzliche Anpassungen gestreamt werden. Dies unterscheidet Ogg von Formaten, die entweder nur in bestimmten Ausprägungen streamingfähig sind (wie z. B. Matroska) oder überhaupt nicht live-streaming-fähig sind (wie z. B. MP4). Ogg-Streams können dabei gebündelt und verkettet werden, ohne dass dazu eine Anpassung des einzelnen Streams notwendig ist.[3]

Ogg
Vorbis Logo
Dateiendung: .ogg, .oga, .ogv, .ogx
MIME-Type: audio/ogg, video/ogg, application/ogg
Magische Zahl: 4f67.6753[1] hex
OggS

(ASCII)

Entwickelt von: Xiph.Org Foundation
Art: Containerformat
Container für: Vorbis, Theora, Speex, FLAC, Dirac, Opus und andere
Standard(s): RFC 3533[2]
xiph.org/ogg

Die Entwicklung des Container-Formats wird von der Xiph.Org Foundation geleitet, die auch für einige Codecs verantwortlich ist, welche die Inhalte in einem Ogg-Container komprimieren.

Der bekannteste Codec ist dabei der Audio-Codec Vorbis, welcher oft vereinfachend (oder auch irrtümlich) als Ogg bezeichnet wird, obwohl Ogg tatsächlich nur das Containerformat für die Vorbis-kodierten Inhalte ist. Seit 2012 setzt sich vermehrt auch das Vorbis-Nachfolgeformat Opus durch, insbesondere auch im professionellen Broadcast-Umfeld in Hardware-Audio-Codecs.

Geschichte

Bearbeiten

Die Entwicklung des Containerformats begann 1993 unter dem Namen „Squish“, der allerdings Markenrechte verletzte. Daher wurde der Name durch einen Ausdruck aus dem Computerspiel Netrek ersetzt, der so viel bedeutet wie to ogg: „to do anything forcefully, possibly without consideration of the drain on future resources“ (etwa: „etwas sehr energisch angehen, möglicherweise ohne Rücksicht auf die Belastung zukünftiger Ressourcen“).

Im Herbst 1998 begann Christopher Montgomery mit der Entwicklung des Audio-Codecs Vorbis, nachdem die Fraunhofer-Gesellschaft begonnen hatte, Lizenzgebühren für ihr populäres MP3-Format durchzusetzen. Durch die zunehmende Verbreitung von Vorbis erfuhr das Containerformat Ogg einen Aufschwung. Am 12. Juli 2002 wurde Ogg in der Version 1.0 freigegeben, die als erste stabile Version auch für Endanwender gedacht war.[4] Im Mai 2003 folgte die Definition durch RFCs: RFC 3533[2] definiert den verkapselnden Datenstrom, während RFC 3534[5] den Internet Media Type von Ogg-Dateien – application/ogg – definiert.

Im September 2008 wurde RFC 3534 durch RFC 5334[1] ersetzt. Dabei wurden der Internet Media Type application/ogg neu definiert und die Internet Media Types audio/ogg für Audiodaten und video/ogg für Videodaten ergänzt. Als Dateinamenserweiterungen wurden .ogx für application/ogg, .ogv für video/ogg und .oga, .ogg und .spx für audio/ogg festgelegt. Der selten noch gebrauchte Medientyp application/x-ogg hingegen stammt aus früherer Zeit, als der offizielle Typ noch nicht spezifiziert war. Nicht Teil der Ogg-Spezifikationen ist die Endung .ogm, diese gehört zum Ogg-verwandten (aber nicht identischen) Format Ogg Media, das sich von Ogg abspaltete, um zusätzliche Videoabspielfunktionen zu unterstützen.

Dateiformat

Bearbeiten

Das Ogg-Dateiformat ist ein Container-Bitstromformat. Der Container enthält Daten, die wiederum mit unterschiedlichen Codecs komprimiert sind. Bei der Komprimierung werden meist der Text-Codec Writ, der Sprachdaten-Codec Speex, die Audio-Codecs Vorbis oder FLAC sowie der Video-Codec Theora genutzt. Diese Daten werden dann, je nach ihrer Eigenschaft, in logische Bitströme (also Text, Audio, Videobild) gruppiert. Jeder logische Bitstrom wird dabei nur mit dem zu ihm passenden Codec weiterverarbeitet. In einem Container können mehrere logische Bitströme „eingelagert“ werden. Auch können mehrere logische Bitströme der gleichen Art (also z. B. drei logische Videoströme) in einem Container enthalten sein. Diese können sich bei Wiedergabe auch überlagern. Zur Speicherung oder Übertragung der Daten über das Netzwerk werden diese logischen Bitströme in einen physikalischen Bitstrom überführt (sogenannter Datenstrom). Dieser wird dann über das Netzwerk gesendet. Auf der Empfängerseite gewinnt ein Decoder aus diesem Datenstrom wieder die verschiedenen logischen Streams (also z. B. Text, Audio, Videobild) zurück.

Ogg ist ein Containerformat, das Video, Audio und andere Elemente beinhalten kann[6][1] (beispielsweise Dirac, MNG, CELT, MPEG-4, MP3 und andere), aber Ogg wurde hauptsächlich für die freien Xiph.org-Codecs entworfen. Im Folgenden werden beispielhaft einige verwendbare Codecs aufgelistet:

  • Audio
    • verlustbehaftet
      • Speex: Audiocodec für Sprache mit niedrigen Bitraten (~ 2.1–32 kbit/s pro Kanal)
      • Vorbis: behandelt Musik und Sprache für mittlere bis hohe Bitraten und auch mit variablen Bitraten (~ 16–500 kbit/s pro Kanal)
      • Opus: behandelt Sprache oder Musik mit niedriger oder hoher Bitrate (≈6–510 kbit/s pro Kanal)
    • verlustfrei
      • FLAC für verlustfrei komprimiertes Audio
    • unkomprimiert
      • OggPCM: unkomprimierte Musik oder Sprache in PCM-Audio, vergleichbar mit WAV[7]
  • Video
    • verlustbehaftet
      • Theora: basiert auf On2s VP3 und strebt eine hohe Kompatibilität mit MPEG-4-Video an (beispielsweise kodiert mit DivX oder Xvid, RealVideo oder Windows Media Video)
      • Daala: ein Videoformat, das nicht mehr aktiv weiterentwickelt wird
      • Tarkin: ein experimenteller und obsolet gewordener Videocodec, entwickelt von 2000 bis 2002; er wurde zugunsten von Theora im August 2002 fallen gelassen[8]
      • Dirac: ein freier Video-Codec von BBC, benutzt Wavelet-Enkodierung[9]
    • verlustfrei
      • Dirac: als Teil der Spezifikation für verlustfreie Videokompression in Dirac
      • Daala: der Codec wird nicht mehr aktiv weiterentwickelt
  • Text
    • Writ: unvollständiger Entwurf, Entwicklung eingestellt im Jahre 2007;[10]
    • Continuous Media Markup Language: ein Textcodec für zeitgesteuerte Metadaten, Überschriften und Formatierung;
    • Annodex: ein freier Codec für Fußnoten und Indexierung;
    • OggKate: ein Codec für Untertitel, das für Karaoke und Text geeignet ist; kann in Ogg gemultiplext werden.

Verbreitung

Bearbeiten

Ogg hat sich im IT-Bereich mittlerweile etabliert, im Audio-Bereich wird Ogg Vorbis von vielen Soft- und Hardwareprodukten unterstützt. Der große Durchbruch im Privatgebrauch blieb bisher aus, allerdings wird es aufgrund der Lizenzfreiheit in den meisten Browsern (mit Ausnahme von Apples Safari) in vielen Web-Audioplayern verwendet.

In diesem Bereich, aber auch im professionellen Studioumfeld, setzt sich mittlerweile auch das Vorbis-Nachfolgeformat Opus immer mehr durch. Es bietet gegenüber Vorbis eine weitaus höhere Qualität und funktioniert aufgrund seiner Hybridarchitektur (zwei Codec-Technologien in einem Codec) sowohl für niedrige Bitraten (Sprache) als auch für höhere Bitraten.

Im Video-Bereich ist Ogg Theora außerhalb der Open-Source-Szene nicht verbreitet. Ogg-Versionen gibt es beispielsweise zu den Kurzfilmen Big Buck Bunny (2008) und Sintel (2010). Beide Filme wurden ausschließlich mit freier Software erstellt und stehen unter der Creative-Commons-Namensnennungs-Lizenz (CC-BY).

Für HD-Videos setzt sich das ebenfalls freie Containerformat Matroska außerhalb der Open-Source-Szene durch.

Markenrechtliches

Bearbeiten

Die Bezeichnung Ogg war ab dem Jahr 2001 eine Zeit lang als Marke eingetragen. In dieser Zeit konnte eine Firma mit Sitz in London diese Marke laut eigenen Angaben mittelfristig für Abmahnungen nutzen; wer also die Bezeichnung Ogg beispielsweise auf einer Homepage verwendete, wurde gegebenenfalls per Abmahnung zu hohen Geldzahlungen aufgefordert. Diese Art der Markenführung verstieß jedoch schon immer gegen deutsches Markenrecht, hatte also keine rechtliche Relevanz.[11] Am 31. Dezember 2011 endete die Schutzdauer, die Marke wurde nicht verlängert und ist somit erloschen.[12]

Ein FFmpeg-Entwickler schätzte im März 2010 die Qualitäten von Ogg als Containerformat kritisch ein. Unter anderem führt er an, dass der Dateigrößen-Overhead mit 1 % im Vergleich zum ISO-MP4-Format mindestens achtmal größer sei und auch dass Ogg nicht geeignet sei für Anwendungen, die kurze Latenzzeiten benötigen. Als Alternative mit diesbezüglich angeblich besseren Eigenschaften empfiehlt er das Containerformat Matroska.[13]

Der Ogg-Entwickler bezeichnete dessen Behauptungen allerdings als zum größten Teil unsachlich und falsch. Unter anderem seien MP4 und Matroska genauso wenig für Anwendungen mit kurzen Latenzen geeignet wie Ogg, insbesondere, weil der MP4-Container überhaupt nicht live streambar sei, und um die sonstigen Stream-Eigenschaften von Ogg zu erreichen, müsse man einen prinzipbedingt höheren Anteil an Verwaltungsdaten hinnehmen. Wenn Matroska gestreamt werden solle, erhöhe sich dort der Anteil sogar über den des Ogg-Containers. Im Allgemeinen warf er dem Kritiker vor, für jede Einzeleigenschaft jeweils einen bestimmten anderen Container zum Vergleich herauszupicken und dabei zu vergessen, dass jeder Container für bestimmte Einsatzzwecke angepasst sein müsse und dafür zwangsweise in anderen Fällen nur suboptimal sein könne.[14]

Bearbeiten

Einzelnachweise

Bearbeiten
  1. a b c RFC 5334 – Ogg Media Types. September 2008 (löst RFC 3534 ab, aktualisiert durch RFC 7845, englisch).
  2. a b RFC 3533 – The Ogg Encapsulation Format Version 0. März 2003 (englisch).
  3. Ogg bitstream overview. Abgerufen am 3. März 2011 (englisch).
  4. Nico Jurran: Freies Audio-Format Ogg Vorbis glänzt golden. Heise online, 12. Juli 2002.
  5. RFC 3534 – The application/ogg Media Type. Mai 2003 (englisch).
  6. MIME Types and File Extensions. In: XiphWiki. 4. Oktober 2009, abgerufen am 24. Oktober 2009 (englisch).
  7. OggPCM. In: wiki.xiph.org. Abgerufen am 29. Juli 2012 (englisch).
  8. Michael Smith: Tarkin. xiph.org, 29. August 2005 (englisch); abgerufen am 6. September 2009.
  9. Dirac specification – integration of Dirac encoded video into commonly used container formats. (Memento vom 10. Januar 2011 im Internet Archive) diracvideo.org
  10. OggWrit. In: Xiph.org. 10. November 2007, abgerufen am 13. April 2015 (englisch). „at best incomplete and at worst completely broken. In any case, it is not an ‘official’ Xiph spec/codec“
  11. Wolf-Dieter Roth: Ist „Ogg“ bald nicht mehr Open Source? Telepolis, 2. Oktober 2005.
  12. Auskunft zur Marke „Ogg“ im Register des Deutschen Patent- und Markenamtes (DPMA)
  13. Mans Rullgard: Ogg objections. hardwarebug.org, 3. März 2010, abgerufen am 2. Mai 2010 (englisch).
  14. Chris Montgomery: Monty – In Defense of Ogg’s Good Name. people.xiph.org/~xiphmont, 27. April 2010, abgerufen am 2. Mai 2010 (englisch).