隨著直播行業的迅速發展,阿里雲ApsaraVideo for Live服務提供超低延時直播,以提升使用者體驗。它將延時從標準ApsaraVideo for Live的3秒~6秒降低至毫秒層級,且提供更強的抗丟包能力,適用於對網路延時要求高、互動性強的電商直播、線上教育、賽事直播、秀場直播等情境。本文介紹快速實現超低延時直播的完整操作流程。
前提條件
您已經準備好推流網域名稱和播流網域名稱,並完成備案。具體操作,請參見。
說明如果您的直播中心在海外且加速地區採用海外及港澳台加速,則網域名稱無需經過備案。
如果推流網域名稱和播流網域名稱是同一個頂層網域下的兩個次層網域,則只需要將頂層網域進行備案。
超低延時直播基本流程
開通直播服務
您可以觀看視頻講解學習如何開通直播服務,詳情請參見開通直播服務。
登入,在頂部功能表列選擇 ,進入ApsaraVideo for Live產品首頁。
單擊立即開通,進入開通頁面。
在ApsaraVideo for Live開通頁,選擇計費方式為按使用流量計費,並選中ApsaraVideo for Live服務合約。
單擊立即開通。
添加推流網域名稱和播流網域名稱
使用超低延時直播服務前,您需要分別添加推流網域名稱和播流網域名稱。
您可以觀看視頻講解學習如何添加網域名稱,詳情請參見添加網域名稱。
準備相應網域名稱。
若您沒有可用網域名稱,可參考如何註冊阿里雲網域名稱在阿里雲網域名稱服務 (DNS)平台上註冊您中意的網域名稱。
網域名稱註冊完成後,可根據實際使用方式進行ICP備案,具體備案操作可參考ICP備案流程。
說明若需快速體驗ApsaraVideo for Live準系統,直播中心可選擇海外且加速地區採用海外及港澳台加速,此時網域名稱無需備案。
若推流網域名稱和播流網域名稱是同一個頂層網域下的兩個次層網域,則只需要將頂層網域進行備案。
在左側導覽列單擊推/播流網域名稱管理,進入網域名稱管理頁面。
單擊添加網域名稱。
根據實際需求佈建網域名詳情。
重要當您首次將一個新網域名稱添加至阿里雲ApsaraVideo for Live時,需要您完成驗證網域名稱的歸屬權,請參見驗證網域名稱歸屬權。
記錄產生的CNAME記錄值,供下一步使用。
配置CNAME
使用超低延時直播服務前,需要將您的網域名稱(推流網域名稱和播流網域名稱)指向阿里雲ApsaraVideo for Live分配的CNAME地址。此處以DNS服務商為阿里雲(原萬網)為例介紹配置CNAME的方法。更多DNS服務商及操作詳情,請參見佈建網域名的CNAME解析。
由於阿里雲CDN校正網域名稱的DNS解析記錄的伺服器部署在中國內地。如果您對網域名稱做了分地區DNS解析配置,例如僅對網域名稱的中國內地以外地區(中國香港、中國澳門、中國台灣、其他國家和地區)配置了阿里雲CDN的CNAME地址,校正伺服器將無法解析到該CNAME地址,且在CDN控制台該網域名稱的CNAME狀態會顯示為待配置,這種情況不影響CDN的加速服務。
阿里雲CDN、全站加速DCDN、直播以及點播產品的CNAME網域名稱僅可以作為阿里雲CDN的調度解析使用,對於惡意使用CNAME網域名稱的行為,阿里雲有權清退對應的網域名稱和帳號。
在左側導覽列選擇網域名稱解析,進入網域名稱解析頁面。
單擊待設定的網域名稱操作列的解析設定。
單擊添加記錄,配置資訊如下所示:
參數
描述
記錄類型
選擇CNAME,將網域名稱指向另外一個網域名稱。
主機記錄
輸入欄位名的首碼,常見首碼和對應的樣本網域名稱如下表所示。
解析請求來源
選擇預設值。
記錄值
輸入記錄的CNAME值。
TTL
選擇預設值。
首碼
樣本網域名稱
說明
demo
demo.aliyundoc.com
解析子網域名稱。
@
aliyundoc.com
解析主網域名稱。
*
*.aliyundoc.com
泛解析。
單擊確認,完成CNAME配置。
驗證生效:
關聯推流網域名稱和播流網域名稱
目前超低延時直播採用邊緣推流方式,您需要關聯推流網域名稱和播流網域名稱,才能進行直播的推流和播流。
您可以觀看視頻講解學習如何關聯推流網域名稱與播流網域名稱,詳情請參見關聯推流網域名稱與播流網域名稱。
在左側導覽列單擊推/播流網域名稱管理,選擇您添加的播流網域名稱,單擊操作列的網域名稱配置,進入 頁面。
單擊基礎資訊頁簽。
單擊推流資訊頁簽。
單擊添加推流資訊或推流網域名稱後的編輯表徵圖,選擇需要關聯的推流網域名稱。
配置SSL認證(可選)
由於原生瀏覽器的安全要求,若您需要在瀏覽器實現超低延時直播播放,您需要為推流、播放網域名稱配置SSL認證,具體請參見配置HTTPS安全加速。
如果您使用RTS的推流和播放SDK或Demo , 則可以選擇不配置SSL認證。
開通超低延時直播功能
自2022年09月01日起,新添加的播流網域名稱將預設開啟超低延時直播、H5自動轉碼功能,您無需額外配置。 若您的網域名稱是在2022年09月01日之前添加的,需要手動開通。
在左側導覽列選擇推/播流網域名稱管理,進入網域名稱管理頁面。
單擊需要開啟超低延時直播的播流網域名稱操作列的網域名稱配置,進入網域名稱管理頁面。
選擇 。
開啟RTS播放開關。
選擇版本低延時直播(RTS 1.0),開啟H5自動轉碼開關。
由於原生瀏覽器WebRTC不可使用視訊B幀和AAC編碼,H5播放自動轉碼將為您實現自適應的轉碼保障流暢播放,即:
使用瀏覽器播放時,若推流同時含有B幀和AAC編碼,則自動轉碼去除B幀和AAC,按照標準轉碼收費。
使用瀏覽器播放時,若推流不含B幀但含有AAC,則自動轉碼僅去除AAC,按照純音頻轉碼收費。
使用瀏覽器播放時,若您同時配置的轉碼模板,自動轉碼功能將和轉碼模板同時生效,且僅收取一次轉碼費用。
若您使用阿里雲Native SDK進行播放時,由於Native SDK已經支援了B幀和AAC,因此不會產生額外轉碼。
說明超低延時直播配置全網下發需要數分鐘時間,請等待後測試。
如果您需要一個推流網域名稱對應多個播流網域名稱時,請參見關聯主、子播流網域名稱。
超低延時直播支援和標準直播共用一個播流網域名稱。但是鑒於超低延時直播使用UDP協議,標準直播使用TCP協議,兩者技術有所區別,建議您為超低延時直播單獨開通一個播流網域名稱。
配置自訂鑒權(可選)
URL鑒權功能旨在保護使用者網站的內容資源不被非法網站下載盜用。網域名稱初次添加時,預設開啟URL鑒權。
鑒權功能開啟狀態下,有預設鑒權和自訂鑒權兩種鑒權方式,您可按需選擇預設鑒權或自訂鑒權。採用預設鑒權無需設定。如不採用預設配置,您也可以對鑒權主KEY、備KEY、有效時間長度進行自訂,並輸入原始URL。
您可以觀看視頻講解學習如何配置URL鑒權,詳情請參見配置URL鑒權。
在左側導覽列選擇推/播流網域名稱管理,選擇已開通超低延時直播功能的播流網域名稱,單擊操作列的網域名稱配置。
選擇 ,進入存取控制頁面。
單擊URL鑒權頁簽,單擊修改配置。
說明URL鑒權已開啟的情況下,單擊修改配置即可配置URL鑒權資訊。若您之前已關閉URL鑒權,開啟URL鑒權開關即可配置URL鑒權資訊。
配置URL鑒權資訊。配置項和說明如下表所示。
配置項
說明
鑒權類型
ApsaraVideo for Live播流網域名稱僅支援使用鑒權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鑒權頁面查看主用密碼。您還可以重新輸入自訂的鑒權方式對應的主用密碼。備KEY
輸入自訂的鑒權方式對應的備用密碼。
有效時間長度
有效時間長度是指該URL鑒權僅在有效期間內可用來發起推流或者播放。直播推流和播放都是長連結行為,在有效期間內已經發起的直播推流或者播允許存取為,不會因為有效期間到期而中止,但新發起的推流和播放請求會因為有效時間長度到期而失敗。
第一次添加新網域名稱預設有效時間長度為1天(即1440分鐘)。你可以自訂輸入鑒權方式的預設有效時間長度,最小設定為1分鐘,無上限限制。單位:分鐘。
產生推流地址和播放地址
您可以通過控制台產生或通過自訂拼接推流地址和播放地址。
方法一:控制台產生
若您希望快速產生推流地址和播放地址進行體驗,可以藉助控制台工具進行產生,請參見直播地址產生器。
方法二:自訂拼接
通過自訂拼接推流地址和播放地址時,在拼接前需要自行判斷直播流是否經過轉碼,是否進行鑒權,並準備好直播流的推流網域名稱、播流網域名稱、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+鑒權串 |
超低延時直播推流
超低延時直播服務推薦使用RTMP格式推流,本文以使用OBS工具推RTMP流為例。且同時支援使用OBS工具基於WHIP協議推流,具體可參考OBS RTS推流。若您希望使用RTS格式推流,請參見超低延時直播推流中推RTS格式流情境。
下載並安裝OBS推流工具。下載地址,請參見OBS Studio。
運行OBS推流工具。
在功能表列中選擇 。
在設定頁面選擇推流,配置資訊如下所示:
參數
描述
服務
選擇自訂。
伺服器
輸入已經產生的鑒權推流地址,例如:
rtmp://demo.aliyundoc.com/app/stream?auth_key=1543302081-0-0-9c6e7c8190c10bdfb3c0************
。串流密鑰
串流密鑰為空白。
可選:使用OBS推流,在推流軟體的輸出中,設定以下視頻編碼參數值,去除B幀。
輸出模式:進階
主要畫面格間隔(秒,0=自動):1
CPU使用預設(高=較少的CPU佔用):veryfast
配置(Profile):baseline
微調(Tune):zerolatency
在OBS主介面來源地區添加推流源後,單擊開始推流。
如果在推流過程中出現推流異常等問題,可優先使用自助問題排查工具進行自助檢測。本工具可快速診斷常見直播推流問題,並根據具體異常提供解決建議。具體操作,請參見自助問題排查。
超低延時直播播放
超低延時直播流播放時,RTS SDK配套的播放器說明如下表所示,同時阿里雲超低延時直播提供移動端和Web端Demo供您體驗。
播放器:
播放器類型
相關文檔
阿里雲移動端播放器
阿里雲Web端播放器
Demo體驗播放超低延時直播流,請參見播RTS流。
如果在播放過程中出現播放異常等問題,可優先使用自助問題排查工具進行自助檢測。本工具可快速診斷常見直播播放問題,並根據具體異常提供解決建議。具體操作,請參見自助問題排查。
相容標準直播能力的注意事項
使用支援WebRTC的瀏覽器播放RTS時,瀏覽器預設支援OPUS音頻格式,可直接播放源流而無需轉碼。使用OBS推流時,預設的音頻格式為OPUS。
相容標準直播協議拉流
使用RTS 1.0或RTS2.0推流,播放使用標準直播方式拉流時,如RTMP,FLV,HLS播放,由於其僅支援AAC音頻編碼,需在播放網域名稱配置轉碼模板,將OPUS編碼轉碼為AAC。
轉碼模板配置詳細資料請參見轉碼管理。
樣本:已有一對RTS 1.0網域名稱,
rts-push.ialicdn.com
和rts-pull.ialicdn.com
,使用RTS 1.0模式推、拉流。若需要使用RTMP,FLV,HLS拉流時需執行以下配置:在播放網域名稱
rts-pull.ialicdn.com
配置音頻轉AAC的轉碼模板。如已有其他轉碼模板配置,則無需額外配置OPUS轉AAC的轉碼模板,阿里雲的轉碼模板會預設將音頻轉為AAC。使用RTMP,FLV,HLS請求
rts-pull.ialicdn.com
,播放轉碼流。
相容標準直播雲端處理
當使用RTS 2.0推流,播放使用標準直播方式拉流,如RTMP,FLV,HLS播放,需開啟旁路轉推功能、開通傳統直播網域名稱。
旁路轉推配置詳細資料請參見即時直播:將延時降低至200~400ms。
樣本:已有一對RTS 2.0的網域名稱,
rtc-push.ialicdn.com
和rtc-pull.ialicdn.com
,使用RTS 2.0模式推、拉流。且已有一對RTMP的網域名稱,rtmp-push.ialicdn.com
和rtmp-pull.ialicdn.com
,使用傳統直播協議推、拉流。若需要使用RTMP,FLV,HLS拉流時需執行以下配置:rtc-push.ialicdn.com
開啟旁路轉推功能,rtmp-push.ialicdn.com
作為旁路轉推網域名稱,傳統直播的播放網域名稱需配置為rtmp-pull.ialicdn.com
。使用RTMP,FLV,HLS請求
rtmp-pull.ialicdn.com
,播放轉碼流。
其他動作:如何驗證超低延時直播延遲時間
您可以在推流中加入時間校準器URL,通過和標準時間進行對比,驗證超低延時直播延遲時間。此處以使用OBS推流工具推流為例進行介紹。
在OBS主介面來源地區瀏覽器中添加時間校準器URL後,單擊開始推流。