百家云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 成功运行后,您将会看到按照功能模块划分的各项接口功能演示:

相关推荐
举个栗子。6 分钟前
OpenMontage:首个开源的 Agent 化视频制作系统,用自然语言一键出品影片
开源·音视频
小柯南敲键盘1 小时前
跨马翻译批量图片视频字幕翻译,跨境电商AI智能抠图一站式工具
人工智能·python·音视频·xcode
searchforAI2 小时前
AI自动总结YouTube视频:英文内容一键总结、智能时间戳、视频重点快速看
人工智能·ai·音视频
martindelophy3 小时前
开源 AI 视频编辑器实战:用 Manifest + Adapter 构建可扩展的生成插件系统
人工智能·开源·音视频
技灵AI4 小时前
Seedance 视频生成提示词怎么写?从镜头方法到 10 套可直接改的完整 Prompt
人工智能·prompt·aigc·音视频
RoboWizard4 小时前
拍4K视频手机内存不够用怎么办?
智能手机·音视频
刘孬孬沉迷学习4 小时前
AI音频领域完整调研:任务、算法、大模型研究全梳理
人工智能·算法·音视频
小柯南敲键盘4 小时前
跨马翻译:图片翻译软件批量处理,跨境电商视频字幕AI智能抠图
人工智能·python·音视频
ValueHD5 小时前
融合会议终端部署复杂吗?IT 部门需要做什么?
音视频·飞书·视频编解码·腾讯会议
千里码aicood5 小时前
B站美食视频数据分析与可视化
数据分析·音视频·美食