Ogg

{{Short description|Open container format by Xiph.Org Foundation}}

{{Other uses|Ogg (disambiguation)}}

{{Redirect|OGM||Ogm (disambiguation)}}

{{infobox file format

| name = Ogg

| icon =

| logo =

| extension = .ogg, .ogv, .oga, .ogx, .ogm, .spx

| mime = video/ogg, audio/ogg, application/ogg

| magic = OggS

| owner = Xiph.Org Foundation

| genre = Container format

| container for = Vorbis, Theora, Speex, Opus, FLAC, Dirac, and others.

| open = Yes

| free = Yes{{cite tech report |publisher=Library of Congress |location=Washington, D.C. |series=Sustainability of Digital Formats |type=Full draft |title=Ogg File Format |date=19 February 2008 |url=https://www.loc.gov/preservation/digital/formats/fdd/fdd000026.shtml |access-date=1 December 2021 |archive-date=8 October 2021 |archive-url=https://web.archive.org/web/20211008114103/https://www.loc.gov/preservation/digital/formats/fdd/fdd000026.shtml |url-status=live }}

| released = {{start date and age|2003|05|df=y}}

}}

{{Infobox software

| name = libogg

| logo = Ogg Logo.svg

| logo size =

| developer = Xiph.Org Foundation

| released = {{start date and age|2004|09|22|df=y}}

| latest_release_version = 1.3.5

| latest_release_date = {{start date and age|2021|06|04|df=y}}

| genre = Reference implementation (multiplexer/demultiplexer)

| license = BSD-style license{{cite web | publisher = Xiph.Org Foundation | title = Sample Xiph.Org Variant of the BSD License | url = http://www.xiph.org/licenses/bsd/ | access-date = 2009-08-29 | archive-date = 2020-04-11 | archive-url = https://web.archive.org/web/20200411163951/https://www.xiph.org/licenses/bsd/ | url-status = live }}

| website = {{URL|downloads.xiph.org/releases/ogg/}}

}}

Ogg is a digital multimedia container format designed to provide for efficient streaming and manipulation of digital multimedia. It is maintained by the Xiph.Org Foundation and is free and open, unrestricted by software patents.{{Cite web |url=http://www.vorbis.com/faq/#what |title=Vorbis.com: FAQ |access-date=2010-05-28 |archive-url=https://web.archive.org/web/20051001065649/http://vorbis.com/faq/#what |archive-date=2005-10-01 |url-status=dead }} Its name is derived from "ogging", jargon from the computer game Netrek.{{cite web | quote=3.3 Ogging: This is the art of killing a carrier, or potential carrier, by a suicide run. | title=Ogging 101 | url=http://www.netrek.org/clueguides/ogging-101.html | access-date=2016-11-06 | archive-date=2017-12-25 | archive-url=https://web.archive.org/web/20171225161547/http://www.netrek.org/clueguides/ogging-101.html | url-status=live }}{{Better source needed|reason=that one defines the word ogging, but not its relationship with the media container. Perhaps http://lists.xiph.org/pipermail//vorbis/2000-September/013011.html would be a usable citation?|date=April 2025}}

The Ogg container format can multiplex a number of independent streams for audio, video, text (such as subtitles), and metadata. In the Ogg multimedia framework, Theora provides a lossy video layer. The audio layer is most commonly provided by the music-oriented Vorbis format or its successor Opus. Lossless audio compression formats include FLAC, and OggPCM.

Until 2007, the .ogg filename extension was used for all files whose content used the Ogg container format. Since then, the Xiph.Org Foundation recommends that .ogg only be used for Ogg Vorbis audio files. Xiph.Org decided to create a new set of file extensions and media types to describe different types of content such as .oga for audio only files, .ogv for video with or without sound (including Theora), and .ogx for multiplexed Ogg.{{cite web

|url = http://wiki.xiph.org/index.php/MIME_Types_and_File_Extensions

|title = MIME Types and File Extensions

|work = XiphWiki

|date = 2007-09-07

|access-date = 2007-09-10

|archive-date = 2018-11-17

|archive-url = https://web.archive.org/web/20181117004309/https://wiki.xiph.org/index.php/MIME_Types_and_File_Extensions

|url-status = live

}}

Ogg's various codecs have been incorporated into a number of different free and proprietary media players, both commercial and non-commercial, as well as portable media players and GPS receivers from different manufacturers.

As of November 7, 2017, the current version of the Xiph.Org Foundation's reference implementation is libogg 1.3.3.{{cite mailing list |last=Giles |first=Ralph |title=libogg 1.3.3 release |mailing-list=ogg-dev |url=http://lists.xiph.org/pipermail/ogg-dev/2017-November/001933.html |date=2017-11-07 |access-date=2019-01-14 |archive-date=2018-04-04 |archive-url=https://web.archive.org/web/20180404073629/http://lists.xiph.org/pipermail/ogg-dev/2017-November/001933.html |url-status=live }} Another version, libogg2, has been in development, but is awaiting a rewrite as of 2018.{{cite mailing list |last=Giles |first=Ralph |url=http://lists.xiph.org/pipermail/commits/2008-January/012792.html |title=r14372 - in trunk/theora: . lib/dec lib/enc |mailing-list=xiph-commits |quote=This library was never released and now looks like it needs to be redesigned. |date=2008-01-05 |access-date=2019-01-14 |archive-date=2020-10-03 |archive-url=https://web.archive.org/web/20201003153343/http://lists.xiph.org/pipermail/commits/2008-January/012792.html |url-status=live }} Both software libraries are free software, released under the New BSD License. Ogg reference implementation was separated from Vorbis on September 2, 2000.Xiph.Org (2002-07-19) [http://downloads.xiph.org/releases/ogg/ Ogg releases - libogg-1.0.tar.gz - CHANGES] {{Webarchive|url=https://web.archive.org/web/20170614174325/http://downloads.xiph.org/releases/ogg/ |date=2017-06-14 }}. Retrieved 2009-09-01.

Naming

The Ogg Vorbis project started in 1993. It was originally named "Squish" but that name was already trademarked, so the project underwent a name change. The new name, "OggSquish", was used until 2001 when it was changed again to "Ogg". Ogg has since come to refer to the container format, which is now part of the larger Xiph.org multimedia project. Today, "Squish" (now known as "Vorbis") refers to a particular audio coding format typically used with the Ogg container format.

Ogg is derived from "ogging", jargon from the computer game Netrek, which came to mean doing something forcefully, possibly without consideration of the drain on future resources.{{Failed verification|reason=The URL talks about intentional suicide runs to take out more powerful enemies which is nearly the exact opposite of not caring about future resources; it's a weighed decision to expend resources to remove a threat that would result in even worse resource loss in the future|date=August 2024}} At its inception, the Ogg project was thought by the authors to be somewhat ambitious given the limited power of the PC hardware of the time. Although the name Ogg is unrelated to the character Nanny Ogg in Terry Pratchett's Discworld novels, "Vorbis" is named after another Terry Pratchett character from the book Small Gods.{{cite web|publisher=Xiph.org Foundation|url=http://xiph.org/xiphname|date=2006-01-07|title=Xiph.org: naming|access-date=2009-09-02|archive-date=2012-02-27|archive-url=https://web.archive.org/web/20120227092222/http://www.xiph.org/xiphname|url-status=dead}}

File format

The "Ogg" bitstream format, designed principally by the Xiph.Org Foundation, has been developed as the framework of a larger initiative aimed at producing a set of components for the coding and decoding of multimedia files, which are available free of charge and freely re-implementable in software and hardware.

The format consists of chunks of data each called an "Ogg page". Each page begins with the characters "OggS" to identify the file as Ogg format.

A "serial number" and "page number" in the page header identifies each page as part of a series of pages making up a bitstream. Multiple bitstreams may be multiplexed in the file where pages from each bitstream are ordered by the seek time of the contained data. Bitstreams may also be appended to existing files, a process known as "chaining", to cause the bitstreams to be decoded in sequence.

A BSD-licensed library, called "libvorbis", is available to encode and decode data from "Vorbis" streams. Independent Ogg implementations are used in several projects such as RealPlayer and a set of DirectShow filters.{{cite web| url = http://xiph.org/dshow/| title = Directshow Filters for Ogg Vorbis| access-date = 2015-02-14| archive-date = 2015-02-08| archive-url = https://web.archive.org/web/20150208215333/http://www.xiph.org/dshow/| url-status = live}}

Mogg, the "Multi-Track-Single-Logical-Stream Ogg-Vorbis", is the multi-channel or multi-track Ogg file format.

=Page structure=

The following is the field layout of an Ogg page header:

File:Ogg page header structure (en).svg

;Capture pattern – 32 bits

:The capture pattern or sync code is a magic number used to ensure synchronization when parsing Ogg files. Every page starts with the four ASCII character sequence, "OggS". This assists in resynchronizing a parser in cases where data has been lost or is corrupted, and is a sanity check before commencing parsing of the page structure.

;Version – 8 bits

:This field indicates the version of the Ogg bitstream format, to allow for future expansion. It is currently mandated to be 0.

;Header type – 8 bits

:This is an 8 bit field of flags, which indicates the type of page that follows.

:

class="wikitable"

! style="width:5%;"|Bit

! style="width:10%;"|Value

! style="width:10%;"|Flag

! style="width:75%;"|Page type

0

|0x01

|Continuation

|The first packet on this page is a continuation of the previous packet in the logical bitstream.

1

|0x02

|BOS

|Beginning Of Stream. This page is the first page in the logical bitstream. The BOS flag must be set on the first page of every logical bitstream, and must not be set on any other page.

2

|0x04

|EOS

|End Of Stream. This page is the last page in the logical bitstream. The EOS flag must be set on the final page of every logical bitstream, and must not be set on any other page.

;Granule position – 64 bits

:A granule position is the time marker in Ogg files. It is an abstract value, whose meaning is determined by the codec. It may, for example, be a count of the number of samples, the number of frames or a more complex scheme.

;Bitstream serial number – 32 bits

:This field is a serial number that identifies a page as belonging to a particular logical bitstream. Each logical bitstream in a file has a unique value, and this field allows implementations to deliver the pages to the appropriate decoder. In a typical Vorbis and Theora file, one stream is the audio (Vorbis), and the other is the video (Theora)

;Page sequence number – 32 bits

:This field is a monotonically increasing field for each logical bitstream. The first page is 0, the second 1, etc. This allows implementations to detect when data has been lost.

;Checksum – 32 bits

:This field provides a CRC32 checksum of the data in the entire page (including the page header, calculated with the checksum field set to 0). This allows verification that the data has not been corrupted since it was authored. Pages that fail the checksum should be discarded. The checksum is generated using a polynomial value of 0x04C11DB7.

;Page segments – 8 bits

:This field indicates the number of segments that exist in this page. It also indicates how many bytes are in the segment table that follows this field. There can be a maximum of 255 segments in any one page.

;Segment table

:The segment table is an array of 8-bit values, each indicating the length of the corresponding segment within the page body. The number of segments is determined from the preceding page segments field. Each segment is between 0 and 255 bytes in length.

The segments provide a way to group segments into packets, which are meaningful units of data for the decoder. When the segment's length is indicated to be 255, this indicates that the following segment is to be concatenated to this one and is part of the same packet. When the segment's length is 0–254, this indicates that this segment is the final segment in this packet. Where a packet's length is a multiple of 255, the final segment is length 0.

Where the final packet continues on the next page, the final segment value is 255, and the continuation flag is set on the following page to indicate that the start of the new page is a continuation of last page.

=Metadata=

{{Main article|Vorbis comment}}

VorbisComment is a base-level Metadata format initially authored for use with Ogg Vorbis. It has since been adopted in the specifications of Ogg encapsulations for other Xiph.Org codecs including Theora, Speex, FLAC and Opus. VorbisComment is the simplest and most widely supported mechanism for storing metadata with Xiph.Org codecs.{{Cite web|url=https://wiki.xiph.org/VorbisComment|title=VorbisComment|date=26 April 2016|access-date=23 October 2018|archive-date=23 October 2018|archive-url=https://web.archive.org/web/20181023234243/https://wiki.xiph.org/VorbisComment|url-status=live}}

Notably,{{attribution needed|date=October 2021}} one or more METADATA_BLOCK_PICTURE=... in a VorbisComment for thumbnails and cover art have Base64-encoded values of the corresponding FLAC METADATA_BLOCK_PICTURE. In other words, FLAC stores thumbnails and cover art in binary blocks—outside of the FLAC tags in a little-endian METADATA_BLOCK_VORBIS_COMMENT.{{cite web |url=https://xiph.org/flac/format.html#metadata_block_picture |title=METADATA_BLOCK_PICTURE |work=flac free lossless audio codec |publisher=Xiph.Org |year=2014 |access-date=2019-12-03 |archive-date=2017-03-27 |archive-url=https://web.archive.org/web/20170327065952/https://xiph.org/flac/format.html#metadata_block_picture |url-status=live }}{{cite web |url=https://www.xiph.org/vorbis/doc/v-comment.html |title=Ogg Vorbis I format specification: comment field and header specification |publisher=Xiph.Org |year=2005 |access-date=2019-12-03 |archive-date=2019-12-03 |archive-url=https://web.archive.org/web/20191203005103/https://www.xiph.org/vorbis/doc/v-comment.html |url-status=live }}

Other existing and proposed mechanisms are:{{Cite web|url=https://wiki.xiph.org/Metadata|title=Metadata|date=24 July 2013|website=xiph.org Foundation|access-date=23 October 2018|archive-date=23 October 2018|archive-url=https://web.archive.org/web/20181023234247/https://wiki.xiph.org/Metadata|url-status=live}}

  • FLAC metadata blocks
  • Ogg Skeleton{{cite web |url=https://wiki.xiph.org/Ogg_Skeleton_4 |title=Ogg Skeleton 4 |publisher=Xiph.Org |year=2012 |access-date=2019-12-03 |archive-date=2019-08-13 |archive-url=https://web.archive.org/web/20190813223619/https://wiki.xiph.org/Ogg_Skeleton_4 |url-status=live }}
  • Continuous Media Markup Language (deprecated)

History

{{Image frame|width=152|content=File:Play ogg.png|caption=The Play Ogg web button|border=no}}

The Ogg project began with a simple audio compression package as part of a larger project in 1993. The software was originally named Squish but due to an existing trade mark it was renamed to OggSquish. This name was later used for the whole Ogg project. In 1997, the Xiphophorus OggSquish was described as "an attempt both to create a flexible compressed audio format for modern audio applications as well as to provide the first audio format that is common on any and every modern computer platform".{{cite web |first=Christopher |last=Montgomery |author-link=Chris Montgomery |publisher=Xiphophorus company |url=http://people.xiph.org/~giles/historic/www.mit.edu/afs/sipb/user/mwhitson/Project/Ogg/98.9/ |year=1997 |title=Ogg 98.9 |access-date=2009-09-02 |archive-date=2016-04-24 |archive-url=https://web.archive.org/web/20160424045623/http://people.xiph.org/~giles/historic/www.mit.edu/afs/sipb/user/mwhitson/Project/Ogg/98.9/ |url-status=live }} The OggSquish was in 2000 referred to as "a group of several related multimedia and signal processing projects". In 2000, two projects were in active development for planned release: Ogg Vorbis format and libvorbis—the reference implementation of Vorbis. Research also included work on future video and lossless audio coding.

{{cite web |url=http://www.xiph.org/ogg/doc/vorbis.html |title=OggSquish Vorbis encoding format documentation |author=Xiph.org |date=2000-01-18 |access-date=2008-09-02 |url-status=dead |archive-url=https://web.archive.org/web/20000118132124/http://www.xiph.org/ogg/doc/vorbis.html |archive-date=January 18, 2000 }}

{{cite web |url=http://www.xiph.org/ogg/doc/oggstream.html |title=OggSquish logical and physical bitstream overview |author=Xiph.org |date=2000-01-18 |access-date=2008-09-02 |url-status=dead |archive-url=https://web.archive.org/web/20000118122008/http://www.xiph.org/ogg/doc/oggstream.html |archive-date=January 18, 2000 }}

{{cite web |author=Xiphophorus company |url=http://www.xiph.org/ogg/index.html |date=2001-04-05 |title=The Ogg project homepage |access-date=2009-09-02 |url-status=dead |archive-url=https://web.archive.org/web/20010405060456/http://www.xiph.org/ogg/index.html |archive-date=April 5, 2001 }}

{{cite web |url=http://www.xiph.org/ogg/index.html |title=The Ogg project homepage |author=Xiph.org |date=2001-12-04 |access-date=2008-09-02 |url-status=dead |archive-url=https://web.archive.org/web/20011204194046/http://www.xiph.org/ogg/index.html |archive-date=December 4, 2001 }} In 2001, OggSquish was renamed to Ogg and it was described as "the umbrella for a group of several related multimedia and signal processing projects".{{cite web |author=Xiphophorus company |url=http://www.xiph.org/ogg/index.html |date=2001-12-04 |title=The Ogg project homepage |access-date=2009-09-02 |url-status=dead |archive-url=https://web.archive.org/web/20011204194046/http://www.xiph.org/ogg/index.html |archive-date=December 4, 2001 }} Ogg has come to stand for the file format, as part of the larger Xiph.org multimedia project. Squish became just the name of one of the Ogg codecs. In 2009, Ogg is described as "a multimedia container format, and the native file and stream format for the Xiph.org multimedia codecs".{{cite web|publisher=Xiph.Org Foundation|url=http://xiph.org/ogg/|date=2006-01-07|title=The Ogg container format|access-date=2009-09-02|archive-date=2000-05-20|archive-url=https://web.archive.org/web/20000520212458/http://xiph.org/ogg/|url-status=live}}

The Ogg reference implementation was separated from Vorbis on September 2, 2000.

In May 2003, two Internet RFCs were published relating to the format. The Ogg bitstream was defined in {{IETF RFC|3533|link=no}} (which is classified as 'informative') and its Internet content type (application/ogg) in {{IETF RFC|3534|link=no}} (which is, {{As of|2006|lc=on}}, a proposed standard protocol). In September 2008, RFC 3534 was obsoleted by {{IETF RFC|5334|link=no}}, which added content types video/ogg, audio/ogg and filename extensions .ogx, .ogv, .oga, .spx.

=OGM=

In 2002, the lack of formal video support in Ogg resulted in the development of the OGM file format, a hack on Ogg that allowed embedding of video from the Microsoft DirectShow framework into an Ogg-based wrapper. OGM was initially supported only by closed source Windows-only tools, but the codebase was subsequently opened. Later, video (and subtitle) support were formally specified for Ogg but in a manner incompatible with OGM. Independently, the Matroska container format reached maturity and provided an alternative for people interested in combining Vorbis audio and arbitrary video codecs. As a result, OGM is no longer supported or developed and is formally discouraged by Xiph.org.{{cite web|url=http://www.xiph.org/container/ogm.html |title=OGM is not Ogg. Xiph.org does not support OGM. |publisher=Backup at WayBack Machine |date=2004-07-07 |url-status=unfit |archive-url=https://web.archive.org/web/20120317061837/http://www.xiph.org/container/ogm.html |archive-date=March 17, 2012 }} Today, video in Ogg is found with the .ogv file extension, which is formally specified and officially supported. Software and codecs that support .ogm files are available without charge.{{cite web |url=https://www.codecguide.com/klcp_ability_comparison.htm |title=K-Lite Codec Pack: Comparison of abilities and supported file formats |website=Codec Guide |access-date=16 March 2018 |archive-date=16 March 2018 |archive-url=https://web.archive.org/web/20180316214632/https://www.codecguide.com/klcp_ability_comparison.htm |url-status=live }}

=2006=

Although Ogg had not reached anywhere near the ubiquity of the MPEG standards{{cite magazine |url=https://www.wired.com/entertainment/music/news/2007/02/72785 |first1=Evan |last1=Hansen |title=MP3's Loss, Open Source's Gain |url-access=limited |magazine=Wired |date=2007-02-23 |access-date=2010-03-04 |archive-date=2010-06-05 |archive-url=https://web.archive.org/web/20100605091342/http://www.wired.com/entertainment/music/news/2007/02/72785?currentPage=all |url-status=live }} (e.g., MP3/MP4), {{As of|2006|lc=on}}, it was commonly used to encode free content (such as free music, multimedia on Wikimedia Foundation projects and Creative Commons files) and had started to be supported by a significant minority of digital audio players. Also supporting the Ogg format were many popular video game engines, including Doom 3, Unreal Tournament 2004, Halo: Combat Evolved, Jets'n'Guns, Mafia: The City of Lost Heaven, Myst IV: Revelation, StepMania, Serious Sam: The Second Encounter, Lineage 2, Vendetta Online, Battlefield 2, and the Grand Theft Auto engines, as well as the audio files of the Java-based game, Minecraft. The more popular Vorbis codec had built-in support on many software players, and extensions were available for nearly all the rest.

=2007=

On May 16, 2007, the Free Software Foundation started a campaign to increase the use of Vorbis "as an ethically, legally and technically superior audio alternative to the proprietary MP3 format".{{cite web |url=http://www.fsf.org/news/playogg.html |title='Play Ogg': FSF launches free audio format campaign |publisher=Free Software Foundation |first1=Matt |last1=Lee |date=May 16, 2007 |access-date=2010-03-04 |archive-date=2011-06-08 |archive-url=https://web.archive.org/web/20110608015711/http://www.fsf.org/news/playogg.html |url-status=live }} People were also encouraged to support the campaign by adding a web button to their website or blog. For those who did not want to download and use the FSF's suggested Ogg player (VLC), the Xiph.Org Foundation had an official codec{{cite web |url=http://xiph.org/quicktime/ |title=Foundation: Ogg QuickTime Components for iTunes and iMovie (Windows and Mac OS X) |publisher=Xiph.org |access-date=2010-03-04 |archive-date=2008-10-26 |archive-url=https://web.archive.org/web/20081026081609/http://xiph.org/quicktime/ |url-status=live }} for QuickTime-based applications in Windows and Mac OS X, such as iTunes players and iMovie applications; and Windows users could install a Windows Media Player Ogg codec.{{cite web |url=http://www.xiph.org/dshow/ |title=Directshow Filters for Ogg Vorbis, Speex, Theora and FLAC |publisher=Xiph.org |date=2010-02-22 |access-date=2010-03-04 |archive-date=2013-01-24 |archive-url=https://web.archive.org/web/20130124155113/http://www.xiph.org/dshow/ |url-status=live }}

=2009=

By June 30, 2009, the Ogg container, through the use of the Theora and Vorbis, was the only container format included in Firefox 3.5 web browser's implementation of the HTML5 <video> and <audio> elements.{{cite web |url=https://developer.mozilla.org/En/HTML/Element/Video |title=Mozilla Developer Center - HTML - Element - Video |date=September 2009 |access-date=2009-12-28 |archive-date=2010-06-27 |archive-url=https://web.archive.org/web/20100627072405/https://developer.mozilla.org/En/HTML/Element/Video |url-status=live }}{{cite web |url=https://developer.mozilla.org/En/HTML/Element/Audio |title=Mozilla Developer Center - HTML - Element - Audio |date=September 2009 |access-date=2009-12-28 |archive-date=2010-06-27 |archive-url=https://web.archive.org/web/20100627072053/https://developer.mozilla.org/En/HTML/Element/Audio |url-status=live }} This was in accordance with the original recommendation outlined in, but later removed from, the HTML5 draft specification (see Ogg controversy).

=2010=

On March 3, 2010, a technical analysis by an FFmpeg developer was critical about the general purpose abilities of Ogg as a multimedia container format.{{cite web| url=http://hardwarebug.org/2010/03/03/ogg-objections/| first=Mans| last=Rullgard| title=Ogg objections| publisher=hardwarebug.org| date=2010-03-03| access-date=2010-05-02| archive-date=2010-05-09| archive-url=https://web.archive.org/web/20100509211056/http://hardwarebug.org/2010/03/03/ogg-objections/| url-status=live}} The author of Ogg later responded to these claims in an article of his own.{{cite web|last=Montgomery|first=Christopher|date=2010-04-27|title=Monty - In Defense of Ogg's Good Name|url=http://people.xiph.org/~xiphmont/lj-pseudocut/o-response-1.html|url-status=dead|archive-url=https://web.archive.org/web/20100429111810/http://people.xiph.org/~xiphmont/lj-pseudocut/o-response-1.html|archive-date=2010-04-29|access-date=2010-05-02|publisher=people.xiph.org/~xiphmont}}

Ogg codecs

Ogg is only a container format. The actual audio or video encoded by a codec is stored inside an Ogg container. Ogg containers may contain streams encoded with multiple codecs; for example, a video file with sound contains data encoded by both an audio codec and a video codec.

Being a container format, Ogg can embed audio and video in various formats{{cite web | url=http://wiki.xiph.org/index.php/MIME_Types_and_File_Extensions | title=MIME Types and File Extensions | date=2009-10-04 | publisher=XiphWiki | access-date=2009-10-24 | archive-date=2018-11-17 | archive-url=https://web.archive.org/web/20181117004309/https://wiki.xiph.org/index.php/MIME_Types_and_File_Extensions | url-status=live }} (such as Dirac, MNG, CELT, MPEG-4, MP3 and others) but Ogg was intended to be, and usually is, used with the following Xiph.org free codecs:

  • Audio
  • Lossy
  • Speex: handles voice data at low bitrates (~2.1–32 kbit/s/channel)
  • Vorbis: handles general audio data at mid to high-level variable bitrates (≈16–500 kbit/s per channel)
  • Opus: handles voice, music and generic audio at low and high variable bitrates (≈6–510 kbit/s per channel)
  • Lossless
  • FLAC handles archival and high-fidelity audio data.
  • OggPCM allows storing standard uncompressed PCM audio in an Ogg container{{cite web | url=https://wiki.xiph.org/index.php/OggPCM | title=OggPCM | date=2020-05-25 | publisher=XiphWiki | access-date=2020-05-25 | archive-date=2020-10-03 | archive-url=https://web.archive.org/web/20201003204000/https://wiki.xiph.org/index.php/OggPCM | url-status=live }}
  • Video
  • Lossy
  • Theora: based upon On2's VP3, it is targeted at competing with MPEG-4 video (for example, encoded with DivX or Xvid), RealVideo, or Windows Media Video.
  • Daala: a video coding format under development.
  • Tarkin: an experimental and now obsolete video codec developed in 2000, 2001 and 2002 utilizing discrete wavelet transforms in the three dimensions of width, height, and time.Ralph Giles (2000-12-19) [http://lists.xiph.org/pipermail/vorbis-dev/2000-December/002281.html vorbis-dev - Tarkin video codec?] {{Webarchive|url=https://web.archive.org/web/20180124052905/http://lists.xiph.org/pipermail/vorbis-dev/2000-December/002281.html |date=2018-01-24 }}, Xiph.org vorbis-dev mailinglist. Retrieved 2009-09-06.Jack Moffitt (2001-01-03) [http://lists.xiph.org/pipermail/vorbis-dev/2001-January/002604.html vorbis-dev - Tarkin at last] {{Webarchive|url=https://web.archive.org/web/20140930123907/http://lists.xiph.org/pipermail/vorbis-dev/2001-January/002604.html |date=2014-09-30 }}, Xiph.org vorbis-dev mailinglist. Retrieved 2009-09-06.Chris Montgomery (2001-02-11) [http://lists.xiph.org/pipermail/vorbis/2001-February/014147.html Tarkin developer mailing list] {{Webarchive|url=https://web.archive.org/web/20140930202014/http://lists.xiph.org/pipermail/vorbis/2001-February/014147.html |date=2014-09-30 }}, Retrieved on 2009-09-06 It has been put on hold after Theora became the main focus for video encoding (in August 2002).Michael Smith (2005-08-29) [http://lists.xiph.org/pipermail/vorbis-dev/2005-August/018213.html Tarkin] {{Webarchive|url=https://web.archive.org/web/20160303194435/http://lists.xiph.org/pipermail/vorbis-dev/2005-August/018213.html |date=2016-03-03 }}. Retrieved 2009-09-06.
  • Dirac: a free and open video format developed by the BBC. Uses wavelet encoding.{{usurped|1=[https://web.archive.org/web/20100614050318/http://diracvideo.org/specifications/ Dirac specification - integration of Dirac encoded video into commonly used container formats]}} Retrieved on 2009-07-05
  • Lossless
  • Dirac: a part of the specification of dirac covers lossless compression.
  • Daala: a video coding format under development.
  • Text
  • Continuous Media Markup Language: a text/application codec for timed metadata, captioning, and formatting.
  • Annodex: A free and open source set of standards developed by CSIRO to annotate and index networked media.
  • OggKate: An overlay codec, originally designed for karaoke and text, that can be multiplexed in Ogg.{{cite web |url=https://wiki.xiph.org/OggKate |title=OggKate |website=wiki.xiph.org |year=2017 |access-date=2019-12-03 |archive-date=2011-07-18 |archive-url=https://web.archive.org/web/20110718082812/http://wiki.xiph.org/OggKate |url-status=live }}

=Media types=

Ogg audio media is registered as IANA media type audio/ogg with file extensions .oga, .ogg, and .spx. It is a proper subset of the Ogg video media type video/ogg with file extension .ogv. Other Ogg applications use media type application/ogg with file extension .ogx; this is a superset of video/ogg.{{cite IETF |rfc=5334 |section=10 |title=Ogg Media Types |author1=I. Goncalves |author2=S. Pfeiffer |author3=C. Montgomery |author-link3=Chris Montgomery |year=2008 |doi=10.17487/RFC5334}} The Opus media type audio/opus with file extension .opus was registered later in RFC {{IETF RFC|plainlink=yes|7587}} and {{IETF RFC|plainlink=yes|7845}}.

See also

References

{{Reflist|30em}}