Firefox Audiocontext已暂停
问题描述:
我正在尝试使用javascript记录音频并将其上传到服务器。我正在使用记录器js的Matt Diamond.But问题是文件生成时间为0分钟。当通过萤火虫控制台调试发现audiocontext属性被暂停。当谷歌搜索出来录制时,audiocontext的状态应该处于运行状态。不知道问题是由于国家还是我缺少某些东西。想知道是什么原因导致audiocontext状态处于暂停模式。如果我尝试在其他浏览器上运行状态并生成文件。但我的限制是我想使用Firefox浏览我的应用程序Firefox Audiocontext已暂停
火狐版本:42.0
下面是代码
if(audioRecorder)
{
audioRecorder.clear();
audioRecorder.record();
setTimeout(stopRecorder,9000); // 9 secs
}
function stopRecorder()
{
if(audioRecorder)
{
audioRecorder.stop();
audioRecorder.exportWAV(function(blob){
alert("Blob size : "+blob.size);
// code for sending the blob to server
});
}
}
调试的萤火audiocontext上面的代码暂停时。
在此先感谢
答
这不是一个直接的答案,但它解决了问题,从我的其他answer拍摄,如果你需要的是音频文件发送到服务器,而不是使用庞大的未压缩wav
文件,您可以使用MediaRecorder API以压缩格式ogg
格式轻松(并且本机)录制音频,自v25起支持firefox,自v47起支持chrome。
答
创建一个的jsfiddle并测试了几次 - 工作正常的Firefox 42的MacOSX]
function createDownloadLink() {
recorder && recorder.exportWAV(function(blob) {
var url = URL.createObjectURL(blob);
var li = document.createElement('li');
var au = document.createElement('audio');
var hf = document.createElement('a');
au.controls = true;
au.src = url;
hf.href = url;
hf.download = new Date().toISOString() + '.wav';
hf.innerHTML = hf.download;
li.appendChild(au);
li.appendChild(hf);
recordingslist.appendChild(li);
});
- RecorderJS demo似乎是正常工作在FF 42的MacOSX]
- 有关于Firefox浏览器创建0 wav文件
Issue 139有时,它是建立在0.0期间的wav文件上recorder.js github repo一个开放的问题firefox#139