我想在每个指定的时间将录制的视频上传到Web服务器。以下代码将视频上传到我的Django Web服务器上。可以播放第一个上传的视频,但是不能播放下一个视频。知道为什么会这样吗?
几个月前,我还在Github上发布了一个问题,但是我还没有任何解决方案。 https://github.com/muaz-khan/RecordRTC/issues/438
n
为什么不能播放第一个之后的所有上传内容?
答案 0 :(得分:0)
我从其他人那里得到了一些建议,并提出了解决方案。下面是我的代码段。
setInterval(progressive_upload, 900000);
function progressive_upload(){
var email = document.getElementById('user_id').value;
theRecorder.stop();
theStream.getTracks().forEach(track => { track.stop(); });
count += 1;
var blob = new Blob(recordedChunks, {type: "video/webm"});
var data = new FormData();
data.append('data_blob', blob, email + '_' + count + '.' + blob.type.split('/')[1]);
var xhr = new XMLHttpRequest();
xhr.open('POST', 'http://localhost:8000/video_upload/', true);
xhr.send(data);
navigator.mediaDevices.getUserMedia(constraints)
.then(function(stream){
theStream = stream;
var video = document.querySelector('video');
video.src = URL.createObjectURL(stream);
try {
recorder = new MediaRecorder(stream, {mimeType : "video/webm"});
} catch (e) {
console.error('Exception while creating MediaRecorder: ' + e);
return;
}
recordedChunks = []
theRecorder = recorder;
recorder.ondataavailable =
(event) => {
recordedChunks.push(event.data);
};
recorder.start(100);
})
.catch(e => { console.error('getUserMedia() failed: ' + e); });
}
希望它将对以后的人有所帮助。