搅搅 HTML5 视频这滩浑水(2)HTML5 视频标准
HTML5 标准制定时曾经考虑过指定一种视频格式(包括视频编码、音频编码、容器格式)作为标准的一部分,所有浏览器厂商都必须实现。理想的视频格式应该具有如下特性:
- 高压缩率,且画质尚佳
- 解码容易,且要有硬件解码器以供处理能力不足的便携设备使用
- 免费,且没有潜在的专利纠纷
当时考虑过的两个组合是 Theora 视频编码、Vorbis 音频编码、Ogg 容器格式,或者 H.264/AAC/MP4(此时 Google 尚未收购 On2)。
Theora/Vorbis/Ogg 组合的三种技术都是由非营利组织 Xiph 开发并可以免费使用。其中 Theora 视频编码是基于 On2 的 VP3 视频编码发展起来的。但 Theora 在技术上落后于 H.264:为达到同样的画质 H.264 所需的文件尺寸比 Theora 更小。考虑到 HTML5 视频主要通过网络传输,在保留同等的画质下文件尺寸要尽可能轻巧以节省网络流量开支。参与 HTML5 标准制定的 Google 对此忧心忡忡:按照他们的估算,如果 YouTube 完全采用 Theora 且保持同样的画质的话,那么 YouTube 产生的网络流量将消耗掉整个互联网的带宽资源。因此虽然 Google 宣称将在其浏览器中同时支持 Theora 和 H.264,但 YouTube 的默认视频编码将使用 H.264。
除了技术相对落后外,Theora 最终没有被采纳的另外一个重要原因则是尚不明朗的专利问题。苹果认为虽然 Theora 可以免费使用,且没有侵犯已知的专利,但这并不保证 Theora 采用的某些技术没有侵犯到所谓的「潜艇专利」。所谓「潜艇专利」是指专利申请人故意推迟专利权的取得、公开,等到有大企业使用的技术侵犯到专利时再突然出现,对侵权企业进行诉讼索赔的做法。该做法类似于平时将潜艇藏起来,等到关键时刻出现发起攻击,因此得名「潜艇专利」。这些尚未明确的潜在专利问题可能会在将来 Theora 流行起来后给采用 Theora 的大公司带来不必要的专利诉讼。另外,很多人尝试改进 Theora 以提高其编码效率,但业内的共识是改进 Theora 的尝试几乎不可避免的会侵犯到某些专利。
参与 HTML5 标准制定的各大厂商未能在是否 H.264 上达成一致。虽然 H.264 具有高压缩比、高画质、解码容易、有成熟的硬件解码器、专利问题相对明朗等优势,但各方争论的焦点主要在于 H.264 不是免费的。免费浏览器厂商如 Mozilla 和 Opera 强烈反对将 H.264 列为 HTML5 视频标准。因为这意味着 Mozilla 和 Opera 如果要支持 HTML5 标准,那么他们必须支付相关的授权费。且不说这做法和其信条相去甚远,Mozilla 没有从其开发的浏览器上获得直接收入,反而需要付出相应成本才能自由分发其浏览器产品;Opera 则抱怨说 H.264 的授权费太贵。因此两者都认为不可接受。
由于各方争执不下,最后在 2007 年底的时候 HTML5 标准放弃了制定统一的视频格式的努力,将选择的自由留给了浏览器厂商。后来的结果是,Mozilla Firefox 和 Opera 只支持 Theora;苹果全线产品(包括 Safari 浏览器和所有 iOS 设备)只支持 H.264;微软承诺在 IE9 中原生支持 H.264;Google Chrome 同时支持 Theora 和 H.264。
(待续)