写点什么

各方未就 HTML 5 Video Codec 达成一致

  • 2009-07-22
  • 本文字数:1403 字

    阅读完需:约 5 分钟

近日 HTML 5 规范的编辑 Ian Hickson 分别从 video 与 audio 标签的草案标准中移除了 codec,这是因为对于那些在网上发布视频和音频的大多数公司来说很难就这个议题达成和解。

目前主要使用两个标准: H.264 Ogg Theora 。H.264 或 MPEG-4 是私有的视频压缩标准,如果用于商用则需要购买 license,它特别适合于大容量的视频;而 Ogg Theora 则是个开源免费的标准,但其质量却不敢恭维,同时支持它的大厂商也少的可怜,Hickson 说到:

Apple 拒绝在 QuickTime 中(Safari 使用的也是 QuickTime)实现 Ogg Theora,因为其缺少硬件支持及不确定的专利问题。

Opera 与 Mozilla 对 H.264 提出了反对意见:

Opera 拒绝实现 H.264,因为其相关的专利协议花费太大。

Mozilla 也拒绝实现 H.264,因为其无法获得可以涵盖下游分发者的协议。

Google 却双管齐下:

Google 已经在 Chrome 中实现了 H.264 与 Ogg Theora,但却无法向 Chromium 的第三方分发者提供 H.264 codec license,同时也指出 Ogg Theora 的 quality-per-bit 并不适合 YouTube 所处理的视频容量大小。

微软甚至未就 HTML 5 规范的 <video> 标签表态。

Opera Software 的开发者 Philip Jägenstedt表明了他们的立场

我们认为专利协议导致 H.264 与开放的 Web 平台格格不入。就目前情况来说,我们暂时会支持 Ogg Vorbis/Theora,从专利角度来看这是最好的选择了,而且其 quality-per-bit 也在不断改进(尤其得力于最近编码器的改进)。我们希望它能成为 HTML5 的基线,然而我们还是衷心希望 Web 社区能够再使一把劲以使其成为事实上的标准。

在不远的将来还看不出合理的解决方案。Hickson 有两个想法:

  1. Ogg Theora 编码器在不断改进。现在已经出现了可用的硬件 Ogg Theora 解码器芯片了。长久以来 Google 一直在支持 codec 而没有获得起诉,这导致 Apple 也逐渐打消了对专利的顾虑 。这么做会让 Theora 成为 Web 上 codec 事实上的标准。
  2. H.264 专利(那些把持着专利的公司还不想免费开放它们)也在不断消亡,这样对 H.264 的支持无需支付任何协议费用。这么做会让 H.264 成为 Web 上 codec 事实上的标准。

Hickson 认为最后的赢家要满足如下条件:

- 无需费用就可以实现,而且可由任何人分发

- 拥有可用的解码器芯片

- 使用广泛以弥补额外的专利费用

- 拥有足够高的 quality-per-bit 以处理大容量的视频站点

综上所述,不同公司又一次在公共标准问题上不欢而散,每个人都想按自己的方式行事,最终的胜者又是谁呢?我们期待着梦想照进现实的那一天。

查看英文原文: Parties Fail to Agree on the HTML 5 Video Codec

2009-07-22 07:562012
用户头像

发布了 88 篇内容, 共 266.5 次阅读, 收获喜欢 8 次。

关注

评论

发布
暂无评论
发现更多内容

说说Nodejs高并发的原理

coder2028

node.js

令人头疼的Javascript隐式&强制转换

hellocoder2029

JavaScript

详解CAN总线:CAN总线报文格式—遥控帧

不脱发的程序猿

汽车电子 CAN总线报文格式 详解CAN总线 CAN遥控帧

星汉未来 | 云原生薪火计划——开源大使招募

星汉未来

开源 开发者 云原生 星汉未来 FinOps

被翻译成 12 种语言的深度学习名著重磅升级,75%新内容,让你豁然开朗!

图灵社区

Python 深度学习

时间旅行调试与自动化测试的支持

iofod jude

前端 低代码

【愚公系列】2022年10月 Go教学课程 024-函数

愚公搬代码

10月月更

从手动测试到自动化测试(上)

FunTester

详解CAN总线:CAN总线报文格式—错误帧

不脱发的程序猿

汽车电子 CAN总线报文格式 详解CAN总线 CAN错误帧

详解CAN总线:CAN总线报文格式—过载帧

不脱发的程序猿

汽车电子 CAN总线报文格式 详解CAN总线 CAN过载帧

一文了解 Python 中的对象比较方法 is 和 ==及其本质

宇宙之一粟

Python 10月月更

webpack模块化的原理

Geek_02d948

webpack

理解NodeJS多进程

coder2028

node.js

被翻译成 12 种语言的深度学习名著重磅升级,75%新内容,让你豁然开朗!

图灵教育

Python 深度学习

详解CAN总线:CAN总线报文格式—帧间隔

不脱发的程序猿

汽车电子 CAN总线报文格式 详解CAN总线 CAN帧间隔

阳振坤:分布式技术引领关系数据库发展

OceanBase 数据库

深度理解NodeJS事件循环

coder2028

node.js

js作用域、作用域链和它的一些优化

hellocoder2029

JavaScript

数据治理,七种常犯的错误

雨果

数据治理

Spring Boot「02」日志配置

Samson

Java spring 学习笔记 spring-boot 10月月更

李宏毅《机器学习》P1-P2 学习笔记

Clarke

为什么最近关注“元数据”的人突然增多?

雨果

元数据 元数据管理 元数据管理平台

一文读懂Js中的this指向

hellocoder2029

JavaScript

DataOps核心理念是什么?包括哪些模块?

雨果

DataOps

爬虫练习题(五)

张立梵

Python. 10月月更 爬虫案例

Red Hat Releases OptaPlanner 8

积木编程

webpack热更新原理(面试大概率会问)

Geek_02d948

webpack

数字化转型最核心的是数据吗?不,是数据思维

雨果

数字化转型 数据思维

Vue组件入门(一)组件定义及使用

Augus

Vue3 10月月更

我为什么要使用 Tauri 构建 macOS 磁盘清理工具 PrettyClean

NinetyH

tauri ​Rust

后端Java随机比大小游戏实战讲解

魏铁锤

10月月更

各方未就HTML 5 Video Codec达成一致_架构_Abel Avram_InfoQ精选文章