MediaSource API和mp4

时间:2012-02-16 18:24:41

标签: javascript html5 api video streaming

我在Html5Rocks.com上关注了this示例,即使用MediaSource API和.webm视频。我用另一个.webm视频尝试了这个例子并且它正常工作,但是当我尝试使用.mp4视频时它没有用。有可能吗?

4 个答案:

答案 0 :(得分:11)

更新:MP4(或更正式的ISO BMFF)支持在Chrome Dev / Canary中。您需要以符合Media Source规范的方式生成MP4文件。幸运的是,Media Source是用MPEG-DASH编写的,因此任何符合DASH标准的文件都可以与Media Source一起使用。 GPAC / MP4Box是一个很好的工具:

MP4Box -dash 5000 -frag 5000 -rap some_file.mp4

...将创建'some_file_dash.mp4',它应该与Media Source兼容。在早期发布的MP4Box版本中存在一些错误,所以我建议现在从SVN构建。

答案 1 :(得分:0)

更新:现在支持MP4-DASH。


Chrome的Media Source API实现尚不支持MP4。

我们计划增加支持,但不会在几个月内完成。我们目前正专注于更新现有实施,以匹配最近向W3C提出的Media Source API spec新版本。

您可以通过观看this chromium bug

来了解实施升级的进程

答案 2 :(得分:0)

正如@Steven所提到的,使用MP4Box创建虚线MP4文件并尝试使用Chrome canary m23 build(启用媒体源api)。您需要注意以下事项:

  1. 每个细分受众群应该有一个片段(-dash <ms> -frag <same ms>
  2. 该细分应以SAP(-rap
  3. 开头
  4. 修改演示程序的脚本,使其逐段追加。分割成与webm相同大小的块不适用于ISO BMFF。您可以使用MP4Box生成的mpd文件来了解各个段的大小。

答案 3 :(得分:0)

要使用MSE在HTML5中播放,您需要基于JS的播放器实现,例如开源dash.js播放器或bitdash MPEG-DASH player