<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>
"); //-->

博客專(zhuān)欄

EEPW首頁(yè) > 博客 > 低延時(shí)編碼在云手游的應用

低延時(shí)編碼在云手游的應用

發(fā)布人:topvpu 時(shí)間:2021-11-11 來(lái)源:工程師 發(fā)布文章

云游戲概述

www.topvpu.com原創(chuàng )

 

云游戲(Cloudgaming)是以云計算為基礎的游戲方式,本質(zhì)上為交互性的在線(xiàn)視頻流,所有游戲都在服務(wù)器端運行,并將渲染完畢后的游戲畫(huà)面壓縮后通過(guò)網(wǎng)絡(luò )傳送給用戶(hù)。目前國內云游戲廠(chǎng)商大致分為兩類(lèi):這一種是基于X86架構,主要解決PC游戲云化,即端游云游;第二種是基于A(yíng)RM架構,主要解決移動(dòng)游戲云化,即手游云游。本方案主要是針對手游云游。

 

云游戲系統實(shí)現框圖:流化、傳輸、渲染交互三大塊組成

 

image.png 

流化:在云端邊緣計算節點(diǎn)中實(shí)現抓屏、編碼、網(wǎng)絡(luò )傳輸、解碼等流化過(guò)程。

流化處理主要是采集游戲音視頻數據編碼為音視頻流,為了提高處理效率與降低延時(shí),云游戲視頻處理直接從GPU顯存獲取游戲畫(huà)面,然后傳到編碼模塊進(jìn)行編碼輸出,減少了GPU與CPU之間拷貝導致的性能損失;音頻處理直接從聲卡獲取游戲聲音數據進(jìn)行編碼輸出

 

傳輸:通過(guò)邊緣網(wǎng)絡(luò )來(lái)實(shí)現,選擇最短的鏈路打通邊緣節點(diǎn)與終端用戶(hù)的網(wǎng)絡(luò )通道。云游戲為了降低延時(shí),傳輸采用實(shí)時(shí)流協(xié)議,如:常用的RTP/RTSP/RTC等協(xié)議,同時(shí)根據當前國內的網(wǎng)絡(luò )環(huán)境,針對云游場(chǎng)景進(jìn)行了專(zhuān)門(mén)的自適應抗抖動(dòng)優(yōu)化。

傳輸自適應抗抖動(dòng)處理:根據網(wǎng)絡(luò )狀況與終端渲染播放能力進(jìn)行綜合判斷,自動(dòng)調整視頻流的碼率,分辨率, 幀率,實(shí)現在弱網(wǎng)、網(wǎng)絡(luò )切換以及弱終端的最優(yōu)體驗。

 

渲染交互:在用戶(hù)終端中實(shí)現,完成對游戲數據流的本地渲染呈現以及交互控制。

流化根據實(shí)現方式的不同,可分為視頻流與指令流兩種形態(tài)。游戲運行在帶有GPU的邊緣計算節點(diǎn),將GPU生成的游戲圖像轉換為H.264/H265的視頻流以及音頻數據,通過(guò)網(wǎng)絡(luò )傳到終端,同時(shí)終端將操作指令如鼠標,鍵盤(pán),觸控等數據回傳到服務(wù)器中。

 

云游戲三個(gè)挑戰及其應對

1.      畫(huà)質(zhì)和成本:畫(huà)質(zhì)要求高,碼率大。云游戲成本主要源于硬件與流量,提高單臺機器的編碼并發(fā)數,提升編碼壓縮比降低成本。CPU/GPU虛擬化,將資源利用最大化;針對不同的游戲場(chǎng)景,虛擬出不同的虛擬機,滿(mǎn)足低成本需求。用軟件編碼器,一路H.265視頻編碼就要消耗掉一個(gè)CPU核的資源,跑三四路1080P就把CPU資源吃光了,未來(lái)趨勢是使用硬件編碼代替軟件編碼

2.      維護:包括功耗,設備空間或者設備密度,設備升級,修復故障設備代價(jià),設備監測工具軟件。U.2盤(pán)熱插拔特性避免GPU卡冷復位服務(wù)器中斷運營(yíng)的致命缺陷

3.      延時(shí):云游戲的延時(shí)在整個(gè)鏈路上由如下幾個(gè)部分組成:延時(shí)主要來(lái)自于輸入、網(wǎng)絡(luò )傳輸、編碼、解碼,終端渲染幾個(gè)部分;通過(guò)對整體鏈路的優(yōu)化,將總延時(shí)控制在了50ms以?xún)?,保證一個(gè)好的游戲體驗。使用硬件編碼代替軟件編碼大幅降低延時(shí)

 

硬件云游戲編碼卡特點(diǎn)

1.      適用主流X86服務(wù)器,華為鯤鵬ARM服務(wù)器、AmpereARM服務(wù)器,飛騰ARM服務(wù)器

2.      物理機,容器/Anbox,SRIOV虛擬機,直通虛擬機等隔離構架的云端芯片硬件編碼

3.      U.2卡不占用服務(wù)器PCIe槽位,支持熱插播

4.      1U服務(wù)器160路720P或者80路1080P并發(fā)/2U服務(wù)器384路720P或者192路1080P并發(fā)

5.      云游戲應用高畫(huà)質(zhì)要求,畫(huà)質(zhì)優(yōu)于X265/X264,高動(dòng)態(tài)編碼畫(huà)質(zhì)不受CPU負載影響

6.      支持4KP60/1080P240/1080P120/1080P60/720P240/720P120/720P60分辨率和幀率

7.      單卡多路并發(fā)編碼延時(shí)不受CPU負載影響,720P3毫秒/1080P7毫秒編碼延時(shí)

8.      無(wú)縫適配英偉達Nvidia/AMD主流顯卡渲染方案

 

 

支持虛擬化特性(可選)

1.      安卓容器Docker:Anbox云手游

2.      SR-IOV:超低延時(shí),硬件的虛擬化,提高性能和可伸縮性

3.      虛機VM直通虛擬化:提升服務(wù)器效率

 

云游戲展望:原生云游戲

1.      移動(dòng),聯(lián)通,電信三大電信運營(yíng)商都頭疼在邊緣云找到應用場(chǎng)景(很多5G邊緣節點(diǎn)關(guān)閉),專(zhuān)家預測如果云游戲運營(yíng)成本降低90%,會(huì )引爆云游戲==》加速邊緣云應用早日落地,隨5G技術(shù)成熟和云游戲成本的降低,許多專(zhuān)家預言三年內云游戲會(huì )有機會(huì )取得突破,編碼技術(shù)在云游戲產(chǎn)業(yè)生態(tài),起至關(guān)重要角色。芯片廠(chǎng)家只有芯片/板卡訂貨數量巨大,成本才會(huì )平民化。

2.      云原生游戲:打破服務(wù)端-客戶(hù)端的界線(xiàn),統一“超級虛擬游戲機”系統。原生云游:免下載,免安裝,隨時(shí)隨地進(jìn)行游戲的特性,讓用戶(hù)無(wú)需考慮設備配置,通過(guò)5G網(wǎng)絡(luò )和簡(jiǎn)單的外設裝備、轉接設備就可以通過(guò)任意終端玩轉各種游戲。 云產(chǎn)品的API標準化就是各個(gè)云計算廠(chǎng)商的關(guān)鍵

3.      算力越大(并發(fā)編碼路數),同時(shí)支持在線(xiàn)玩家越多,單路成本越低

4.      元宇宙會(huì )成為互聯(lián)網(wǎng)的最終形態(tài)

image.png

  

總結

1.      游戲音視頻畫(huà)面的采集、編碼、傳輸、解碼、渲染等整個(gè)流程也是相互聯(lián)動(dòng)和影響的。采集和編碼如何實(shí)現pipeline,包括編碼多tile/slice/分層/RPS、RDO/模式選擇快速算法/碼控/編碼參數動(dòng)態(tài)調整、傳輸Pacing、丟包快速重傳以及跳幀等各種優(yōu)化措施等都要加以考量,從而保障游戲畫(huà)面的高質(zhì)量與實(shí)時(shí)性。

2.      編碼和傳輸相結合,我們會(huì )根據用戶(hù)實(shí)時(shí)網(wǎng)絡(luò )情況的BWE(帶寬評估)、NCC(網(wǎng)絡(luò )擁塞控制)、Pacing Rate(發(fā)送速率)等針對性調優(yōu);編碼碼控這方面會(huì )根據用戶(hù)網(wǎng)絡(luò )情況做自適應策略控制調整,對低延遲、流暢度、清晰度等分不同優(yōu)先級作調整。

3.      云端計算資源是有限的,低延時(shí)、高幀率、高清晰度是相互矛盾的,我們根據用戶(hù)網(wǎng)絡(luò )環(huán)境和設備硬件配置情況不同的場(chǎng)景有不同解決方案。資源管理工具:起到負載感知和資源規劃作用,實(shí)時(shí)監測編碼路數,卡的載荷,并有效監測卡的狀態(tài)。

4.      編碼參數:通過(guò)視頻場(chǎng)景分類(lèi)實(shí)時(shí)識別,根據場(chǎng)景識別結果,不同場(chǎng)景配置不同最優(yōu)編碼參數,根據視頻源碼率、幀率、分辨率、紋理和運動(dòng)變化幅度等情況以及綜合機器負載和畫(huà)質(zhì)效果選擇最優(yōu)編碼參數。比如:對于場(chǎng)景紋理和運動(dòng)變化幅度大的低延時(shí)場(chǎng)景,我們通過(guò)設置修改默認來(lái)解決場(chǎng)景切換人,草,樹(shù)糊掉問(wèn)題。

5.      通過(guò)音頻硬件編碼加速技術(shù),將每幀編碼的時(shí)間控制在5ms以?xún)?,極大的降低編碼所帶來(lái)的延遲。在視頻壓縮技術(shù)上,通過(guò)與游戲引擎相結合,根據游戲內容動(dòng)態(tài)調整視頻編碼,可以在不降低視頻質(zhì)量的情況下,降低30%的網(wǎng)絡(luò )帶寬占用。

6.      得益于 HEVC ( H.265 )算法高效的視頻編碼能力,使碼率不怎么高也能做到極其清晰的畫(huà)面,H.265視頻壓縮技術(shù)降低30%的網(wǎng)絡(luò )帶寬占用。

7.      維護機制:PCIe總線(xiàn)復位,避免由于單卡故障,復位整個(gè)服務(wù)器,引起運營(yíng)中斷

8.      未來(lái)云游戲向原生云游戲方向發(fā)展,高畫(huà)質(zhì),高分辨率,高幀率,強交互的低延時(shí)需求會(huì )逐漸變成現實(shí)。元宇宙也會(huì )逐漸走進(jìn)人們的視野。

 

 

 

 

 


*博客內容為網(wǎng)友個(gè)人發(fā)布,僅代表博主個(gè)人觀(guān)點(diǎn),如有侵權請聯(lián)系工作人員刪除。

LM317相關(guān)文章:LM317中文資料





相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>