2016-11-18 47 views

回答

0

您可以使用RecordRTCMediaStreamRecorder或MediaRecorder API來記錄本地和/或遠程視頻。

對於遠程視頻,有兩種選擇:

  1. 錄製視頻從peer.onaddstream事件
  2. <video>標籤
  3. 錄製視頻使用captureStream API

第一個是VERY_Easy但它必須有權訪問JavaScript代碼。

第二個選項也很容易通過這個Chrome擴展:

captureStream API使用的是Chrome >=53和Firefox均支持。

瀏覽器,但是,仍然需要這樣的標誌:chrome://flags/#enable-experimental-web-platform-features

如果啓用了上述標誌,然後重新啓動Chrome,然後右鍵單擊在任何視頻(在任何網頁),您將能夠錄製該視頻。 (無論是的WebRTC視頻,MP4或WebM檔案或HLS/DASH直播流)

這裏是上述擴展的基本概念:

var streamFromVideoTag = videoTag.captureStream(15); // 15 is frame-rates 
var recorder = RecordRTC(streamFromVideoTag, {type: 'video'}); 

對於onaddstream事件選項:

var recorder; 
peer.onaddstream = function(event) { 
    var streamToBeRecorded = event.stream; 
    recorder = RecordRTC(streamToBeRecorded, {type: 'video'}); 
    recorder.startRecording(); 
}; 
+0

非常感謝你@Mauz你救了我的生命.... :) – Jeccy

0

有兩種可能的地方錄製視頻

  1. 本地:由於瀏覽器的存儲容量有限,我個人認爲這是一個壞主意。如果這沒問題,那麼我們可以繼續RecordRtcMediaStreamRecorder
  2. 遠程服務器:這是一個更好的選擇。它可以在服務器上記錄參與者的視頻。有辦法做到這一點。我嘗試過的一個方法是Kurento。它具有Java和Node.js實現和示例。 Example