Real-Time Audio and Video Development Guide
Welcome to RC Real-Time Communication (RTC). The RTC service is designed based on a room model, supporting one-to-one and multi-party audio/video communication. Built on RC Chat signaling, it ensures stable connectivity during prolonged calls and weak network conditions.
This page provides an overview of RC RTC service capabilities and SDK products.
Client SDKs
RC client SDKs offer extensive APIs with most features ready out-of-the-box. Combined with RTC server APIs, they meet diverse business requirements.
SDK Use Cases
CallPlus, CallLib/Kit, and RTCLib are three flagship client SDKs for RC RTC services. CallPlus and CallLib/Kit are for audio/video calling, while RTCLib provides core RTC capabilities for scenarios like conferences and live streaming with high customizability.
Category | Recommended SDK | Key Differences | Scenarios |
---|---|---|---|
Calling | CallPlus, CallLib/Kit | Automatic room ID handling in call flow | Voice/video calls (e.g., WeChat calls) |
Conferences | RTCLib | Users join via agreed room IDs | Online meetings, small classes, interviews |
Live Streaming | RTCLib | Supports host/audience roles with mic access | Social live streaming, large events |
Choosing an SDK
Different SDKs cater to distinct scenarios. Choose carefully:
- CallPlus & CallLib/Kit: For calling features with built-in workflows (dialing, ringing, etc.). Both depend on RTCLib:
- 【Recommended】CallPlus is RC's next-gen calling SDK, with ongoing feature updates.
- CallLib/Kit is the legacy version (CallLib: no UI; CallKit: includes UI components).
- CallPlus and CallLib/Kit use different backend architectures and are not interoperable. Migration isn't currently supported.
- RTCLib: Core RTC library for custom implementations like conferences/live streaming.
Recommendations:
- For non-calling RTC needs, use RTCLib.
- For calling with prebuilt UI, choose CallKit.
- For calling without UI, use CallPlus (recommended) or CallLib.
- Extend functionality via RC plugins.
Evaluate using quickstart guides and sample projects before development.
Advanced Features
RTC supports:
- Cross-room streaming: Multi-host live collaborations.
- Call analytics: Detailed call metrics at intervals.
- Screen sharing: Via custom video streams.
- Encryption: Secure media streams.
- Plugins: For beauty filters, CDN players, etc.
- Cloud recording: Individual/merged participant recordings.
- Content moderation: Media server transcodes streams for review.
Some features require server APIs. Platform support varies—check SDK/server docs.
Platform Compatibility
CallKit, CallLib, and RTCLib support major platforms with consistent cross-platform functionality. CallPlus currently supports Android, iOS, and Web.
Platform/Framework | Language | Architectures | Requirements |
---|---|---|---|
Android | Java | armeabi-v7a, arm64-v8a, x86, x86-64 | Android 4.4+ |
iOS | Objective-C | --- | iOS 9.0+ |
Windows | C++, Electron | x86, x86-64 | Windows 7+ |
Linux | C, Electron | --- | Ubuntu 16.04+ (others: contact sales) |
MacOS | Electron | --- | macOS 10.10+ |
Web | JavaScript | --- | See "Web Compatibility" in docs |
Flutter | Dart | --- | Flutter 2.0.0+ |
uni-app | JavaScript | --- | uni-app 2.8.1+ |
React Native | JavaScript | --- | React Native 0.65+ |
Unity | C# | Android(armeabi-v7a, arm64-v8a), iOS(arm64,armv7) | --- |
Version Support
Latest SDK versions per platform (---
= unsupported):
SDK/Platform | Android | iOS | Web | Electron | Flutter | Unity | uni-app | Mini Program | React Native | Windows - C++ | Linux - C |
---|---|---|---|---|---|---|---|---|---|---|---|
RTCLib | 5.6.x | 5.6.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 | See note¹ |
CallLib | 5.6.x | 5.6.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 | --- | --- | --- | --- | --- | --- | --- | --- | --- |
CallPlus | 2.x | 2.x | 2.x | --- | --- | --- | --- | --- | --- | --- | --- |
¹ For Linux support, contact RC sales.
SDK Size Comparison
Android
Data based on RTC 5.X.
Architecture | RTCLib Increase | CallLib Increase | CallKit Increase |
---|---|---|---|
armeabi | 4.5MB | 4.6MB | 7.4MB |
arm64-v8a | 5.1MB | 5.1MB | 8.0MB |
x86 | 5.4MB | 5.4MB | 8.3MB |
All | 17.2MB | 17.2MB | 20.1MB |
iOS
Data based on RongCloudRTC 5.X.
Architecture | RTCLib Increase | CallLib Increase | CallKit Increase |
---|---|---|---|
arm64 | 4.3MB | 4.4MB | 8.9MB |
arm64 + armv7 | 8.6MB | 8.9MB | 14.8MB |
RTC Server
RTC server APIs help integrate RC capabilities into your backend systems—e.g., fetching user Tokens, banning users, or removing them from rooms.
Visit RC server docs · Integration Essentials »
Console
The RC Console lets you manage developer accounts, apps, and services (including RTC activation), view analytics, and billing.
RTC requires console activation. See Activate RTC Service.
RTC Analytics
Access the RC Console Analytics to monitor usage, service health, and (if enabled) business insights. RC also provides real-time call quality dashboards to troubleshoot issues.
RC does not exploit customer data and adheres to strict privacy policies. See SDK Privacy Policy.