低延時(shí)編碼在云手游的應(yīng)用
云游戲概述
www.topvpu.com原創(chuàng)
云游戲(Cloudgaming)是以云計(jì)算為基礎(chǔ)的游戲方式,本質(zhì)上為交互性的在線視頻流,所有游戲都在服務(wù)器端運(yùn)行,并將渲染完畢后的游戲畫面壓縮后通過(guò)網(wǎng)絡(luò)傳送給用戶。目前國(guó)內(nèi)云游戲廠商大致分為兩類:這一種是基于X86架構(gòu),主要解決PC游戲云化,即端游云游;第二種是基于ARM架構(gòu),主要解決移動(dòng)游戲云化,即手游云游。本方案主要是針對(duì)手游云游。
云游戲系統(tǒng)實(shí)現(xiàn)框圖:流化、傳輸、渲染交互三大塊組成
流化:在云端邊緣計(jì)算節(jié)點(diǎn)中實(shí)現(xiàn)抓屏、編碼、網(wǎng)絡(luò)傳輸、解碼等流化過(guò)程。
流化處理主要是采集游戲音視頻數(shù)據(jù)編碼為音視頻流,為了提高處理效率與降低延時(shí),云游戲視頻處理直接從GPU顯存獲取游戲畫面,然后傳到編碼模塊進(jìn)行編碼輸出,減少了GPU與CPU之間拷貝導(dǎo)致的性能損失;音頻處理直接從聲卡獲取游戲聲音數(shù)據(jù)進(jìn)行編碼輸出
傳輸:通過(guò)邊緣網(wǎng)絡(luò)來(lái)實(shí)現(xiàn),選擇最短的鏈路打通邊緣節(jié)點(diǎn)與終端用戶的網(wǎng)絡(luò)通道。云游戲?yàn)榱私档脱訒r(shí),傳輸采用實(shí)時(shí)流協(xié)議,如:常用的RTP/RTSP/RTC等協(xié)議,同時(shí)根據(jù)當(dāng)前國(guó)內(nèi)的網(wǎng)絡(luò)環(huán)境,針對(duì)云游場(chǎng)景進(jìn)行了專門的自適應(yīng)抗抖動(dòng)優(yōu)化。
傳輸自適應(yīng)抗抖動(dòng)處理:根據(jù)網(wǎng)絡(luò)狀況與終端渲染播放能力進(jìn)行綜合判斷,自動(dòng)調(diào)整視頻流的碼率,分辨率, 幀率,實(shí)現(xiàn)在弱網(wǎng)、網(wǎng)絡(luò)切換以及弱終端的最優(yōu)體驗(yàn)。
渲染交互:在用戶終端中實(shí)現(xiàn),完成對(duì)游戲數(shù)據(jù)流的本地渲染呈現(xiàn)以及交互控制。
流化根據(jù)實(shí)現(xiàn)方式的不同,可分為視頻流與指令流兩種形態(tài)。游戲運(yùn)行在帶有GPU的邊緣計(jì)算節(jié)點(diǎn),將GPU生成的游戲圖像轉(zhuǎn)換為H.264/H265的視頻流以及音頻數(shù)據(jù),通過(guò)網(wǎng)絡(luò)傳到終端,同時(shí)終端將操作指令如鼠標(biāo),鍵盤,觸控等數(shù)據(jù)回傳到服務(wù)器中。
云游戲三個(gè)挑戰(zhàn)及其應(yīng)對(duì)
1. 畫質(zhì)和成本:畫質(zhì)要求高,碼率大。云游戲成本主要源于硬件與流量,提高單臺(tái)機(jī)器的編碼并發(fā)數(shù),提升編碼壓縮比降低成本。CPU/GPU虛擬化,將資源利用最大化;針對(duì)不同的游戲場(chǎng)景,虛擬出不同的虛擬機(jī),滿足低成本需求。用軟件編碼器,一路H.265視頻編碼就要消耗掉一個(gè)CPU核的資源,跑三四路1080P就把CPU資源吃光了,未來(lái)趨勢(shì)是使用硬件編碼代替軟件編碼
2. 維護(hù):包括功耗,設(shè)備空間或者設(shè)備密度,設(shè)備升級(jí),修復(fù)故障設(shè)備代價(jià),設(shè)備監(jiān)測(cè)工具軟件。U.2盤熱插拔特性避免GPU卡冷復(fù)位服務(wù)器中斷運(yùn)營(yíng)的致命缺陷
3. 延時(shí):云游戲的延時(shí)在整個(gè)鏈路上由如下幾個(gè)部分組成:延時(shí)主要來(lái)自于輸入、網(wǎng)絡(luò)傳輸、編碼、解碼,終端渲染幾個(gè)部分;通過(guò)對(duì)整體鏈路的優(yōu)化,將總延時(shí)控制在了50ms以內(nèi),保證一個(gè)好的游戲體驗(yàn)。使用硬件編碼代替軟件編碼大幅降低延時(shí)
硬件云游戲編碼卡特點(diǎn)
1. 適用主流X86服務(wù)器,華為鯤鵬ARM服務(wù)器、AmpereARM服務(wù)器,飛騰ARM服務(wù)器
2. 物理機(jī),容器/Anbox,SRIOV虛擬機(jī),直通虛擬機(jī)等隔離構(gòu)架的云端芯片硬件編碼
3. U.2卡不占用服務(wù)器PCIe槽位,支持熱插播
4. 1U服務(wù)器160路720P或者80路1080P并發(fā)/2U服務(wù)器384路720P或者192路1080P并發(fā)
5. 云游戲應(yīng)用高畫質(zhì)要求,畫質(zhì)優(yōu)于X265/X264,高動(dòng)態(tài)編碼畫質(zhì)不受CPU負(fù)載影響
6. 支持4KP60/1080P240/1080P120/1080P60/720P240/720P120/720P60分辨率和幀率
7. 單卡多路并發(fā)編碼延時(shí)不受CPU負(fù)載影響,720P3毫秒/1080P7毫秒編碼延時(shí)
8. 無(wú)縫適配英偉達(dá)Nvidia/AMD主流顯卡渲染方案
支持虛擬化特性(可選)
1. 安卓容器Docker:Anbox云手游
2. SR-IOV:超低延時(shí),硬件的虛擬化,提高性能和可伸縮性
3. 虛機(jī)VM直通虛擬化:提升服務(wù)器效率
云游戲展望:原生云游戲
1. 移動(dòng),聯(lián)通,電信三大電信運(yùn)營(yíng)商都頭疼在邊緣云找到應(yīng)用場(chǎng)景(很多5G邊緣節(jié)點(diǎn)關(guān)閉),專家預(yù)測(cè)如果云游戲運(yùn)營(yíng)成本降低90%,會(huì)引爆云游戲==》加速邊緣云應(yīng)用早日落地,隨5G技術(shù)成熟和云游戲成本的降低,許多專家預(yù)言三年內(nèi)云游戲會(huì)有機(jī)會(huì)取得突破,編碼技術(shù)在云游戲產(chǎn)業(yè)生態(tài),起至關(guān)重要角色。芯片廠家只有芯片/板卡訂貨數(shù)量巨大,成本才會(huì)平民化。
2. 云原生游戲:打破服務(wù)端-客戶端的界線,統(tǒng)一“超級(jí)虛擬游戲機(jī)”系統(tǒng)。原生云游:免下載,免安裝,隨時(shí)隨地進(jìn)行游戲的特性,讓用戶無(wú)需考慮設(shè)備配置,通過(guò)5G網(wǎng)絡(luò)和簡(jiǎn)單的外設(shè)裝備、轉(zhuǎn)接設(shè)備就可以通過(guò)任意終端玩轉(zhuǎn)各種游戲。 云產(chǎn)品的API標(biāo)準(zhǔn)化就是各個(gè)云計(jì)算廠商的關(guān)鍵
3. 算力越大(并發(fā)編碼路數(shù)),同時(shí)支持在線玩家越多,單路成本越低
4. 元宇宙會(huì)成為互聯(lián)網(wǎng)的最終形態(tài)
總結(jié)
1. 游戲音視頻畫面的采集、編碼、傳輸、解碼、渲染等整個(gè)流程也是相互聯(lián)動(dòng)和影響的。采集和編碼如何實(shí)現(xiàn)pipeline,包括編碼多tile/slice/分層/RPS、RDO/模式選擇快速算法/碼控/編碼參數(shù)動(dòng)態(tài)調(diào)整、傳輸Pacing、丟包快速重傳以及跳幀等各種優(yōu)化措施等都要加以考量,從而保障游戲畫面的高質(zhì)量與實(shí)時(shí)性。
2. 編碼和傳輸相結(jié)合,我們會(huì)根據(jù)用戶實(shí)時(shí)網(wǎng)絡(luò)情況的BWE(帶寬評(píng)估)、NCC(網(wǎng)絡(luò)擁塞控制)、Pacing Rate(發(fā)送速率)等針對(duì)性調(diào)優(yōu);編碼碼控這方面會(huì)根據(jù)用戶網(wǎng)絡(luò)情況做自適應(yīng)策略控制調(diào)整,對(duì)低延遲、流暢度、清晰度等分不同優(yōu)先級(jí)作調(diào)整。
3. 云端計(jì)算資源是有限的,低延時(shí)、高幀率、高清晰度是相互矛盾的,我們根據(jù)用戶網(wǎng)絡(luò)環(huán)境和設(shè)備硬件配置情況不同的場(chǎng)景有不同解決方案。資源管理工具:起到負(fù)載感知和資源規(guī)劃作用,實(shí)時(shí)監(jiān)測(cè)編碼路數(shù),卡的載荷,并有效監(jiān)測(cè)卡的狀態(tài)。
4. 編碼參數(shù):通過(guò)視頻場(chǎng)景分類實(shí)時(shí)識(shí)別,根據(jù)場(chǎng)景識(shí)別結(jié)果,不同場(chǎng)景配置不同最優(yōu)編碼參數(shù),根據(jù)視頻源碼率、幀率、分辨率、紋理和運(yùn)動(dòng)變化幅度等情況以及綜合機(jī)器負(fù)載和畫質(zhì)效果選擇最優(yōu)編碼參數(shù)。比如:對(duì)于場(chǎng)景紋理和運(yùn)動(dòng)變化幅度大的低延時(shí)場(chǎng)景,我們通過(guò)設(shè)置修改默認(rèn)來(lái)解決場(chǎng)景切換人,草,樹(shù)糊掉問(wèn)題。
5. 通過(guò)音頻硬件編碼加速技術(shù),將每幀編碼的時(shí)間控制在5ms以內(nèi),極大的降低編碼所帶來(lái)的延遲。在視頻壓縮技術(shù)上,通過(guò)與游戲引擎相結(jié)合,根據(jù)游戲內(nèi)容動(dòng)態(tài)調(diào)整視頻編碼,可以在不降低視頻質(zhì)量的情況下,降低30%的網(wǎng)絡(luò)帶寬占用。
6. 得益于 HEVC ( H.265 )算法高效的視頻編碼能力,使碼率不怎么高也能做到極其清晰的畫面,H.265視頻壓縮技術(shù)降低30%的網(wǎng)絡(luò)帶寬占用。
7. 維護(hù)機(jī)制:PCIe總線復(fù)位,避免由于單卡故障,復(fù)位整個(gè)服務(wù)器,引起運(yùn)營(yíng)中斷
8. 未來(lái)云游戲向原生云游戲方向發(fā)展,高畫質(zhì),高分辨率,高幀率,強(qiáng)交互的低延時(shí)需求會(huì)逐漸變成現(xiàn)實(shí)。元宇宙也會(huì)逐漸走進(jìn)人們的視野。
*博客內(nèi)容為網(wǎng)友個(gè)人發(fā)布,僅代表博主個(gè)人觀點(diǎn),如有侵權(quán)請(qǐng)聯(lián)系工作人員刪除。
LM317相關(guān)文章:LM317中文資料