跳到主要内容

CallKit

CallKit 是实现融云「音视频通话」功能的 SDK,提供一套通用的呼叫 UI。可支持单人、多人音视频通话的各种场景。您可以快速集成 CallKit 来实现丰富的音视频通话界面,并进行自己的 UI 定制开发。CallKit 已开源,您可以直接使用源代码进行集成。

基于 CallKit 开发,必须同时集成 CallLib,IMKit 和 IMLib。

具体请参见融云客户端 SDK 体系

CallKit 架构示意图

CallLib 因为内部携带一套呼叫状态机,需要对流程严格控制,所以是将 RTCLib 包裹在其内部,用户使用 CallLib 时也应尽量避免直接调用 RTCLib 的接口,以免造成状态错乱。

CallKit 优势

  • 跨主流平台。CallKit 支持在 Android 和 iOS 上集成使用。支持 iOS、Android、Web、Mac、Windows、Linux 之间连接互通。
  • 易用易集成。CallKit 默认提供了一对一呼叫、多人呼叫等音视频通话场景的界面功能。
  • 连接可靠。信令消息都是基于融云的即时通讯全球大网。利用智能 DNS 解析、多链路最优接入策略和抗弱网丢包策略,在低速、不稳定的网络连接下仍能提供较好的性能体验。
    • 抗丢包:音频能抗 80% 丢包率,视频能抗 40% 丢包率。
    • 网络自适应:可根据当前网络状况自动切换至合适的分辨率、帧率,根据业务场景做不同策略调整。
  • 性能出色
    • 视频能力:最大支持 1080p、30 帧,提供清晰流畅的体验。
    • 音频能力:采样率最高可达 48kHz,支持双声道,确保声音清晰、还原度高。音频通话 100% 回声消除,1s 降噪。
    • 低延迟:正常网络下,延迟可低至 66ms 以内。
  • 安全。可对媒体流进行自定义加解密,音频流与视频流可独立处理。
  • 支持全面。官方文档中对 CallKit 公共接口均有详细记录。如有疑问,可发工单获取支持。

适用场景

CallKit 用于「音视频通话」功能,「音视频通话」指类似微信通话等必须含有呼叫流程的应用场景。

CallKit 自带一套通用的呼叫 UI,适用于对 UI 定制需求较少的开发者。

如果需要使用「音视频通话」,但希望自行开发 UI 界面,建议您使用融云为「音视频通话」场景提供的无 UI SDK CallLib

资源