<audio>元素a​​utobuffers无论</audio>是什么

时间:2009-09-29 21:51:45

标签: html http audio html5

我正在尝试使用Firefox 3.5和Chrome中实现的HTML5音频元素制作基于Web的媒体播放器。阅读Mozillas documentation,省略autobuffer属性会导致音频src没有被请求:

  

如果指定,音频将   自动开始下载,   即使没有设置为自动播放。   这一直持续到媒体缓存   已满,或整个音频文件有   已下载,以先到者为准

然而,服务器端的我注意到正在请求文件。我的示例页面非常简单:

<html>
    <body>
        <audio src="1.ogg"></audio>
        <audio src="2.ogg"></audio>
    </body>
</html>

3 个答案:

答案 0 :(得分:6)

autobuffer属性has been replaced with preload接受值nonemetadataauto

已经为WebKit提交了一个补丁(问题#35385;遗憾的是我无法链接到它),但它似乎没有进入Safari 4.0.5。

答案 1 :(得分:2)

HTML5中的布尔属性不能为false。如果它存在,那是真的。

你被XHTML习惯误导了。

请参阅: http://dev.w3.org/html5/spec/Overview.html#boolean-attributes

引用:

“布尔属性上不允许使用值”true“和”false“。要表示false值,必须完全省略该属性。”

答案 2 :(得分:0)

根据文章“Configuring Servers for Ogg Media”,Ogg媒体不包含持续时间信息,因此要正确显示滑块,您需要包含X-Content-Duration标题。如果您不包含这样的标题,Firefox将预取部分媒体*,以便它可以计算持续时间并显示滑块。

这可能是你的问题。

*它将获取前几个位,这应该给它一个Content-Length标题,以便它知道文件大小。然后,它将使用该文件大小来获取最后几个刻度,从中可以计算出持续时间。如果您的服务器不支持Range个请求,那么结果将是它将获取整个文件。