不情愿地,我要求你们这里帮助我克服大脑冻结。我正在录制音频,但是我遇到了一个问题,即如果没有丢失一半,我就无法获得录制的音频。
recAudioInput = recAudioContext.createMediaStreamSource(stream);
recorder= recAudioContext.createScriptProcessor(theBufferSize, 2, 2); // (or 1,1, no difference)
recAudioInput.connect(recorder);
recorder.connect(recAudioContext.destination);
录制让我们说5秒,说话1 2 3 4 5给了我大约200K的数据包含1 2 3 ...我将不得不等待(并继续录制)相同的时间(在这种情况下5秒)得到其余的。坦率地说,这看起来并不正确。
但我没有看到错误。输入缓冲区不应该在5秒后返回每个通道总共大约400K的数据(44.1 *(16/8)* 5)吗?
感谢您的帮助。
麦克拉
答案 0 :(得分:1)
对不起这是我自己的愚蠢错误。我错误估计了预期的wav文件长度,这反过来导致缩短的wav文件丢失几秒钟。