# Vorbis

Vorbis is a free and open-source software project headed by the Xiph.Org Foundation. The project produces an audio coding format and software reference encoder/decoder (codec) for lossy audio compression, libvorbis. Vorbis is most commonly used in conjunction with the Ogg container format and it is therefore often referred to as Ogg Vorbis.
Vorbis is a continuation of audio compression development started in 1993 by Chris Montgomery. Intensive development began following a September 1998 letter from the Fraunhofer Society announcing plans to charge licensing fees for the MP3 audio format. The Vorbis project started as part of the Xiphophorus company's Ogg project (also known as OggSquish multimedia project). Chris Montgomery began work on the project and was assisted by a growing number of other developers. They continued refining the source code until the Vorbis file format was frozen for 1.0 in May 2000. Originally licensed as LGPL, in 2001 the Vorbis license was changed to the BSD license to encourage adoption, with the endorsement of Richard Stallman. A stable version (1.0) of the reference software was released on July 19, 2002.
Since February 2013, Xiph.Org has stated that the use of Vorbis should be deprecated in favor of the Opus codec, which is also a Xiph.Org Foundation project and also free and open-source. Compared to Vorbis, Opus can simultaneously achieve higher compression efficiency—per both Xiph.Org itself and third-party listening tests—and lower encode/decode latency (in most cases, low enough for real-time applications such as internet telephony or live singing, rarely possible with Vorbis).

## Name

Vorbis is named after the character Exquisitor Vorbis in the Discworld novel Small Gods by Terry Pratchett. The Ogg format is named after ogging, jargon from the computer game Netrek.

## Usage

Vorbis faces competition from other audio formats, such as MP3. Though Vorbis is technically superior (addressing many of the limitations inherent to the MP3 design), MP3 has a far higher public profile. Because Vorbis does not have financial support from large organisations, support for the format is not as widespread, though programs such as Audacity can convert to more popular formats, and support in games has gradually improved.
The Vorbis format has proven popular among supporters of free software. They argue that its higher fidelity and completely free nature, unencumbered by patents, make it a well-suited replacement for patented and restricted formats.
Vorbis has different uses for consumer products. Many video games store in-game audio as Vorbis, including Amnesia: The Dark Descent, Grand Theft Auto: San Andreas, Halo: Combat Evolved, Minecraft, and World of Warcraft, among others. Popular software players support Vorbis playback either natively or through an external plugin. A number of websites, including Wikipedia, use it. Others include Jamendo and Mindawn, as well as several national radio stations like JazzRadio, Absolute Radio, NPR, Radio New Zealand and Deutschlandradio. The Spotify audio streaming service primarily uses Vorbis as well as AAC. Also, the French music site Qobuz offers its customers the possibility to download their purchased songs in Vorbis format, as does the American music site Bandcamp.

## Technical details
### Outline of coder algorithm

Vorbis I is a forward-adaptive monolithic transform codec based on the modified discrete cosine transform (MDCT). Vorbis uses the modified discrete cosine transform for converting sound data from the time domain to the frequency domain. The resulting frequency-domain data is broken into noise floor and residue components, and then quantized and entropy coded using a codebook-based vector quantization algorithm. The decompression algorithm reverses these stages. The noise-floor approach gives Vorbis its characteristic analog noise-like failure mode when the bitrate is too low to encode the audio without perceptible loss. The sound of compression artifacts at low bitrates is similar to reverberations in a large space.

### Container formats

Vorbis streams can be encapsulated in other media container formats besides Ogg. A commonly used alternative is Matroska. It is also used in WebM, a container format based on a subset of Matroska. Vorbis streams can also be encapsulated in an RTP payload format.

### Metadata

Vorbis metadata, called Vorbis comments, supports metadata tags similar to those implemented in the ID3 standard for MP3. The metadata is stored in a vector of byte strings of arbitrary length and size. The size of the vector and the size of each string in bytes is limited to 2$^{32}$ − 1 (about 4.3 billion, or any positive integer that can be expressed in 32 bits). This vector is stored in the second header packet that begins a Vorbis bitstream.
The strings are assumed to be encoded as UTF-8. Music tags are typically implemented as strings of the form "[TAG]=[VALUE]", for instance, "ARTIST=The John Smith Band". The tag names are case-insensitive, thus typing "ARTIST=The John Smith Band" would be the same as "artist=The John Smith Band". Like the current version of ID3, users and encoding software are free to use whichever tags are appropriate for the content. For example, an encoder could use localized tag labels, live music tracks might contain a "Venue=" tag or files could have multiple genre definitions. Most applications also support common de facto standards such as disc number and ReplayGain information.

### Variants

aoTuV is a notable fork which adds support for encoding at lower bitrates. aoTuV's changes were intended to be merged into the reference encoder periodically, but that only happened once in libvorbis 1.1, due to future merges being a "task that requires uninterrupted time, something I [Chris Montgomery] don't have a lot of."

## Licensing

Knowledge of Vorbis' specifications is in the public domain. Concerning the specification itself, the Xiph.Org Foundation reserves the right to set the Vorbis specification and certify compliance. Its libraries are released under the revised 3-clause BSD license and its tools are released under the GNU General Public License. The libraries were originally released under the GNU Lesser General Public Licence, but a BSD license was later chosen with the endorsement of Richard Stallman. The Xiph.Org Foundation states that Vorbis, like all its developments, is completely free from the licensing or patent issues raised by proprietary formats. Although the Xiph.Org Foundation states it has conducted a patent search that supports its claims, outside parties (notably engineers working on rival formats) have expressed doubt that Vorbis is free of patented technology.
The Xiph.Org Foundation has not released an official statement on the patent status of Vorbis, pointing out that such a statement is technically impossible due to the number and scope of patents in existence and the questionable validity of many of them. Such issues can only be resolved by a court of law.
Vorbis is supported by several large digital audio player manufacturers such as Samsung, SanDisk, Rio, Neuros Technology, Cowon, and iriver.

## Support
### Hardware

Tremor, a version of the Vorbis decoder which uses fixed-point arithmetic (rather than floating point), was made available to the public on September 2, 2002 (also under a BSD-style license). Tremor, or platform-specific versions based on it, is more suited to implementation on the limited facilities available in commercial portable players. A number of versions that make adjustments for specific platforms and include customized optimizations for given embedded microprocessors have been produced. Several hardware manufacturers have expressed intentions to produce Vorbis-compliant devices and new Vorbis devices seem to be appearing at a steady rate.
* Sailfish OS devices
* Tizen devices
* Openmoko Neo 1973 and Neo Freerunner
* Devices based on Google's Android platform support Ogg Vorbis media files.
* Digital audio players such as Cowon's D2 and iAudio X5 ship with Ogg Vorbis support.
* Samsung YP series of digital audio players ships with Ogg Vorbis support.
* The majority of iriver devices provide Ogg Vorbis support up to Q10 bitrates. (as July 2008)
* Cowon C2 (Ogg and FLAC support)
* Some SanDisk portable media players including the Fuze and Clip
* Meizu's M6 and M3 Digital Audio Players
* S1 MP3 Players also supports Ogg Vorbis since at least 2006, though this is not typically listed on the player's packaging.
* GamePark Holding's Linux based portable gaming consoles (GP32, GP2X F100-F200, GP2X Wiz) officially support Ogg Vorbis.
* RIM BlackBerry 9800 "Torch" and 9670 "Style"
* HP TouchPad was given support for Ogg Vorbis with the webOS 3.0.4 update
* Denon SC5000 Prime media player
* Ultra HD Blu-ray players support decoding of 4K resolution VP8/VP9 video with Ogg Vorbis audio.
Apple's iPod does not natively support Vorbis but through the use of Rockbox, an open-source firmware project, is capable of decoding Vorbis files on certain models. Similar statements apply to other devices capable of running Rockbox, as well. The Xiph.Org Foundation wiki has an up-to-date list of Vorbis-supporting hardware, such as portables, PDAs, and microchips. Also see Internet radio device for an overview.

### Application software

Software supporting Vorbis exists for many platforms. The multi-platform open-source VLC media player and MPlayer can play Ogg Vorbis files, as can Winamp and foobar2000. Windows Media Player does not natively support Vorbis; however, DirectShow filters exist to decode Vorbis in Windows Media Player and other Windows multimedia players that support DirectShow. Vorbis is also supported in the multi-platform audio editing software Audacity, in the multi-platform multimedia frameworks FFmpeg, GStreamer and Helix DNA. Vorbis is well-supported on the Linux platform in programs like XMMS, xine, Amarok. A list of Vorbis-supporting software can be found at the Xiph.Org Foundation wiki and Vorbis.com website. Users can test these programs using the list of Vorbis audio streams available on the same wiki. For more information about support in software media players there is a comparison of media players available.
Some newer Ubisoft games use Vorbis files renamed with the filename extension .sb0. It can therefore be played using a compatible player, although sometimes one must force a different sampling rate to hear it correctly. A number of tools are available for extracting sound from archived files such as the .m4b of Myst IV: Revelation.
As originally recommended by HTML 5, these web browsers natively support Vorbis audio (without a plug-in) using the <audio> element: Mozilla Firefox 3.5 (and later versions), Google Chrome (from version 3.0.182.2), SeaMonkey (from version 2.0). Opera 9.5 experimental video builds released in 2007 and 2008 have only <video> support and play back Vorbis audio included in Ogg video files. Opera 10.5 browser has support for Vorbis audio, WAVE PCM audio and Theora video.
The game design software RPG Maker MV, released in October 2015, is the first version of that program to drop MP3 support in favor of Ogg Vorbis.
In October 2017, Microsoft released support for Ogg media container, and Theora and Vorbis media formats as an optional add-on to Windows 10 and Xbox One, available for free in the Microsoft Store.
Vorbis support by different operating systems :
| | Microsoft Windows | macOS | Linux | Android | iOS |
| Codec support | Yes | Via third-party applications | Yes | Yes | Via third-party apps |
| Container support | On Windows 10 Fall Creators Update (1709) with Web Media Extensions add-on: Ogg (.ogg is not recognised; requires pseudo extension) Matroska (.mka, .mkv) On Windows 10 October 2018 Update (1809): WebM (.webm is recognised officially) On Windows 10 May 2019 Update (1903): Ogg (.ogg is recognised officially) | depends on application | Ogg (.ogg) Matroska (.mka, .mkv) WebM (.webm) | Ogg (.ogg, .oga) Matroska (.mka, .mkv) WebM (.webm) | depends on application |
| Notes | On Windows 10: - Requires Fall Creators Update (1709) and installation of Web Media Extensions package. - On April 2018 Update (1803) with Web Media Extensions preinstalled, Microsoft Edge (EdgeHTML 17) supports Vorbis audio embedded in <audio> tags. - Supported on Universal Windows Platform apps (Groove Music, Microsoft Movies & TV). Unsupported on Windows Media Player. - Up till October 2018 update (1809), the filename extension .ogg was not recognised. (substitute with a pseudo file extension such as .m4a) On Windows 8.1 and older: - Requires installation of a third-party multimedia framework, LAV Filters. | No native support in the macOS native multimedia framework. In versions of Mac OS X prior to 10.11 El Capitan, Vorbis support could be added to QuickTime using the Xiph QuickTime Components. | - | - | No native support in the iOS native multimedia framework. |