我正在开发一个应用程序,它通过网络套接字从麦克风发布音频流我无法在音频控制中播放网络套接字响应,或者任何人都可以告诉如何在音频控制中播放音频缓冲区请帮助我?
答案 0 :(得分:0)
我使用以下代码播放使用软件合成器创建的声音。
样品需要在[-1.0 .. 1.0]的范围内。您应该在页面init函数中初始化context
。
var context = new webkitAudioContext();
function playSound(buffer, freq, vol) // buffer, sampleRate, 0-100
{
var mBuffer = context.createBuffer(1, buffer.length, freq);
var dataBuffer = mBuffer.getChannelData(0);
var soundBuffer = buffer;
var i, n = buffer.length;
for (i=0;i<n;i++)
dataBuffer[i] = soundBuffer[i];
var node = context.createBufferSource();
node.buffer = mBuffer;
node.gain.value = 0.5 * vol/100.0;
node.connect(context.destination);
node.noteOn(0);
}