yangkang2021.github.io

mediasoup的优缺点

一. 优点

  1. 高性能的SFU分发架构,压测显示20%的cpu使用率就能跑满阿里云服务器200MB的带宽。
  2. 视频会议架构模式:与传统直播基于流的方案不同,整个实现基于视频会议的房间room。
  3. webscoket信令就是一个通讯系统:可以做很多媒体以外的事情,如存储信息,文本聊天、透传设备控制指令等。
  4. 流控方便:暂停,恢复,打开,关闭很容易,而且都有通知。
  5. 干掉与sfu的sdp传输与协商:实现了自己的一套简单RtpParameters传递与协商。不在需要编辑sdp。
  6. 参数控制简单:分辨率、码率、帧率、采样率、声道数,起始码率,最小码率,最大码率,codec,simulcast,svc。
  7. 非常重要:支持基于simulcast/svc的多路流,实现拉流端码率自适应,拉流端可主动/被动切换的对应码率的流。
  8. 支持单端口部署,也支持多端口。

二. 缺点

  1. 默认没有实现分布式集群实现。

三. 其他

集群从接触mediasoup第一天开始就要一直是一把悬在头上的剑。 但它这几点很非常非常重要:

  1. sfu的架构 在我看来还是最好的。流的合成在客户端,这个就非常灵活多变,适应性强:各种场景界面、ai集成、多变渲染….。
  2. media soup的高性能。
  3. 基于room的会议架构,比直播流架构开发简单了很多很多。
  4. 客户端同时支持native和web。
  5. 客户端一定是sdk和业务分离。sdk业务无关不断优化,业务软件产品不断推新。