簡體   English   中英

使用 NodeJS 將 MediaRecorder 塊合並到一個視頻文件中

[英]Merge MediaRecorder chunks into a single video file with NodeJS

我正在嘗試使用 MediaRecorder API 記錄 stream 並使用 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)));
});

請告訴我我做錯了什么,或者還有其他方法可以實現我想要的嗎? 提前致謝!

我得到了解決方案。 我從兩個用戶(調用者和被調用者)開始記錄器。 它正在制造一些沖突。 現在我設置了一個條件,只有提供者才能開始錄制。 現在它工作得很好。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM