导语
华宇深耕法律科技多年,在形成自身完备的技术体系的同时,培养出一大批勇于创新的技术工程师,TA们乘风破浪,厚积薄发,“技”往开来。在这里,我们将开创一片TECH ZONE,陆续呈现TA们在工作中的创新技术成果,敬请关注。
第9期觅听-实时音视频通信平台
创新技术负责人 李晨莺当前市场对音视频会议的需求日益增多。为了与客户业务深度结合、实现复杂场景和定制化要求,华宇觅听顺势而生。
觅听是一款WebRTC应用程序,它主要提供视频会议功能。觅听提供了windows、mac、ios、Android等多种平台的接入方式,实现了不同终端的同时入会,解决客户随时随地开会的需求。由于WebRTC的引入,觅听无需关注PC端各类操作系统,统一浏览器入会即可。能很方便的解决多种操作系统客户端不兼容问题。
视频:华宇解读 觅听实时音视频通信平台
项目难点1)跨平台:由于实时音视频的需求,必然导致觅听的业务涵盖各类操作系统和终端,平台适配范围相对较广。
2)音频3A优化:当前选型WebRTC,相较于传统的RTC,内部音频模块提供的声音3A处理效果还有待提高。
3)稳定性提升:受制于网络带宽等因素的影响,会议过程的稳定性保障相对比较薄弱。
4)带宽瓶颈:选型为SFU架构,必然导致带宽的消耗非常大,如何解决带宽问题,也是项目面临的一大挑战。
解决方案1)为了满足跨平台的需求,觅听引入WebRTC,无需关注各类操作系统,能很方便的解决多种操作系统客户端不兼容问题。
2)在WebRTC音频模块的基础上,引入并优化rnnoise等模型,进行声音降噪、回声消除等处理。
3)加强丢包、网络、参会者会议状态等各方面监测,进一步优化抗丢包策略,以及在弱网环境下的会议质量、流畅度保证。
4)由于SFU的瓶颈,因此带宽的优化,主要从参会者视频展示策略来进行。
1、技术方案 技术方案 架构选型图目前WebRTC的整体架构主要有MESH、MCU、SFU三种。主流使用的是MCU和SFU两种。
MCU,这是一种传统的中心化架构,每个浏览器仅与中心的MCU服务器连接,MCU服务器负责所有的视频编码、转码、解码、混合等复杂逻辑,每个浏览器只要1个连接,整个应用仅消耗5个连接,带宽占用(包括上行、下行)共10M,浏览器端的压力要小很多,可以支持更多的人同时音视频通讯,比较适合多人视频会议。但是MCU服务器的压力较大,需要较高的配置。
SFU,仍然有中心节点服务器,但是中心节点只负责转发,不做太重的处理,所以服务器的压力会低很多,配置也不象MCU要求那么高。但是每个端需要建立一个连接用于上传自己的视频,同时还要有N-1个连接用于下载其它参与方的视频信息。所以总连接数为5*5,消耗的带宽也是最大的,如果每个连接1M带宽,总共需要25M带宽,它的典型场景是1对N的视频互动。
图1 SFU架构图
考虑到5G的推广,带宽的问题越来越不重要,因此觅听的选型为SFU,因此在安装部署上,觅听对服务器配置要求比较低,相对服务器会更加稳定。
整体架构图图2 整体架构图
1)Arterymeeting
Arterymeeting为觅听的前端交互页面,客户端在浏览器中运行,而无需在计算机上安装任何软件。
2)Prosody
Prosody为xmpp服务器,用于进行数据通讯。
3)Jicofo
jicofo是meeting的重要组件。它负责管理每个参与者和videobridge之间的媒体会话。
4)Videobridge
Videobridge是媒体服务器,允许觅听在WebRTC基础上进行多用户视频通信,主要进行音视频流的转发。
5)Jibri
Jibri提供用于录制或流式传输会议的服务。 级联部署设计图3 SFU级联
为支持更多用户使用,觅听可支持级联部署。在级联的设计上。觅听形成两个独立的服务器池:一个jicofo实例池和一个videobridge实例池。在桥到桥通信上,不做信号传递,所有信令都发生在jicofo和videobridge之间,两个网桥之间的连接仅用于来自客户端的音视频和数据信道消息。
架构安全设计1)媒体资源访问
觅听通过浏览器,要求用户明确允许使用相机或麦克风来获得访问权限。觅听在未授权的情况下无法任意访问或操作任一设备。
2)媒体加密和通信安全
觅听基于的WebRTC,针对所有组件都是强制加密的。通过WebRTC发送的所有媒体流都进行安全加密。使用数据包传输层安全性协议(DTLS)对数据流进行加密,并使用安全实时传输协议(SRTP)对媒体流进行加密。也就是说在音视频会话中,只有拥有加密密钥的会话参与方才可以将通信数据流解码。另外包括信令在内,在访问过程中,必须使用HTTPS协议,这保证了与会方使用安全连接进行信号传递。
2、工程小姑 工程效果觅听网页端 觅听APP 觅听直播观看平台 觅听监控平台 THUNISOFT TECH ZONE华宇创新技术成果(2020)系列
微服务架构在第三代核心审判系统中的实践与落地
视频行为分析引擎
虚拟背景引擎
OCR之手写识别
ArteryDocker-云平台
OFD技术
法医伤情鉴定智能辅助
应用服务器中间件TAS