天天看點

DTSE Tech Talk | 第11期:深入淺出暢談華為雲低延遲時間直播技術

作者:華為雲開發者聯盟
詳解華為雲低延遲時間直播在時延、首屏、卡頓率等體驗的優化方案,及如何快速接入方法。

本文分享自華為雲社群《DTSE Tech Talk | 第11期:深入淺出暢談華為雲低延遲時間直播技術-雲社群-華為雲》,作者:華為雲社群精選。

本期直播主題是《深入淺出暢談華為雲低延遲時間直播技術》,華為雲媒體DTSE技術布道師楊金文,與開發者們交流華為雲低延遲時間直播的核心優勢和關鍵技術,從直播最為關注的時延、首屏、卡頓率三個名額詳解了華為雲低延遲時間直播在體驗優化方面的技術方案,并向大家介紹了華為雲低延遲時間直播的快速接入方法。

延時降低到800ms以内,提升使用者體驗

随着虛拟直播、自制綜藝等線上直播新浪潮的湧現,直播平台的内容生态日漸豐富,滿足觀衆多元化需求。就在2021年,也就是低延遲時間直播發展元年,國内各大知名電商平台逐漸使用低延遲時間直播進行精品商品秒殺、派發紅包等活動方式,提升了線上觀衆的觀看時長和平台的交易額,進一步挖掘了直播的商業價值,低延遲時間為直播提供了更多應用場景的可能性。

DTSE Tech Talk | 第11期:深入淺出暢談華為雲低延遲時間直播技術

華為雲低延遲時間直播産品基于華為近30年音視訊技術積累,在傳統直播的基礎上,通過對傳輸協定的優化、傳輸鍊路的動态智能優選、超低延遲時間的轉碼等技術手段,将傳統直播3-5s的時延降低到800ms以内,滿足電商直播、教育直播、賽事直播等時延敏感業務的訴求,為觀衆提供低延遲時間、流暢的極緻直播觀看體驗。

相比傳統直播,華為雲低延遲時間直播的關鍵技術總結為以下三點:

• 靜态的樹狀分發架構演進為動态智能網狀架構

• 标準轉碼更新為超低延遲時間轉碼

• 最後一公裡UDP傳輸協定改造更新

DTSE Tech Talk | 第11期:深入淺出暢談華為雲低延遲時間直播技術

目前,業界直播普遍采用邊緣、中心、源站三層架構:

邊緣一般采用營運商的單線機房部署,目的是為了更低的成本,更廣的覆寫,滿足主播與觀衆的高并發、就近接入的訴求;中心采用多線機房部署,起到流彙聚收斂的作用;源站建構在大雲之上,提供高可用的源站增值服務,比如轉碼、錄制、截圖、稽核等功能。

DTSE Tech Talk | 第11期:深入淺出暢談華為雲低延遲時間直播技術

動态智能網狀架構,通過使用者地域資訊,在滿足流媒體使用者體驗情況下,權衡全局資源的調配,為使用者選擇最優接入節點以及最佳回源路徑,提高整個流媒體平台的平穩與可靠。

以圖中三個使用者場景的通路路徑為例:

觀衆1:與主播位于同省份,同營運商,智能排程服務将觀衆1的通路排程到主播推流節點,内部鍊路短帶來了高品質,低成本的極緻體驗。

觀衆2:與主播位于同營運商鄰近身份,智能排程服務将觀衆2排程至最優的邊緣節點C拉流,而邊緣節點C回源到推流節點B擷取直播流。

觀衆3:與主播跨營運商,智能排程給出傳統逐級回源的方式,保障通路品質。

DTSE Tech Talk | 第11期:深入淺出暢談華為雲低延遲時間直播技術

為保障轉碼流E2E保持低延遲時間,轉碼時延也需要向低延遲時間方向演進。基于華為雲在編解碼方向的長期技術積累,目前能夠控制轉碼額外引入的時延在150ms以内,并且低延遲時間轉碼同樣支援高清低碼技術,能夠在同等畫質下,降低30%的直播碼率,進而降低帶寬成本;同時支援畫質增強,ROI增強技術,對畫面邊緣及紋理區域做精準處理,有效提升使用者的主觀觀看體驗

核心競争力,全方位打造低延遲時間直播體驗

從核心競争力角度來分析,華為雲低延遲時間直播具有以下幾大優勢:

• 超低延遲時間

端到端時延:< 800ms

首幀時延:< 400ms

低延遲時間轉碼:< 150ms

• 超高并發

2000+國内加速節點,500+海外加速節點,華為雲大部分節點均是各省份骨幹線路上的優質節點,節點帶寬儲備能力≥100Tbps,重點項目将對項目訴求可進行重點覆寫。

• 極緻體驗

支援2K、4K超高清直播

• 相容直播

相容傳統直播系統架構,支援RTMP協定推流,無縫支援直播轉碼、錄制、截圖、稽核、回調等功能,同時支援标準WebRTC協定,對于私有協定接入也僅需要更新播放器SDK,接入更加簡單

• 成熟穩定

支援跨AZ多Region容災,7*24小時服務支援,可用度99.99%。基于華為多年音視訊技術的積累,在内部研讨會直播中已穩定商用

時延優化

• 選擇低延遲時間的上行編碼參數。

• 适當減小視訊GOP大小。

• 下行UDP傳輸協定改造,減少分發時延。

DTSE Tech Talk | 第11期:深入淺出暢談華為雲低延遲時間直播技術

動态追幀降時延方案:

• 實時優先

啟播時,服務端從目前GOP Cahce中I幀開始發送,此時與直播點有一點時延,當服務端收到下一個I幀時候,為了保證低延遲時間,直接跳到下一個I幀開始發送。

• 流暢優先

啟播時,根據用戶端快啟緩存大小,服務端快速發送Cache資料,然後根據網絡品質進行快啟發送保護,最後按照倍速發送追上直播點,配合用戶端倍速播放能力,做到流暢播放和低延遲時間的平衡。

• 擁塞丢幀

當網絡出現擁塞時,根據幀解碼優先級(I>P>B),優先丢棄B幀,如果此時帶寬依然有限再适當丢棄P幀,當下一個I幀到來時,擇機跳到新的GOP發送。

首屏優化

DTSE Tech Talk | 第11期:深入淺出暢談華為雲低延遲時間直播技術

首幀優化有以下關鍵措施:

• 私有UDP信令

壓縮标準sdp信令在一個MTU大小内,通過一定的備援發送政策,確定信令請求成功率不變的同時,大幅減少信令協商的耗時。并且可使用UDP信令承載STUN封包,實作0RTT啟播。

• 支援異步回源

對于不命中緩存的場景,可以減少一個網絡RTT的信令等待。

• 關閉媒體加密

對無加密訴求的直播内容,關閉加密傳輸,減少DTLS協商耗時。

• 首幀快速重傳

對于音視訊的解碼關鍵資料(比如VPS/SPS/PPS),提前備援發送,減少重傳的耗時影響。在信令中攜帶首包序号,以便用戶端快速發送丢包重傳請求。

• 首幀快速出幀

啟播時用戶端将前幾幀在JitterBuffer中等待時間調整為0,配合服務端啟播時快速下發資料的政策,做到快速出幀,達到秒開效果。

• 起播碼率優化

端雲協同,用戶端将本地探測的帶寬資料和網絡情況攜帶在請求URL參數中,發送至服務端,服務端則根據該資料進行動态調整起播發送政策。

• 端口不通,快速降級

在UDP端口不通的情況下,支援WebRTC降級到使用TCP進行媒體傳輸;或者降級到普通直播(FLV),確定觀看成功率。

基于以上關鍵的優化方案,結合華為雲海量的節點覆寫以及智能排程政策,将平均首屏時延降到400ms以内。

卡頓率優化

DTSE Tech Talk | 第11期:深入淺出暢談華為雲低延遲時間直播技術

基于以下優化方案,確定在毫秒級時延名額下,卡頓率名額優于傳統直播:

• 丢包重傳

針對低延遲時間直播場景(比如亂序,大丢包),基于網絡rtt和jitter優化重傳時機,防止重傳風暴,提高重傳效率。

• 帶寬估計

基于延時和丢包優化帶寬估計算法,判斷網絡模型及可用帶寬,控制發包速率與糾錯方案。網絡品質優時,可以快速上探帶寬;網絡擁塞時,精确收斂發送帶寬。

• 動态JitterBuffer

實時統計網絡丢包率、rtt、jitter等名額,動态計算所需要的 jitterbuffer大小并進行實時調整。

• FEC備援

自研高性能FEC算法,對分組分包進行優化,并且根據網絡帶寬、丢包率進行自适應備援調整。同時支援WebRTC标準的RED備援,以及Ulpfec/Flexfec方式。

• 平滑發送

根據網絡帶寬估計子產品計算的發送碼率将音視訊資料均勻發送到網絡傳輸通道中,避免網絡擁塞。

華為雲低延遲時間直播內建方式

DTSE Tech Talk | 第11期:深入淺出暢談華為雲低延遲時間直播技術

詳細的對接步驟:

• 登入華為雲官網注冊華為雲賬号,并完成實名認證。申請和備案低延遲時間直播的推流和播放域名。

提示:可以注冊備案一個一級域名(如example.com),然後使用兩個不同的二級域名(如live-play.example.com和live-push.example.com)作為低延遲時間直播的推流域名和播放域名。

• 添加低延遲時間直播推流域名和播放域名到視訊直播服務。

• 在低延遲時間直播的推流域名和播放域名添加成功後,視訊直播會配置設定對應的CNAME位址。這裡需要在域名DNS服務商處為低延遲時間直播的推流域名和播放域名配置CNAME解析,開啟直播推流加速和播放加速。

• 在低延遲時間直播的播放域名中關聯對應的低延遲時間直播推流域名,否則将會導緻低延遲時間直播播放失敗。

• 擷取華為雲低延遲時間直播對接文檔和Demo樣例,學習文檔并內建低延遲時間直播SDK。

• 安裝推流工具(推薦使用OBS),進行低延遲時間直播的推流。

• 使用華為雲低延遲時間線上Demo或內建低延遲時間直播SDK的端進行播放驗證。

點選下方,第一時間了解華為雲新鮮技術~

華為雲部落格_大資料部落格_AI部落格_雲計算部落格_開發者中心-華為雲

繼續閱讀