根据WebRTC的MCU开源项目Licode的环境树立因为项目需求,需求构建多人通讯,调研了多人通讯的三种常见结构:1.前一篇博客现已根据codelab完成了三人谈天,这种多人体系根据Mesh结构。具体来说,假设有N+1个客户端,那么关于每一个客户端都需求与其他N个目标树立PeerConnecTIon,这样耗费了许多的带宽和CPU资源。关于客户端数量较少的使用比较合适,推迟小、开发简略、画面无丢失。
2.根据MCU的结构,该MCU的中心功用便是视频和音频的Mix。经过将多路信号混组成一路,到达削减带宽和CPU资源耗费的意图。关于N+1个Clients,每个目标只要和MCU树立一个PeerConnecTIon,大大削减资源耗费,适用于客户端数量较多的使用,可是该计划会丢失画面质量,完成比较复杂,对MCU服务器功能要求很高(多路信号的编码解码)。
3.根据Router结构,该结构结语1 2之间。每个客户端将本地信号上传到Router,并从Router上下载其他客户端的信号。这样,比较1计划,并不需求向每一个客户端发送相同的本地信号,因而带宽耗费大约削减一半,一起不丢失信号质量,且能提高客户端的数量。
支撑多人通讯的WebRTC的开源项目许多,这儿挑选Licode树立开发环境,比较其他项目,Licode比较轻量级,便于初学者学习,并且它归于Router结构,契合需求。官方地址:lynckia.com/licode/install.html依照攻略树立即可,最好FQ树立环境。树立完成后,其官方Demo作用如下。测验了下,5台手机,一台电脑一起在线没有问题,但传输推迟在1s左右。