我想使用ScriptProcessorNode接口处理音频,但我无法编写输出缓冲区。
var node = context.createScriptProcessor(256,1,1);
node.onaudioprocess = function (e){
var inputBuffer = e.inputBuffer.getChannelData(0);
}
我从getChannelData获取数据,但是如何将它们发送到outputbuffer?
提前致谢。
答案 0 :(得分:1)
输出缓冲区存储在e.outputBuffer
中。基本上,您可以更改其中的数据以设置输出的内容。
E.g。用随机数填充缓冲区
node.onaudioprocess = function (e) {
var output = e.outputBuffer.getChannelData(0);
for (var i = 0; i < output.length; i++) {
output[i] = Math.random();
// Math.random() sends random numbers, but you can make
// that be anything you want
}
}