实时直播:将延时降低至200~400ms

本文为您介绍如何通过超低延时直播RTS将直播延时降低至400ms以下,以便为用户提供流畅且实时的观看体验。

方案简介

实时直播方案依托阿里云GRTN(全球实时传输网络),采用全链路WebRTC协议实现直播端到端200~400ms的延时,同时可以无缝扩展标准直播,实现业务的前向兼容。

image

基于实时直播(RTS2.0)实现直播端到端200~400ms延时:

  1. 主播通过采集设备采集直播内容后,通过推流SDK,将直播流通过RTS(WebRTC)协议推流至阿里云边缘节点;

  2. 直播流在GRTN全球3200+节点中通过智能选路、QoS技术实时传输;

  3. 观众侧通过RTS(WebRTC)协议在最近的阿里云边缘节点进行拉流并在设备上进行播放,端到端延时200~400ms。

(可选)开启内部转推,实现媒体处理、低延时直播(RTS 1.0)和标准直播能力:

  1. 开启旁路转推后,主播推流后阿里云视频直播将自动转封装生成一路RTMP流;

  2. 您可以针对该流配置转码、录制、截图等媒体服务;

  3. 若您希望保持低延时拉流,可以使用低延时直播(RTS 1.0方案),在观众侧仍可使用RTS(WebRTC)拉流,获得端到端500~1000ms的延时;

  4. 若您希望使用标准直播,则可以采用RTMP、fFLV、HLS等协议进行拉流播放。

方案实施

前提条件

  • 您已经开通视频直播服务。开通方法,请参见开通服务

  • 您已经配置直播推流、播流的域名,操作方法请参见快速开始视频直播添加推流域名和播流域名配置CNAME关联推流域名和播流域名步骤。

推流、播流域名配置HTTPS证书

本文将使用浏览器的推拉流Demo进行演示,为推流、播流域名配置HTTPS证书是浏览器WebRTC的安全要求,配置HTTPS证书请参见配置HTTPS安全加速

若您使用Native SDK进行推流和播放则无需配置HTTPS证书。

播流域名配置实时直播(RTS 2.0)

  1. 登录视频直播控制台

  2. 在视频直播控制台左侧导航栏,单击推/播流域名管理,进入域名管理页面。

  3. 选择您要配置的播流域名,单击域名配置002

  4. 选择直播管理 > 超低延时播放RTS

  5. 单击修改配置,版本选择实时直播(RTS 2.0),应用场景选择直播观看RTS2.0

  6. 单击确定

推流域名配置实时直播(RTS 2.0)

  1. 登录视频直播控制台

  2. 在视频直播控制台左侧导航栏,单击推/播流域名管理,进入域名管理页面。

  3. 选择您要配置的推流域名,单击域名配置域名配置

  4. 选择直播管理 > 超低延时推流RTS

  5. 单击修改配置,版本选择实时直播推流(RTS 2.0)推流rts 2.0

  6. 单击确定

生成直播推流和播放地址

在功能验证阶段您可以采用地址生成器快速生成推流、拉流地址,具体操作请参见直播地址生成器

您也可以根据规则自定义直播推、拉流地址,具体操作请参见生成推流地址和播放地址

地址生成器

主播侧进行RTS推流

您可以选择以下推流SDK其中之一进行集成:

RTS推流SDK

相关文档

Web推流SDK

Web RTS推流SDK简介

iOS推流SDK

iOS推流SDK

说明

iOS推流SDK默认支持WebRTC推流。

Android推流SDK

Android推流SDK

说明

Android推流SDK默认支持WebRTC推流。

Linux推流SDK

Linux RTS SDK简介

OBS推流插件

OBS插件SDK简介

对接标准WebRTC协议自研接入

WebRTC标准接入GRTN信令协议规范

本文中使用Web RTS推流Demo为您演示:

  1. 进入RTS推流网页Demo

  2. 在Demo中选择推流模式。

  3. 展开none下拉框,根据您的实际需求,选择camera(摄像头)或者screen(屏幕共享)。

    如果您选择camera,需要分别单击下方的麦克风摄像头按钮进行授权,授权成功后,再展开选择麦克风和选择摄像头下拉框,选择对应的设备。

  4. 输入生成直播推流和播放地址中已生成的RTS格式推流地址,并单击创建本地流

  5. 单击开始推流,即可完成推流。RTS推流

观众侧进行RTS播放

您可以选择以下播放SDK其中之一进行集成:

RTS播放SDK

相关文档

Web播放SDK

Web RTS播放SDK简介

iOS播放SDK

iOS Native RTS SDK简介

Android播放SDK

Android Native RTS SDK简介

Mac播放SDK

Mac RTS SDK简介

WIndows播放SDK

Windows RTS SDK简介

对接标准WebRTC协议自研接入

WebRTC标准接入GRTN信令协议规范

本文中使用Web RTS播放Demo为您演示:

  1. 进入RTS播放网页Demo

  2. 在Demo中选择拉流模式。

  3. 输入生成直播推流和播放地址中已生成的RTS格式播放地址。

  4. 单击开始拉流rts 播放

(可选)配置内部转推

  1. 登录视频直播控制台

  2. 在视频直播控制台左侧导航栏,单击推/播流域名管理,进入域名管理页面。

  3. 选择您要配置的推流域名,单击域名配置域名配置

  4. 选择直播管理 > 超低延时推流RTS

  5. 单击修改配置,版本选择实时直播推流(RTS 2.0),同时开启转推开关,并选择另一个推流域名用于接收转推后的RTMP流。

    例如:转推接收域名为push.example.com,其关联的播放域名为pull.example.com,需注意:

    • 转推接收域名和其关联的播放域名均不能开启实时直播(RTS 2.0)。

    • 内部转推将不会收取转推费用。

    转推

(可选)基于转推后的流配置媒体处理服务

完成转推配置后,可基于转推接收域名关联的播放域名,即基于pull.example.com进行媒体处理模板配置。

域名管理页面,单击模板配置,选择您需要的能力进行配置。模板配置

(可选)基于转推后的流进行低延时直播(RTS 1.0) 和标准直播播放

完成转推后,可基于转推接收域名关联的播放域名,即基于pull.example.com可以同时进行低延时直播(RTS 1.0)和标准直播(RTMP/FLV/HLS)播放原始流,或云上转码后的流。

  • 播放标准直播(RTMP/FLV/HLS),具体操作请参见播放标准直播

  • 播放低延时直播(RTS 1.0):自2022年9月1日起,播放域名默认均支持RTS 1.0的播放,仅需在播放侧集成RTS SDK即可播放,具体操作请参见播放低延时直播(RTS 1.0)