本文為您介紹如何通過超低延時直播RTS將直播延時降低至400ms以下,以便為使用者提供流暢且即時的觀看體驗。
方案簡介
即時直播方案依託阿里雲GRTN(全球即時傳輸網路),採用全鏈路WebRTC協議實現直播端到端200~400ms的延時,同時可以無縫擴充標準直播,實現業務的前向相容。
基於超低延時直播實現直播端到端200~400ms延時:
主播通過採集裝置採集直播內容後,通過推流SDK,將直播流通過RTS(WebRTC)協議推流至阿里雲邊緣節點;
直播流在GRTN全球3200+節點中通過智能選路、QoS技術即時傳輸;
觀眾側通過RTS(WebRTC)協議在最近的阿里雲邊緣節點進行拉流並在裝置上進行播放,端到端延時200~400ms。
(可選)開啟內部轉推,實現ApsaraVideo for Media Processing、超低延時直播和標準直播能力:
開啟旁路轉推後,主播推流後阿里雲ApsaraVideo for Live將自動轉封裝產生一路RTMP流;
您可以針對該流配置轉碼、錄製、截圖等媒體服務;
若您希望保持低延時拉流,可以使用低延時直播,在觀眾側仍可使用RTS(WebRTC)拉流,獲得端到端400~800ms的延時;
若您希望使用標準直播,則可以採用RTMP、FLV、HLS等協議進行拉流播放。
方案實施
前提條件
您已經開通ApsaraVideo for Live服務。開通方法,請參見開通服務。
您已經配置直播推流、播流的網域名稱,操作方法請參見快速開始ApsaraVideo for Live中添加推流網域名稱和播流網域名稱、配置CNAME和關聯推流網域名稱和播流網域名稱步驟。
推流、播流網域名稱配置HTTPS認證
本文將使用瀏覽器的推拉流Demo進行示範,為推流、播流網域名稱配置HTTPS認證是瀏覽器WebRTC的安全要求,配置HTTPS認證請參見配置HTTPS安全加速。
若您使用Native SDK進行推流和播放則無需配置HTTPS認證。
開通超低延時直播配置
在左側導覽列單擊選擇直播+> 超低延時直播。
選擇播放網域名稱。
開啟超低延時直播開關,選擇半秒延時(端到端延遲 200ms-400ms)。

產生直播推流和播放地址
方法一:控制台產生
開通超低延時直播後,可直接在推播流體驗器中點擊快速產生直播地址,輸入AppName和StreamName產生ARTC協議的超低延時直播推播放地址。

方法二:自訂拼接
自訂拼接推流地址和播流地址時,需判斷直播流是否經過轉碼,是否進行鑒權,並準備好相關推流網域名稱、播流網域名稱、AppName、StreamName、轉碼模板ID(如有)和鑒權串(如有)。拼接規則如下:
地址類 | 地址格式 | 拼接規則 |
推流地址 | 支援RTMP、RTS、SRT格式,推薦使用RTMP格式地址推流。樣本: RTMP: 說明 超低延時直播支援使用RTS格式地址拉流。 | 推流網域名稱+AppName(應用)+StreamName(直播流)+鑒權串 |
播流地址 | 支援RTMP、FLV、M3U8、RTS格式,推薦使用RTS格式地址播放。樣本: RTS: | 播流網域名稱+AppName(應用)+StreamName(直播流)+鑒權串 |
轉碼流地址 說明 若進行轉碼模板配置操作,才會產生轉碼流地址,且播流地址拼接規則需使用轉碼流地址。 | 支援RTMP、FLV、M3U8、RTS格式,推薦使用RTS格式地址播放。樣本: RTS: | 播流網域名稱+AppName(應用)+StreamName(直播流)_轉碼模板ID+鑒權串 |
主播側進行RTS推流
您可以選擇以下推流SDK其中之一進行整合:
RTS推流SDK | 相關文檔 |
iOS推流SDK | 說明 iOS推流SDK預設支援WebRTC推流。 |
Android推流SDK | 說明 Android推流SDK預設支援WebRTC推流。 |
使用OBS基於WHIP協議推流 |
本文中使用Web RTS推流Demo為您示範:
進入RTS推流網頁Demo。
在Demo中選擇推流模式。
展開none下拉框,根據您的實際需求,選擇camera(網路攝影機)或者screen(螢幕畫面分享)。
如果您選擇camera,需要分別單擊下方的麥克風和網路攝影機按鈕進行授權,授權成功後,再展開選擇麥克風和選擇網路攝影機下拉框,選擇對應的裝置。
輸入產生直播推流和播放地址中已產生的RTS格式推流地址,並單擊建立本地流。
單擊開始推流,即可完成推流。

觀眾側進行RTS播放
您可以選擇以下播放SDK其中之一進行整合:
RTS播放SDK | 相關文檔 |
Web播放SDK | |
iOS播放SDK | |
Android播放SDK | |
Flutter播放SDK | |
WIndows播放SDK | 說明 Windows播放器SDK的擷取,請聯絡阿里雲商務申請下載。 |
本文中使用Web RTS播放Demo為您示範:
進入RTS播放網頁Demo。
在Demo中選擇拉流模式。
輸入產生直播推流和播放地址中已產生的RTS格式播放地址。
單擊開始拉流。

(可選)配置內部轉推
在超低延時直播設定頁,選擇半秒延時(端到端延遲200ms-400ms)。
單擊轉推配置,開啟轉推開關,並選擇另一個推流網域名稱用於接收轉推後的RTMP流。
例如:轉推接收網域名稱為push.example.com,其關聯的播放網域名稱為pull.example.com。
轉推接收網域名稱和其關聯的播放網域名稱均不能開啟超低延時直播半秒延時模式。
內部轉推將不會收取轉推費用。

(可選)基於轉推後的流配置ApsaraVideo for Media Processing服務
完成轉推配置後,可基於轉推接收網域名稱關聯的播放網域名稱,即基於pull.example.com進行ApsaraVideo for Media Processing模板配置。
在ApsaraVideo for Live控制台左側導覽列的功能管理中,選擇您需要的能力進行配置。

(可選)基於轉推後的流進行標準直播播放
完成轉推後,可基於轉推接收網域名稱關聯的播放網域名稱,即基於pull.example.com可以進行標準直播(RTMP/FLV/HLS)播放原始流,或雲上轉碼後的流。 播放標準直播(RTMP/FLV/HLS),具體操作請參見播放標準直播。