bug退退退 2023-10-09 19:55 采纳率: 33.3%
浏览 6
已结题

MediaRecorder可以不接入麦克风仅录制视频么?

在做web端录屏功能,使用MediaRecorder和getDisplayMedia实现,但是有个问题,当未接入麦克风时,MediaRecorder的state是inactive,无法录制,但我的需求是希望无麦克风设备时也可录制无声视频,请问大家有遇到过类似问题或需求么?

  • 写回答

2条回答 默认 最新

  • 老牛毕设 2023-10-09 20:10
    关注

    你的问题是在没有麦克风设备的情况下无法录制无声视频,其实这是因为MediaRecorder的state是inactive,它表示音频或视频流已经停止或者没有可用。

    如果你希望在没有麦克风设备的情况下也能录制视频,但不需要录制声音,你可以先创建一个只包含视频的MediaRecorder对象,然后再开始录制。具体来说,你可以使用navigator.mediaDevices.getUserMedia方法来获取视频流,并将其传递给MediaRecorder的start方法。这样即使没有麦克风设备,也可以开始录制视频。

    以下是一个简单的示例代码:

    
    ```javascript
    navigator.mediaDevices.getUserMedia({video: true})
        .then(function(stream) {
            var mediaRecorder = new MediaRecorder(stream);
            mediaRecorder.start();
            console.log(mediaRecorder.state);
        })
        .catch(function(err) {
            console.log('Error: ', err);
        });
    
    
    

    ```
    需要注意的是,这个方法只能录制视频,不能录制声音。如果你需要录制声音,但没有麦克风设备,那么你可能需要寻找其他方法,或者提醒用户他们需要一个麦克风设备来录制声音。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 10月18日
  • 已采纳回答 10月10日
  • 创建了问题 10月9日

悬赏问题

  • ¥15 校内二手商品转让网站
  • ¥20 高德地图聚合图层MarkerCluster聚合多个点,但是ClusterData只有其中部分数据,原因应该是有经纬度重合的地方点,现在我想让ClusterData显示所有点的信息,如何实现?
  • ¥100 求Web版SPC控制图程序包调式
  • ¥20 指导如何跑通以下两个Github代码
  • ¥15 大家知道这个后备文件怎么删吗,为啥这些文件我只看到一份,没有后备呀
  • ¥15 C++为什么这个代码没报错运行不出来啊
  • ¥15 一道ban了很多东西的pyjail题
  • ¥15 关于#r语言#的问题:如何将生成的四幅图排在一起,且对变量的赋值进行更改,让组合的图漂亮、美观@(相关搜索:森林图)
  • ¥15 C++识别堆叠物体异常
  • ¥15 微软硬件驱动认证账号申请