3

我的代码基本上是这样的

<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 为单位显示下载大小)。

是什么赋予了?

4

3 回答 3

2

v42 及更高版本现在似乎尊重这一点。耶!
(截至昨天的当前测试版)

您现在可以看到206部分内容请求,下载了 66kb(我的视频是 600kb+)

在此处输入图像描述

但是:非常重要

如果您不知道,Chrome 只能同时有 6 个同时连接到同一台服务器。

目前在 v42 + v43 中,它们有一个可怕的错误,这意味着一旦加载了元数据,该文件就不会释放回“池”中以获取可用连接。因此,如果您加载 6 个或更多视频,则第 7 个块将不会下载。

我已将此报告为错误https://code.google.com/p/chromium/issues/detail?id=468930

并非所有视频都是这种情况,但我有 10 个用 Adob​​e Media Encoder 编码的 MP4 短视频,它们卡住了。

如果有疑问或遇到此问题,您别无选择,只能preload='auto'现在设置。希望这个错误永远不会进入野外。

于 2015-03-19T21:02:04.940 回答
2

据我了解,预加载值是对浏览器的提示,而不是绝对命令。换句话说,它们是对浏览器应该如何表现的建议。浏览器可能会也可能不会遵循提示,因此如果它并不总是有效,请不要感到惊讶。

http://www.mediacollege.com/internet/html/audio/preload.html

于 2013-01-23T12:33:59.513 回答
1
  1. 预加载是固定的,并且已经有一段时间了

  2. 预加载并保持连接的行为不是错误

它使连接保持打开状态,以允许通过使用一次性令牌进行流保护。

如果它不这样做,那么如果受令牌保护,音频或视频甚至都不会播放。

因此,chrome 必须保持连接打开,直到页面离开或关闭。

于 2021-06-02T15:59:02.870 回答