0

在画布中运行的以下 JavaScript 应该可以正常播放音频:

var audio = new Audio('tune.wav');
audio.play();

大多数时候它确实有效,wav 是 24 位 14100kbps 并且在几台机器上都可以正常播放,但是在我的笔记本电脑上(Win7,使用 Firefox 22.0)我得到了错误:

  • 不支持“x-unknown/unknown”的 HTTP“Content-Type”。加载媒体资源文件:///C:/code/sound/tune.wav 失败。

我知道还有其他库可以播放声音,但我想保留这个纯 JavaScript,因为它在其他机器上运行良好,这可能是硬件问题。但是我可以很好地播放其他音频文件,所以我不确定这里出了什么问题。有任何想法吗?

4

1 回答 1

1

唔。根据我对 JS 音频元素的经验,您错过了一行。

var audio = new Audio('tune.wav');
audio.load();
audio.play();

我不认为这会导致错误。根据对这个问题的回答:

Firefox 不会使用 HTML5 <audio> 标签播放 .WAV 文件?

以及本论坛的来回讨论:https ://bugzilla.mozilla.org/show_bug.cgi?id=524109 (评论 7)

看起来 Firefox 根本不支持 24 位 WAVE 文件。16 位可能是更安全的选择。

于 2013-07-25T20:18:30.913 回答