聲網(wǎng)Agora 開(kāi)發(fā)者社區聯(lián)合 InfoQ 共同策劃,邀請了聲網(wǎng)Agora 開(kāi)發(fā)者社區中的多位技術(shù)專(zhuān)家,從視頻傳輸、計算機視覺(jué)、編解碼標準發(fā)展、WebRTC、機器學(xué)習、音頻技術(shù)等角度,共同撰寫(xiě)「2021 實(shí)時(shí)互動(dòng)技術(shù)展望系列」,一窺技術(shù)新趨勢。本文源于對北京大學(xué)王選計算機研究所的張行功教授的采訪(fǎng)。本系列內容由聲網(wǎng) Agora 開(kāi)發(fā)者社區 與 InfoQ 聯(lián)合策劃,并由 InfoQ 審校,首發(fā)于 InfoQ。
在 RTC 技術(shù)領(lǐng)域,如何兼顧實(shí)時(shí)視頻傳輸的低延時(shí)和視頻質(zhì)量,以及如何評定視頻傳輸質(zhì)量,始終都是備受關(guān)注的話(huà)題。隨著(zhù) 5G 的商用,視頻傳輸在協(xié)議層、應用層又面臨著(zhù)一些急需解決的變革。盡管不少 AI 模型在編解碼、傳輸層已經(jīng)開(kāi)始落地應用,但其實(shí) AI 模型還有很大的提升空間。我們邀請了北京大學(xué)王選計算機研究所的張行功教授,聊聊 2021 年視頻傳輸技術(shù)、VR 視頻以及 AI 模型在 RTC 領(lǐng)域應用,將會(huì )發(fā)生哪些改進(jìn)與革新。
實(shí)時(shí)網(wǎng)絡(luò )擁塞控制
聲網(wǎng)開(kāi)發(fā)者社區:您曾經(jīng)在演講中分享過(guò)實(shí)時(shí)網(wǎng)絡(luò )擁塞控制的研究思路。有提到數據驅動(dòng)的網(wǎng)絡(luò )模型,用于預測網(wǎng)絡(luò )狀況,您還引入了神經(jīng)網(wǎng)絡(luò )。您認為目前網(wǎng)絡(luò )擁塞控制算法的瓶頸是什么?引入神經(jīng)網(wǎng)絡(luò )帶來(lái)哪些改變?
張行功:我們先看一下網(wǎng)絡(luò )擁塞控制的目標是什么,尤其在實(shí)時(shí)音視頻傳輸方面。第一個(gè)目標就是要求公平,其次就是低延時(shí),最后是帶寬使用率。
實(shí)現上述三個(gè)目標,最大的問(wèn)題是無(wú)法預測其他用戶(hù)行為方式,互聯(lián)網(wǎng)是一個(gè)開(kāi)放共享的網(wǎng)絡(luò )。
另一個(gè)瓶頸就是由于存在網(wǎng)絡(luò )延遲,無(wú)法獲得最新的網(wǎng)絡(luò )狀態(tài)。
所以這些障礙會(huì )限制我們的決策,即決定應該發(fā)多少數據量,才能保證低延遲、高帶寬,尤其在物理鏈路波動(dòng)劇烈的 4G/5G 移動(dòng)網(wǎng)絡(luò )。
在一個(gè)不清楚網(wǎng)絡(luò )狀態(tài)和動(dòng)態(tài)變化的網(wǎng)絡(luò )環(huán)境下,要實(shí)現上述三個(gè)目標,那么這就是擁塞控制面臨的最大挑戰。傳統上有很多種方法對網(wǎng)絡(luò )帶寬或者網(wǎng)絡(luò )延時(shí)進(jìn)行探測、建模,例如 AIMD、delay-based 等方法。但是由于互聯(lián)網(wǎng)太過(guò)于復雜,尤其是互聯(lián)網(wǎng)用戶(hù)的行為不可預測,傳統上用數學(xué)模型的方法來(lái)描述網(wǎng)絡(luò )狀態(tài)是已被證明不夠準確的了。
基于上述原因,我們引入了神經(jīng)網(wǎng)絡(luò )和機器學(xué)習方法,進(jìn)行擁塞控制研究。主要包括兩部分,一部分是公平性目標,可采用數學(xué)模型,這是針對網(wǎng)絡(luò )模型中可以抽象出來(lái)的,而且并且可以去驗證和重現的特征,進(jìn)行數學(xué)建模。另一部分是網(wǎng)絡(luò )狀態(tài),尤其像現在的互聯(lián)網(wǎng)狀態(tài),它缺乏比較明確的數學(xué)模型,那么采用統計和機器學(xué)習就是一個(gè)比較好的方法。
聲網(wǎng)開(kāi)發(fā)者社區:神經(jīng)網(wǎng)絡(luò )、深度學(xué)習,被當做工具應用到了很多 RTC 技術(shù)環(huán)節中,比如網(wǎng)絡(luò )傳輸、編解碼。僅視頻網(wǎng)絡(luò )傳輸層面,您認為 AI 模型這個(gè)工具是否已經(jīng)被物盡其用了?還有哪些可以改進(jìn)或發(fā)揮的空間?
張行功:在我看來(lái),現在機器學(xué)習在網(wǎng)絡(luò )中的使用,還處于一個(gè)非常初級的階段。它的潛力還沒(méi)有被充分挖掘出來(lái),目前大家只是嘗試用它解決一些簡(jiǎn)單問(wèn)題,但有時(shí)效果并不好。
這里涉及到一個(gè)問(wèn)題,什么地方適合用機器學(xué)習或 AI 模型,什么時(shí)候不適用?
其實(shí)并不是所有的問(wèn)題,只要把數據給機器學(xué)習的模型,它都能處理。因為這也違背了人類(lèi)對智能的定義。智能本來(lái)就分成演繹推理部分和歸納推理部分。AI 模型只能代表歸納部分,演繹推理的職能它還承擔不了。
所以從這個(gè)角度來(lái)講,我覺(jué)得機器學(xué)習的潛力遠遠的沒(méi)有被發(fā)揮出來(lái),尤其在網(wǎng)絡(luò )領(lǐng)域,還有很多新的技術(shù)沒(méi)有被發(fā)掘。
一個(gè)可能的改進(jìn)方向,從目前來(lái)看,不管在網(wǎng)絡(luò )傳輸還在編碼部分的應用上,AI 模型一般都對數據有依賴(lài),那么一旦換了一個(gè)數據集或換了一個(gè)場(chǎng)景,它的性能表現就會(huì )變差。
這其實(shí)證明了現在的機器學(xué)習算法有很大的局限性,其中最重要的一個(gè)問(wèn)題就是模型在設計時(shí),并沒(méi)有針對于數據集的通用性和局限性,設計出一個(gè)泛化性能更好的,適用于不同場(chǎng)景的積極學(xué)習的模型。
所以,我覺(jué)得未來(lái)機器學(xué)習的發(fā)展,更會(huì )從一種模型復用和小樣本學(xué)習的角度去設計,而不僅僅在神經(jīng)網(wǎng)絡(luò )本身去做優(yōu)化。舉個(gè)例子,我們在做傳輸的時(shí)候經(jīng)常講預測帶寬。我們可以根據歷史的數據,去預測未來(lái)的網(wǎng)絡(luò )帶寬。但是訓練出來(lái)的模型,一旦換了一個(gè)網(wǎng)絡(luò )環(huán)境,比如從 4G 到 5G,這時(shí)訓練后的模型到新的環(huán)境下,泛化性就特別差。這也就是為什么一些新的機器學(xué)習的方法,會(huì )從架構上來(lái)改進(jìn)。
聲網(wǎng)開(kāi)發(fā)者社區:目前大家普遍都是在 4G 網(wǎng)絡(luò )下進(jìn)行實(shí)驗和應用落地。不過(guò)大家也在關(guān)注 5G。您認為 5G 商用后,視頻傳輸相關(guān)的技術(shù),比如從協(xié)議層面、算法層面,會(huì )需要作出哪些改進(jìn)來(lái)適應這樣的網(wǎng)絡(luò )變化?
張行功:5G 出現后,會(huì )對傳輸層協(xié)議的要求更高,這里面主要有幾個(gè)原因:首先是由于 5G 的帶寬更大了,然后是由于 5G 的抖動(dòng),不管是延遲抖動(dòng)還是帶寬波動(dòng)都會(huì )更大,已經(jīng)遠遠超出了 4G 范疇。
這里先解釋一下,為什么 5G 網(wǎng)絡(luò )抖動(dòng)會(huì )更大?通過(guò)測量發(fā)現,5G 是通過(guò)時(shí)間片方式調度頻譜資源,這意味著(zhù)將某個(gè)時(shí)間片分配給一個(gè)用戶(hù)時(shí),它帶寬資源是獨占的,但在其他時(shí)刻是得不到網(wǎng)絡(luò )資源的。因此,如果我們從非常細的粒度,比如從某一個(gè)數據包的角度來(lái)看,它的延時(shí)波動(dòng)以及數據包之間的帶寬波動(dòng)都會(huì )非常劇烈。5G 的理論帶寬是 1GB/s,所以一旦出現某個(gè)時(shí)間片未將資源分配你的時(shí)候,那么你的帶寬波動(dòng)會(huì )非常大。
除了以上兩點(diǎn),5G 會(huì )帶來(lái)邊緣計算的普及,未來(lái)很多數據和服務(wù)都會(huì )放在一些邊緣服務(wù)器上。邊緣計算加上 5G 的整個(gè)物理帶寬和延時(shí)的提升,會(huì )倒逼傳輸層協(xié)議的改進(jìn)。不管是傳統的 TCP 還是這些年大家比較關(guān)注的像 QUIC、BBR,以及一些私有協(xié)議。現在的傳輸層協(xié)議已經(jīng)存在 40 年了,存在較大變革的需求。
另外從應用層的角度講,比如說(shuō)我們說(shuō)的 ABR 或其它業(yè)務(wù)層相關(guān)的算法,隨著(zhù) 5G 商用后,都會(huì )在邊緣節點(diǎn)發(fā)揮作用。因此,內容緩存算法、動(dòng)態(tài)自適應、分布式視頻編碼和處理等,都會(huì )遷移到邊緣節點(diǎn)上,而且對這些算法的性能和交互能力提出更高的要求。
5G 會(huì )推動(dòng) VR、AR、云游戲等實(shí)時(shí)視頻應用場(chǎng)景的發(fā)展。從應用層的算法,包括剛剛提到的海量節點(diǎn)、小存儲,到實(shí)時(shí)交互、邊緣節點(diǎn)的業(yè)務(wù)層算法等都會(huì )得到改進(jìn)。
VR 視頻相關(guān)技術(shù)
聲網(wǎng)開(kāi)發(fā)者社區:您的研究中也有涉及到 VR 領(lǐng)域。您認為目前 VR 視頻類(lèi)應用,最急需解決的技術(shù)問(wèn)題有哪些?分別有什么解決思路?
張行功:從廣義來(lái)講,VR 視頻包含全景視頻、AR、云游戲,因為現在很多云游戲也是基于視頻的實(shí)時(shí)交互。所以這些都是屬于 VR 視頻的應用的體現形式。實(shí)際上其中最核心的問(wèn)題有三個(gè):
第一個(gè)問(wèn)題就是它是一種實(shí)時(shí)交互式的視頻。交互式視頻就存在一個(gè)延時(shí)的問(wèn)題,不管是我們看視頻,還是去打云游戲,只要用戶(hù)做一動(dòng)作,或頭部移動(dòng)一個(gè)角度,畫(huà)面就需要在 20ms 之內做出相應的反饋。否則,人的體驗就會(huì )下降。
這對網(wǎng)絡(luò )傳輸就提出了很高的要求。因為我們知道 20ms 是一個(gè)端到端的延時(shí),而且是一個(gè) round trip time,這里包含了網(wǎng)絡(luò )、編解碼、服務(wù)器處理、客戶(hù)端渲染的延時(shí)。即使是未來(lái)實(shí)現邊緣計算,想實(shí)現 20ms 的端到端往返延時(shí)也絕非易事。
第二個(gè)核心的問(wèn)題就是人的運動(dòng)預測。例如,我們看 VR 視頻的時(shí)候會(huì )有頭部的運動(dòng)。未來(lái)會(huì )有 6DoF 的視頻,我們不僅會(huì )有頭部運動(dòng),還會(huì )在虛擬場(chǎng)景中運動(dòng)。在這種情況下,我們如何去預測人的運動(dòng)是一個(gè)非常重要且急需解決的問(wèn)題。
運動(dòng)預測主要是解決第一個(gè)延遲問(wèn)題,從物理角度來(lái)講,20ms 是一個(gè)難以達到的延時(shí)。現在業(yè)界提出的解決方案是通過(guò)預測人的運動(dòng),然后預加載數據。相當于在用戶(hù)沒(méi)有看到這一部分的視頻畫(huà)面的時(shí)候,我就把這個(gè)數據下載到本地。當用戶(hù)移動(dòng)到某個(gè)位置時(shí),實(shí)際上就是從本地來(lái)獲取這個(gè)畫(huà)面,延時(shí)就小很多了。
但是,人的行為是有很大的隨機性,所以隨之而來(lái)的問(wèn)題是如何去預測人的行為?比如我們觀(guān)看 VR 視頻時(shí),每個(gè)人感興趣的內容和位置可能都不一樣。這是目前急需解決的一個(gè)難題。
第三個(gè)問(wèn)題就是高通量數據。我們現在看到的這些 VR 視頻可能還只是 4K、8K 分辨率的,它的碼率大約在 100MB 級別。但是未來(lái)可能會(huì )有 16K,甚至 24K 的視頻。16K 是什么概念呢?相當于我們在電視上看的 720P 平面視頻。我們在電腦顯示器上可觀(guān)看的視角大約 30 度。如果將 720P 的視頻延展為 360 度,這時(shí)候的數據量就相當于一個(gè) 16K 視頻。未來(lái)如果加入 6DoF 視頻,支持用戶(hù)在 VR 視頻場(chǎng)景中自由活動(dòng),則會(huì )有更大的數據量。另外,AR、云游戲等場(chǎng)景也會(huì )產(chǎn)生越來(lái)越多的數據。
我們看到,硬件在不斷發(fā)展。蘋(píng)果已經(jīng)可以實(shí)現單眼 8K 的 VR 終端了。但網(wǎng)絡(luò )的發(fā)展實(shí)際上還沒(méi)能跟上硬件的步伐。如此來(lái)看,很長(cháng)時(shí)間以?xún)龋W(wǎng)絡(luò )傳輸的瓶頸會(huì )始終存在。
在這方面,我們做了幾個(gè)探索,一個(gè)是 QoE 驅動(dòng)的視點(diǎn)傳輸。我們根據用戶(hù)看的區域,傳輸對應的數據。這是一個(gè)比較有效的手段,已經(jīng)在很多地方應用。
另一方面的研究是針對云游戲的。云游戲屬于 VR 視頻的一個(gè)分支,對延遲更加敏感,數據量也很大,同時(shí)用戶(hù)交互行為更加復雜,很難進(jìn)行動(dòng)作預測。所以我們探索一種零延遲的畫(huà)面預測方法,在一定程度上來(lái)解決交互延遲的問(wèn)題。
聲網(wǎng)開(kāi)發(fā)者社區:一直以來(lái),您都在研究事視頻通信、網(wǎng)絡(luò )傳輸相關(guān)的課題。從您的角度來(lái)看,您認為 2020 年這些方向出現了哪些值得一提的研究進(jìn)展?您認為 2021 年最重要的技術(shù)趨勢是什么?
張行功:從視頻通信、網(wǎng)絡(luò )傳輸方面,在 2020 年出現了一些比較新的場(chǎng)景,例如云游戲和云桌面。其本質(zhì)上就是實(shí)時(shí)視頻,但是技術(shù)挑戰會(huì )比傳統的視頻更大。因為就像之前分析的,它的延時(shí)要求很苛刻,人的行為很難預測。2020 年有一些技術(shù)嘗試,但是效果不是很理想。所以在 2021 年,業(yè)界還會(huì )有更多新角度的嘗試來(lái)解決這些問(wèn)題。
第二個(gè)就是面向 5G 以及衛星網(wǎng)絡(luò )的研究和應用。5G 網(wǎng)絡(luò )已經(jīng)開(kāi)始商用,衛星網(wǎng)絡(luò )方面,我們已經(jīng)可以看到 Elon Musk 的 StarLink 也開(kāi)始提供測試服務(wù)了。所以面向新型網(wǎng)絡(luò )的低延時(shí)傳輸研究也會(huì )是 2021 的熱點(diǎn)之一。
視頻傳輸方面。在 2020 年,機器學(xué)習、強化學(xué)習等方法更多地被用在了網(wǎng)絡(luò )領(lǐng)域,包括傳輸層、應用層的視頻通信。在 2021 年將會(huì )有更多這方面的研究,提供它的實(shí)用性和泛化能力。
最后,視頻傳輸質(zhì)量評價(jià)也是 2020 年重要的熱點(diǎn)之一。由于現在網(wǎng)絡(luò )視頻的種類(lèi)很多,包括實(shí)時(shí)視頻、直播、短視頻、VR 視頻等,但傳統上視頻質(zhì)量評價(jià)都是面向編碼,但對傳輸的評價(jià)一直沒(méi)有一個(gè)很好的框架。視頻傳輸質(zhì)量的監控和評價(jià)是業(yè)務(wù)的核心,包括由數據監測、質(zhì)量評價(jià)到故障報警、修復的一套閉環(huán)的質(zhì)量體系,將會(huì )是 2021 年被持續關(guān)注的熱點(diǎn)之一。