Javascript 音频在 Firefox 中不起作用(x-unknown/unknown)

Posted

技术标签:

【中文标题】Javascript 音频在 Firefox 中不起作用(x-unknown/unknown)【英文标题】:Javascript audio not working in Firefox (x-unknown/unknown) 【发布时间】:2013-07-25 20:07:28 【问题描述】:

以下在画布中运行的 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,因为它在其他机器上运行良好,这可能是硬件问题。 但是我可以很好地播放其他音频文件,所以我不确定这里出了什么问题。有什么想法吗?

【问题讨论】:

【参考方案1】:

嗯。根据我对 JS 音频元素的经验,您漏掉了一行。

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

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

Firefox won't play .WAV files using the html5 <audio> tag?

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

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

【讨论】:

我显然错过了 audio.load() 并将 wavs 切换为 8 位。但是,在测试本地文件时,问题仍然存在。使用 Mongoose 作为本地主机测试完全相同的文件,声音效果很好。我无法解释。

以上是关于Javascript 音频在 Firefox 中不起作用(x-unknown/unknown)的主要内容,如果未能解决你的问题,请参考以下文章

HTML5 mp3 音频在 Chrome 和 Firefox 中不起作用

JavaScript 警报在 Firefox 6 中不起作用

Javascript 正则表达式(负)后视在 Firefox 中不起作用

外部Javascript在Firefox中不起作用

javascript keydown在chrome和firefox中不起作用[关闭]

JavaScript 在 Safari 中不起作用,但在 Firefox 和 Chrome 中起作用