我正在使用Mediastream Recording和GetUserMedia来录制用户网络摄像头的音频和视频。 我找不到临时视频的存储位置。 我想知道在录制大量内容时是否存在存储问题,或者是否会以某种方式存储在本地。
谢谢你的建议。
答案 0 :(得分:1)
就像您的网页将要处理的任何数据一样,它本身不是存储,只为一些实时内存分配数据。
从Web API开始,您无法知道有多少可用内存,因为您必须存储从MediaRecorder.ondataavailable
事件中获取的块,您可能知道正在使用多少数据:
const canvas = document.createElement('canvas');
canvas.getContext('2d').fillRect(0,0,1,1);
const stream = canvas.captureStream(30);
const chunks = [];
const recorder = new MediaRecorder(stream);
recorder.ondataavailable = e => {
chunks.push(e.data);
updateCounts();
};
recorder.start(10);
function updateCounts(){
_log.textContent = chunks.map(blob=>blob.size).reduce((sum, size)=>sum+size) + ' bytes';
}
<pre id="_log"></pre>