js录制canvas合成视频

//fps 桢率  duration 时长
const fps = 5
const duration = 5

 const canvas: any = document.getElementById('glcanvas');
   const mediaStream = canvas.captureStream(fps);
    // 设置帧频率(FPS)
   const mediaRecord = new MediaRecorder(mediaStream, {
    
    
      videoBitsPerSecond: 8500000,
    });
    mediaRecord.ondataavailable = (e) => {
    
    
      // 接收数据
      chunks.add(e.data);
      download(duration, fps);
    };
    mediaRecord.start(); // 开始录屏
    let num = 0;
    const timer = setInterval(() => {
    
    
      if (num > 80) {
    
    
        clearInterval(timer);
      }
      num += Math.floor(Math.random() * 3 + 1);
      setPercent(num);
    }, 200);
    setTimeout(() => {
    
    
      mediaRecord.stop(); // 结束录屏
      clearInterval(timer);
    }, (Number(duration) + 1) * 1000); // todo

猜你喜欢

转载自blog.csdn.net/weixin_44738632/article/details/119610572