1 背景

OPPO实时音视频(OPPO Real-Time Communication ORTC),是咱们推出一套低延时、高品质、跨平台的音视频互通解决方案,通过OPPO云服务器向开发者凋谢,提供多人音视频通话、实时监控、应急指挥调度、互通直播、IOT万物互融、云游戏等能力输入。以往的音视频通信技术大多是基于SIP/H323的实现计划,本文提供一种交融计划,实现RTC与SIP的互联互通,使得RTC可能很轻易的实现与PSTN、SIP Trunk的对接,同时传统的会议终端通过该计划也能轻易接入RTC零碎。

2 ORTC简介

ORTC万物互连下的重要基础设施,解决了不同平台各色终端之间实时互连互通问题,为泛滥产品提供实时音视频通信能力,目前已上线及打算产品包含,小布视频通话,近程帮助,小游戏语音互动,云游戏,互动直播,小布会议,虚拟人,IOT等。

依靠OPPO云优质的节点资源,全网协同,动静智能路由,区域中级,就近接入,层级扇出,寰球连贯的特点,ORTC提供超低延时,超高并发,超高可用的音视频服务。

3 ORTC零碎架构

ORTC是一款输入实时通信能力的PAAS云服务产品,总体架构蕴含媒体服务、信令服务、监控服务、接口服务、端侧接入SDK等。其中信令媒体是拆散的,信令通过SLB和Redis实现分布式及智能调度。媒体整体采纳SFU架构,反对级联,单个房间不同用户能够散布在多个媒体实例上。媒体反对合流录制,音视频流级联到MCU上,能够进一步实现合流后的录制、转散发。音视频传输上反对jitterbuffer、NACK、FIR、PLI, 音频反对AGC、AEC、NS,FEC解决上音频传输上下行均反对RED,视频上行反对ULPFEC。端侧SDK基于WebRTC的流程标准,所有的SDK均反对simulcast,反对实时字幕、语音激励。ORTC是在OPPO寰球混合云这个弱小底座平台根底上建设的一款高并发、低延时、跨平台、高可用的RTC服务平台。

4 SIP利用场景及架构

SIP的利用无处不在,无论是思科、华为、Polycom这些传统会议厂商,还是海康、大华、宇视这些监控厂商,咱们都能找到SIP的影子,而基于SIP的产品在传统会议、监控等相干行业占据着很大一块市场。而5G及云服务的衰亡,无疑会给传统行业注入新的生机,赋予其变革的能源,因为它不仅给传统行业大大降低老本,还会晋升其效率及服务体验。举个例子,高速的监控如果上云存储上会节俭一大笔的开销,而随时随地都能实时的看到监控画面并与之互动无疑也是监管部门及用户脍炙人口的。这些能力都是RTC可能提供的,然而间接上RTC的话,无疑会给客户带去天翻地覆的革新,这也是大多数企业用户所不能承受的,他们乐见的是平滑的无缝的降级切换,而要做到这些就须要进行RTC与SIP的互联互通,并为之深度交融定制相应的解决方案。

RTC尽管是实时通信倒退的必然,而后它也有依赖的靠山,那就是根底的网络设施,因为寰球各地区,甚至同一地区的不同应用地点,不同人流量,网络信号都可能不同,造成基于纯数据网络的利用无奈很好的服务,而这时候基于PSTN的一般电话网或PTT无线对讲机可能就展现出了其稳固牢靠不掉线的特点,如果能把他们接入到RTC中无疑加强了RTC的抗弱网能力,拓展了其利用场景的范畴,而这些网络及设施的接入也须要ORTC与SIP进行融通。

随着万物互联的深刻,网络的触角延长到了力不从心的智能设施,这也为RTC提供了更广大的应用场景,这些设施平时可能对可靠性要求不高,偶然掉线也能承受;或者说他们可能就没有间接接入互联网,接入的是独立的网络,比方智慧社区的门铃,老人的手环,儿童的手表等IOT设施,其对应紧急被叫端的APP可能不是实时在线状态,这时候要获得和他们的紧急分割就须要借助于SIP外呼PSTN/LTE网络的一般电话。

而以上这些都对RTC与SIP的交融提出了需要,而要想把RTC做强做大做成音视频通信的基础设施,同时能提供各种协定的接入能力也是对ORTC的根本要求。

在下面的架构中,借助于SIP网关及SIP媒体服务器,实现了RTC服务与内部基于规范SIP协定的PSTN网络或SIP中继的无缝连接。

在ORTC与SIP的对接过程中,ORTC外部的架构是绝对独立的,通过SIP网关解决后SIP协定将会实现与WebRTC信令协定的映射转换,媒体流则通过规范的RTP/RTCP进行传输管制,而接入的SIP终端,也将被伪装成一个虚构的WebRTC Client入会。

尽管从架构上看,ORTC到SIP只需实现信令管制和媒体传输就功败垂成了,而后在施行过程上,要思考的实现细节还有很多,这其中包含转码、合流、平安传输、抗弱网个性、双流输入等。

5 ORTC-SIP 合流转码

ORTC作为一款通用的音视频通信解决方案,其必然要求具备反对各种类型音视频编解码的能力,其中包含了前沿的音视频编解码Lyra、AV1,而传统SIP会议则大多应用绝对激进通用的编解码器,这就要求两者对接时具备非对称编解码的能力,而作为切入方,ORTC就要求具备解决这种非对称编码的转码性能。同时如果要间接替换第三方的服务,而只保留对方终端的话,则对方终端要看到的ORTC的合流输入,而不是当初基于SFU的多路输入,因而ORTC需具备合流(MCU)能力,即咱们的ORTC的媒体不能再仅仅是SFU,要同时具备SFU+MCU的能力输入。

具体架构兼容的施行如上图所示,sip终端通过sip服务器后,将于ORTC提供的虚构sip终端实现点对点的音视频通信,这样在两端各自与sip服务器实现背靠背的SDP协商之后,内部的媒体将转发至ORTC外部的媒体接收端,通过pipe输入至核心媒体节点后退出ORTC的智能调度散发过程,同时ORTC所有接入方的媒体数据,也将汇聚到MCU,经其合流后散发调度给sip server,sip server做进一步的加密解决后转发至sip终端。

同样,通过MCU合流后的数据,也能旁路输入,可能以直播模式交融CDN零碎进行散发,同时也具备云端录制能力。

6 ORTC-SIP抗弱网及安全控制

作为全球化经营的通信解决方案,其所面临的接入网络的根底能力及应用场景可能千差万别,有些中央网络信号强,有些中央则较弱,有些中央可能拥挤较重大,这就要求咱们的零碎具备较强的抗弱网能力,而ORTC基于WebRTC标准实现的软件,人造具备了较强的抗弱网能力。作为后来者的SIP要想完满的接入进来,则必然要求其不仅具备ARQ、FEC、FIR、PLI这些必备的抗弱网个性,还要具备较欠缺的码率、帧率动静自适应能力。

作为一款商用的实时通信软件,窃密无疑是其必备的属性,而ORTC基于wss+srtp的实现计划,给了用户全链路的信令及数据安全传输保障。而作为外来户的SIP服务,如果要完满的融入到ORTC上,则平安必定也是必要条件。因而在信令接入上sip协定须要承载在TLS上,媒体数据要采纳密级较高的SRTP传输,同时在服务部署上要做好相应的端口限度及防火墙防护。

7 ORTC-SIP 双流管制

对于视频会议、直播等场景,双流的出现已成为音视频通信的必备技能。如何更好、更灵便的进行双流的切换及管制,也成为一项输入能力的重要指标。在ORTC与SIP的整个架构中,咱们提供了基于BFCP的双流传输控制协议,很好的解决了多端双流之间的来回自在切换。


8 ORTC-SIP集群

随着业务的一直扩大与伸延,服务承载的并发也越来越大,而服务对象的特殊性,也要求零碎具备较牢靠的弹性扩缩容能力。服务高牢靠可伸缩,波及到的信令、sip、媒体、数据库服务均需反对集群及负载平衡。

ORTC外部借助与集群及智能路由曾经实现了集群负载及服务的主动伸缩。而sip作为一个有状态的协定,要实现牢靠的注册及呼叫上的负载平衡,则须要做不少工作。咱们目前采纳基于四层网络负载平衡外加外部服务桥接的计划,实现了端侧的平衡注册及业务散发,同时保障了在某台服务挂起时接入的sip终端主动切换至其余服务节点,不影响失常业务,提供了负载平衡能力的同时进步了软件的高可靠性。

9 瞻望

5G、AI技术的倒退进一步推动了音视频技术的演进,并对RTC提出了更高的要求,更低的延时、更高的码率、帧率,给大规模的云上剖析提供了可能,也反向拓宽了5G的利用场景,晋升了AI的准确率,促成了云端AI的利用。

上图是一种采纳视频流测量心率的办法,其原理是基于皮肤中血液的强劲变动从而引发其对可见光排汇强弱的变动,进而利用滤波及离散傅里叶变换计算出心率值。将其与ORTC联合,就能够实现近程会诊的实时心率检测。在工业及非凡行业畛域联合5G及AI的利用场景还很多,而ORTC无疑将表演越来越重要的根底通信角色,逐步成为缺它不可的根底必备设施。

在目前ORTC+SIP架构根底上,咱们能够进一步扩大造成ORTC+N的场景接入能力,交融更多的流媒体协定,聚合更多的媒体利用,使得咱们的ORTC真正做到ALL IN ONE的根底通信能力平台。

10 援用

[1] 网络负载平衡

http://cloud.oppoer.me/docsCe...

作者简介

Sunny OPPO高级后端工程师

领有10多年流媒体相干研发教训,先后参加并主导过IPTV、电视聊天软件、基于实时音视频监控的应急指挥调度平台、基于实时视频的多模态微表情研判零碎、RTC视频会议等我的项目的研发。

获取更多精彩内容,请扫码关注[OPPO数智技术]公众号