m0_67646599 2023-08-29 15:28 采纳率: 73.9%
浏览 2
已结题

使用RecordRTC中hidePause: true去不掉暂停按钮

使用RecordRTC打开的摄像头,但是会有暂停的存在,我需要做的是直播,它是不能暂停的
hidePause: true没啥作用

       var myVideo = document.getElementById('myVideo')
        var canvas = document.getElementById('canvas')
        var img = document.getElementById('img')
        let recorder = new Object();
        var videoStearm = new Object();
        function openRecord() {
            navigator.mediaDevices.getUserMedia({
                video: {
                    width: "200",
                    height: "200",
                    frameRate: 24
                },
                audio: true,
                elementClass: 'multi-streams-mixer'
            }).then(async function (stearm) {
                videoStearm = stearm
                //把流赋值给video 实现实时录制
                myVideo.srcObject = stearm;
                console.log(myVideo.srcObject, 'srcobject')
                //立马开始播放视频流
                myVideo.play();
                recorder = RecordRTC(stearm, {
                    type: 'video',
                    //视频类型
                    mimeType: 'video/mp4',
                    timeSlice: 1000,//这是什么意思
                    //该回调函数必须和上面的timeSlice分片时间配合使用
                    ondataavailable: function (blob) {
                        // blob为每一秒的视频片段
                        console.log(blob, '00000000')
                    },
                    // 获取时间片段的时间戳
                    onTimeStamp: function (timestamp) {
                        console.log(timestamp)
                    },
                    bitsPerSecond: 128000,//是数据传输速率的常用单位
                    hidePause: true,
                })
                console.log(stearm, '视频流');
                //开启录制
                recorder.startRecording()

                const sleep = m => new Promise(r => setTimeout(r, m));
                await sleep(10000);
            }).catch((err) => { console.log('用户未开启视频权限') })
        }
        function play() {
            let url = recorder.toURL();
            myVideo1.src = url
        }
        //关闭浏览器视频音频
        function close() {
            console.log(1234)
            console.log(videoStearm, '0000')
            console.log(videoStearm.getTracks(), '0000');
            videoStearm.getTracks()[0].stop()
            videoStearm.getTracks()[1].stop()
        }

  • 写回答

1条回答 默认 最新

  • 专家-赤兔[在线] 全栈领域优质创作者 2023-08-29 17:39
    关注

    引用 皆我百晓生 小程序回复内容作答:
    根据RecordRTC的文档,在初始化recorder对象时,使用hidePause: true是可以隐藏暂停按钮的。但是该属性只对Chrome浏览器有效,其他浏览器暂时不支持隐藏暂停按钮的功能。

    如果在Chrome浏览器中仍然不能隐藏暂停按钮,可以尝试以下方法:

    1. 确保使用的是RecordRTC的最新版本。
    2. 检查浏览器控制台是否有报错信息或警告信息。
    3. 确保RecordRTC所依赖的文件(如recordrtc.jsrecordrtc-onUnix.js等)都已正确引入,并且没有其他冲突的脚本或样式文件。
    4. 清除浏览器缓存并重新加载页面,以确保没有旧版本的文件被缓存。

    如果以上方法都无效,可能需要考虑其他解决方案或使用其他库来实现直播功能。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 9月7日
  • 已采纳回答 8月30日
  • 创建了问题 8月29日

悬赏问题

  • ¥15 Llama如何调用shell或者Python
  • ¥20 谁能帮我挨个解读这个php语言编的代码什么意思?
  • ¥15 win10权限管理,限制普通用户使用删除功能
  • ¥15 minnio内存占用过大,内存没被回收(Windows环境)
  • ¥65 抖音咸鱼付款链接转码支付宝
  • ¥15 ubuntu22.04上安装ursim-3.15.8.106339遇到的问题
  • ¥15 blast算法(相关搜索:数据库)
  • ¥15 请问有人会紧聚焦相关的matlab知识嘛?
  • ¥15 网络通信安全解决方案
  • ¥50 yalmip+Gurobi