一. 优点
- 高性能的SFU分发架构,压测显示20%的cpu使用率就能跑满阿里云服务器200MB的带宽。
- 视频会议架构模式:与传统直播基于流的方案不同,整个实现基于视频会议的房间room。
- webscoket信令就是一个通讯系统:可以做很多媒体以外的事情,如存储信息,文本聊天、透传设备控制指令等。
- 流控方便:暂停,恢复,打开,关闭很容易,而且都有通知。
- 干掉与sfu的sdp传输与协商:实现了自己的一套简单RtpParameters传递与协商。不在需要编辑sdp。
- 参数控制简单:分辨率、码率、帧率、采样率、声道数,起始码率,最小码率,最大码率,codec,simulcast,svc。
- 非常重要:支持基于simulcast/svc的多路流,实现拉流端码率自适应,拉流端可主动/被动切换的对应码率的流。
- 支持单端口部署,也支持多端口。
二. 缺点
- 默认没有实现分布式集群实现。
三. 其他
集群从接触mediasoup第一天开始就要一直是一把悬在头上的剑。 但它这几点很非常非常重要:
- sfu的架构 在我看来还是最好的。流的合成在客户端,这个就非常灵活多变,适应性强:各种场景界面、ai集成、多变渲染….。
- media soup的高性能。
- 基于room的会议架构,比直播流架构开发简单了很多很多。
- 客户端同时支持native和web。
- 客户端一定是sdk和业务分离。sdk业务无关不断优化,业务软件产品不断推新。