查看原文
其他

好未来直播中台荣获「亚太内容分发大会」RTC技术创新奖

好未来直播中台 好未来技术 2023-03-15

概要

2021年6月9日,「亚太内容分发大会暨CDN峰会」在北京举行,直播中台受邀出席大会,冯权成老师代表直播中台出席大会的论坛「互动直播论坛」,并发表题为「实时音视频在教育场景下的成熟应用」的主题演讲,向业界介绍了好未来在RTC(Real Time Communication,实时通信)领域所取得的的技术成果和在教育场景下的成熟应用。

此次分享的主要内容包含四个部分:

  • 直播中台产品全景介绍

  • TalRTC整体架构

  • 高可用及弱网对抗策略

  • 针对教育场景的特殊优化

全场围绕如何使用技术手段最大限度保障老师和学生上课的音视频质量,可谓干货满满。
此次分享的目的主要在于用实际行动践行好未来“爱和科技让教育更美好”的使命,同时也为吸引行业人才制造一些技术影响力。

01

直播中台产品全景介绍

直播中台音视频全场景产品矩阵以TalRTC流媒体服务端为中心,建立起涵盖:基于UDP私有协议的Native RTC SDK、基于标准WebRTC协议的WebSDK,与IM/信令配合使用,实现直播课堂实时音视频通话的需求。

此外,TalRTC流媒体服务端支持将RTC流转码为RTMP流,转推到直播CDN,从而与标准直播协议RTMP/FLV/HLS打通,实现千万级并发观看。
有直播,必然会有录制回放需求,因此除了直播能力外,直播中台还建立起了点播云,RTC和RTMP直播流录制产生的音视频文件会在点播云中进行处理,实现录制/存储/剪辑/拼接/转码等二次处理,满足前台业务的全场景音视频需求。

直播中台产品全景图大概分为四大块:

RTC官网及开发者中心
为了提高客户对接效率,降低对接成本,目前我们正在规划设计RTC官网及开发者中心,同时也满足客户自助服务需求。

InnerAPI及后台管理
调度系统、全局负载均衡系统、房间管理、后台管理、云控、引擎切换等模块这些属于RTC服务端的一部分,提供InnerAPI给「服务质量保障系统」调用,实现页面可视化管理动作。

RTC服务端及RTC SDK
服务端支持混流、录制、截图、转发、转推、弹性伸缩、灾备容错等能力;
客户端支持全端,满足不同业务差异化诉求。

服务质量保障系统

  • 驾驶舱管理系统:实现可视化操作服务器部署及升级,提升运维效率。弹性伸缩,分钟级扩容上百台服务器,应对突发量级。

  • 告警系统:线上音视频质量告警、服务器资源水位告警,及时干预,避免事态扩大。

  • 日志埋点及大数据分析:RTC SDK埋点、RTC服务端埋点,给全链路质量监控系统、告警等系统提供数据支撑。

02

TalRTC整体架构

TalRTC整体架构大致分为三层:

1)终端SDK接入:

客户端通过DNS解析到SLB负载均衡集群,由SLB根据负载情况给客户端分配业务服务器IPLocation,IPLocation主要负责调度,将客户端调度到最优媒体服务节点。

2)业务服务器:

  • IPLocation:调度服务,负责将客户端调度到最优媒体服务节点。

  • RoomManage:房间管理服务,负责房间状态管理,流信息管理。

  • RECMGR:录制管理服务,负责录制服务器的资源管理、录制任务状态管理等。

  • HeartServer:负责上报服务器能力信息、维护心跳保活,本地Redis写入Audio&Video上报的资源可用情况。

3)媒体服务器:

  • SignalGW:信令网关,负责入会/退会状态信息管理,mute/unmute信令管理;

  • Audio:音频转发

  • AudioMix:音频混流,Audio与Audio拉流中转

  • Video:视频转发;

  • Record:录制服务器;

  • LocalLog:日志落盘。

03

高可用及弱网对抗策略

RTN调度高可用策略

RTN调度服务器在给客户端分配媒体服务器节点时,先根据客户端的地域、运营商、大数据分析(实时统计客户端到不同区域服务器的丢包、延时、连通性、健康度等)得到可用服务器,通过SLB服务分配最优节点及备用节点,当主节点异常时,客户端自动切换到备用节点,达到高可用的目的。

SDK弱网对抗策略

SVC Controller:负责分层编码,目前有两种逻辑:

  • 第一种是大小流分层:小流在最底层,大流在最上层;

  • 第二种是时域分级(Temporal scalability):目前策略分为两层,编码时基础层为低帧率的码流,上层为高帧率的码流。

服务端SVC Filter根据接收端网络情况进行过滤转发,从而保证接收端收到的是与其网络情况匹配的码流。

Sender Side BWE(Bandwidth Estimation):发送端带宽评估模块,负责评估发送端能够承载的最大码率。

REMB(Receiver Estimated Maximum Bitrate):接收端带宽评估模块,负责评估接收端能够承载的最大码率。

NACK/FEC:负责丢包重传及前向纠错,弱网抗丢包的重要手段。

Pacer:平滑发包策略,保证发送的平滑性,该模块会根据网络的拥塞状况动态调整发包间隔。

04

针对教育场景的特殊优化

秉持“爱和科技让教育更美好”的使命,为了让老师和学生拥有更好的线上音视频互动质量,好未来从2018年开始自研RTC,结合我们在教育场景的天然优势,自研RTC针对线上教育场景做了很多技术优化及场景适配,使得老师和学生线上音视频体验明显提升,卡顿率和延时显著下降。主要列举以下优化:

弱网对抗技术

针对在线教育场景定制化开发的NACK/FEC算法和Pacer策略。显著降低弱网环境下的卡顿率,提升弱网环境下的上课体验。

基于教学场景的音频3A技术

目前我们直播中台正在跟集团AI研究院合作,整合直播+AI的技术能力,创新性的将AI算法用到音频3A优化中,例如AI ANS,弥补了传统降噪算法对非平稳突发噪声抑制能力差的痛点,AI AEC弥补了传统回声消除算法对非线性回声消除不干净的痛点。

流媒体转发策略(老师流优先、回退降级策略等)

老师流优先:

针对在线教育场景定制化研发的流媒体转发策略,配合客户端智能网络探测,当学生端网络不足以流畅播放老师流+学生流时,客户端可以触发老师流优先策略,从而保障学生的有限带宽资源优先用于拉老师的直播流,最大限度保障学生的上课效果。

回退降级策略:

REMB模块负责评估接收端能够承载的最大码率,当学生端网络不足以流畅播放视频+音频时,客户端FallBackController可以触发回退降级策略,通知流媒体服务器SendController转发适合客户端的码流,回退顺序为:「视频大流+音频」→「视频小流+音频」→「纯音频」,直到与接收端的网络情况匹配为止。

在极端网络情况下,如果学生端网络质量不能满足同时拉视频和音频,至少能保证学生能听到老师的音频,不错过重要知识点,最大限度保障学生端的上课质量。

RTC技术创新奖

本次分享备受主办方及业界嘉宾好评,经过评委及主办方评选,TalRTC荣获「RTC技术创新奖」,这充分肯定了好未来在RTC领域所取得的技术成果,以及业界对RTC在教育场景下得到成熟应用的认可。
凡是过往,皆为序章,希望大家以此奖杯作为激励,争取在RTC、CDN点直播等全场景音视频产品及解决方案上持续优化,努力为前台业务提供高质量、高可用、低成本的音视频产品和服务。



扫描下方二维码添加「好未来技术」微信官方账号
进入好未来技术官方交流群与作者实时互动~
(若扫码无效,可通过微信号TAL-111111直接添加)
- 也许你还想看 -
服务网格在网校平台研发部的实践和思考
深入容器之构建大型容器网络
网校学研web直播课堂架构升级之路

我知道你“在看”哟~


您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存