我正在尝试录制一个客户端录制的音频,并将其实时发送给其他连接的客户端。目标是一种"广播"。我已经阅读了很多解释来帮助指导我,没有运气。
目前我将音频写入文件:
var fileWriter = new wav.FileWriter(outFile, {
channels: 1,
sampleRate: 44100,
bitDepth: 16
});
client.on('stream', function(stream, meta) {
stream.pipe(fileWriter);
stream.on('end', function() {
fileWriter.end();
console.log('wrote to file ' + outFile);
});
});
});
如您所见,我目前正在使用Binaryjs将音频数据发送到服务器,此时我将流传输到FileWriter
然后我尝试读取文件并将其传递给响应
app.get('/audio', function(req, res) {
fs.createReadStream(__dirname + '/demo.wav').pipe(res);
})
我确定你已经注意到了,但这并不奏效。我认为(也许)在构建文件时,它会回放添加到文件中的所有更新内容。这没有发生,它达到客户端请求文件然后结束的程度。
我不确定如何将流数据实时传递给请求它的客户端。作为对nodejs全新的结果,我不确定此过程使用的方法和术语,并且无法找到任何直接的工作示例。