MEDIA_ERR_SRC_NOT_SUPPORTED html5音频问题

我正在使用一个 html5音频播放器,当我从与html页面相同的主机服务.ogg文件时,一切正常.当我将ogg文件放在我的cdn中时,它失败,错误代码是MEDIA_ERR_SRC_NOT_SUPPORTED

例如,这工作正常

<audio src="/song.ogg" id="player">
  Your browser does not support the <code>audio</code> element.
</audio>

但是,以上错误代码失败

<audio src="http://mycdn.com/song.ogg" id="player">
  Your browser does not support the <code>audio</code> element.
</audio>

音频文件标题失败看起来像这样(这是来自不同的ogg文件,表现出相同的行为)

HTTP/1.1 200 OK
Server: CacheFlyServe v26b
Date: Sat,13 Feb 2010 21:10:48 GMT
Content-Type: application/octet-stream
Connection: close
ETag: "c6ee7d86e808cc44bbd74a8db94a5aae"
X-CF1: fA.syd1:cf:cacheD.syd1-01
Content-Length: 2398477
Last-Modified: Sat,13 Feb 2010 20:50:56 GMT
Accept-Ranges: bytes
X-Cache: MISS from deliveryD-syd1

解决方法

Content-Type =八位字节/流标题是问题,虽然如果我正确地阅读规范,它不应该是.这是一个测试用例: http://mozilla.doslash.org/stuff/video-test/video.html

filed a bug在Mozilla的bugzilla关于这个.响应:

We don’t do any content sniffing to work out what the content is – we rely on the correct mime type being provided. This is why application/octet-stream does not play and way we return “” for canPlayType.

相关文章

HTML5不是新事物。自从最初发布(2008年1月)以来,我们一直在使用它的一些功能。后来,我再次仔细查看...
Pointer Events API 是Hmtl5的事件规范之一,它主要目的是用来将鼠标(Mouse)、触摸(touch)和触控笔(...
CSS动画非常的有趣;这种技术的美就在于,通过使用很多简单的属性,你能创建出漂亮的消隐效果。其中代表...
clip-path介绍 clip-path 直译过来就是裁剪路径,使用SVG或形状定义一个HTML元素的可见区域的方法。想象...
语法 必需。动画时长的百分比。 合法的值: 0-100% from(与 0% 相同) to(与 100% 相同) 定义和用法...
基本代码 html代码: 首先定义一些基本的样式和动画: background-size: auto 100%; 这段代码的意思是让...