Internet Explorer 11 HTML5音频持续时间=无限问题

时间:2015-07-16 13:27:24

标签: html5 audio ffmpeg converter internet-explorer-11

今天我遇到了一个令人不快的问题。有一个网站有自定义HTML5音频播放器。页面加载后,我尝试回显document.getElementById("myAudioId").duration,需要它才能使导航成为可能。在其他所有浏览器中,它的工作正常,持续时间显示,但IE11的工作方式不同 - 它表明持续时间等于Infinity。但正如我所注意到的那样,当歌曲被缓冲到最后时,持续时间神奇地吸引并且导航起作用。在其他浏览器中,一切都从一开始就有效设置了内容长度标头。它可能是什么?

UPD :其他HTML5音频网站让我从一开始就看到了持续时间。我想,持续时间是元数据的一部分,即使不使用preload="metadata"预加载音频文件也可以加载,但它也不起作用。

UPD2:我也尝试过使用 jsfiddle 并在那里使用相同的MP3音频制作相同的音频标签 - 情况相同。但后来我在那里插入了另一个MP3的链接,来自另一个网站 - 并且它有效!。更重要的是,我已经将第二首歌曲上传到了第一个有问题的网站,之后那首完美无缺的歌曲也无法向我展示它的持续时间和内容。所以现在我觉得它是服务器端的东西。但不知道它是什么。

UPD3:最后,我被告知使用 FFMPEG 将文件转换为MP3 128bit,然后它们就会停止运行。现在我需要找到如何转换MP3以便它们没问题。

1 个答案:

答案 0 :(得分:2)

它适用于我本地,但上传到服务器时却没有。 似乎player.duration在IE 11中不起作用: https://msdn.microsoft.com/en-us/library/dn254962(v=vs.85).aspx