0

就 HTML5 而言,我是新手。我正在浏览此链接上提供的MediaSource API文档

我访问了此链接上给出的演示链接

但它不起作用(在 chrome 下)。当我通过开发人员工具检查时,我收到以下错误:

Uncaught ReferenceError: MediaSource is not defined 

在文档中提到:

Support: Currently, the MediaSource API is only available in Chrome Dev Channel 17+ with the --enable-media-source flag set or enabled via about:flags.

我已经启用了媒体源标志,我的 chrome 版本是21.0.1180.79 m

如何使这个工作?

4

2 回答 2

2

这个实验性 API 的状态在 Chrome 的最后几个版本中一直在变化。

  • Chrome 17-20 具有 v0.3 API,这是文章的代码片段所显示的。
  • Chrome 21 和 22 具有最初向 W3C 提出的 v0.5 API。
  • Chrome 23 具有当前正在标准化的新的面向对象的 API 。演示已更新到此版本的 API。

如果您想将 v0.3 示例转换为您的 Chrome 21 版本支持的 v0.5 API,只需按照这些说明操作即可。

如果您不介意运行 Canary 版本或者可以等到 Chrome 23 进入开发通道,那么您绝对应该使用面向对象的 API。它比旧版本更强大,它实际上反映了正在标准化的内容。

于 2012-08-18T00:35:15.530 回答
1

该演示既不能使用稳定频道也不能使用开发频道,而是使用最新的金丝雀 (m23) 版本。您所指的文档已过时。您可以在此处找到最新版本的规范草案。

另外,请检查Chrome 问题。我不确定那里提到的一件事。据说该演示已更新为使用 v0.5 API。但与 v0.5 相比,演示代码与最新规范中给出的示例更匹配。可能它们只是实现同一目标的两种不同方式。

于 2012-08-17T18:35:57.777 回答