Vorbis
扩展名
.ogg .oga
互联网媒体类型
audio/ogg, audio/vorbis, audio/vorbis-config
开发者Xiph.Org 基金会
首次发布2000年5月8日 (2000-05-08) [1][2]
最新版本
Vorbis I
2010年2月3日 (2010-02-03)[3]
格式类型音频压缩格式
使用容器Ogg, Matroska, WebM
标准Specification
libvorbis
開發者Xiph.Org 基金会
首次发布2002年7月19日 (2002-07-19)
当前版本1.3.2[4](2010年11月1日,​13年前​(2010-11-01
编程语言C
操作系统跨平台
类型编解码器, 参考实现
许可协议BSD-style license[5][6]
网站Xiph.org downloads

Vorbis 是一种有损音频压缩格式,由Xiph.Org 基金会领导并开放源代码。Vorbis通常以Ogg作为容器格式[7],所以常合称为Ogg Vorbis,通常所称“Ogg音频格式”即指Vorbis格式。

Vorbis is a continuation of audio compression development started in 1993 by Chris Montgomery.[8][9] Intensive development began following a September 1998 letter from the Fraunhofer Society announcing plans to charge licensing fees for the MP3 audio format.[10][11] Vorbis project started as part of the Xiphophorus company's Ogg project (also known as OggSquish multimedia project).[12][13] 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[1][2][14] and a stable version (1.0) of the reference software was released on July 19, 2002.[15][16][17]

libvorbis是Xiph.Org基金会维护的参考实现,目前的最新官方版本为1.3.2。[4]此外还有一些非官方的实现,其中最知名的是aoTuV。尤其在低比特率上,它能提供更好的音质。这些改善每过一段时间都会被加入到官方的代码库中。

名称

编辑

"Vorbis" is named after a Discworld character, Exquisitor Vorbis in Small Gods by Terry Pratchett.[18] The Ogg format, however, is not named for Nanny Ogg, another Discworld character; the name is in fact derived from ogging, jargon that arose in the computer game Netrek.[9]

用途

编辑

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 like MP3.

Vorbis示例

Vorbis has different uses for consumer products. Many video game titles such as 18 Wheels of Steel, Halo, Unreal Tournament 2004, Unreal Tournament 3, Mafia: The City of Lost Heaven, Jets 'n' guns, Grand Theft Auto: San Andreas, Crimsonland, Devil May Cry 3, Live For Speed and Guitar Hero: On Tour store in-game audio as Vorbis. Popular software players support Vorbis playback either natively or through an external plugin. A number of Web sites, including Wikipedia, use it. Others include Jamendo and Mindawn, as well as several national radio stations[19] like JazzRadio, Absolute Radio, NPR, Radio New Zealand[20] and Deutschlandradio.[21] The Spotify audio streaming service uses Vorbis for its audio streams.[22]

Vorbis格式流行于自由软件的支持者之中[23]。他们认为,Vorbis因其更高的保真度以及不受专利限制的特点能够成为MP3等受专利限制的格式的很好的替代品。 Vorbis在消费类产品中也有很多应用。许多电子游戏以Vorbis格式存储游戏音频。流行的播放器大多支持播放Vorbis格式的文件。越来越多的网站,包括维基百科[19] [24] [25]使用Vorbis格式存储音频。

但总体上讲,Vorbis格式的普及程度仍然不高。

Quality: Codec comparisons

编辑

通常,相比于其他较古老的编码格式,Vorbis能够在更小的文件中提供更高的音质。而且它可以同其他使用MDCT的编码格式如AAC和WMA相抗衡。[26][27]

聆听测试是用来寻找在特定比特率下最好的有损音频编码的方法。以下是一些通过聆听测试得出的结论:

  • 低比特率(小于等于64kbit/s):最近一次测试(2007年)显示,在48kbit/s下,aoTuV的音质比WMALC-AAC更好,与WMA Professional持平,比HE-AAC略差。[28]
  • 中比特率(64kbit/s到128kbit/s):在2005年,一个私人的测试表明,在80kbit/s和96kbit/s下aoTuV比其他有损压缩格式(LC-AAC,HE-AAC,MP3,MPC,WMA)音质更好。[29][30]
  • 高比特率(大于128kbit/s):多数人听不出有任何显著的差别。但是,经过特别训练的人士能够识别出特定比特率的音频,此时aoTuV的表现仍比LC-AAC,MP3和MPC好。[31]

由于音频编码器不断更新,以上结果可能会过时。

聆听测试

编辑

Listening tests are normally carried out as ABX tests, i.e., the listener has to identify an unknown sample X as being A or B, with A (the original) and B (the encoded version) available for reference. The outcome of a test must be statistically significant. This setup ensures that the listener is not biased by his/her expectations, and that the outcome is very unlikely to be the result of chance. If sample X can be identified reliably, the listener can assign a score as a subjective judgement of the quality. Otherwise, the encoded version is considered to be transparent. Below are links to several listening test results.

  • 2005, July comparison - AAC vs MP3 vs Vorbis vs WMA at 80 kbit/s. States that aoTuV beta 4 is the best encoder for either classical or various music in this bitrate, and that its quality is comparable to the LAME ABR MP3 at 128 kbit/s.[29]
  • 2005, August comparison - AAC vs MP3 vs Vorbis vs WMA at 96 kbit/s. States that aoTuV beta 4 and AAC are tied as the best encoders for classical music in this bitrate, while aoTuV beta 4 is the best encoder for pop music, even better than LAME at 128 kbit/s.[30]
  • 2005, August comparison - MPC vs Vorbis vs MP3 vs AAC at 180 kbit/s. An audiophile listening test, which states that, for classical music, aoTuV beta 4 has 93% percent probability of being the best encoder, tied with MPC. MPC is tied with both Vorbis, in the first place, and LAME in the second.[31]
  • 2011, April comparison by Hydrogenaudio - LC-AAC vs Vorbis vs HE-AAC vs Opus at 48 kbit/s. Vorbis was on average between LC-AAC and HE-AAC, while the upcoming Opus (by Xiph, previously known as CELT) was best.[32]

Audio quality: Characteristic artifacts

编辑

As with most modern formats, the most consistently cited problem with Vorbis is pre-echo, a faint copy of a sharp attack that occurs just before the actual sound (the sound of castanets is commonly cited as causing this effect).

When the bitrate is too low to encode the audio without perceptible loss, Vorbis exhibits an analog noise-like failure mode, which can be described as reverberations in a room or amphitheater. Vorbis's behavior is due to the noise floor approach to encoding; see 技术细节.

与大多数现代格式一样,Vorbis最常被提及的问题是预回声,即在真实的声音发出之前的().

当编码器在规定的比特率下无法编码出

技术细节

编辑
在给定44.1kHz立体声输入下各质量等级的标称比特率。(实际比特率可能会有所不同)
质量 标称比特率(Nominal Bitrate)
官方编码器 aoTuV
-q-2 不可用 32 kbit/s
-q-1 45 kbit/s 48 kbit/s
-q0 64 kbit/s
-q1 80 kbit/s
-q2 96 kbit/s
-q3 112 kbit/s
-q4 128 kbit/s
-q5 160 kbit/s
-q6 192 kbit/s
-q7 224 kbit/s
-q8 256 kbit/s
-q9 320 kbit/s
-q10 500 kbit/s

Vorbis可以使用从8kHz到192kHz的采样率,它亦支持多种声道格式(单声道、立体声、5.1声道,最多255个独立声道)。[33] Vorbis使用可变比特率(VBR),所以比特率可能随着采样点变化而有显著变化。 在给定44.1kHz采样率(标准CD音频采样率)下,编码器可以输出平均比特率为45至500kbit/s(aoTuV为32至500kbit/s)的文件,这取决于给定的质量选项。在Xiph函数库中,质量选项的取值范围为-0.1到1.0,aoTuV则是-0.2到1.0。编码器的前端通常将质量选项乘以10后映射到整数上,即-1到10或-2到10。所有的编码器在给定的质量选项下输出的音质应相同,但新版本的编码器可能用更低的比特率实现了这种音质,故表格中数据仅供参考。

Vorbis的目标在于比MP3更高效,它能够在更低的比特率在实现透明编码

算法概述

编辑

Vorbis I是一种以改进的离散余弦变换(MDCT)为基础的向前兼容的编码算法。[34] 它通过MDCT实现音频数据从时域频域的变换。形成的频域数据被分成本底噪声和残差频谱两部分,之后可以选择是否使用声道耦合技术进一步降低冗余度,然后再对残差信号有效地以熵编码以及矢量量化的方法量化表示。最后将各部分数据组织成Vorbis格式所要求的形式。

解码过程与编码正好相反。编码器利用码本将残差频谱重建出频域数据,再进行逆向MDCT处理恢复出原始的音频数据。相较于编码,解码的实现更简单,有利于硬件实现。

Tuned versions

编辑

Various tuned versions of the encoder (Garf, aoTuV or MegaMix) attempt to provide better sound at a specified quality setting, usually by dealing with certain problematic waveforms by temporarily increasing the bitrate. The most consistently cited problem with Vorbis is pre-echo , a faint copy of a sharp attack that occurs just before the actual sound (the sound of castanets is commonly cited as causing this effect). Most of the tuned versions of Vorbis attempt to fix this problem and to increase the sound quality of lower quality settings (-q-2 through -q4). Some tuning suggestions created by the Vorbis user community (especially the aoTuV beta 2 tunings) have been incorporated into the 1.1.0 release.[35]

比特率削减

编辑

Vorbis格式支持比特率削减,即能够在不重新编码的情况下削减文件的比特率。但目前仅有一些实验性的实现,[36][37]且处理过的音频音质几乎“不可听”,[36]尚不如先解码后再编码的音质好。

进行比特率削减后质量降低如此严重的原因是,Vorbis格式并不指定编码信号的相对重要性,此外现在还没有按照重要性排列数据的编码器。因此,程序不能十分容易地确定数据的重要性。

容器格式

编辑

除Ogg之外,Vorbis数据流可以被封装进其他容器格式之中。[38]常用的有MatroskaWebM(一个基于Matroska子集的容器格式)。[39]Vorbis数据流也可以被封装进RTP负载格式(RTP payload format)中进行传输。[40]

元数据

编辑

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 eight-bit-clean strings of arbitrary length and size. The size of the vector and the size of each string in bytes is limited to 232-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.[41]

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 tags 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 discnumber and ReplayGain information.

许可

编辑

Vorbis标准的定义内容属于公有领域[5]但出于对标准自身的考虑,Xiph.Org 基金会保留对Vorbis标准更改及认证的权利。libvorbis函数库遵循3句版BSD许可证,而相关的工具则遵循GNU通用公共许可协议。函数库最初是以GNU宽通用公共许可证发布的,但由于理查德·斯托曼的支持,函数库最终选择了BSD许可证。[42]Xiph.Org 基金会声称,Vorbis格式,就像他们发布的其他标准一样,完全没有许可和专利的问题。虽然Xiph.Org 基金会如此声明,但仍有外界人士(尤其是竞争对手格式的工程师)对Vorbis是不受专利限制的格式一事表示怀疑。[43]

支持

编辑

硬件支持

编辑

软件支持

编辑

大多数平台都有支持Vorbis格式的软件。如Windows下流行的媒体播放器Winampfoobar2000千千静听The KMPlayer暴风影音等。Windows Media Player 并不能原生支持Vorbis格式,但Xiph.Org官方提供一个DirectShow filter,[44]Windows Media Player和其他媒体播放器可以通过DirectShow来支持Vorbis。苹果的iTunes也不原生支持Vorbis,但Xiph.Org提供一个Quicktime插件,[45]这样无论在Windows下还是Mac OS下都可以使用iTunes和Quicktime播放Vorbis音频。

Linux平台下的媒体播放器如XMMSAmarok等,以及跨平台的媒体播放器如VLC media playermplayer对Vorbis均有良好的支持。Audacity等跨平台的音频编辑软件以及FFmpegGStreamerHelix DNA多媒体框架均能良好支持Vorbis。Xiph.Org 官方维基和vorbis.org网站提供一份支持Vorbis格式软件的列表。[46][47]关于软件支持的更多信息请参见媒体播放器列表

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),[48][49] Google Chrome (as of version 3.0.182.2),[50] SeaMonkey (as of version 2.0).[51] 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.[52][53] Opera 10.5 browser has support for Vorbis audio, WAVE PCM audio and Theora video.[54][55]

其他实现

编辑

Xiph.Org 基金会的参考实现是免费且开源的,它在BSD许可证下发布。但是它并没有限制其他开发者开发兼容的编码器和解码器。

aoTuV(Aoyumi Tuned Vorbis)是一个名叫苍弓的日本人开发的改进版编码器。它在低比特率下拥有更好的音质。目前aoTuV的最新版本为Beta 6.03,是libvorbis 1.3.2的改进版。[56]

Tremor

编辑

Tremor是Vorbis解码器的定点运算实现,它可以在一些不能使用浮点运算的平台上使用。[57]

FFmpeg

编辑

libavcodec 函数库包含一个以LGPL授权的Vorbis解码器,其解码速度比参考实现略快。[58]

stb_vorbis

编辑

stb_vorbis是Vorbis解码器的C语言实现,它属于公有领域。它缺乏一些参考实现具备的小功能(特别是定位),但它声称要与格式规范完全兼容。[59]

参见

编辑

参考链接

编辑
  1. ^ 1.0 1.1 Christopher Montgomery. vorbis-dev - Merge done. 2000-05-08 [2009-09-03]. 
  2. ^ 2.0 2.1 Xiph.Org Foundation. xiph.org Ogg Vorbis. [2009-09-11]. 
  3. ^ Xiph.Org Foundation. Vorbis I specification. Xiph.Org Foundation. 2010-02-03 [2010-03-28]. 
  4. ^ 4.0 4.1 Xiph.Org. libOgg 1.2.1 and libVorbis 1.3.2 released. 2010-03-26 [2010-11-11]. 
  5. ^ 5.0 5.1 Vorbis.com FAQ. Xiph.Org Foundation. [2009-08-29]. 
  6. ^ Sample Xiph.Org Variant of the BSD License. Xiph.Org Foundation. [2009-08-29]. 
  7. ^ Xiph.org wiki, MIME Types and File Extensions. [2007-10-13]. 
  8. ^ Advogado. Interview: Christopher Montgomery of Xiphophorus. Advogado. 2000-04-04 [2009-09-02]. 
  9. ^ 9.0 9.1 Xiph.Org Foundation. xiph.org: naming. 
  10. ^ Xiph.org. About Xiph.org. [2009-08-31]. 
  11. ^ Michael Robertson. Fraunhofer Lowers Patent Boom On MP3 Software Developers. 1998-09-11 [2009-08-31]. (原始内容存档于2000-08-16). 
  12. ^ Brian Zisk. vorbis - Dvorak Interviews Monty. 2000-04-19 [2008-09-04]. 
  13. ^ Xiphophorus company. The Ogg project homepage. 2000-05-20 [2008-09-02]. (原始内容存档于2000-05-20). 
  14. ^ Xiphophorus company. The Ogg Vorbis CODEC project. 2000-05-11 [2009-09-03]. (原始内容存档于2000-06-10). 
  15. ^ AfterDawn. OGG Vorbis 1.0 officially released. 2002-07-19 [2009-06-04]. 
  16. ^ CNET News. Ogg Vorbis official release is here. 2002-07-19 [2009-06-04]. 
  17. ^ Montgomery, Chris. Vorbis 1.0 released. vorbis (邮件列表). 2002-07-19 [2009-06-04]. 
  18. ^ Xiph.Org Foundation. xiph.org: naming. 
  19. ^ 19.0 19.1 Free Software Foundation. Ogg Sites. Free Software Foundation. [2009-10-02]. 
  20. ^ Radio New Zealand Oggcasts. [2009-01-14]. 
  21. ^ Deutschlandradio im Internet mit OGG-Vorbis-Stream. [2009-10-08]. 
  22. ^ Spotify FAQ. [2009-03-16]. 
  23. ^ Recordings about our Philosophy - GNU Project - Free Software Foundation (FSF). [2008-01-12]. (原始内容存档于2007-11-26). 
  24. ^ Wikipedia:有聲維基百科專題, Retrieved 2011
  25. ^ Wikimedia Commons:First steps/Quality and description. [2009-10-02]. 
  26. ^ MedO. Ogg Vorbis - Better Than Mp3?. 
  27. ^ Nanook. Ogg Vorbis - An Alternative to MP3. 
  28. ^ Results of Public, Multiformat Listening Test @ 48 kbps (November 2006). [2008-01-12]. (原始内容存档于2007-09-28). 
  29. ^ 29.0 29.1 80 kbps personal listening test (summer 2005) - Hydrogenaudio Forums. [2008-01-12]. 
  30. ^ 30.0 30.1 MP3, WMA, AAC, OGG qualité à 96 kbps (évaluation) - Traitement Audio - Video & Son - FORUM HardWare.fr. [2008-01-12] (French). 
  31. ^ 31.0 31.1 MPC vs VORBIS vs MP3 vs AAC at 180 kbit/s - Hydrogenaudio Forums. [2008-01-12]. 
  32. ^ 64kbit/sec stereo multiformat listening test. [2011-05-10]. 
  33. ^ Xiph.org Foundation. Vorbis I specification - Application. Xiph.org Foundation. 2009-06-02 [2009-09-11]. 
  34. ^ Xiph.Org Foundation. Vorbis I specification - 1.1.2 Classification. Xiph.Org Foundation. 2009-06-02 [2009-09-22]. 
  35. ^ Recommended Encoder Versions and Settings - Hydrogenaudio Forums. [2008-01-13]. 
  36. ^ 36.0 36.1 Experimental Ogg vorbis Bitrate Peeler, Bitrate reduction of ogg vorbis
  37. ^ VINJEY. Vorbis & Downloads. [2006-11-13]. 
  38. ^ The Community. Oggless proposal. 
  39. ^ Xiph.Org. Xiph.Org announces support for the WebM open media project. 2010-05-19 [2010-05-20]. 
  40. ^ RFC 5215 - RTP Payload Format for Vorbis Encoded Audio. 2008-08 [2010-06-16]. 
  41. ^ Xiph.Org Foundation. Vorbis Comment Field Documentation. [2007-03-14]. 
  42. ^ Jack Moffitt. [icecast-dev] Xiph.org announces Vorbis Beta 4 and the Xiph.org Foundation. 2001-02-26 [2006-11-13]. 
  43. ^ Vorbis development, status & patent issues. 2003 [2006-11-13]. 
  44. ^ illiminable Ogg Directshow Filters for Speex, Vorbis, Theora and FLAC. [2008-06-24]. 
  45. ^ Xiph.Org: QuickTime Components. [2008-01-13]. 
  46. ^ VorbisSoftwarePlayers - XiphWiki. Xiph.Org Foundation. [2008-01-13]. 
  47. ^ Xiph.Org Foundation. Vorbis.com: 3rd party software. [2009-10-12]. 
  48. ^ MozillaWiki, Firefox3.5/Features, MozillaWiki, 2009-03-18 [2009-10-11] 
  49. ^ Mozilla Corporation, Mozilla Firefox 3.5 Release Notes, Mozilla Corporation, 2009-06-30 [2009-10-11] 
  50. ^ Google Chrome to support HTML 5 video, SoftSailor, 2009-05-28 [2009-10-11] 
  51. ^ Robert Kaiser, What's New in SeaMonkey 2.0 Beta 2, seamonkey-project.org, 2009-09-16 [2009-10-11] 
  52. ^ Experimental Opera-video build with native Ogg Theora support, Opera, 2007-04-25 [2009-10-11] 
  53. ^ A call for video on the web - Opera <video> release on Labs, Opera, 2007-11-07 [2009-10-11] 
  54. ^ Philip Jägenstedt. (re-)Introducing <video> - Official blog for Core developers at Opera. Opera. 2009-12-31 [2010-01-02]. 
  55. ^ Arjan van Leeuwen. Happy New Year! - Official blog for Core developers at Opera. Opera. 2009-12-31 [2010-01-02]. 
  56. ^ aoTuV aoTuV官方网站
  57. ^ Tremor - XiphWiki. 
  58. ^ mailing list thread comparing Vorbis decoding performance. [2007-08-17]. 
  59. ^ stb_vorbis主页. public domain Ogg Vorbis decoder. [2009-08-11]. 

外部链接

编辑