移动端实时音视频聊天框架 RainbowAV v2.2.7发布

1、v2.2.7 版更新内容

此版更新内容:

  • 1)升级 提升targetSdkVersion至36,全面兼容Android 16;
  • 2)优化 开发工程升级适配AGP 9.1最新版;
  • 3)优化 升级权限框架以适配最新Android 16系统;
  • 4)优化 针对全部界面适配系统强制的Edge to Edge全面屏特性;
  • 5)优化 呼叫和聊天界面的ui优化等;

更多历史版本:

2、关于RainbowAV

🔥 RainbowAV是一套完整移动端实时音视频框架,不依赖第3方服务,使用方便,部署简单,轻量级、模块化设计。

📱 客户端历经多年、在大量最终用户的真机使用下,兼容性和适配能力强,它并不是个Demo;

🌟 服务端轻量级、极少依赖、简单易用、3行指令即可部署;

🌟 底层核心为C++编写,性能优先,CPU占用约17%(作为对比,同机型下手机QQ约为20%、微信约为19%);

🌟 客户端资源占用极少,持续运行时内存仅占 13MB 左右;

🌟 实时视频聊天时上下行总流量约 30KB/S(作为对比,手机QQ和微信的实时音视频均约 60KB/S);

🌟 实时语音聊天时上下行总流量约 9KB/S(作为对比,手机QQ约 14KB/S、微信约 6KB/S);

🌟 可应用于3G、4G等弱网络,在跨洲际高延迟网络下做过大量测试。

3、RainbowAV的设计目标

鉴于实时音视频技术的高门槛,RainbowAV技术从设计开始就希望能简化集成和使用,因而是以独立工程的方式进行迭代和演进,并不会与RainbowChat这样的IM发生代码耦合性,从而方便开发者自行改进甚至2次开发。

具体就是:

  • *1)*与IM工程的解耦:独立工程,方便迭代和演进,甚至2次开发;
  • *2)*服务端部署便利:服务端编译成了清爽的可执行程序,3行指令即完成部署;
  • *3)*单实例拆分部署:共编译成3个程序,均可独立部署,互相无依赖,进一步提升单实例性能;
  • *4)*多实例分布式部署:鉴于实时音视频聊天的特殊性(只在聊天时才需要连接音视频服务器),多实例分布式部署变的简单;
  • *5)*服务端的高性能:得益于Linux epoll异步编程模型,服务端拥有极高的并发处理性能。
  • *6)*手机端高兼容性:受益于大量的兼容性测试,甚至在Android 5.0上仍可很好地工作,代码表现健壮;
  • *7)*手机低资源占用:Android客户端经过大量优化,资源占用低;
  • *8)*高压缩低码率:经过编码压缩后的音视频数据,只需很少的流量;
  • *9)*P2P通信支持:尽可能降低服务端性能和带宽压力;
  • *10)*弱网络的支持:降低弱网络高延迟环境带来的通信脆弱性,保证应用层的稳定运行。

4、RainbowAV的性能指标

客户端性能指标总结:

  • *1)*客户端运行稳定后,内存占用约13M左右(以MOTO G XT1077手机为例);
  • *2)*实时音视频(视频+语音)时,CPU占用约17%(手机QQ的约为20%、微信的约为19%);
  • *3)*实时语音(仅语音)时,CPU占用约11%(手机QQ的约为12%、微信的约为5%);
  • *4)*实时音视频(视频+语音)时上下行总流量约30KB/S(手机QQ和微信的均约60KB/S);
  • *5)*实时语音(仅语音)时上下行总流量约9KB/S(手机QQ的约14KB/S、微信的约6KB/S).

服务端性能指标总结:

RainbowAV服务端基于高性能的Linux epoll,理论设计性能是:单机1000到10000人同时使用。鉴于实时音视频的复杂性(P2P、中转等混合发生),想要准确地测试统计非常困难。但鉴于实时音视频技术的高流量特性,通常单机瓶颈会首先出现在带宽上,所以生产部署时需要在单机性能和带宽分流上总体考虑。而也正是得益于实时音视频的特殊性,聊天时可同时部署多个服务端实例,只要引导该对聊天的用户同时连接同一台实例即可进行聊天,从而让分布式部署和负载均衡变的简单。

5、关于RainbowChat

🔥⚡️ 详细介绍・版本日志・运行截图(Android、iOS)・下载体验(Android、iOS) ⚡️🔥

RainbowChat是一套基于 RainbowAV 音视频聊天框架 的产品级移动端IM系统 。RainbowChat源于真实运营的产 品,解决了大量的屏幕适配、细节优化、机器兼容问题。RainbowChat可能是市面上提供im即时通讯聊天源码的,唯一一款同时支持TCP、UDP、WebSocket三种通信协议的IM产品 。与姊妹产品 RainbowTalk 和 RainbowChat-Web 技术同源,历经考验。

6、运行演示截图

**1)RainbowAV独立体验版运行效果:

2) RainbowAV集成到 RainbowChat 的实时语音运行效果: (RainbowChat介绍、更多RainbowChat截图)

3) RainbowAV集成到RainbowChat 后的实时视频运行效果: (RainbowChat介绍、更多RainbowChat截图)

相关推荐
福大大架构师每日一题5 小时前
mediamtx v1.21.2发布:UDP、JWT、RTSP、RTMP、HLS、WebRTC全面修复,稳定性与安全性再提升
网络协议·udp·webrtc
智能直播1 天前
RK3528 RGA+DRM框架 HDMI out视频输出:从多图层合成到显示送显
视觉检测·音视频·实时音视频·视频编解码
hz567892 天前
涉密视频会议设备配置指南:终端、音视频采集与配套设施选型
服务器·网络·数据库·安全·实时音视频·信息与通信·智能硬件
VidDown2 天前
上传 2GB 文件别让 Django 接:分片上传、对象存储直传与秒传
python·django·音视频·状态模式·实时音视频·视频编解码·视频
草根大哥2 天前
08-横向扩容与突发高并发:加机器到底买到了什么
运维·webrtc·srt·横向扩容·whip·自建cdn
智能直播2 天前
RK3528 Tinyalsa/ALSA框架:输入源声音获取与HDMI out声音输出,一文讲透直播音频链路
音视频·实时音视频·视频编解码
草根大哥2 天前
07-P2P 直连与节点池调度
webrtc·p2p·srt·whip·whep·自建cdn
草根大哥2 天前
06-可观测性:端到端延迟、稳定性与画质
webrtc·srt·whip·自建cdn·ppcdn
大文说跨境2 天前
用 Python 自动化检测浏览器环境指纹:WebRTC 泄露、Canvas 哈希与时区一致性校验
python·自动化·webrtc
EasyDSS3 天前
基于WebRTC的视频会议系统:私有化视频会议平台EasyDSS视频会议到底能干什么
音视频·webrtc·easydss