企业远程视频会议系统EasyRTC新开发的MCU版本与SFU版本方案介绍与选择
一、视频会议系统之MCU与SFU
MCU方案
Multipoint Conferencing Uint硬件的方案,通过软件的方式代替硬件,该方案由一个服务器和多个终端组成一个星形结构。各终端将自己要共享的音视频流发送给服务器,服务器端会将在同一个房间中的所有终端的音视频流进行混合,最终生成一个混合后的音视频流再发给各个终端,这样各终端就可以看到 / 听到其他终端的音视频了。实际上服务器端就是一个音视频混合器,EasyRTC-MCU版使用的就是这个方案。
多个用户互动时,首先将多路视频进行混频操作,比如3路视频,每个人只拿1路。但是CPU混频的时候,非常耗费CPU。如果同时有多个会议,资源消耗更大;
对于用户来说只有一路数据,所以对于带宽影响小;
因为都是混频后的一路数据,没办法对数据进行操作,对于客户端灵活性稍差,如:没办法放大某一个房间等操作;
该方案对带宽的占用率低,对服务器端的压力大,适用于小规模企业用户使用。
技术非常成熟,在硬件视频会议中应用非常广泛。作为音视频网关,通过解码、再编码可以屏蔽不同编解码设备的差异化,满足更多客户的集成需求,提升用户体验和产品竞争力。将多路视频混合成一路,所有参与人看到的是相同的画面,客户体验非常好。
SFU方案
该方案也是由一个服务器和多个终端组成,但与 MCU 不同的是,SFU 不对音视频进行混流,收到某个终端共享的音视频流后,就直接将该音视频流转发给房间内的其他终端。它实际上就是一个音视频路由转发器。相对而言MCU传输的数据就多了,带宽不够的情况下,很容易影响软件使用,EasyRTC-SFU版使用的就是这个方案。
由于是数据包直接转发,参与人观看多路视频的时候可能会出现不同步。相同的视频流,不同的参与人看到的画面也可能不一致;
参与人同时观看多路视频,在多路视频窗口显示、渲染等会带来很多麻烦,尤其对多人实时通信进行录制,多路流也会带来很多回放的困难。总之,整体在通用性、一致性方面比较差;
SFU是两种架构方案中优势最明显而劣势又相对较少的一种架构方案。无论是从灵活性上,还是音视频的服务质量、负载情况等方面上,相较MCU方案,SFU都有明显的优势,因此这种方案也被大多数厂商广泛采用,适用于大型会议现场使用。
由于是数据包直接转发,不需要编码、解码,对 CPU 资源消耗很小;直接转发也极大地降低了延迟,提高了实时性;很大的灵活性,能够更好地适应不同的网络状况和终端类型。
二、企业级视频会议系统的方案选择
EasyRTC MCU视频会议系统
采用的是一种传统的中心化架构,每个浏览器仅与中心的MCU服务器连接,MCU服务器负责所有的视频编码、转码、解码、混合等复杂逻辑,每个浏览器只要1个连接,整个应用仅消耗5个连接,带宽占用(包括上行、下行)共10m,浏览器端的压力要小很多,可以支持更多的人同时音视频通讯,比较适合多人视频会议。但是MCU服务器的压力较大,需要较高的配置。如果50人以下,且带宽有限,选择MCU比较适合。
目前在产品设计上主要作为一对一、一对多音视频交互使用,因其对服务器要求比较高,适合中小企业场景使用,同时系统支持私有化部署、提供API接口调用,可以直接用于调度指挥、视频对讲、户外作业、现场勘测等项目中。
目前已应用于:海关稽查项目、勘测项目、安徽省工程部户外作业项目等。
EasyRTC SFU视频会议系统
此方案仍然有中心节点服务器,但是中心节点只负责转发,不做太重的处理,所以服务器的压力会低很多,配置也不像MCU要求那么高。但是每个端需要建立一个连接用于上传自己的视频,同时还要有N-1个连接用于下载其它参与方的视频信息。所以总连接数为5*5,消耗的带宽也是最大的,如果每个连接1M带宽,总共需要25M带宽,它的典型场景是1对N的视频互动。
目前在产品定位上主要作为大中型、集团化企业的视频会议系统,产品功能上增加了自适应码流、国外节点加速、视频云录制、桌面共享、文档共享、举手、主持人/参会人权限、视频分享等功能,无需插件即可进行web端的高效率交流方式。可以应用于企业会议、政务党建、远程培训、远程医疗等。
当会议系统从传统的硬件视频会议系统向云视频会议系统过渡,从社交在线视频会议向线上线下融合的智能会议发展。无论是MCU的视频会议系统还是SFU的视频会议系统,都具备其应用的场景,企业用户可以根据其行业应用场景的需要,选择对应的架构版本。
更多的视频会议相关的应用技术可以参考EasyRTC的方案。