我目前有一个使用MediaRecorder进行录制的MediaStream。在录制结束后 recorder.stop(),它会生成一个Blob,我能够播放该视频。我的目标是不在录制结束后播放整个视频,而是在录制过程中播放一个块。目前,只有当录制结束后,块才能被播放。
我该如何使用JavaScript实现这一点?最终目标是通过websocket发送一个块,即使录制正在进行也可以播放。
我无法提出新的解决方案。有人能帮忙或至少解释一下吗?
我尝试过的是
navigator.mediaDevices.getUserMedia().then(function(media_stream) {
var recorder = new MediaRecorder(media_stream);
recorder.ondataavailable = event => {
//How to play each chunk without waiting for recorder.stop() ???
//event.data represent the data of a chunk (i.e. a blob)
};
recorder.start(1000);
});