【发布时间】:2020-12-04 13:53:48
【问题描述】:
我正在尝试使用 MediaRecorder API 录制流并使用 Socket.io 将可用块发送到服务器。我在后端获取块并成功合并到单个文件,但问题是只有第一个块是可播放的。
这是我的代码,
前端:
recorder = new MediaRecorder(stream, {
mimeType: 'video/webm;codecs=vp8',
});
recorder.start(1000);
recorder.ondataavailable = function(e) {
if (e.data && e.data.size > 0) {
socket.emit("recordedChunk", {
room: room,
chunk: e.data
});
}
}
后端:
const fileStream = fs.createWriteStream('./recording/test.webm', { flags: 'a' });
socket.on('recordedChunk', function (data) {
fileStream.write(Buffer.from(new Uint8Array(data.chunk)));
});
请告诉我我做错了什么,或者还有其他方法可以实现我想要的吗? 提前致谢!
【问题讨论】:
标签: javascript node.js filestream mediarecorder chunks