Real-Time Audio and Video Development Guide
Welcome to RC Real-Time Communication (RTC). Our RTC service is designed based on a room model, supporting one-to-one and multi-party audio/video communication. Built upon RC's IM signaling infrastructure, it ensures stable connectivity during prolonged calls and under weak network conditions.
This page provides a brief introduction to RC RTC service capabilities and SDK products.
Client SDKs
RC client SDKs offer extensive APIs, with most features ready to use out of the box. When combined with RTC server APIs, they can fulfill diverse business requirements.
SDK Use Cases
CallPlus, CallLib/Kit, and RTCLib are three flagship client SDKs provided by RC RTC service. CallPlus and CallLib/Kit are designed for developing calling features, while RTCLib serves as the core audio/video library for meeting and live streaming scenarios with high customization potential.
| Category | Recommended SDK | Flow Difference | Scenario |
|---|---|---|---|
| Calling | CallPlus, CallLib/Kit | Automatic room ID handling | Audio/video calls (similar to WeChat calls) |
| Meetings | RTCLib | Participants join via agreed room ID | Online meetings, small classes, video interviews |
| Live Streaming | RTCLib | Supports host/audience roles with mic-on interaction | Social live streams, conferences, audio chat rooms |
SDK Selection Guide
Choose carefully based on your business needs:
- CallPlus & CallLib/Kit are calling-focused SDKs that handle complete call flows (dialing, ringing, answering). Both depend on RTCLib but differ as follows:
- 【Recommended】CallPlus represents RC's next-gen calling SDK, with future feature development concentrated here.
- CallLib/Kit is the legacy solution (CallLib: UI-less; CallKit: includes UI components).
- Note: CallPlus and CallLib/Kit use incompatible backend architectures—no migration path exists currently.
- RTCLib serves as RC's core RTC engine for custom implementations.
Selection recommendations:
- For non-calling RTC needs (e.g., meetings/live streaming), use RTCLib alone.
- For calling features with prebuilt UI, choose CallKit.
- For calling features requiring custom UI, opt for CallPlus (recommended) or CallLib.
- Extend functionality through RC's standalone plugins.
We recommend evaluating our quickstart guides and sample projects before development.
Advanced Features
Key RTC capabilities include:
- Cross-room streaming: Multi-host collaboration across rooms.
- Call analytics: Detailed periodic call metrics reporting.
- Screen sharing: Broadcast device screens via custom video streams.
- End-to-end encryption: Optional media stream encryption.
- Plugin support: Extend features like beauty filters or CDN players.
- Cloud recording: Individual or merged participant recordings for calls/meetings.
- Content moderation: RTC Server transcodes streams for review, with results returned to your app server.
Some features require server API integration. Platform-specific availability applies—refer to SDK or server documentation for implementation details.
Platform Compatibility
Platform Compatibility
CallKit, CallLib, and RTCLib support mainstream mobile operating platforms, with consistent client-side features across multiple endpoints and cross-platform interoperability. CallPlus supports Android, iOS, Web, and HarmonyOS platforms.
| Platform/Framework | Language | Supported Architectures | Notes |
|---|---|---|---|
| Android | Java | armeabi-v7a, arm64-v8a, x86, x86-64 | OS version 4.4 or later |
| iOS | Objective-C | --- | OS version 9.0 or later |
| Windows | C++, Electron | x86, x86-64 | Windows 7 or later |
| Linux | C, Electron | --- | Recommended: Ubuntu 16.04 or later; for other distributions, consult sales |
| MacOS | Electron | --- | OS version 10.10 or later |
| Web | JavaScript | --- | See "Web Compatibility" in client documentation |
| Flutter | Dart | --- | Flutter 2.0.0 or later |
| uni-app | JavaScript | --- | uni-app 2.8.1 or later |
| React Native | JavaScript | --- | React Native 0.65 or later |
| Unity | C# | Android (armeabi-v7a, arm64-v8a), iOS (arm64, armv7) | --- |
| HarmonyOS | ArkTS, TypeScript | arm64-v8a | HarmonyOS NEXT 0.0.31 or later |
Version Support
Here's the translated version of the source document while maintaining the original format and adhering to the provided glossary and style guide:
The latest versions of RTC service client SDKs for each platform/framework are as follows (--- indicates not currently supported):
| SDK/Platform | Android | iOS | HarmonyOS | Web | Electron | Flutter | Unity | uni-app | Mini Program | React Native | Windows - C++ | Linux - C |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| RTCLib | 5.6.x | 5.6.x | 1.5.x | 5.6.x | 5.6.x | 5.2.x | 5.2.x | 5.2.x | 5.0.x | 5.2.x | 5.1.x | SeeNote 1 |
| CallLib | 5.6.x | 5.6.x | 1.5.x | 5.0.x | 5.1.x | 5.1.x | --- | 5.1.x | 3.2.x | 5.1.x | --- | --- |
| CallKit | 5.6.x | 5.6.x | 1.6.x | --- | --- | --- | --- | --- | --- | --- | --- | --- |
| CallPlus | 2.x | 2.x | 1.6.x | 2.x | --- | --- | --- | --- | --- | --- | --- | --- |
Note 1: For Linux platform support, please contact RC's business team.
SDK Size Comparison
Android
The following data is based on RTC 5.X version.
| CPU Architecture | RTCLib Integration Increment | CallLib Integration Increment | CallKit Integration Increment |
|---|---|---|---|
| armeabi | 4.5MB | 4.6MB | 7.4MB |
| arm64-v8a | 5.1MB | 5.1MB | 8.0MB |
| x86 | 5.4MB | 5.4MB | 8.3MB |
| All platforms | 17.2MB | 17.2MB | 20.1MB |
iOS
The following data is based on RongCloudRTC 5.X version.
| CPU Architecture | RTCLib Integration Increment | CallLib Integration Increment | CallKit Integration Increment |
|---|---|---|---|
| arm64 | 4.3M | 4.4M | 8.9M |
| arm64 + armv7 | 8.6M | 8.9M | 14.8M |
HarmonyOS
The following data is based on RongCloudRTC 1.X version.
| CPU Architecture | RTCLib Integration Increment | CallLib Integration Increment | CallKit Integration Increment |
|---|---|---|---|
| arm64-v8a | --- | 233kb | --- |
Real-Time Communication Server API
The RC RTC server API helps you build a backend service system that integrates RC's real-time communication capabilities into your app.
You can use the server API to integrate RC services into your real-time communication infrastructure. For example, obtain user authentication tokens (Token) from RC, ban users, or remove participants from rooms through your application server.
Visit RC server documentation · Integration Guide »
Console
With the Console, you can manage developer accounts and applications, enable RTC services and other premium features, view application analytics, and monitor billing data.
RTC services must be enabled in the Console before use. See [Enable RTC Services].