Xiph.Org基金会 —— 多媒体开源的先锋

 

「序」

        某日,我正在练习Java,试图用新学的Swing技术模拟PVZ。结果连音乐也播放不了!游戏所有音乐/音效都用后缀“.ogg”的文件保存  ---- 而JDK原生库只支持wav、aiff等。本想找个第三方音乐库草草了事,却怀着好奇心,想挖掘这个文件后缀的前世今生。

 

        本文为全网首发Xiph基金会中文详细介绍。多多包涵,疏漏请指出,感谢你的支持!

        【原作者:神武竹 • 未经允许,禁止转载】

 


「概述」

        Xiph.Org基金会是一个非盈利性的公司,成立于1994年位于美国马萨诸塞州萨默维尔市。Xiph维护众多开源多媒体项目,旨在保护互联网多媒体的基础(即音视频标准)免受私人利益集团(公司)的控制,使 互联网多媒体标准 公共化。它 支持、开发、维护 免费开放的协议和软件 ,为公众、开发者和商业市场提供开源服务。

        创始人 克里斯托弗·蒙哥马利(Christopher Montgomery 昵称蒙蒂Monty 网名xiphmont)生于1972年6月6日,马萨诸塞州理工学院电气工程和计算机科学学士、东京理工学院计算机工程硕士,自由开源主义者,原就职于Red Hat,2013年转至Mozilla(谋智)公司,2021年转业至Amazon亚马逊云科技。Ogg和Vorbis的主要开发人,以及Ghost、Thoera、Daala的维护者。

 

Xiph.Org基金会 —— 多媒体开源的先锋_第1张图片

Xiph.Org基金会 —— 多媒体开源的先锋_第2张图片 

Monty摄于2010年

        基金会的名称Xiph( /zif/ 或 /ksif/ )源自剑尾鱼(Xiphophorus):

 

Xiph.Org基金会 —— 多媒体开源的先锋_第3张图片 

 

        LOGO就是一只鱼(Xiph Fish):

 

6eb67c13aa44466f97fe46504bab911b.png

(新)

96a97fce3c374111a7e1d33b50a818b7.pngb45fc41795c545cd96e09ac8e87bf37c.png67af70ce74734c93a0e4b5930a835cdc.gif

 (旧)

Monty:“有特殊含义吗?没有,真的。其实也不太像剑尾鱼,反正用很久了”

(xiph fish 80年代疑似已存在)

 

        Xiph包括它的开源社区:

 

ed7da97705cd48af8ced9db2ddf4378c.png

xiph社区徽标

Xiph.Org基金会 —— 多媒体开源的先锋_第4张图片

博客徽标(Xiph之星)

 

        基金会人手不多,官方网站也年久失修,部分项目的徽标与名字来源已不可考了(更新:Xiph基金会早期项目的名称、徽标可以在【Xiph命名】页面找到,因文件变动原网站链接无效)

        Xiph在国内名气几乎为0,众多搜索引擎上都没有详细中文介绍。大多是解释 Ogg/Opus/FLAC 时添一嘴。这些开源作品甚至比xiph自己还出名。只能从官网上找到Xiph的介绍:

 

Xiph.Org is about open source and the ideals for which free software stands.

Xiph基金会关乎 开源 与 自由软件所代表的理想。

 

        Xiph基金会致力于打造开放标准、开发开源软件,所有项目均为完全开源免费,开放协议不是GNU、GPL就是BSD。

        Xiph与其他开源公司不同之处在于:专攻多媒体音视频领域,与闭源商业软件抗争。

 


「作品」

<容器>

 

Ogg

347645d371b147188c5cea57256c3106.pngdcc9a4c8136f491883e562929460510d.gif 

早期OggSquish徽标

 

        Ogg是一种流式容器格式。提供了对流式数据进行分割、存储、排列、按时间顺序查找 以及检查数据丢失的框架,可以混合多个数据流即多路复用。

        “Ogg”源于上世纪 世界第三款网络游戏 Netrek(没准会在第二篇文章里侃侃 文章已新鲜出炉)的梗:“Oh, it's Ogging!”。“OGG”和“ogg”严格意义上都是错误的。

        Ogg亦指代Xiph的第一个大型项目,此项目旨在建立完整的开源多媒体规范(包括音视频及一切附属规范)。

        参见《Ogg格式》。

 

<音频格式>

 

Vorbis

 Xiph.Org基金会 —— 多媒体开源的先锋_第5张图片

vorbis徽标 Many-fish (好多鱼) 

 

        Vorbis 是一种通用有损压缩音频格式。适用于中高质量(8kHz-48.0kHz,16+ 位PCM)音频,使用可变/平均比特率,范围从16至128kbps/通道。Vorbis在中高比特率 >可能< 比AAC还略胜一筹(128kbps最佳),支持多通道(目前标准最高为7.1环绕立体声,Vorbis预留了256个声道)。Vorbis定点解码器叫做Tremor(震颤)。

        Vorbis 与 Ogg 、 Theora 共同特点是都采取向前兼容设计。任何老版本的文件都可以由新版解码器正常解析,而且为将来可能的改进留下充足空间。然鹅Vorbis规格 2 再未更新。如今,Xiph打算用更强的Opus代替所有有损音频格式。

        算法方面主要采用了MDCT、矢量量化VQ、哈夫曼编码、FFT等,屏蔽了人耳不可见的声音,提高压缩率。

        Vorbis有个反常的设计:它将解码必需的信息(码本、基底、残差)全部放在头部,没有任何类似mp3的静态概率模型。换句话说,见不到头部,后面的数据直接废了。其实无伤大雅,但招来不少非议。

        Vorbis设计了【Vorbis注释】存储音乐的基本信息(作者、演奏者、时长等),这套设计被一字不改套在了FLAC和Opus、Theora、Kate上。

 

FLAC

Xiph.Org基金会 —— 多媒体开源的先锋_第6张图片

FLAC徽标 

 

         FLACFree Lossless Audio Codec。FLAC是目前最快、支持最广泛的无损音频格式,也是唯一一个开源无专利的无损音频格式。它和 Opus 应该是Xiph最出色的作品。

        FLAC原为Josh Coalson发起的项目,后FLAC组织并入Xiph基金会。

        FLAC只使用整数运算,不同于APE无损压缩格式的浮点运算,在计算速度上远超APE;压缩率略低;APE文件一旦有一处损坏整个作废,而FLAC有高容错率;而FLAC作为开源项目,还获得了巨大的市场支持,被认为是最优秀的无损压缩格式。

 

Opus 【原CELT】

Xiph.Org基金会 —— 多媒体开源的先锋_第7张图片


Opus徽标 

          

        Opus是一款高度通用的有损音频编解码器。

        Opus特点是编解码极快、延迟极低,适用于网络的交互式语音和音频传输;音频质量又非常可观,可作为通用音频使用。

        Opus原为两个项目:Skype公司的SILK(偏向语音)和Xiph的CELT(偏向低延迟)。两家公司都大力支持互联网基础设施开源。于是互联网工程任务组(IETF)将两个技术集成为Opus,由两家合作开发。CELT技术原为Ghost项目(已废弃)的继承者。

        Opus得到了Google老哥WebM的大力支持,Xiph计划用它替代所有有损音频格式:包括Vorbis、Speex、mp3(这老东西还有人在乎?)、AAC,可谓野心勃勃了。

        Opus采用CELT(继承自Vorbis的MDCT技术)和SILK(Skype的LP线性预测技术)混合。8kHz以下(语音)用LP,8~20kHz的声音用MDCT,强强联手无缝切换,不仅音质极高,而且适用范围广,即“高度通用”。

 

Speex(淘汰)

Xiph.Org基金会 —— 多媒体开源的先锋_第8张图片

 

        Speex是紧随Vorbis后Xiph开发的第二个有损压缩音频格式。Vorbis在中高码率时优势明显,Speex为了补充Vorbis,专攻低码率语音,适用于视频通话、游戏聊天、有声读物等。

        后来Xiph研发CELT技术改进Speex(Speex已使用CELT技术),最后CELT成了Opus。Opus如此高级耀眼,Speex自然中道崩殂,2013年便“不建议使用”。

 

(淘汰)

        在Ogg容器里存储未经压缩的原始PCM数据。

        其本身不是一种格式,只是将PCM数据映射到Ogg流的一项规范。也并非Xiph官方开发的,是社区的作品。

 

<视频格式>

 

Daala

        夭折。原本Xiph单独开发Daala,后来Xiph与Mozilla合作,Mozilla为Xiph提供资金支持。在此基础上,Daala主要开发者被Mozilla雇佣,成立了Daala视频项目。又是后来,Mozilla开发视频格式AV1时将Daala滤波器技术融合到其CDEF技术中,2020年Mozilla大裁员,Daala项目被砍。Monty转职后不再谈起Daala。

Xiph.Org基金会 —— 多媒体开源的先锋_第9张图片 

Daala徽标

 

(BBC曾开发一种视频格式Dirac支持Ogg容器,已没落)

 

Theora

Xiph.Org基金会 —— 多媒体开源的先锋_第10张图片

 

       Theora是视频压缩技术。基于Ogg容器,技术继承On2的VP3解码器(On2将VP3源代码授权给Xiph,Xiph在VP3基础上研发Theora并开源;最初Theora和VP3几乎一模一样),一般配合Vorbis音频,低码率有优势。2004年问世,成为第一个挑战H.264格式的勇者,也是第一个画质上击败H.264的英雄。为后来出现的AV1、VP9做了开路先锋。

        然而Theora到底拉垮,只有低码率时显出优势。市场上不能与H.264竞争,技术上又无法与后起之秀媲美。自2009年1.1版本后长期缺乏维护,被谷歌VP8完爆,Xiph便全力开发Daala去了。

 

Tarkin(淘汰)

        2000~2002年开发的实验性视频格式,使用离散小波变换。得到On2的VP3源代码后,Thoera成为视频格式的焦点,Tarkin于2002年8月淘汰。

 

<杂鱼>

(字面意思,Xiph鱼开发的杂项)

 

【文本】Kate / CMML / Annodex

         CMML表示连续媒体标记语言,前身是Writ,基于XML。CMML对音视频 类似于 HTML对文本。CMML是框架,音视频是内容。

        CMML是一个定时文本编解码器。它通过将时间段(所谓剪辑)划分来构建一个持续采样的数据文件,并为这些剪辑提供额外信息。这些信息类似HTML,本质上是音视频文件的文本表示。CMML允许对这些二进制文件进行文本搜索。

        看不懂对不?其实CMML就是在原来的音乐、视频里根据具体时间插入信息(剪辑/文本等)。如3分20秒加一段字幕、5分10秒屏幕反转等等,只不过它是专为Ogg流设计的。

        CMML适用于所有Ogg媒体格式,提供字幕和定时元数据。后来被Ogg Kate取代。

 

        Annodex是CSIRO(英联邦科学工业研究组织,属澳大利亚)与Xiph合作开发的一种格式,基于Ogg容器,为音视频提供元数据。后来交由Annodex社区开发。CMML是Annodex的一部分。二者一同淘汰。

 

         Kate是一个叠加编解码器,最初是为卡拉OK歌词设计的,通常在Ogg中复用。Kate不是Xiph官方开发的,是开源社区的作品。

        文本、图像可由Kate流携带并显示。它常与音视频混合,携带字幕、歌曲歌词等。

         文本可附加属性(位置、字体等),以创建动画叠加。例如定义滚动/褪色文本。这类属性甚至可用于绘制任意形状,因此绘画也可以由Kate流携带并显示。

 

【文本】XSPF 与 JSPF

         XSPF是一种XML播放列表格式,JSPF是一种JSON播放列表格式。用来承载媒体信息。

9ce59d1792d7428baa066e37ae88d98a.png

 

【软件】Icecast 2

Xiph.Org基金会 —— 多媒体开源的先锋_第11张图片

 

        Icecast是一个流媒体音视频服务器软件,支持Ogg(Vorbis/Theora)、Opus、WebM和MP3格式。可用于建立广播电台或个人点唱机,及其他通用流媒体服务器,而且能容易地添加新媒体格式。源客户端软件为IceS

        Icecast由Xiph.Org与Icecast集团支持,Icecast集团已并入Xiph基金会。Icecast直译过来为“冰铸”,霸气有木有!

 

        以上一系列 标准/规格、编解码器、代码库、软件 中,Xiph目前只专注于FLAC、Opus、Icecast。

 


 

「历史」

 

  • 1993年,Monty开始开发Squish音频压缩项目。(早在1995年“Vorbis”一词就出现在Monty的邮件里,但Xiph官方网站称,Ogg Vorbis项目诞生于1998年mp3事件之后。)
  • 1994年,Xiph.Org基金会正式成立。
  • 1998年12月 - 1999年1月,Jerk和Barath为SMU广播电台开发了开源Icecast流媒体服务器。Icecast集团成立。
  • 2000年5月8日,Vorbis I 正式完成
  • 2000年9月2日,Ogg Squish与Vorbis项目分离。
  • 2000年12月,FLAC项目启动。(为Josh个人项目,尚不属于Xiph)
  • 2001年,Ogg Squish更名为Ogg。
  • 2001开始,Icecast由Xiph.Org基金会代理,开始重写Icecast 2版本以支持Ogg Vorbis。
  • 2001年6月7日 和 7月20日,FLAC发布“final”0.10版本和正式1.0版本。
  • (一直到2003年,实际开发团队只有Monty一个人,但有众多志愿者参加)
  • 2002年1月1日,Ogg和Vorbis 1.0版本完整源代码首次公布
  • 2003年1月29日,FLAC加入Xiph基金会,作为其旗下公司Banner和子项目FLAC。
  • 同时,Xiph.Org 被美国税务局确认为非盈利性组织,获得捐款免税权。
  • 2003年3月24日,Speex 1.0 版本公布。
  • 截止2003年初,Xiph基金会获得约10万刀资金。
  • 2004年1月4日,Icecast 2 更新
  • 2004年7月1日,视频格式Theora I 正式完成。
  • 2007年,自由软件基金会(Free Software)发起支持Ogg Vorbis的宣传运动。
  • 同年,“.ogg”拓展名分家成“.ogg”“.ogx”和“.ogv”。
  • 2007年7月23日,FLAC 1.2版本。此后6年间,谷歌的Android 、 雅虎、 苹果、 索尼先后提供FLAC支持。
  • 2007年1月后,Skype公司开始研发SILK语音音频,替代原SVOPC。
  • 2007年11月后,Xiph开始研发CELT低延迟音频以更新Speex技术。
  • 2007年,HTML5制定
  • 2008年,Thoera编解码器推出。
  • 2009年,Skype公司倡议在IETF内研发、规范音频格式(IETF规范意味着免费开源),并向IETF提交了SILK格式。部分专利公司反对免版权音频格式。(毫无疑问Xiph大力支持)同时,Xiph向IETF提交了CELT格式。(伏笔
  • 2010年3月3日,FFmpeg开发人员Mans在个人网站上痛斥Ogg容器;4月27日,Monty发表文章进行反驳,引起轩然大波。
  • 2010年5月19日,Xiph 与 Google 合作,开发WebM格式。
  • 2010年下半年,IETF提议将CELT、SILK集成为一种格式,10月定名为Opus。随后Skype与Xiph展开合作。2012年,Opus正式被IETF批准标准化
  • 2012年9月11日,Opus版本1.0公布。
  • 2012年开始,Xiph与Mozilla基金会合作开发新的视频格式Dalaa。
  • 2013年10月,Monty从Red Hat辞职,加入Mozilla。
  • 2013年12月4日,Opus版本1.1。
  • 2013年6月1日,FLAC 1.3版本更新(后6年没有更新)。
  • 2017年6月20日,Opus版本1.2。
  • 2018年10月18日,Opus版本1.3。
  • 2019年4月12日,Opus最新版本1.3.1。
  • 2020年8月上旬,Mozilla大裁员,Daala项目被砍。
  • 2021年6月底,Monty加入AWS亚马逊云科技。
  • 2022年2月20日,FLAC 最新版本1.3.4。
  • 2022年4月10日,Icecast最新版本2.4.6。

 


「纲领」

       Xiph认为,开源与闭源、社区与公司 都促进着互联网的进步与发展,都是道德的、合理的。

       然而,互联网是为公众服务的,是自由、开放、合作的。闭源本质上为大公司服务。如微软、IBM、Thomson(指名道姓,勇气可嘉)的大公司追逐利润,通过控制数字专利等方式打压开源社区,并互相对抗、形成垄断,利用公众的互联网,侵占公众的利益。

        尤其罪恶的是控制互联网的基础设施。如果大公司控制着 HTTP协议 甚至 TCP/IP协议 的专利,今天你能上网吗?公司只在乎利益,但互联网不因公司的利益而进步。

        至于为何专注于多媒体,Monty的解释:

Music isn't an art, it's an industry.

音乐已不再是艺术,而是行业。

       Xiph.Org基金会 —— 多媒体开源的先锋_第12张图片

 

        从20世纪开始,唱片界进入资本垄断时代。唱片公司拼命控制音乐,从分发到复制 ---- 当然不是为音乐家的利益,他们甚至试图把不遵守“规则”的音乐家统统挤出市场,剥夺其创作权利。1909年美国国会修改了版权法,保护音乐家的利益,遭到唱片公司的强烈反对。引用Monty的一句话: 

 

The copyright protects the record label, not the artist.

所谓版权,保护的是唱片公司,不是音乐家。

        一开始的唱片公司试图修改法律使唱片不属于版权范畴,如此一来卖出亿万唱片却不需要付给音乐家一分版税。当时个人难以复制唱片,所以他们很容易控制音乐的传播:你只能掏钱买他们的。随着互联网的兴起,从唱片到光盘,磁带到计算机文件,复制音乐越来越简单,唱片帝国崩溃了。取而代之的是另一个帝国:数字专利。

       直接关系到Xiph诞生的便是臭名昭著的 mp3版权事件。

       Thomson(汤姆逊)公司和Fraunhofer研究院控制着MPEG 3 中 音频格式(即mp3格式)的专利。当mp3已成为世界通用的音乐格式后,1998年9月,Fraunhofer研究院向多名MP3开发者寄信,声称他们的产品触犯了专利权。并宣布:

一切MP3格式的 编/解码器 必须得到Thomson公司和Fraunhofer研究院的授权。每个用mp3制作音乐的作曲家必须交纳专利金,音乐公司的每首mp3格式音乐被播放一次要交纳1%的版税。

从此各类民间mp3播放器绝迹(20世纪初我国毕竟盗版mp3播放器横行,无人在意),也导致了 mp3 和 Thomson 声名狼藉。刺激了Xiph的Ogg Vorbis、微软的Windows Media相继推出。

        过去的唱片公司 和 今日的互联网音乐公司,一个避开版权,一个利用版权。但在追逐利润、剥削音乐家方面,半斤八两。

        Xiph希望用开源标准和开放规格,让互联网的基础设施开放、免费化,保证互联网始终为公众服务,而非由公司左右一切。Xiph选择了开源音视频,因为此处尚无开源软件涉足。

        Monty相信:程序员或许可以改变世界,改变互联网的现状。

个人理解,基于【Xiph基金会官网介绍】​​​​​​


「后话」

       2010年,mp3的专利就过期了。而 mp3 专利事件催生出的Xiph至今不为国内熟知,尽管在国外开源平台上它深受欢迎。大部分数字音乐用户最多在乎一下音乐公司(比如我们只在乎QQ还是酷我、网易云?),毫不在意音频数字专利问题,只有数字音乐爱好者才会去认真钻研音频格式。Ogg Vorbis背后的Xiph就更不为人知了。

        Xiph并非毫无作为,最负盛名的 Ogg Vorbis 作为多媒体领域开源向闭源下的第一封战书,其质量之高不仅得到了大量电台广播的青睐(美国加州大学广播、英国BBC广播等),而且众多游戏大作的音乐、音效里依然有Ogg的身影(如Minecraft,植物大战僵尸,侠盗猎车手,雷神之锤4,文明V等);FLAC更是无损音频的巅峰;Opus得到Google一臂之力,也是如日中天。

        Xiph创始人Monty的演讲词最令我震撼:很难想象在上世纪末,一个资本主义高度发达的国家,竟然诞生出如此政治化、如此批判性的开源宣言。

        Monty本人长期打工,开始在Red Hat,后转到Mozilla开发Dalaa,抽不出身管理基金会。2020年Mozilla裁员,有人愤愤不平认为Mozilla太不厚道,Monty表示  “这与Mozilla无关,我很解脱,我可以摆脱Daala开始新的工作了”  “我绝不后悔。Mozilla在10年里给这个永远资产负债的基金会如此丰厚的报酬,才使得Xiph仍然存在。”  “感谢各位的慰问,Xiph很好,愿开源多媒体坚持到底。” 然后转至亚马逊,目前只能在推特上找到他最近的踪迹。

        他的新个人博客网站 “将” 是montylab.com。今年5月13日Monty不幸感染新冠,已痊愈。

        彩蛋:Monty爱吃川菜酸辣汤;Monty的中国朋友老以为他叫“Monkey”;他的名字比较常见,经常因为重名而头疼;喜欢养鱼,尤其是剑尾鱼(现在你知道Xiph名称怎么来的了)。

        由于公益性质,Xiph基金会2002年就因资金短缺隐匿一时,二十年过去了,终究因为开源性质,Xiph发展极为缓慢。

        Ogg20年未更新;Ogg Skeleton 4规格完成于2012年,版本3代码居然2015年才完成;Ogg Index于2014年失去消息;Theora直接抛弃;官网网页链接失效、更新迟缓;上一个官方视频在2013年;最后新闻是2019年Monty在挪威演讲;只有FLAC、Opus、Icecast的更新不停,剩下的可想而知……

        或许Xiph注定是一个开源理想,或许是垄断趋势下的昙花一现,即使它在开源领域也不为我们熟知,但它依然是多媒体开源的里程碑,它所代表的开源精神依然值得 每个听数字音乐的人 脱帽

致敬

 

 

本文参考资料:

【Xiph基金会官方网站】主要页面:关于、新闻。

【Xiph基金会Wiki百科】主页 主要页面:成员名单、每月议会

【Xiph基金会邮件列表】Xiph的公开邮箱,里面有更详细的开发日记。

【关于OGG ACC MP3的质量问题 - 知乎】

【部分图片来源于网络】

• 如果你希望为Xiph基金会提供支持,可以前往他们的【捐赠】页面。(PayPal 备好!: ) );或者你是大佬程序员 & 资金缺乏,去【悬赏】看看,支持Xiph顺便赚些外快。

• 想学习代码或者支持Xiph开发,前往【gitlab代码库】

• 想在中网宣传Xiph及其作品,去【翻译】帮他们翻译网站 / 技术文档。

 

【原作者:神武竹 • 未经允许,禁止转载】

<更新记录:2022-8-23>

你可能感兴趣的:(音视频,视频编解码,业界资讯,开源,开源软件)