超低延时直播快速入门

阿里云视频直播服务提供超低延时直播,将延时从标准视频直播的3秒~6秒降低至毫秒级别,且提供更强的抗丢包能力,适用于对网络延时要求高、互动性强的电商直播、在线教育、赛事直播、秀场直播等场景。本文介绍快速实现超低延时直播的完整操作流程。

前提条件

  • 您已经注册了阿里云账号并完成账号实名认证。注册地址请参见阿里云官网。注册指引请参见注册阿里云账号。实名认证指引请参见个人实名认证企业实名认证

  • 您已经准备好推流域名和播流域名,并完成备案。具体操作,请参见备案

    说明
    • 如果您的直播中心在海外且加速区域采用海外及港澳台加速,则域名无需经过备案。

    • 如果推流域名和播流域名是同一个一级域名下的两个二级域名,则只需要将一级域名进行备案。

免费试用

我们为您提供了一个为期一个月的免费试用计划,在试用期内您可享受100GB超低延时直播流量与50小时窄带高清转码时长的免费额度,点击此处开始您的免费试用。

超低延时直播基本流程

  1. 步骤一:开通直播服务

  2. 步骤二:添加推流域名和播流域名

  3. 步骤三:配置CNAME

  4. 步骤四:关联推流域名和播流域名

  5. 步骤五:开通超低延时直播功能

  6. 步骤六:生成推流地址和播放地址

  7. 步骤七:超低延时直播推流与播放

  8. 配置SSL证书(可选)

  9. 配置自定义鉴权(可选)

步骤一:开通直播服务

说明

您可以观看视频讲解学习如何开通直播服务,详情请参见开通直播服务

  1. 登录阿里云官网,在顶部菜单栏选择产品 > 视频服务 > 视频直播,进入视频直播产品首页。

  2. 单击立即开通,进入开通页面。

  3. 视频直播开通页,选择计费方式为按使用流量计费按带宽峰值计费,并选中视频直播服务协议

  4. 单击立即开通

步骤二:添加推流域名和播流域名

使用超低延时直播服务前,您需要分别添加推流域名和播流域名。

说明

您可以观看视频讲解学习如何添加域名,详情请参见添加域名

  1. 准备相应域名。

    • 若您没有可用域名,可参考如何注册阿里云域名在阿里云域名服务平台上注册您中意的域名。

    • 域名注册完成后,可根据实际使用情况进行ICP备案,具体备案操作可参考ICP备案流程

      说明
      • 若需快速体验视频直播基本功能,直播中心可选择海外加速区域采用海外及港澳台加速,此时域名无需备案。

      • 若推流域名和播流域名是同一个一级域名下的两个二级域名,则只需要将一级域名进行备案。

  2. 登录视频直播控制台

  3. 在左侧导航栏单击推/播流域名管理,进入域名管理页面。

  4. 单击添加域名

    说明

    若您要添加子域名,只需在您申请的域名前加上前缀,作为添加的子域名即可,子域名无需重新注册,注意区分推流域名与播流域名。

  5. 根据实际需求配置域名详情。

    重要

    当您首次将一个新域名添加至阿里云视频直播时,需要您完成验证域名的归属权,请参见验证域名归属权

    配置域名

    展开查看参数

    参数

    参数分类

    说明

    业务类型

    • 播流域名

    • 推流域名

    指域名的加速类型,推流域名与播流域名分别对应推流加速与播流加速。初次配置后不可更改。

    说明
    • 添加推流域名时,业务类型请选择推流域名;添加播流域名时请选择播流域名

    • 您无法将同一域名既添加为推流域名,又添加为播流域名。

    加速域名

    输入您需要加速的域名。注意事项如下:

    • 加速域名一般使用子域名,例如: demo.aliyundoc.com

    • 直播服务暂不支持添加泛域名,例如: *.aliyundoc.com

    • 加速域名不允许重复添加,如果出现域名已添加的提示,请检查您的域名是否已经添加到其他云产品中,例如视频点播等。

    • 开通视频直播服务后,每个账户最多可添加20个域名,如果您域名的总带宽日均峰值大于50 Mbps,且业务无风险,可以提交工单申请增加域名个数。关于如何提交工单,请参见联系我们

    • 加速内容必须合法且符合业务规范,详情请参见域名准入标准

    说明

    子域名必须在同一个账号下。您在添加域名时,直播服务会进行检查,如果子域名被添加到不同账号,系统会报错。

    加速区域

    中国内地

    • 当主播在中国内地时,推流域名应选择中国内地

    • 当观众在中国内地时,播流域名应选择中国内地

    域名需要在工信部备案,推荐您进入阿里云ICP代备案管理系统进行备案。

    全球加速

    • 当主播在中国内地、中国香港、中国澳门、中国台湾以及其他国家和地区时,推流域名应选择全球加速

    • 当观众在中国内地、中国香港、中国澳门、中国台湾以及其他国家和地区时,播流域名应选择全球加速

    域名需要在工信部备案,推荐您进入阿里云ICP代备案管理系统进行备案。

    海外及港澳台加速

    • 当主播在海外及中国香港、中国澳门、中国台湾时,推流域名应选择海外及港澳台加速

    • 当观众在海外及中国香港、中国澳门、中国台湾时,播流域名应选择海外及港澳台加速

    • 如果选择海外及港澳台加速且直播中心在海外,则域名无需在工信部备案。

    • 如果选择海外及港澳台加速且直播中心在中国境内,则域名需要在工信部备案。推荐您进入阿里云ICP代备案管理系统进行备案。

    说明

    关于如何选择CDN加速区域,请参见如何选择域名的CDN加速区域?

    直播中心

    直播中心用来提供云上直播流的媒体处理服务,如截图、录制、转码、云导播等。

    需要关联的直播推流域名与播流域名的直播中心所在地域要保持一致,初次配置后不可更改。

    关于如何选择直播中心,请参见如何选择直播中心?

  6. 记录生成的CNAME记录值,供下一步使用。

    image

步骤三:配置CNAME

使用超低延时直播服务前,需要将您的域名(推流域名和播流域名)指向阿里云视频直播分配的CNAME地址。此处以DNS服务商为阿里云(原万网)为例介绍配置CNAME的方法。更多DNS服务商及操作详情,请参见配置域名的CNAME解析

说明
  • 由于阿里云CDN校验域名的DNS解析记录的服务器部署在中国内地。如果您对域名做了分区域DNS解析配置,例如仅对域名的中国内地以外区域(中国香港、中国澳门、中国台湾、其他国家和地区)配置了阿里云CDNCNAME地址,校验服务器将无法解析到该CNAME地址,且在CDN控制台该域名的CNAME状态会显示为待配置,这种情况不影响CDN的加速服务。

  • 阿里云CDN、全站加速DCDN、直播以及点播产品的CNAME域名仅可以作为阿里云CDN的调度解析使用,对于恶意使用CNAME域名的行为,阿里云有权清退对应的域名和账号。

  1. 登录云解析DNS控制台

  2. 在左侧导航栏选择域名解析,进入域名解析页面。

  3. 单击待设置的域名操作列的解析设置

  4. 单击添加记录,配置信息如下所示:001

    参数

    描述

    记录类型

    选择CNAME,将域名指向另外一个域名。

    主机记录

    输入域名的前缀,常见前缀和对应的示例域名如下表所示。

    解析请求来源

    选择默认值。

    记录值

    输入记录的CNAME值。

    TTL

    选择默认值。

    前缀

    示例域名

    说明

    demo

    demo.aliyundoc.com

    解析子域名。

    @

    aliyundoc.com

    解析主域名。

    *

    *.aliyundoc.com

    泛解析。

  5. 单击确认,完成CNAME配置。

CNAME验证生效

  • 方式一:在CNAME配置页面,单击打开CNAME配置向导,在CNAME生效验证处,单击验证CNAME状态。查看CNAME配置是否已生效。

    image

  • 方式二:执行nslookup -type=cname yourdomain.com命令,如果返回的解析结果和视频直播控制台上该域名的CNAME值一致,表示CNAME配置已生效。image

步骤四:关联推流域名和播流域名

要进行超低延时直播您需要关联推流域名和播流域名。

说明

您可以观看视频讲解学习如何关联推流域名与播流域名,详情请参见关联推流域名与播流域名

  1. 在左侧导航栏单击推/播流域名管理,选择您添加的播流域名,单击操作列的域名配置,进入直播管理 > 基本配置页面。

  2. 单击推流信息页签。

  3. 单击添加推流信息推流域名后的编辑图标,选择需要关联的推流域名。image

步骤五:开通超低延时直播功能

  1. 登录视频直播控制台

  2. 在左侧导航栏选择直播+>超低延时直播

  3. 选择需要开启超低延时直播的播流域名。

  4. 打开超低延时直播开关,根据业务需求选择亚秒延时(端到端延迟700ms-900ms)半秒延时(端到端延迟400ms-600ms)

    image

亚秒延时

  1. 特性:端到端延迟700ms-900ms,兼容性强。适用于需要兼容标准直播和其他推流/播放协议、低延时的直播场景。

  2. 支持协议:支持 ARTC(基于WebRTC)协议推流和播放。前向兼容标准直播,保留RTMP推流协议、回源拉流和通用播放协议(如RTMP/FLV/HLS)。

  3. 推/播流工具:支持市面常用推播流工具,推荐使用阿里云直播推流SDK阿里云直播推流SDK

  4. 其他说明:如果推流带B帧或音频编码非Opus,则H5播放时后台会自动去B帧和转码为Opus,同时会产生直播转码费用

    使用阿里云 Web SDK 播放时,由于底层原生WebRTC不支持B帧且音频编解码为Opus,为了保证播放体验,系统会根据推流内容自动触发转码:

    • 如果推流中包含 B 和 AAC编码,系统将自动触发视频转码去B帧和音频转码AACOpus,按源分辨率对应档位收取标准视频转码费

    • 如果推流中 不含 B 但包含 AAC,系统将自动触发音频转码AACOpus,按纯音频转码收费

    • 如果您额外配置了直播转码模板,系统会在该模板基础上同时进行去B帧和转Opus处理,最终按叠加后的结果收取转码费用。

    使用阿里云 Native SDK 播放时,由于该 SDK 已原生支持 B帧 和 AAC,因此不会触发自动转码,也不会产生额外费用。

半秒延时

  1. 特性:端到端延迟400ms-600ms。适用于追求极致低延时的直播场景。

  2. 支持协议:支持 ARTC(基于WebRTC)协议推流和播放。无法兼容标准直播,不支持RTMP推流协议、回源拉流和通用协议播放(如RTMP/FLV/HLS)。

  3. 推/播流工具:推流可以基于WHIP协议使用OBS推流或者阿里云直播推流SDK,播放必须使用阿里云播放器SDK

  4. 其他说明:当前播放域名无法使用转码、录制等云端功能,但可以通过转推配置将直播流转推在另一个播放域名下使用。

    • 点击转推配置,选择另一个未配置超低延时半秒模式的推流域名用于接收转推后的RTMP流。例如:转推接收域名为push.example.com,其关联的播放域名为pull.example.com。转推配置成功后,可基于pull.example.com进行标准直播协议拉流,使用转码和录制等功能。

说明
  • 超低延时直播配置全网下发需要数分钟时间,请等待后测试。

  • 如果您需要一个推流域名对应多个播流域名,请参见关联主、子播流域名

  • 超低延时直播支持和标准直播共用一个播流域名。但是鉴于超低延时直播使用UDP协议,标准直播使用TCP协议,两者技术有所区别,建议您为超低延时直播单独开通一个播流域名。

步骤六:生成推流地址和播放地址

方法一:控制台生成

开通超低延时直播后,可直接在推播流体验器中点击快速生成推/播流地址输入AppNameStreamName生成ARTC协议的超低延时直播推播放地址。

image

方法二:自定义拼接

自定义拼接推流地址和播放地址时,需判断直播流是否经过转码,是否进行鉴权,并准备好相关推流域名、播流域名、AppName、StreamName、转码模板ID(如有)和鉴权串(如有)。拼接规则如下:

地址类

地址格式

拼接规则

推流地址

支持RTMP、RTS、SRT格式,推荐使用RTMP格式地址推流。示例:

RTMP:rtmp://demo.aliyundoc.com/app/stream?auth_key={鉴权串}

说明

超低延时直播支持使用RTS格式地址拉流。

推流域名+AppName(应用)+StreamName(直播流)+鉴权串

播放地址

支持RTMP、FLV、M3U8、RTS格式,推荐使用RTS格式地址播放。示例:

RTS:artc://example.aliyundoc.com/app/stream?auth_key={鉴权串}

播流域名+AppName(应用)+StreamName(直播流)+鉴权串

转码流地址

说明

若进行转码模板配置操作,才会生成转码流地址,且播放地址拼接规则需使用转码流地址。

支持RTMP、FLV、M3U8、RTS格式,推荐使用RTS格式地址播放。示例:

RTS:artc://example.aliyundoc.com/app/stream_{转码模板ID}?auth_key={鉴权串}

播流域名+AppName(应用)+StreamName(直播流)_转码模板ID+鉴权串

说明
  • 已经关联的推拉流域名,只要推流和拉流的AppName(应用)和StreamName(直播流)相同即可进行推拉流。

  • 转码流地址需设置转码模板才可以生成。您可在控制台查看转码模板的ID,请参见直播转码

  • 鉴权串(auth_key)是根据鉴权算法得出的一个加密字符串,需开启鉴权功能。您可以通过md5算法计算获取鉴权串,请参见鉴权URL组成

  • 自定义拼接地址时,直接用实际数据替换{转码模板ID}{鉴权串},实际数据外层不需要加{}符号。

步骤七:超低延时直播推流与播放

开通超低延时直播,并生成推播放地址后,可通过超低延时直播推播流体验器快速体验推流与播放,支持选择摄像头推流或屏幕共享推流。

说明

控制台上的推播放体验器为了快速体验推拉流使用了代理信令域名,如果自行集成Web端推播放 SDK ,还需要为推播流域名配置SSL证书和正确的Access-Control-Allow-Origin响应头

image

除以上快速体验方式外,阿里云超低延时直播提供移动端和WebDemo体验供您体验。

以及提供了以下SDK供您集成:

SDK 类型

相关文档

移动端

Native RTS 推流和播放

Web

Web RTS SDK

说明

如果在播放过程中出现播放异常等问题,可优先使用自助问题排查工具进行自助检测。本工具可快速诊断常见直播播放问题,并根据具体异常提供解决建议。具体操作,请参见自助问题排查

配置SSL证书(可选)

为了满足原生浏览器的安全要求,实现超低延时直播播放,您需要为推流和播放域名配置SSL证书。具体请参见配置HTTPS安全加速

说明

如果您使用RTS的推流和播放SDKDemo , 则可以选择不配置SSL证书。

配置自定义鉴权(可选)

URL鉴权功能旨在保护站点内容资源不被非法下载,域名初次添加时默认开启。

鉴权功能开启后,您可按需选择默认鉴权或自定义鉴权。采用默认鉴权无需设置。如不采用默认配置,您也可以对鉴权KEYKEY有效时长进行自定义,并输入原始URL。

说明

您可以观看视频讲解学习如何配置URL鉴权,详情请参见配置URL鉴权

  1. 在左侧导航栏选择推/播流域名管理,选择已开通超低延时直播功能的播流域名,单击操作列的域名配置

  2. 选择直播管理 > 访问控制,进入访问控制页面。

  3. 单击URL鉴权页签,单击修改配置

    说明

    URL鉴权已开启的情况下,单击修改配置即可配置URL鉴权信息。若您之前已关闭URL鉴权,开启URL鉴权开关即可配置URL鉴权信息。

  4. 配置URL鉴权信息。配置项和说明如下表所示。

    配置项

    说明

    鉴权类型

    视频直播播流域名仅支持使用鉴权A,来实现对源站资源的有效保护。

    说明

    URL鉴权错误,都会返回403报错,请重新计算。

    • MD5计算类错误

      例如:X-Tengine-Error:denied by req auth: invalid md5hash=de7bfdc915ced05e17380a149bd760be

    • 时间类报错

      例如:X-Tengine-Error:denied by req auth: expired timestamp=1439469547

    KEY

    当您添加域名时,控制台会随机生成一个主用密码。您可以通过在直播控制台左侧的导航栏选择域名管理,选择您需要配置的域名,单击域名配置 > 访问控制 > URL鉴权,在URL鉴权页面查看主用密码。您还可以重新输入自定义的鉴权方式对应的主用密码。

    KEY

    输入自定义的鉴权方式对应的备用密码。

    有效时长

    有效时长是指该URL鉴权仅在有效期内可用来发起推流或者播放。直播推流和播放都是长链接行为,在有效期内已经发起的直播推流或者播放行为,不会因为有效期过期而中止,但新发起的推流和播放请求会因为有效时长过期而失败。

    第一次添加新域名默认有效时长为1天(即1440分钟)。你可以自定义输入鉴权方式的默认有效时长,最小设置为1分钟,无上限限制。单位:分钟。

其他操作:如何验证超低延时直播延迟时间

您可以在推流中加入时间校准器URL,通过和标准时间进行对比,验证超低延时直播延迟时间。此处以使用OBS推流工具推流为例进行介绍。

OBS主界面来源区域浏览器中添加时间校准器URL后,单击开始推流