HTML5 音频 - 录制保存文件正常,但通过音频控制播放时没有声音

Posted

技术标签:

【中文标题】HTML5 音频 - 录制保存文件正常,但通过音频控制播放时没有声音【英文标题】:HTML5 audio - recording saves file OK, but no sound when playing back through audio control 【发布时间】:2016-09-13 15:17:30 【问题描述】:

我有一个允许用户录制音频的 asp.net Web 应用程序。我正在使用来自https://github.com/nusofthq/Recordmp3js 的代码以及 Matt Diamond 的录音机文件(修改为 wav 而不是 mp3)。不确定这是否重要,但我正在使用更新后的 API for mediaDevices.getUserMedia()。

录音工作正常,wav 文件保存到磁盘,如果我听磁盘上的文件,我可以听到录音。但是,如果我尝试通过页面上的 html5 音频控件播放音频,则没有声音。文件的长度与磁盘上的长度相匹配,所以我认为不是因为音频控件无法找到该文件。

如果有帮助,我可以发布我的 javascript。我目前正在使用 Firefox 在 localhost 上进行测试。 Firebug 没有显示任何错误。

如果有任何其他信息可能对您有所帮助,请告诉我。 谢谢!

【问题讨论】:

它是否适用于其他浏览器?如果您直接导航到文件,它会播放吗? 我可以在 Chrome 中听到音频,但在 Opera 中听不到。 Opera 的网络控制台没有显示任何错误。如果我尝试直接在 Firefox 中打开文件,则会提示我使用哪个应用程序打开文件,我选择 Firefox,然后 Firefox 会打开一个新的空白选项卡。我尝试了一个我在网上找到的示例 wav 文件,并且发生了相同的行为(尽管 .ogg 文件在 Firefox 中可以正常打开)。 因为 firefox 可以播放 wav 文件,听起来 chrome 可以原谅但 firefox 不能播放的文件存在小问题。 我想知道它是否可能是我正在录制的文件,但我尝试了一些我在网上找到的示例 wav 文件; Firefox 的行为方式相同,只是打开一个空白选项卡,而不是在浏览器中播放它们。也许我应该研究 Firefox 并播放 wav 文件,因为我知道 Firefox 可以播放 ogg 文件好吗? 我想更多的是在 标签中。chrome 可能很特别,因为它可以播放完整标签。音频是否通过 http 提供,来自与页面相同的站点? 【参考方案1】:

(最快的)解决方案是重置 Firefox。现在播放 Wav 文件没有任何问题。

【讨论】:

以上是关于HTML5 音频 - 录制保存文件正常,但通过音频控制播放时没有声音的主要内容,如果未能解决你的问题,请参考以下文章

通过 HTML5 API(RecordJS 或替代方法)将音频录制到 AAC

保存多个录制音频文件并获取所有录制音频

将音频文件保存在 Rails 中

xcode:如何在使用 AVFoundation 录制音频后保存音频文件

在 html5 应用上录制音频

使用 C# 测试音频文件