实时音视频开发指导
欢迎使用融云实时音视频(RTC)。RTC 服务基于房间模型设计,可以支持一对一音视频通信、和多人音视频通信。底层基于融云 IM 信令通讯,可保障在长时间音视频通话及弱网情况下保持正常连通。
本页面简单介绍融云 RTC 服务能力和 SDK 产品。
客户端 SDK
融云客户端 SDK 提供丰富的接口,大部分能力支持开箱即用。配合 RTC 服务端 API 接口,可满足丰富的业务特性要求。
前往融云产品文档 · 客户端 SDK 体系 · RTCLib · CallKit · CallLib · CallPlus »
SDK 适用场景
融云 RTCLib SDK 在小程序平台仅支持音视频会议,不支持音视频直播。
CallKit、CallLib、RTCLib 是融云 RTC 服务提供的三款经典的客户端 SDK。其中 CallKit、CallLib 用于开发音视频通话(呼叫)业务。RTCLib 是音视频基础能力库,可满足类似会议、直播等业务场景需求,具备较高的扩展与定制属性。
业务分类 | 适用的 SDK | 流程差异 | 场景描述 |
---|---|---|---|
通话(呼叫) | CallKit、CallLib | SDK 内部呼叫流程自动处理房间号 | 拨打音视频电话(类比微信音视频通话) |
会议 | RTCLib | 与会者需要约定房间号,参会需进入同一房间 | 线上会议、小班课、在线视频面试、远程面签等 |
如何选择 SDK
不同 SDK 适用的业务场景差异较大,请您谨慎选择并决策。
- CallKit 与 CallLib 是用于实现通话(呼叫)功能的客户端库。封装了拨打、振铃、接听、挂断等一整套呼叫流程,支持一对一及群组内多人呼叫的通话能力。CallKit 与 CallLib 均依赖 RTCLib,两者区别如下:
- CallKit 提供了呼叫相关的通用 UI 扩展库。
- CallLib 不含任何 UI 界面组件。
- RTCLib 是融云音视频核心能力库。应用开发者可将 RTCLib 用于支持直播、会议业务场景。
具体选择建议如下:
- 不需要通话(呼叫)功能,可使用 RTCLib,即您仅需要融云为您的 App 提供实时音视频(RTC)核心能力。
- 需要开发支持通话(呼叫)的音视频应用,但不希望自行实现呼叫 UI,可使用 CallKit。直接利用融云提供的呼叫 UI,节省开发时间。
- 需要开发支持通话(呼叫)的音视频应用,不希望 SDK 带任何 UI 组件,可使用 CallLib。
- 通过融云提供的独立功能插件扩展客户端 SDK 的功能。
在使用融云 SDK 进行开发之前,我们建议使用快速上手教程与示例项目进行评估。
高级和扩展功能
RTC 服务支持的高级与扩展功能,包括但不限于以下项目:
- 通话数据统计:按照指定的时间间隔上报通话的详细数据。
- 屏幕共享:通过自定义视频流的方式在房间内发起屏幕共享功能。
- 自定义加密:可选择对媒体流进行加密,从而保障用户的数据安全。
- 插件支持:支持通过插件实现美颜、CDN 播放器等功能。
- 云端录制:在音视频通话(呼叫)、直播、会议时分别录制每个参与者的音视频、或合并后进行录制。
- 内容审核:融云媒体服务器(RTC Server)把收到的音视频流转码后送审,审核结果返回应用服务器。
部分功能需配合 RTC 服务端 API 使用。具体支持的功能与平台相关。具体使用方法请参见客户端 SDK 开发文档或服务端开发文档。
实时音视频服务端
实时音视频服务端 API 可以协助您构建集成融云音视频能力的 App 后台服务系统。
您可以使用服务端 API 将融云服务集成到您的实时音视频服务体系中。例如,向融云获取用户身份令牌 (Token),从应用服务端封禁用户、移出房间等。
前往融云服务端开发文档 · 集成必读 »
控制台
使用控制台,您可以对开发者账户和应用进行管理,开通音视频服务,以及其他高级服务,查看应用数据报表,和计费数据。
音视频服务必须要从控制台开通后方可使用。参见开通音视频服务。
实时音视频数据
您可以前往控制台的数据统计页面,查询、查看音视频用量、业务健康检查等数据。开通相应服务后,还能获取如业务数据分析等数据。
融云还提供通话质量实时的监控工具,以图表形式展示每一通音视频通话的质量数据,帮助定位通话问题,提高问题解决效率。
融云不会利用客户的数据。同时融云提供完善的数据隐私保护策略。参见 SDK 隐私政策。