【问题标题】:MEDIA_ERR_SRC_NOT_SUPPORTED html5 audio woesMEDIA_ERR_SRC_NOT_SUPPORTED html5 音频问题
【发布时间】:2010-02-14 06:24:23
【问题描述】:

我正在开发一个 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

【问题讨论】:

标签: audio html


【解决方案1】:

Content-Type=octet/stream 标头是问题所在,但如果我正确阅读规范,则不应该如此。这是一个测试用例:http://mozilla.doslash.org/stuff/video-test/video.html

我在 Mozilla 的 bugzilla 中 filed a bug 对此进行了讨论。 [编辑] 回复:

我们不会进行任何内容嗅探来确定内容是什么 - 我们依赖 提供了正确的 mime 类型。这就是为什么 application/octet-stream 确实 不播放,我们为 canPlayType 返回 ""。

【讨论】:

  • 谢谢,我想我在发布此内容时需要睡觉。我可以发誓我查看了有效的内容类型,它是应用程序/八位字节流。现在看是application/ogg
【解决方案2】:

问题在于您提供音频文件的 MIME 类型。它需要是 'audio/ogg'、'application/ogg' 或 'video/ogg' 才能让 Firefox 播放。 Firefox 不会进行任何形式的“内容嗅探”来确定文件的格式——它完全依赖于 mime 类型。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-01-08
    • 2012-08-25
    • 2013-03-11
    • 2011-03-14
    • 1970-01-01
    • 2015-12-05
    • 1970-01-01
    相关资源
    最近更新 更多