问题是间歇性的,但 video.js 无法加载和播放已在 Chrome for OS X 中缓存的 mp4。这是我目前所知道的:
- 禁用缓存(在 DevTools 打开时)允许视频在重新加载时播放 100% 的时间
- 如果未禁用缓存,并且手动清除缓存,问题仍然存在
- 关闭并重新启动 Chrome 将解决问题,直到下一个页面刷新
- 将 ?nocache=20131028-084318 附加到源 url 并不能解决问题。
- 使用 Charles Proxy 观看 HTTP 请求,我看到在成功运行时,一个 HTTP 请求会发送到 Brightcove(我的视频主机)。刷新失败时,请求永远不会发生。
- 成功运行 VideoJS 事件序列:
- 加载启动
- 持续时间变化
- 加载元数据
- 加载数据
- 打开失败:
- 加载启动
- 我尝试了多种设置视频元素的方法,包括这里提到的一种,iOS 上文件加载期间的 Video.js Stalling ,甚至是这里提到的最基本的设置,https://github.com/videojs/video。 js/blob/master/docs/setup.md 后者似乎效果更好;但是,一旦浏览器进入错误状态,就需要清除缓存并重新启动浏览器。