kuu*_*kuu 7 google-chrome getusermedia web-audio-api
我正在使用ScriptProcessorNode的onaudioprocess回调来处理麦克风输入.通过将MediaStreamSourceNode连接到ScriptProcessorNode,我可以在onaudioprocess回调函数中获取原始音频数据.但是,在大约30秒后(这在10到35秒之间变化),浏览器停止调用onaudioprocess.在以下代码中,console.log输出('>>')总是在大约30秒后停止.
var ctx = new AudioContext();
var BUFFER_LENGTH = 4096;
console.log('Buffer length is + ' + BUFFER_LENGTH);
navigator.webkitGetUserMedia({audio: true}, function (stream) {
var mediaStreamSource = ctx.createMediaStreamSource(stream);
var scriptProcessor = ctx.createScriptProcessor(BUFFER_LENGTH, 1, 1);
scriptProcessor.onaudioprocess = function (e) {
console.log('>>');
};
scriptProcessor.connect(ctx.destination);
}, function(e) {
console.error('Unable to get audio input source.');
});
Run Code Online (Sandbox Code Playgroud)
我尝试了所有可能的BUFFER_LENGTH(256,512,1024,2048,4096,8192,16384),但情况没有改变(30秒后停止记录.)我在最新的Chrome版本(版本35.0)中观察到了这个问题. 1916.153)和Canary(版本37.0.2060.3 canary.)有没有人知道任何变通方法?
| 归档时间: |
|
| 查看次数: |
1921 次 |
| 最近记录: |