zoukankan      html  css  js  c++  java
  • 音视频通话系统/企业级私有化部署视频会议系统EasyRTC-MCU进入会议室获取设备权限失败问题调整

    webrtc的存在给在线视频会议系统带来了新的模式,TSINGSEE青犀视频开发的网页视频会议系统EasyRTC综合了webrtc和rtmp/rtsp方案的优点,支持一对一、一对多等视频会议互动通话,满足语音社交、在线教育和培训、视频会议和远程医疗等场景。

    EasyRTC分为MCU版本和SFU版本,EasyRTC-MCU版本在进入会议室的时候,如果是第一次进入,会先获取本页面对摄像头和麦克风,此时若用户不进行操作,或是等待5秒以上,则会进入会议室失败,且在此进入时会直接报权限获取失败。因为等待时间而造成的获取权限失败通常都是不合理的,因此我们需要对此处进行调整。

    首先进入会议室,必须获取到设备的权限,因此进入会议室前,可以做一个获取权限判断,如果用户选择确定则进入会议室,如果用户手动点击取消,则取消进入会议室,同时下次进入时,会直接提示请先获取设备权限。若用户不操作,则一直处于获取权限弹框状态。

    实现代码参考如下:

        getMedia(params) {
          let that = this;
          let options;
          if (params.type === "video") {
            options = {
              audio: true,
              video: true,
            };
          } else {
            options = {
              audio: true,
              video: false,
            };
          }
          console.log(options);
          navigator.mediaDevices
            .getUserMedia(options)
            .then(function (stream) {
              console.log("获取成功");
              that.$router.push({
                path: "player",
                query: { id: params.id, type: params.type },
              });
            })
            .catch((res) => {
              that.$message({
                type: "error",
                message: "请先获取设备权限!",
              });
            });
        },
    
    

    WebRTC是一个支持网页浏览器进行实时语音对话或视频对话的API,实现了基于网页的视频会议,标准是WHATWG协议,目的是通过浏览器提供简单的javascript就可以达到实时通讯能力,而EasyRTC在此基础之上增加了更加丰富且便捷的功能。如果对webrtc有兴趣,可阅读:WebRTC技术为什么突然崛起了

  • 相关阅读:
    centos7系统修改内核
    使用yum update更新文件系统时不更新内核的方法
    实现让用户不断的猜年龄,但只给最多3次机会,超过次数猜不对就退出程序。
    yum安装软件中的y/d/N
    MySQL5.7.15数据库配置主从服务器实现双机热备实例教程
    CentOS7.2 多个python版本共存
    CentOS 7.2 安装Python3.5.2
    R语言与概率统计(五) 聚类分析
    R语言与概率统计(四) 判别分析(分类)
    R语言与概率统计(三) 多元统计分析(下)广义线性回归
  • 原文地址:https://www.cnblogs.com/TSINGSEE/p/14659071.html
Copyright © 2011-2022 走看看