js 使用MediaRecorder 录制video,生成视频

js 使用MediaRecorder 录制video,生成视频


最近在项目中有需求是录制视频,并保存起来,最后选用了MediaRecorder API。
具体方法如下

//开始录屏
startLp(){
        console.log('开始录屏')
        // 获取video节点
        const video =  document.getElementById("videoFlv");

        // 存储视频流
        const videoData = [];
        // 浏览器兼容Chrome和firefox
        video.captureStream = video.captureStream || video.mozCaptureStream;
        // 生成MediaRecorder对象
        this.mediaRecorder = new MediaRecorder(video.captureStream());
        this.mediaRecorder.start();
        // 当 MediaRecorder 将媒体数据传递到您的应用程序以供使用时,将触发该事件
        this.mediaRecorder.ondataavailable = (e) => {
          console.log(e)
          // 添加视频流
          videoData.push(e.data);
        };

        // 录制结束回调
        this.mediaRecorder.onstop = (e) => {
          const blob = new Blob(videoData, { type: 'video/mp4;codecs=vp8,opus' });

          const videoUrl = window.URL.createObjectURL(blob);
           open(videoUrl)
        }

      },
      //停止录屏
      stopLp(){
        console.log('停止录屏')
        this.mediaRecorder.stop();
      }

参考:
https://blog.csdn.net/qq_36958916/article/details/108529705

https://www.jianshu.com/p/d0d6c61dfafd

https://www.jianshu.com/p/ad7dfd50880e?utm_campaign=maleskine…&utm_content=note&utm_medium=seo_notes

https://jimmy.blog.csdn.net/article/details/118282882

https://blog.csdn.net/lan123456_/article/details/128324851

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

言只 石皮

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值