RecordRTC | Можем ли мы сохранить данные BLOB без остановки записи?

Я использую RecordRTC и пытаюсь сохранять видео каждые 1 минуту, но для сохранения видео мне нужно вызвать stopRecording(). Например:

function postFiles() {
            var blob = recorder.getBlob();
            // getting unique identifier for the file name
            var fileName = generateRandomString() + '.webm';

            var file = new File([blob], fileName, {
                type: 'video/webm'
            });

            xhr('/uploadFile', file, function(responseText) {
                    console.log(responseText);
            });

            if(mediaStream) mediaStream.stop();
        }

stopRecording(postFiles);

Я хотел сохранить видео без остановки записи.

1 ответ

Соответствующая демонстрация: https://www.webrtc-experiment.com/RecordRTC/simple-demos/ondataavailable.html

recorder = RecordRTC(camera, {
    recorderType: MediaStreamRecorder,
    mimeType: 'video/webm',
    timeSlice: 1000, // pass this parameter
    ondataavailable: function(blob) {
        invokeSaveAsDialog(blob);
    }
});

Как видите, я передал два дополнительных параметра:

  1. ondataavailable функция обратного вызова
  2. timeSlice интервал

ondataavailable вернет blob после каждого указанного интервала.

Другие вопросы по тегам