【问题标题】:HTML5 video - video.buffered.length returns 0 on IE 10/11HTML5 视频 - video.buffered.length 在 IE 10/11 上返回 0
【发布时间】:2014-04-10 07:25:55
【问题描述】:

我正在监控 HTML5 视频播放器的下载进度。 Windows 8/8.1 上的 IE 10/11 给我带来了麻烦。这是我的代码和问题的解释:

<script src="http://code.jquery.com/jquery-1.10.2.min.js"></script>
<video id="myVideo" width="640" height="360" controls>
<source src="pathto.mp4" type='video/mp4; codecs="avc1.42E01E,mp4a.40.2"' />
</video>
<script type="text/javascript">
var video= $('#myVideo')[0];   
var videoJ= $('#myVideo');    
function doUpdateProgress(){
console.log(video.buffered.length);
}
videoJ.on('progress', doUpdateProgress);
videoJ.on('canplay', doUpdateProgress);
</script> 

问题在于我的服务器上的 URL url1to.mp4 video.buffered.length 在 IE 10/11 中总是返回 0(IE9 返回未定义)。它适用于我测试过的所有其他浏览器(包括 Chrome 和 FF)。

如果我输入来自共享服务器 url2to.mp4 的 URL,即使在 IE10/11 上它也会按预期返回 1(当然,如果您不在时间线中寻找,则返回 1)。 mp4 文件在麻烦的服务器上完全相同,因此我知道它不是来自文件格式问题。我尝试使用另一个格式良好的 mp4(来自我在两台服务器上托管的 videojs 的示例),它也导致了问题。

服务器端 - 我的 mime/类型似乎没问题 - 我在我的服务器上启用了部分支持(字节范围)内容(Ubuntu 服务器 12.04.3 LTS 上的 Apache 2.2.22)。尽管我可能认为这可能与 HTTP 字节范围支持客户端或服务器端的调整有关。

因为它只发生在 IE9/10/11 上,所以我对进一步调查的位置零领先。我确实在msdn上问过这个问题,但无济于事。

有人可以对此有所了解吗?

编辑:从问题中删除真实的视频网址。

谢谢

【问题讨论】:

    标签: jquery apache internet-explorer http video


    【解决方案1】:

    好的,我最终通过从 2.2.22 到 2.4.9 的完整全新安装 Apache 修复了它。这次我确实从源代码编译,而不是从 Ubuntu 服务器 12.04.3 LTS 获取默认包。我不确定这个问题的确切原因,但我认为这与 IE 9/10/11 和 Apache 的某些版本/设置之间的 HTTP 范围请求和响应不兼容有关。

    为可能遇到类似问题的任何人总结我的故障排除步骤:

    • 检查您的服务器是否正确mime/types
    • 通配符CORS(msdn 建议)
    • 检查您的网络服务器是否支持ranges request/206 partial content。我已经使用 CURL 在我的服务器上检查了它,它工作正常。然而,来自这个page 的示例 PHP 代码似乎表明了其他情况,我认为这让 IE 感到困惑(范围标头已正确返回,但响应代码是 200,而不是 CURL 的 206)。
    • 有时您似乎需要从源代码(以及从官方网站的可信来源)编译,而不是使用操作系统的默认包。即使一开始可能有一个步骤要求(特别是如果您必须修复依赖项)并且有时需要更新 - 最终结果可能值得您付出努力(我知道有利有弊)。
    • 检查您的 mp4 文件格式:尝试从 videojs 托管sample,看看它是否效果更好。您可能需要repackage/re-transcode

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-06-07
      • 1970-01-01
      • 2018-04-23
      • 2017-12-08
      • 2018-09-26
      • 2023-04-10
      • 1970-01-01
      相关资源
      最近更新 更多