RTS 在阿里云视频直播的基础上进行底层技术优化,通过集成阿里云播放器 SDK,支持在千万级并发场景下节点间毫秒级延时直播的能力,弥补了传统直播存在 3~6 秒延时的问题,确保了超低延时、低卡顿、秒开流畅的直播观看体验。本文介绍了基于 RTS 超低延迟直播优化强互动场景体验的最佳实践方案,并以阿里云播放器 Aliplayer 为例,详细介绍 RTS 超低延迟拉流接入、自动降级、排障信息获取等逻辑的实现,助力企业打造互动直播行业的产品竞争力。
适用场景
该方案适用于对超低延迟直播有诉求的客户,尤其是业务中存在强互动场景直播的场景。强互动场景直播主要是指对主播和观众存在互动,或观众存在更高实时性观看、画面互动需求的情况,常见场景例如:
- 教育直播:应用于大班课,可以支持超大数量规模的同学同时在线超低延时与老师互动教学。
- 电商直播:卖家与买家实时互动答疑,交流商品信息,互动效率提升转化促进交易成单。
- 体育直播:直播精彩体育、电竞等赛事,让观众实时了解现场情况,积极参与平台弹幕、评论等互动。
- 互动娱乐:主播可以在观众送礼物时及时反馈,增强与观众之间的互动体验。
- 会议直播:大型会议内容实时分享,让分布各地参会者保持同步的会议体验,会上沟通更敏捷。
业务介绍
背景
某在线知识分享产品为核心的技术服务商,客户期望能基于产品的原有普通直播 Paas 能力进行升级,降低终端用户的直播延迟,提供更优质的用户观看体验。推荐客户底层接入 RTS 服务实现超低延迟的平台直播解决方案,最终封装后作为 Saas 产品能力提供给外部用户付费接入使用,通过超低延迟的直播体验打造其 SAAS 产品在市场上的核心竞争力。
本文围绕着升级过程中客户核心诉求进行展开。特别地,会对如何使用 RTS 解决传统 Web 端使用 HLS 播放存在高延迟的场景进行重点介绍。
业务场景
传统直播升级 RTS 超低延迟直播过程中,仅涉及底层对接变更,无需改造终端用户的功能使用习惯,直播核心功能诉求主要考虑推拉流侧用户场景:
- 主播推流:无连麦场景下直接推流 / 连麦场景平台合流后转推流。
- 观众拉流:在 HTML5 页面中直接播放内容 / 在 HTML5 页面中参与连麦并播放内容。
当前解决方案及痛点
主要场景
推流部分通过 rtmp 直推标准直播或者 webrtc 采集后合流转推标准直播实现;而拉流时,为了满足用户无需安装app即可便捷观看的需求,需要重点考虑移动端的浏览器页面对媒体流的兼容性问题,相较 FLV 和 RTMP 协议在 HTML 5 页面中不甚理想的表现,客户优先考虑使用 HLS 格式进行拉流。
未接入 RTS 时的核心痛点
由于 HLS 协议特性,默认 Web 端观看直播画面延迟在 10s 以上,尽管传统直播中,客户可以在直播延迟中配置 HLS 为低延迟,但此时拉流端的延迟也仍在 3-6s 左右,对存在强互动需求场景的体验并不友好。
除 HLS 协议自身导致的高延迟痛点外,Saas 直播厂商在未接入阿里云标准直播前,还会额外面临以下几个痛点:
- 自建媒体流处理服务需要研发和维护成本,需要丰富的云上媒体处理能力,满足在音视频处理上的需求。
- 直播观众分散,用户观看体验受到网络最后一公里链路的质量影响较大,需要海量节点满足分发需求。
- 选择 Paas 服务时,需要其具备强大的产品 API 管理能力,以便其产品能定制业务逻辑,完成快速迭代。
当前标准直播方案架构图
当前业务整体架构图
RTS 接入流程详解
标准直播升级到 RTS 过程中,主要需要改造的部分为
- 播放器:客户在网页端播放时,需要使用阿里云播放器,或者通过客户自有播放器对接 Web RTS SDK。
- 直播服务端转码:原始推流内容进行 RTS 转码模板处理,满足播放端兼容性需求。
- 播放地址生成:在业务服务器接口生成地址时,需要构造 RTS 地址格式、推荐一并返回播放器降级地址。
接入RTS后直播方案架构图