跳转至

功能概述

概述

融云音视频提供基于房间的音视频会议功能,支持一对一和多对多的实时音视频通话,支持自定义视频流,修改本端采集的音视频原始数据,修改接收到的音频原始数据,自定义渲染视频视图,纯语音通话和视频通话等功能。

兼容性

  1. Android 需要 4.3 以上版本操作系统。

  2. 3.0.0 及之后版本的 RTCLib SDK 与 3.0.0 之前版本的 RTCLib SDK 不能互通。

  3. 使用 RTCLib 3.0.0 SDK 时必须使用 IMLib 2.9.13 及以上版本进行集成。

  4. 如您使用的是音视频 2.1.1 版本,详细可查看 RTCLib 2.1.1 开发指南

音视频同时通话人数说明

为确保终端用户音视频通话质量,同一房间建议最多音视频同时通话人数,如下:

1. 单个房间内建议最多 9 人同时进行视频通话
2. 单个房间内建议最多 20 人同时进行音频通话

注:同一房间中建议可发起音视频通话总用户上限为 20 人。

主要功能

RongRTClib 音视频核心引擎,基础功能如下:

类别 功能 描述
房间管理 加入房间 用户直接发起音视频之前需要加入同一个房间
离开房间 结束音视频通话之后退出房间,退出后默认关闭音视频功能及订阅信息,清空当前用户房间中所有信息
当前房间信息 获取当前房间信息,如当前房间 ID、当前用户、加入房间的其他用户
设置房间属性 自定义房间信息,如标识当前房间中用户的身份标识,通过获取房间属性进行相关业务处理
基础设置 大小流 多人音视频通话过程中,为了减少下行带宽占用,可以开启大小流模式,每个用户会上传一大一小两个视频流,接收方可以根据显示需要来选择接收大流或是小流。小流分辨率 176X144,帧率为 15FPS,开发者可以选择关闭小流,默认为开启
音频采样率 默认 48kHz
视频码率 默认帧率为 15 FPS 不同分辨率的码率为:
分辨率 256x144:最小码率为 120kbps,最大为 350kbps
分辨率 320x240:最小码率为 150kbps,最大为 500kbps
分辨率 480x360:最小码率为 200kbps,最大为 650kbps
分辨率 640x360:最小码率为 250kbps,最大为 800kbps
分辨率 640x480:最小码率为 350kbps,最大为 1000kbps
分辨率 720x480:最小码率为 400kbps,最大为 1200kbps
分辨率 1280x720:最小码率为 750kbps,最大为 2500kbps
视频帧率 通话过程中设置自已采集的帧率,支持 15 FPS、24 FPS、30 FPS,默认是 15 FPS
视频分辨率 发起通话前设置自已采集的视频分辨率,支持 256x144、320x240、480x360、640x360、640x480、720x480、1280x720
编码方式 支持 H.264 编解码方式
音视频流控制 发布音视频流 加入房间之后可以把采集的音视频流推送到 MediaServer,并且广播给同一个房间里的用户,其他人收到通知可以选择订阅来接收流
取消发布音视频流 关闭摄像头、麦克风或结束音视频通话时可取消发布音视频流
订阅音视频流 订阅后可接收其他用户发布的音视频流
取消订阅音视频流 取消后不再接收其他用户发布的音视频流
发送视频流预处理 视频采集和渲染前回调给开发者进行再处理,实现美颜、磨皮、水印等功能
发送音频流预处理 音频采集和渲染前回调给开发者进行再处理,实现均衡器、个性化音效等功能
接收音视流再处理 接收到音视频流的回调,可以选择自己编辑收到的音视频数据
发布自定义视频流 发布自定义视频流,如:屏幕共享、本地视频共享功能实现
取消发布自定义视频流 取消发布自定义视频流
取消接收自定义视频流 取消接收自定义视频流
房间内指令消息发送 音视频通话指令消息发送 房间内用户向房间中发送指令消息,房间内其他用户收到消息后,可根据消息类型实现自身业务逻辑处理,如:远端控制
房间代理协议 用户加入的回调 有用户加入房间时 SDK 通知上层,开发者可在此基础上实现自身业务逻辑,如提示其他用户 “xxx 加入房间”
有用户离开时的回调 有用户离开房间时 SDK 通知上层,开发者可在此基础上实现自身业务逻辑,如提示其他用户 “xxx 离开房间”
数据流第一个关键帧到达 用于当用户加入房间后视频画面的初始图片显示使用
取消发布资源的回调 用户取消发布资源的回调
某个流对象,音频关闭或者打开时回调 用于房间中某用户关闭、打开音频时通知房间中的其他用户,在会议控制、远程指导等场景中,实现用户音频状态展示时可使用功能
某个流对象,视频关闭或者打开时回调 用于房间中某用户关闭、打开视频时通知房间中的其他用户,在会议控制、远程指导等场景中,实现用户音频状态展示时可使用功能
视频预览帧回调 在实现视频水印效果时,可通过此功能实现水印效果的预览
设备控制 设置视频采集参数 设置视频采集参数
关闭/打开麦克风
切换前后摄像头 切换前后摄像头,默认为前置摄像头
切换使用外放/听筒 切换使用当前设备外放/听筒
开启摄像头 开启当前设备摄像头
关闭摄像 关闭当前设备摄像头

依赖关系

RTC SDK 强依赖 IM SDK,使用 RTC SDK 前必须引入 IM SDK,引入方式可参考 示例, 版本对应关系如下:

更新日期 RTC SDK IM SDK
2019-03-30 3.0.0 2.9.13
2019-04-07 3.0.1 2.9.14
2019-04-14 3.0.2 2.9.15
2019-05-07 3.0.3 2.9.16
2019-05-14 3.0.4 2.9.17
2019-05-21 3.0.5 2.9.17
2019-06-03 3.0.6 2.9.18
2019-07-04 3.0.7 2.9.19
2019-07-19 3.0.8 2.9.10
2019-07-29 3.1.0 2.9.20
2019-08-02 3.1.1 2.9.21、2.9.22
2019-08-31 3.1.2 2.9.23
2019-09-20 3.1.3 2.9.24、2.9.25
2019-10-28 3.1.4 2.10.0
2019-11-21 3.1.5 2.10.1