-2
我正在开发一个应用程序,通过网络套接字从麦克风发布音频流我不能播放音频控制中的网络套接字响应或任何人都可以告诉如何播放音频控制中的音频缓冲区请帮帮我?我怎样才能发布音频的网络套接字
我正在开发一个应用程序,通过网络套接字从麦克风发布音频流我不能播放音频控制中的网络套接字响应或任何人都可以告诉如何播放音频控制中的音频缓冲区请帮帮我?我怎样才能发布音频的网络套接字
我使用下面的代码来播放用软件合成器创建的声音。 样品需要在[-1.0 .. 1.0]的范围内。您应该在页面初始化函数中初始化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);
}
它不适合我的作品,因为我想送麦克风音频websoket或转换麦克风音频输入字节 –
嗯,这很不幸,是另一个问题。不能帮助你在队友。上面的代码将播放一个音频缓冲区。如果您拥有的值是字节,则值(通常)的范围是[-128..127]。您需要首先将这些值转换为浮点值。 E('(byteVal + 128)/ 255.0)* 2) - 1.0',或者更简单:'((byteVal + 128)/128.0) - 1.0' Google搜索'webKitAudioContext'应该会给你一些合适的结果。 – enhzflep