雲計算

從成本到體驗,阿里雲超低延時直播技術背後的技術演進之路

來自阿里雲智能視頻雲的資深技術專家 —— 致凡,將以直播技術為主題帶來《極致觀看體驗:超低延時直播技術》的演講,為大家解答以上問題。

直播新趨勢

image.png

直播技術的發展,需要從當下的直播趨勢來看,2020 年的直播趨勢,我認為主要有三點:
第一,在線直播的用戶規模不斷增長。根據著名的思科互聯網趨勢報告,預測今年直播新視頻內容將佔到整個互聯網流量的 82%,其中直播流量將佔到互聯網流量的 17%。也就是說全球超過六分之一的互聯網流量是直播流量。其實在中國我們也看到了直播用戶的迅猛增長。預計今年直播用戶的規模將達到 5.3 億人。

第二,直播 + 的模式發展迅速。其中最受關注的是電商直播,各大直播平臺都推出了網紅直播帶貨、名人直播帶貨,受到全社會的關注。此外,直播 + 娛樂、直播 + 公益、直播 + 教育、直播 + 體育等各種形式方興未艾,直播技術正在向社會的各個方面滲透。

第三,新的技術正在帶動直播的發展。5G、AI、AR、VR 這些新的技術不斷被應用到直播中。其中最重要的技術還是實時互動技術,它能最有效的提升用戶的體驗。想象這樣一個場景,你正在觀看一場精彩的世界盃足球決賽,場面很精彩,氣氛很緊張。突然隔壁老玩家想起了一陣歡呼聲,而你的屏幕上什麼也沒有發生,這是多麼令人崩潰的一種體驗。

這樣的體驗在過去的直播中很普遍,而低延時直播技術就是改變這種體驗的關鍵。

直播技術三要素

image.png

說到直播技術,我們先看一下直播的三個重要元素:成本,質量和延遲。成本考慮是直播的人群觸達率、設備觸達率、帶寬和存儲成本。對一場直播成本考慮是如何高效便捷的觸達到直播的受眾,並且能夠快速的規模化到百萬千萬的併發。

第二是質量,考慮的是音視頻的畫面清晰度,流暢度,卡頓率、秒開率這些指標。高清晰的畫面和高保真的音效,能給人一種身臨其境的感覺,增加直播的體驗。

第三是延遲,指的是主播端的畫面傳遞到用戶屏幕所耗費的時間。低延遲是實時互動的關鍵。成本,質量和延遲之間是一種相互平衡的關係。

舉一個例子,為了追求高質量,有時就不得不在延遲上做出讓步。不同的直播技術,不同的直播場景都是在這三者之間進行平衡和選擇。

有些直播場景對實時互動的需求不高。我們就可以選擇增加時延,從而提升質量,降低成本,反之亦然。低延遲是目前直播的核心技術。

直播技術協議的演進

image.png

從直播協議的演進來看,它分成了三大塊。第一塊是專有協議,其中最主要的代表是 RTMP 和 RTSP 。這些協議需要專門的服務器支持。最開始的分發成本較高,同時也存在播放器的支持問題。

因為這些協議出現的時間較早,比如 RTMP 已經出現了快 20 年。目前各大廠商對 RTMP 都有很好的支持。但是由於蘋果宣佈 iOS 設備不再支持 Flash ,所以 RTMP 目前主要還是用在推流側。RTMP 作為全鏈路直播協議將逐步淡出舞臺。

接下來的直播協議是基於 HTTP 的分片協議。其中最主要的代表是蘋果推出的 HLS 和安卓陣營推出的 DASH,類似的協議,還有微軟的 Smooth Streaming 和 Adobe 的 HDS 。

因為這些直播協議底層都是基於 HTTP 的,所以適用性更好,設備觸達率更高。對 CDN 的支持也更好。同時因為採用了分片轉碼技術,可以較好的適配用戶的不同網絡狀況,能有效的降低播放器的卡頓率,提升畫面質量。

不過這樣帶來最大的問題就是延遲,播放器需要緩存多個分片,導致延遲一般都在 5-30 秒。需要看到的是,這些技術已經在逐步向低延遲方面發展。包括蘋果最近宣佈的 Low-Latency、HLS 以及標準設計推出的基於低延遲的 LL-CMAF。

這些低延遲的擴展。根本的目的就是為了有效的降低時延。第三類也就是最近才興起的基於 UDP 的直播技術。

其中最有代表的是 SRT 以及這一次我們阿里雲推出的超低延時直播技術 RTS 2.0 這類基於 UDP 的直播協議,通過對網絡的抖動進行主動控制,通過帶寬預測、丟包重傳等優化來降低時延。

但是這些協議還需要 CDN 廠商的支持和播放器的支持。目前阿里雲的 CDN 已經全面支持 SRT 推流和超低延時直播 RTS。下面我們具體對比一下剛才說到的各種直播技術在延遲方面的表現。

首先我們大致把延遲分成幾類,普通延時、優化延時、低延時、超低延時,比超低延時更低的就是實時通話了。

需要說明一點的是,通常的帶寬電視的延遲一般是在 5 秒左右,低於 5 秒的延遲才可以被稱為低延時。

image.png

大家看到在圖上最左邊的是 DASH 跟 HLS,它們的延遲相對較高。通常在 10 到 45 秒之間,接下來是 RTMP ,根據不同的配置延遲一般在 2 到 30 秒之間。但是通常的延遲在 10 秒左右。

圖中的中部,我們看到低延時區域有 LL-HLS,LL-CMAF 和 SRT,他們的延遲大概能做到 2 秒以內。在超低延遲部分,就是我們這次阿里雲推出的低延遲直播技術 RTS,延遲可以做到一秒以內。

圖中最右邊的就是實時通話。比如目前流行的 WebRTC,它的延遲能夠做到 300 毫秒以內。需要指出的是阿里雲的低延遲直播在連麥的部分主播和連麥嘉賓走的就是 RTC 的通道,延遲也能做到 300 毫秒。

傳統直播延時的來源

image.png

我們具體看一下傳統直播的延時主要是從哪些方面產生的。

我們把直播的電路分成 5 個部分,採集編碼,上行推流,CDN 分發下行推流和解碼渲染。我們以一個標準的 HLS 的直播為例子,看一下上述這五個部分對直播時延的影響。採集編碼端的延時主要來自對視頻編碼器的選擇和編碼器內部的配置。不同的編碼器配置。比如是否支持 B 幀,Look Ahead buffer 大小都會對延遲造成不同的影響。

上行推流和下行推流的延遲主要是直播協議所依賴的底層網絡協議,TCP 或者是 UDP,TCP 是可靠協議,保證數據不丟包不亂序,代價就是增加了延時,而 UDP 能夠更靈活的丟包策略和重傳機制,可以有效降低網絡的延時。CDN 分發中的延時,主要來自於轉碼和切片緩存帶來的延時。

最後在播放端是渲染的延時主要是網絡的延時和播放器的緩存。前面提到過 HLS 和 Dash 這樣的協議,播放器必須緩存多個時間片,從而造成了最主要的時間延遲。

image.png

阿里雲直播 RTS 延遲優化

image.png

首先需要了解我們阿里雲的低延遲直播技術,RTS(Real Time Streaming)是如何在產生直播延遲的這幾個關鍵路徑上進行優化的。

在採集和編碼側我們進行了優化,採取了阿里巴巴自研的 H265 編碼器 S265。這是一個高性能低延時的編碼器。對比業界標準的 X265,在壓縮效率上有 20%-30% 的提升,同時速度也更快。

此外還採用了自適應編碼,ROI 編碼這些智能技術,進一步提升畫質,降低碼率,從而降低時延和卡頓。音頻方面採用了最新的智能降噪有效去除背景噪聲。

另外直播推流 SDK 還集成了美顏、美妝、人臉貼紙、背景替換這些功能。並且充分利用了阿里巴巴的低延時 RTC 技術進行實時連麥功能。

在上行推流側,阿里雲的直播解決方案,支持 RTMP、SRT、RTP 等多種推流方式,也支持移動端、PC 端、H5 終端。CDN 分發我們利用最先進的載帶高清技術進行轉碼優化。在降低碼率的同時,也全面提升了畫質的清晰度,支持 8K 的高清,千萬級的併發的直播。

同時對 CDN 的傳輸鏈路進行了全方位的優化。前鏈路支持 RTP 同時利用智能路由降低時延。

在下行側我們支持多種協議進行拉流,RTP、RTMP 和 HLS 拉流。在解碼線上側我們提供了播放器的 SDK,利用低延遲 RTC 技術,大幅度降低了播放器的緩存,增強了網絡抵抗的能力,使得卡頓率低於 1%。

同時支持移動端、PC 端、H5 終端對視頻進行後處理,進一步提升視頻質量,同時支持 DRM 加密。

通過對上述全鏈路的優化,最終從整體上消滅了大部分的直播延時,實現了一秒以內的低延遲。

阿里雲 CDN 低延遲傳輸優化路徑

image.png

傳統的 CDN 支持底層 RTP 協議媒體數據,通過 RTMP 幀傳輸。

在這個基礎上,我們首先對下行鏈路進行了改造,讓下行鏈路支持 UDP 協議,通過 RTP 進行媒體數據的傳輸,通過轉碼具備 AAC 和 Opus 的轉碼能力,這樣就能大幅度的降低播放端的網絡延遲和播放器的緩存,從而降低時延。

第二步就在這個基礎上進行了上行鏈路的優化,讓推流側也支持 RTP,從而讓全鏈路都支持 RTP 協議,通過 RTP 進行數據傳輸,從而進一步降低直播時延,同時也避免了不必要的轉碼。

在 2020 的雲棲大會上,我們也重磅推出了阿里雲直播 3.0 和阿里雲低延遲直播 RTS 的升級,RTS 2.0。RTS 2.0 在抗弱網、開放性、秒開、兼容性、穩定性方面都相對 1.0 有了較大的提升。

阿里雲直播 3.0 的一站式解決方案

image.png

演示圖左邊是推流端,我們提供了一體化的推流 SDK,支持 RTMP、RTP 推流、支持連麥、美顏、美妝、支持 H265 和智能編碼技術。

中間是阿里的雲上直播鏈路,依賴於底層阿里巴巴的全球 CDN 加速網絡 GRTN,支持 RTMP、HLS、SRT、RTS 多種直播協議。

上面是強大的導播臺和媒體處理中心能力,支持窄帶高清、截圖、錄製、加密、時延、安全審核、視頻 AI 等多種能力。

在最右邊是播放端,我們提供了多終端的播放器 SDK, 具備強大的渲染能力,支持音視頻的後處理,這是 DRM 加密,這是多種拉流方式,從而整體形成雲端一體的一站式直播解決方案。

阿里雲直播 3.0 的優勢

image.png

第一是高性能推出了超低延時的直播技術 RTS 2.0,保障秒級的延時和低於 1% 的卡頓率。自研的窄帶高清技術在降低碼率同時達到千萬級的併發。

第二是全球化,全球 2800 家的直播節點,130T + 的帶寬儲備能力分佈 70 多個國家和地區,多直播中心,服務全球用戶。

第三是多終端,提供推流 SDK 和播放器。SDK 的多終端和多協議支持。

第四是智能化,提供各種視頻 AI 服務能力。包括鑑黃鑑恐、廣告識別、語音識別等。

第五是數據化,提供多維度的數據監控和數據分析。

第六是行業化,提供多個行業的解決方案,讓直播技術更好的為您的行業賦能。

這就是我今天的全部分享內容。希望大家記住一句話的話,那就是上雲,就上阿里雲,直播就用阿里雲直播。謝謝大家。

「視頻雲技術」你最值得關注的音視頻技術公眾號,每週推送來自阿里雲一線的實踐技術文章,在這裡與音視頻領域一流工程師交流切磋。

image.png

Leave a Reply

Your email address will not be published. Required fields are marked *