我的代码基本上是这样的
<audio controls preload="metadata">
<source src="linktofile.wav" type="audio/ogg">
</audio>
在 Firefox 18.0.1 - 它导致 8.4 KB 数据下载(在 Firebug 上检查)。
但在 Chrome 24.0.1312.52 m - 它开始下载整个文件(在开发者工具中 - 它以 MB 为单位显示下载大小)。
是什么赋予了?
我的代码基本上是这样的
<audio controls preload="metadata">
<source src="linktofile.wav" type="audio/ogg">
</audio>
在 Firefox 18.0.1 - 它导致 8.4 KB 数据下载(在 Firebug 上检查)。
但在 Chrome 24.0.1312.52 m - 它开始下载整个文件(在开发者工具中 - 它以 MB 为单位显示下载大小)。
是什么赋予了?
v42 及更高版本现在似乎尊重这一点。耶!
(截至昨天的当前测试版)
您现在可以看到206
部分内容请求,下载了 66kb(我的视频是 600kb+)
但是:非常重要
如果您不知道,Chrome 只能同时有 6 个同时连接到同一台服务器。
目前在 v42 + v43 中,它们有一个可怕的错误,这意味着一旦加载了元数据,该文件就不会释放回“池”中以获取可用连接。因此,如果您加载 6 个或更多视频,则第 7 个块将不会下载。
我已将此报告为错误https://code.google.com/p/chromium/issues/detail?id=468930
并非所有视频都是这种情况,但我有 10 个用 Adobe Media Encoder 编码的 MP4 短视频,它们卡住了。
如果有疑问或遇到此问题,您别无选择,只能preload='auto'
现在设置。希望这个错误永远不会进入野外。
据我了解,预加载值是对浏览器的提示,而不是绝对命令。换句话说,它们是对浏览器应该如何表现的建议。浏览器可能会也可能不会遵循提示,因此如果它并不总是有效,请不要感到惊讶。
http://www.mediacollege.com/internet/html/audio/preload.html
预加载是固定的,并且已经有一段时间了
预加载并保持连接的行为不是错误。
它使连接保持打开状态,以允许通过使用一次性令牌进行流保护。
如果它不这样做,那么如果受令牌保护,音频或视频甚至都不会播放。
因此,chrome 必须保持连接打开,直到页面离开或关闭。