百家云BRTC的解决方案

随着网络实时通信技术(Web Real-Time Communication,简称WebRTC)的不断发展和普及,webRTC已成为现代互联网通讯领域的核心技术之一。它体现在方方面面比如:

  1. 实时视频通话: WebRTC 可以用于实现浏览器之间的实时视频通话,包括一对一通话和多方视频会议。

  2. 在线教育: WebRTC 提供了稳定和低延迟的实时通信,因此在在线教育平台上被广泛应用。教育者和学生可以通过视频和音频进行实时交流。

  3. 远程协作: 在远程工作和协作的环境中,WebRTC 可以用于实现团队成员之间的实时视频会议、屏幕共享和协同编辑。

  4. 医疗保健: 在远程医疗保健中,WebRTC 被用于实现患者与医生之间的远程诊断和在线咨询。

  5. 社交应用: 实时通信对于社交媒体和社交应用也是至关重要的。WebRTC 可以用于实现语音和视频通话功能。

  6. 在线直播: WebRTC 提供了实时流媒体的能力,因此在在线直播和互动直播平台上被广泛使用。

  7. 游戏实时通信: 在多人在线游戏中,WebRTC 可以用于实现玩家之间的实时语音通信和数据交换。

百家云推出的BRTC服务则涵盖了它几乎所有的方面。百家云BRTC作为一款高度优化并深度定制的实时音视频通信解决方案,不仅完全兼容WebRTC协议标准,而且针对各类浏览器进行了深度适配与优化,无论是主流的Chrome、Firefox,还是具有自身特性的Safari,甚至是对旧版浏览器,都能确保稳定、流畅的实时通信体验。

兼容性浏览器

|--------------|--------------------------------------------------------------------------------------|
| 平台 | 浏览器最低版本要求 |
| Windows 7+ | Chrome 60+ Firefox 56+ Opera 50+ Edge 浏览器 79+ QQ 浏览器 10+ 360 安全浏览器 10+ 360 极速浏览器 12+ |
| macOS 10+ | Chrome 60+ Firefox 56+ Opera 50+ Edge 浏览器 79+ 苹果 Safari 11+ |
| Android 5.0+ | Chrome 60+ 华为浏览器 10+ 微信公众号/微信浏览器 7+ 内嵌 WebView 的应用(部分设备 |
| iOS 11+ | 苹果 Safari 11+ 微信公众号/微信浏览器 7+(仅支持接收) Chrome 60+(仅支持接收) 内嵌 WebView 的应用(仅支持接收) |
| iOS 14.3+ | 苹果 Safari 11+ 微信公众号/微信浏览器 7+ Chrome 60+ 内嵌 WebView 的应用 |

  • iOS 14.3 以下的系统有限制,仅允许 苹果 safari 浏览器 使用麦克风、摄像头设备,不允许 其他浏览器 使用麦克风、摄像头设备,因此 iOS 14.3以下的系统中的 微信浏览器、谷歌 Chrome 浏览器中无法发布音视频流,仅支持接收音视频流
  • iOS 14.3 及以上的系统放开了设备权限,除了 苹果 safari 浏览器,其他浏览器如 微信浏览器、谷歌 Chrome 浏览器,可以申请麦克风、摄像头设备的使用权限,因此 iOS 14.3 及以上的系统中的 微信浏览器、谷歌 Chrome 浏览器 可以支持发布音视频流

iOS 平台兼容性

浏览器 VP8 H.264
Safari 浏览器(支持发送和接收) iOS 12.2 及以后版本 iOS 11 及以后版本
微信公众号/微信浏览器 7+(支持发送和接收) iOS 14.3 及以后版本 iOS 14.3 及以后版本
Chrome 60+(支持发送和接收) iOS 14.3 及以后版本 iOS 14.3 及以后版本
内嵌 WebView 的应用(支持发送和接收) iOS 14.3 及以后版本 iOS 14.3 及以后版本
微信公众号/微信浏览器 7+(仅支持接收) iOS 12.2 及以后版本 iOS 12.1.4 及以后版本
Chrome 60+(仅支持接收) iOS 12.2 及以后版本 iOS 12.1.4 及以后版本
内嵌 WebView 的应用(仅支持接收) iOS 12.2 及以后版本 iOS 12.1.4 及以后版本

Android平台的兼容性

浏览器 VP8 H.264
Chrome 60+ 支持发送和接收 部分设备支持发送和接收
微信公众号/微信浏览器 7+ 支持发送和接收 部分设备支持发送和接收
内嵌 WebView 的应用 部分设备支持发送和接收 部分设备支持发送和接收
  • 在调用 SDK 的通信能力之前,建议您先使用 checkSystemSupport() 接口检测 SDK 是否支持当前网页

  • 如果 SDK 不支持当前浏览器,请根据用户设备类型建议用户使用 SDK 支持的浏览器

    BRTC.checkSystemSupport().then(checkResult => {
    if (!checkResult.result) {
    console.log('checkResult', checkResult.result, 'checkDetail', checkResult.detail);
    // 根据用户设备类型建议用户使用 SDK 支持的浏览器
    }
    })

当用户使用 checkSystemSupport() 返回的检测结果为 false 时,可能是以下原因:

情况一:请检查链接是否满足以下三种情况之一

  • localhost 域( Firefox 浏览器支持 localhost 及本地 ip 访问 )
  • 开启了 HTTPS 的域
  • 使用 file:/// 协议打开的本地文件

情况二:Firefox 浏览器安装完成后需要动态加载 H264 编解码器,因此会出现短暂的检测结果为 false 的情况,请稍等再试或先使用其他推荐浏览器打开链接

使用方式也很简单,我们先测试一个简单的demo,首先登录百家云官网,注册注册登录之后进入BRTC模块创建自己的应用。

然后是生成sig

  • Sig 是 App 用户在加入房间时采用的一种安全的鉴权方式,目的是为了阻止恶意攻击者盗用您的云服务使用权。生成 Sig 文档
  • 为了快速跑通 DEMO 您可以先使用百家云后台生成的临时 Sig 做测试
  • 建议您在生成临时 Sig 的时候在 userID 后加 0 来生成对应的 Sig。

下载demo源码

  • 在百家云后台 -> BRTC -> 开发者中心 -> 下载中心
  • 下载对应的 Demo 源码

配置demo工程文件

下面以 BRTC Demo Android 工程为例说明:

  • 解压下载的 Demo 源码包
  • 使用 Android Studio 打开源码工程
  • CommonToolsKeyCenter.java 文件中,配置相应的 AppIDSig

编译运行

  • 通过菜单命令 Sync Project and Gradle Files 同步代码
  • 点击【运行】在真机上运行 Demo App

体验demo功能

Demo 成功运行后,您将会看到按照功能模块划分的各项接口功能演示:

相关推荐
东方佑17 小时前
从音频到Token:构建原神角色语音识别模型的完整实践
人工智能·音视频·语音识别
猫林老师17 小时前
HarmonyOS多媒体开发:音视频播放与录制全解析
华为·音视频·harmonyos
max5006001 天前
使用OmniAvatar-14B模型实现照片和文字生成视频的完整指南
图像处理·人工智能·深度学习·算法·音视频
Antonio9151 天前
【音视频】Android NDK 与.so库适配
android·音视频
嘀咕博客1 天前
Stable Virtual Camera:Stability AI等推出的AI模型 ,2D图像轻松转3D视频
人工智能·3d·音视频·ai工具
勘察加熊人1 天前
ffmpeg切割音频
ffmpeg·音视频
一条数据库1 天前
南京方言数据集|300小时高质量自然对话音频|专业录音棚采集|方言语音识别模型训练|情感计算研究|方言保护文化遗产数字化|语音情感识别|方言对话系统开发
人工智能·音视频·语音识别
therese_100862 天前
音视频demo
音视频
~远在太平洋~2 天前
Debian 系统上安装与配置 MediaMTX
音视频