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

相关推荐
美狐美颜SDK开放平台1 小时前
多场景美颜SDK解决方案:直播APP(iOS/安卓)开发接入详解
android·人工智能·ios·音视频·美颜sdk·第三方美颜sdk·短视频美颜sdk
三十_2 小时前
WebRTC 远端画面无法显示:ICE 与 SDP 时序问题深度解析与解决方案
webrtc
ai产品老杨3 小时前
深度解析:基于国产化异构计算的 AI 视频管理平台架构——从 GB28181 接入到 NPU 边缘推流的解耦实践
人工智能·架构·音视频
watson_pillow3 小时前
音视频相关基础知识储备入门-字幕
音视频
程序员JerrySUN4 小时前
Jetson边缘嵌入式实战课程第二讲:JetPack 和 SDK Manager 是什么
c语言·开发语言·网络·udp·音视频
weixin_6686 小时前
NVIDIA VSSVideo Search and Summarization视频搜索与摘要蓝图详尽使用说明与技术报告版本
人工智能·音视频
jiayong237 小时前
国内外视频/图像大模型与智能体工具平台竞品对比
ai·音视频·agent
视频技术分享8 小时前
技术赋能生态革新:音视频产业开启千亿增长新周期 视频会议成核心增长亮点
音视频
reasonsummer8 小时前
【教学类-160-14】20260425 AI视频培训-练习014“豆包AI视频《月下枯蔷(哥特风)》+豆包图片风格:油画”
人工智能·音视频·豆包
AI服务老曹9 小时前
深度解析:支持 GB28181/RTSP 及异构计算(X86/ARM+GPU/NPU)的 AI 视频管理平台架构方案(附源码交付与 Docker 部署)
arm开发·人工智能·音视频