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); 
}); 


  • 有关于Firefox浏览器创建0 wav文件

Issue 139有时,它是建立在0.0期间的wav文件上recorder.js github repo一个开放的问题firefox#139