音视频服务开发指南

    SDK 介绍

    RTCLib:音视频基础能力库

    提供音视频基础通讯能力,不依赖于融云的 IMKit、IMLib 可单独集成使用,可以通过房间号方式进行单人、多人音视频通话,也封装了白板、远程指导等功能。 立即下载

    CallLib:音视频通话模式能力库

    基于 IMLib 和 RTCLib 封装的通话模式组件,通过信令控制可以实现类似微信的单人音视频通话和多人音视频通话逻辑。立即下载

    CallKit:音视频通话模式 UI 库

    基于 IMLib、IMKit 以及 CallLib 开发的融云音视频通话界面组件,包含了单人、多人音视频通话的界面的各种场景和功能。您可以通过集成该组件来实现丰富的音视频通话界面,并进行自己的 UI 定制开发。同时我们开源了 CallKit,您可以根据您的需要去使用。集成时需要依赖于 IMKit。下载源码

    注:由于底层引擎技术不同,2.9.0 及之后的音视频 SDK 与 2.9.0 之前的 SDK 中的实时音视频不能互通。
    注:RTCLib 中的房间号对应 CallKit 和 CallLib 中的 CallId。
    之前 SDK 中的 Blink 会更名为 RongRTCLib,两者只是名称上的区别,可以互通。

    开通方式

    开启服务之前,需在融云开发者平台预先充值后,才能申请开通音视频服务:

    1. 音视频账户充值

      音视频服务为付费服务,申请开通音视频服务时,音视频账户余额需不小于 500 元。

    2. 开启音视频服务

      在音视频服务中,点击“开通”按钮,开通服务。

    服务计费说明

    音频通话

    • 收费方式:

      音频通话 0.0075 元/分钟

    • 计费模式:

      音频通话按照分钟数和人数进行收费。

    • 计费规则:

      总费用为每个人的音频通话费用相加。每个人的费用 = 音频价格 × 对应的通话时长

    • 示例说明:

      如 ABC 三人进行音频通话 10 分钟,其中 A 通话 10 分钟,BC 分别通话 8 分钟和 6 分钟。

      A 费用 = 0.0075 × 10 = 0.075 元

      B 费用 = 0.0075 × 8 = 0.060 元

      C 费用 = 0.0075 × 6 = 0.045 元

      总费用 = 0.075 + 0.060 + 0.045 = 0.18 元

    视频通话

    • 收费方式:
    集合分辨率 价格 ( 元/分钟 )
    标清视频 ( SD ) < 640 × 480 0.0075
    640 × 480 ≤ 高清视频 ( HD ) < 1280 × 720 0.0270
    超清视频 ( HD+ ) ≥ 1280 × 720 0.1000
    • 计费模式:

      视频通话按照分钟数,人数,以及接收的集合分辨率进行收费。

    • 计费规则 :

      总费用为每个人的视频通话费用相加。每个人的费用 = 每个人接收的集合分辨率所对应档位的价格 × 对应的通话时长

    • 示例说明 1:

      如 ABC 三人进行视频通话,通话期间,人员无变动,三人通话时长都为 10 分钟,且三人接收的集合分辨率均为 HD。

      总费用 = 0.0270 × 10 × 3 = 0.81 元

    • 示例说明 2:

      如 ABCD 四人进行视频通话,通话期间,人员有变动,我们将每个无人员变动的时间计为一个时间段,计算每个人在该时间段接收的集合分辨率,得到该时间段的费用,然后各个时间段的费用累加后得到每个人的通话费用。下图为每个人在各个时间段接收的集合分辨率所属的档位:

    用户 \ 时间段 0 - 9 分钟 10 - 15 分钟 16 - 33 分钟
    A 发起音视频 SD HD+
    B 未加入 HD HD
    C 未加入 HD+ 未加入
    D 未加入 未加入 SD

    A 费用 = 0 + 0.0075 × 6 + 0.1000 × 18 = 1.845 元

    B 费用 = 0 + 0.0270 × 6 + 0.0270 × 18 = 0.648 元

    C 费用 = 0 + 0.1000 × 6 + 0 = 0.600 元

    D 费用 = 0 + 0 + 0.0075 × 18 = 0.135 元

    总费用 = A + B + C + D = 1.845 + 0.648 + 0.600 + 0.135 = 3.228 元

    注:如以码率作为参考,集合分辨率对应的码率参考值如下:640 × 480 码率为 500 Kbps,1280 × 720 码率为 1000 Kbps 。

    服务端录像

    服务端录像功能,目前为免费试用期,2018 年 11 月 1 日开始计费。

    音频通话录像计费说明

    • 收费方式:

      音频录制 0.0075 元/分钟

    • 计费模式:

      按照录制分钟数进行收费。

    • 计费规则:

      录像费 = 音频单价 x 录制分钟数

    • 示例说明:

      如 ABC 三人进行音频通话 30 分钟,从通话开始进行录制,其中 A 通话 30 分钟,BC 分别通话 8 分钟和 6 分钟。

      录像费 = 音频单价 x 录制分钟数 = 0.0270 x 30 = 0.81元

    视频通话录制计费说明

    • 收费方式:
    集合分辨率 价格 ( 元/分钟 )
    标清视频 ( SD ) < 640 × 480 0.0075
    640 × 480 ≤ 高清视频 ( HD ) < 1280 × 720 0.0270
    超清视频 ( HD+ ) ≥ 1280 × 720 0.1000
    • 计费模式:

      按照录制分钟数以及接收的集合分辨率进行收费。

    • 计费规则:

      录像费用=Σ(录制时长x录像集合分辨率单价)

      只要开启录制(无论几人),整个会场按照单流计费,该单流的单价由所有用户的录像集合分辨率计费。Σ 为数学符号,表示求和运算。

      • 如果所有用户集合分辨率位于同一档:录像费用 = 该档单价 x 录制分钟数
      • 如果不是所有用户集合分辨率位于同一档:录像费用 =Σ(录像用户对应档单价 x 录制对应分钟数)
    • 示例说明 1:

      如录制 ABC 三人的视频通话 30 分钟,通话时没有人员有变动,录像的集合分辨率为 HD 档。

      录像费 = 高清档单价 x 30 分钟= 0.0270 x 30 = 0.81元

    • 示例说明 2:

      如录制 ABCD 四人的视频通话,通话时人员有变动,我们将每个变动后的时间计为一个时间段,计算该时间段接收的集合分辨率,得到该时间段的录制费用,然后各个时间段的费用累加后得到总的录制费用。下图为各个时间段接收的集合分辨率所属的档位:

    用户 \ 时间段 0 - 9 分钟 10 - 15 分钟 16 - 20 分钟
    A HD HD HD+
    B HD HD HD+
    C 未加入 HD HD+
    D 未加入 未加入 HD+

    录像费 = (高清档单价 x 15 分钟)+(超清档单价 x 5 分钟)= 0.405 + 0.5 = 0.905元

    注:如以码率作为参考,集合分辨率对应的码率参考值如下:640 × 480 码率为 500 Kbps,1280 × 720 码率为 1000 Kbps 。

    赠送规则

    开通即赠送 1000 分钟的免费通话时长(包括服务端录像时长),赠送时长会在使用实时音视频服务的过程中优先扣除。

    功能和使用场景介绍

    音视频通话

    开发者可以基于 RongRTCLib 开发音视频通话功能,也可以集成融云封装的通话逻辑能力库 RongCallKit 和 RongCallLib 来实现类似微信的音视频通话功能。

    白板功能

    RongRTCLib 提供了白板的功能,App 如果需要使用白板的功能时可以使用下面方法,注:白板功能的发起目前只能在 Web 端进行,其他端只能昨为接收端,另外白板的功能使用 html 的页面进行展现,App 需要获取白板的 URL 地址,然后将 html 的页面加载到 WebView 中即可。

    详细请参考:

    美颜

    RongRTCLib 提供视频流处理的回调,开发者实现之后可以对视频流进行美颜处理,具体方式可以参考知识库:

    集成方式介绍

    基于 RongCallKit 开发

    基于 RongCallKit 开发需要引入 RongIMLib、RongIMKit 和 RongRTCLib 三个类库,类库模块图如下:

    image

    详细请参考:

    基于 RongCallLib 开发

    基于 RongCallLib 开发需要引入 RongIMLib 和 RongRTCLib 两个类库,类库模块图如下:

    image

    详细请参考:

    基于 RongRTCLib 开发

    基于 RongRTCLib 开发只需要引入 RongRTCLib,类库模块图如下:

    image

    详细请参考:

    RongRTClib 基础功能

    RongRTClib 各平台基础功能如下:

    分类 功能 Windows PC Mac Android iOS Web
    登陆 房间 ID
    身份选项
    分辨率选项
    美颜开启选项 x x
    大小流 x x
    摄像头开启选项
    音视频通话 音视频通话
    上传模式(清晰/流畅) x
    加入提醒
    大窗口视频
    小窗口视频列表
    大小窗口切换
    麦克风开关
    摄像头开关
    当前谁在讲话
    白板入口
    屏幕共享入口
    获取主持人 x x x
    退出
    千人会议模式 加入会议身份选项
    举手发言 x
    查看白板
    观看屏幕共享
    退出
    白板 创建空白白板
    通过文件创建白板 x x
    白板工具 x x
    预览
    页面切换
    删除
    屏幕共享 全屏幕共享 x x x
    选定区域共享 x x x x x
    程序窗口共享 x x x x x
    观看屏幕共享
    录音录像 服务端全局录像开关
    录像文件转码服务
    客户端录音 x x