点对点呼叫场景中,有时候因为码流无法穿越防火墙,需要有服务器来做中转;在多人会议的场景下,必须有中间服务器,否则要把所有人的码流传给其它所有人,带宽将无法控制。这就需要媒体服务架构 MCU(多点控制单元)。
传统MCU做的是“全编全解”,即把所有人的码流在服务器上解码,再编码合成一个码流,传给其他人。
我们采取的是基于音视频分层编码的架构,服务器不做编解码,只做码流的中转,各个终端根据自己的能力和网络状况,经过服务器中转向发送端请求合适的码流。这样做的好处是:服务器容量高、可扩展性强。对云服务来说,基于分层编码的构架是最优的。分层编码还更加适合有丢包情况下的纠错和补偿,这一点后面还会提到。
在服务器部署方面,我们采取的是多点分布式的部署方式。在不同的区域,根据用户的分布和使用状况,我们可以灵活部署多个媒体服务器,终端就近接入服务器,音视频就近中转,多服务器协作,动态调整,互相备份,降低延时,减少网络流量,提高服务的可靠性,最多支持万方会议,如果会议中断还可以自动迁移到附近的服务器。
领取专属 10元无门槛券
私享最新 技术干货