两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

一種基于圖形虛擬化技術(shù)的云游戲框架的制作方法

文檔序號:11117180閱讀:868來源:國知局
一種基于圖形虛擬化技術(shù)的云游戲框架的制造方法與工藝

本發(fā)明涉及一種基于圖形虛擬化技術(shù)的云游戲框架,屬于云計算虛擬游戲技術(shù)領(lǐng)域。



背景技術(shù):

隨著計算機領(lǐng)域的發(fā)展,電腦游戲的市場也在不斷擴大,僅2011年,玩家就在電腦游戲,硬件和配件上花費了247億5000萬美元。傳統(tǒng)的游戲是通過光盤或在線下載進行發(fā)售,玩家必須將游戲安裝在本地的物理機器上才可以使用。但是因為游戲的復(fù)雜和多樣性,對硬件和軟件環(huán)境的要求也各不相同,導(dǎo)致游戲的安裝過程十分復(fù)雜。

此外,玩家可能會發(fā)現(xiàn)他們的電腦性能不夠強大,不能在全高特效的情況下保證游戲的幀速率。因此,玩家必須不斷升級他們的電腦,以便玩最新的電腦游戲,獲得更好的游戲體驗。

云游戲是一個更好的方式來提供高品質(zhì)的游戲體驗。在云游戲系統(tǒng)中,電腦游戲運行在強大的云服務(wù)器上,而玩家通過網(wǎng)絡(luò)化的瘦客戶端與游戲交互。瘦客戶端是輕量級的,可以移植到資源受限的平臺,如移動設(shè)備和電視機頂盒。通過云游戲系統(tǒng),玩家可以在任何地方、任何時間玩最新的電腦游戲,而游戲開發(fā)者也可以根據(jù)一個特定的電腦配置來優(yōu)化他們的游戲。

雖然云游戲是游戲行業(yè)的一個很有前途的方向,但是如何在控制硬件投資的情況下實現(xiàn)良好的用戶體驗,仍然是一個棘手的問題。游戲玩家在要求高性能的同時,還要求高的游戲畫面質(zhì)量,但是又不想付出太多。因此,服務(wù)提供商設(shè)計的系統(tǒng)不僅要滿足玩家的需求,而且還要考慮彈性性能,可擴展性和資源配置。事實上,雖然實時視頻流傳輸已經(jīng)是一項成熟的技術(shù),但是云游戲系統(tǒng)在運行游戲的同時,還要處理用戶的輸入,并進行渲染、采集、編碼、傳輸、解碼、打包,并實時顯示,因而更加難以優(yōu)化。

OnLive作為一家云游戲平臺服務(wù)公司,早在2009年的舊金山GDC游戲開發(fā)者大會上提出了云游戲這個概念。但是僅僅三年半,OnLive就因在服務(wù)器租用和購置方面的巨大投入,出現(xiàn)了財政困難。云游戲提供商在硬件投資和提高游戲質(zhì)量之間的權(quán)衡,面臨著巨大的挑戰(zhàn)。如果使用低端硬件會導(dǎo)致不愉快的用戶體驗,這可能會推動玩家遠離云游戲,但是使用高端硬件,按照以往一個用戶必須對應(yīng)一臺實體服務(wù)器的方式,會產(chǎn)生巨大的財務(wù)負擔。

游戲?qū)C器的硬件配置,尤其是顯卡水平要求很高,如果基于圖形虛擬化的技術(shù)就可以在一臺服務(wù)器上虛擬化運行多個游戲,從而減少硬件投入。此外,不同的游戲類型擁有不同的硬件要求,如果不對服務(wù)器資源進行很好的分配,會造成資源的浪費。例如運行3D射擊游戲的服務(wù)器處理2D休閑游戲就存在性能過剩的情況。



技術(shù)實現(xiàn)要素:

本發(fā)明所要解決的技術(shù)問題是提供一種基于云環(huán)境,通過圖形虛擬化技術(shù),能夠使游戲服務(wù)器根據(jù)游戲的需要配置,減少硬件資源浪費的基于圖形虛擬化技術(shù)的云游戲框架。

本發(fā)明為了解決上述技術(shù)問題采用以下技術(shù)方案:本發(fā)明設(shè)計了一種基于圖形虛擬化技術(shù)的云游戲框架,用戶通過客戶端經(jīng)網(wǎng)絡(luò)訪問云游戲服務(wù)器,獲得云游戲服務(wù)器上所運行游戲的音視頻信號,并針對所運行游戲發(fā)送控制指令,所述云游戲框架包括游戲門戶服務(wù)器和至少兩臺游戲服務(wù)器,其中,各臺游戲服務(wù)器上分別設(shè)置圖形虛擬機,以及與圖形虛擬機相對應(yīng)的至少兩臺虛擬機,虛擬機的數(shù)量大于或等于游戲種類的數(shù)量,各臺游戲服務(wù)器上的各臺虛擬機分別安裝指定游戲,并設(shè)置代理,其中,各臺游戲服務(wù)器上的圖形虛擬機獨占游戲服務(wù)器的圖形處理器,各臺游戲服務(wù)器上的各臺虛擬機通過對應(yīng)圖形虛擬機共享所設(shè)游戲服務(wù)器的圖形處理器;門戶服務(wù)器用于存儲游戲列表,以及各個游戲分別所在游戲服務(wù)器中對應(yīng)虛擬機的網(wǎng)絡(luò)地址,客戶端通過門戶服務(wù)器選擇、并獲得指定游戲所在游戲服務(wù)器中對應(yīng)虛擬機的網(wǎng)絡(luò)地址,客戶端根據(jù)指定游戲所在游戲服務(wù)器中對應(yīng)虛擬機的網(wǎng)絡(luò)地址,連接對應(yīng)游戲服務(wù)器中的對應(yīng)虛擬機;各臺虛擬機上的代理分別實現(xiàn)所連客戶端控制指令的接收,以及針對虛擬機上所運行游戲進行游戲音視頻信號的截取,并發(fā)送至所連客戶端。

作為本發(fā)明的一種優(yōu)選技術(shù)方案:所述各臺游戲服務(wù)器上各臺虛擬機上所設(shè)置的代理分別包括音頻源處理模塊、視頻源處理模塊、音視頻網(wǎng)絡(luò)傳輸服務(wù)模塊和輸入事件處理模塊,其中,音頻源處理模塊用于針對虛擬機上所運行游戲進行游戲音頻信號的截?。灰曨l源處理模塊用于針對虛擬機上所運行游戲進行游戲視頻信號的截?。灰粢曨l網(wǎng)絡(luò)傳輸服務(wù)模塊用于將所獲對應(yīng)虛擬機上所運行游戲的游戲音視頻信號發(fā)送至所連客戶端;輸入事件處理模塊用于實現(xiàn)所連客戶端所發(fā)出控制指令的接收,并將其轉(zhuǎn)化為游戲動作、傳遞給對應(yīng)虛擬機上所運行的游戲。

作為本發(fā)明的一種優(yōu)選技術(shù)方案:所述代理中的音視頻網(wǎng)絡(luò)傳輸服務(wù)模塊為基于RTSP網(wǎng)絡(luò)協(xié)議的音視頻網(wǎng)絡(luò)傳輸服務(wù)模塊,音視頻網(wǎng)絡(luò)傳輸服務(wù)模塊基于RTSP網(wǎng)絡(luò)協(xié)議,將所獲對應(yīng)虛擬機上所運行游戲的游戲音視頻信號發(fā)送至所連客戶端;所述代理中的輸入事件處理模塊基于TCP/UDP網(wǎng)絡(luò)協(xié)議,實現(xiàn)所連客戶端控制指令的接收,并發(fā)送至對應(yīng)虛擬機上所運行的游戲中。

作為本發(fā)明的一種優(yōu)選技術(shù)方案:所述客戶端基于Live555庫處理所連虛擬機中音視頻網(wǎng)絡(luò)傳輸服務(wù)模塊基于RTSP網(wǎng)絡(luò)協(xié)議所發(fā)送的游戲音視頻信號,并且客戶端中不針對所接收到的音視頻信號進行緩沖。

作為本發(fā)明的一種優(yōu)選技術(shù)方案:所述門戶服務(wù)器中還包括游戲服務(wù)器選擇模塊,游戲服務(wù)器選擇模塊用于根據(jù)客戶端所選游戲,按客戶端所在地理位置、網(wǎng)絡(luò)狀況以及各個游戲服務(wù)器的運行狀態(tài),選擇客戶端所選游戲?qū)?yīng)的最佳游戲服務(wù)器,并經(jīng)網(wǎng)絡(luò)啟動該最佳游戲服務(wù)器上所選游戲?qū)?yīng)的虛擬機,以及獲得該最佳游戲服務(wù)器上所選游戲所對應(yīng)虛擬機的網(wǎng)絡(luò)地址。

作為本發(fā)明的一種優(yōu)選技術(shù)方案:所述游戲服務(wù)器為安裝XenServer軟件的物理機。

作為本發(fā)明的一種優(yōu)選技術(shù)方案:所述云游戲框架還包括中心服務(wù)器,中心服務(wù)器和所述各臺游戲服務(wù)器處于同一局域網(wǎng)中,中心服務(wù)器用于實現(xiàn)各臺游戲服務(wù)器之間的調(diào)度。

作為本發(fā)明的一種優(yōu)選技術(shù)方案:所述游戲服務(wù)器為安裝XenServer軟件的物理機;所述中心服務(wù)器為安裝XenCenter軟件的物理機。

本發(fā)明所述一種基于圖形虛擬化技術(shù)的云游戲框架采用以上技術(shù)方案與現(xiàn)有技術(shù)相比,具有以下技術(shù)效果:本發(fā)明設(shè)計的基于圖形虛擬化技術(shù)的云游戲框架,使得游戲畫面的響應(yīng)延遲可以達到100ms左右,可以滿足大部分游戲?qū)ρ舆t的要求,響應(yīng)延遲由處理延遲、傳輸延遲和顯示延遲三部分組成,其中,顯示延遲為30ms,和其他云游戲系統(tǒng)一樣,解碼器對于不同的游戲擁有一個穩(wěn)定的解碼時間;處理延遲降低到了30ms,相對于使用設(shè)備仿真法和應(yīng)用層接口重定向法來提供3D處理能力,并且本發(fā)明使用的圖形虛擬化方案具有更強的處理能力和更小的處理延遲;不僅如此,相對現(xiàn)有其它虛擬化方案對物理GPU利用率平均只有20%左右,且非常不穩(wěn)定的缺點,本發(fā)明使用的圖形虛擬化技術(shù)對GPU卡的利用率一直在50%以上,且狀態(tài)保持非常穩(wěn)定。

附圖說明

圖1是本發(fā)明所設(shè)計基于圖形虛擬化技術(shù)的云游戲框架中圖形虛擬化技術(shù)架構(gòu)示意圖;

圖2是本發(fā)明所設(shè)計基于圖形虛擬化技術(shù)的云游戲框架應(yīng)用部署示意圖;

圖3是本發(fā)明所設(shè)計基于圖形虛擬化技術(shù)的云游戲框架中游戲服務(wù)器端組件示意圖;

圖4是本發(fā)明所設(shè)計基于圖形虛擬化技術(shù)的云游戲框架中客戶端組件示意圖;

圖5是本發(fā)明所設(shè)計基于圖形虛擬化技術(shù)的云游戲框架示意圖。

具體實施方式

下面結(jié)合說明書附圖對本發(fā)明的具體實施方式作進一步詳細的說明。

云游戲框架實質(zhì)上是一種遠程渲染系統(tǒng),可以將其分為傳遞圖形流和傳遞視頻流兩種,這兩種方式最大的不同在于服務(wù)器與客戶端之間如何劃分負載。圖形流的方式,云服務(wù)器攔截圖形命令,壓縮命令,并將它們傳遞給客戶端,然后客戶端基于圖形指令集如OpenGL和Direct3D使用圖形芯片對游戲場景進行渲染。這種方式云服務(wù)器上不使用圖形芯片,從而允許每個云服務(wù)器同時支持多個客戶,但是客戶端需要承擔更多的負載,因而不能適用于性能受限的設(shè)備如移動設(shè)備和機頂盒。視頻流的方式,云服務(wù)器根據(jù)3D圖形命令渲染出2D視頻,壓縮視頻,并傳遞到客戶端,然后客戶端解碼和顯示視頻流。這種方式客戶端不需要進行3D圖形繪制,而解碼可以使用低成本的視頻解碼器芯片,更加適合瘦客戶端采用。由于視頻流方法不依賴于特定的3D芯片,相同的瘦客戶端可以很容易地移植到不同的平臺上。

如圖1和圖2所示,本發(fā)明設(shè)計了一種基于圖形虛擬化技術(shù)的云游戲框架,實際應(yīng)用當中,用戶通過客戶端經(jīng)網(wǎng)絡(luò)訪問云游戲服務(wù)器,獲得云游戲服務(wù)器上所運行游戲的音視頻信號,并針對所運行游戲發(fā)送控制指令,所述云游戲框架包括中心服務(wù)器、游戲門戶服務(wù)器、游戲服務(wù)器選擇模塊和至少兩臺游戲服務(wù)器,其中,各臺游戲服務(wù)器上分別設(shè)置圖形虛擬機,以及與圖形虛擬機相對應(yīng)的至少兩臺虛擬機,虛擬機的數(shù)量大于或等于游戲種類的數(shù)量,各臺游戲服務(wù)器上的各臺虛擬機分別安裝指定游戲,并設(shè)置代理,其中,各臺游戲服務(wù)器上的圖形虛擬機獨占游戲服務(wù)器的圖形處理器,各臺游戲服務(wù)器上的各臺虛擬機通過對應(yīng)圖形虛擬機共享所設(shè)游戲服務(wù)器的圖形處理器;門戶服務(wù)器用于存儲游戲列表,以及各個游戲分別所在游戲服務(wù)器中對應(yīng)虛擬機的網(wǎng)絡(luò)地址。實際應(yīng)用中,各臺游戲服務(wù)器為安裝XenServer軟件的物理機,采用XenServer這種虛擬化服務(wù)平臺,XenServer提供基于Windows的圖形化用戶界面,使之更加易于管理XenServer主機,池和共享存儲,通過安裝在物理機上的XenCenter可以很方便的部署,管理以及監(jiān)控虛擬機。另外,XenServer的服務(wù)器虛擬化是基于hypervisor的,這是一種運行在基礎(chǔ)物理服務(wù)器和操作系統(tǒng)之間的中間軟件層,不同于安裝在宿主操作系統(tǒng)之上的虛擬機軟件,它可以直接訪問服務(wù)器上包括磁盤和內(nèi)存在內(nèi)的所有物理設(shè)備。Hypervisors不但協(xié)調(diào)著這些硬件資源的訪問,使運行在其上的虛擬機更加出色的發(fā)揮服務(wù)器硬件的性能。同時也在各個虛擬機之間施加防護,分配給每一臺虛擬機適量的內(nèi)存,CPU,網(wǎng)絡(luò)和磁盤;中心服務(wù)器為安裝XenCenter軟件的物理機,圖1所示中,Qemu表示一套開源的模擬處理器;Mediator表示資源調(diào)度介質(zhì);Dom0表示圖形虛擬機(一個修改的linux內(nèi)核,是一個運行在xen hypervisor之上的獨特虛擬機,對訪問物理I/O和其它domu虛擬機具有特殊的權(quán)利,在其它任何虛擬機之前先啟動);VM1、VM2分別表示游戲虛擬機(所有運行在Xen hypervisor上的虛擬化客戶機);Graphics Driver表示顯卡驅(qū)動;Xen表示xen hypervisor虛擬機管理器;GPU表示物理顯卡。

現(xiàn)有的GPU虛擬化技術(shù)主要包括設(shè)備獨占使用(Direct pass-through)和應(yīng)用層接口重定向方法(API forwarding),前者一臺虛擬機獨占一塊GPU,其他虛擬機沒有權(quán)限直接訪問GPU。本發(fā)明所設(shè)計的圖像虛擬化技術(shù),可以獲得最接近物理GPU的圖形處理能力,但是服務(wù)器的圖形處理資源不能共享,不能根據(jù)實際需要靈活分配,這會造成硬件資源的浪費,增加硬件資源的投入。后者通過在應(yīng)用層攔截對GPU的調(diào)用,通過將OpenGL和DirectX的API重定向的方式,轉(zhuǎn)發(fā)給主機上的顯卡驅(qū)動來完成部分顯卡的功能。這種方式不能完全發(fā)揮出GPU的性能,且一些GPU的特性也不能使用。

安裝XenServer軟件的游戲服務(wù)器上使用的圖形虛擬化技術(shù)結(jié)合了設(shè)備直通和API重定向的方法。在這種虛擬化技術(shù)中,使用Hypervisors創(chuàng)建一臺虛擬機(圖形虛擬機)使用設(shè)備直通的方法完全獨占GPU,通過專業(yè)的顯卡驅(qū)動,可以發(fā)揮GPU的全部特性,再創(chuàng)建多臺虛擬機(桌面虛擬機)提供給用戶使用,這些虛擬機不能直接訪問GPU,但是它們可以與圖形虛擬機共享GPU的數(shù)據(jù)存儲空間和指令通道。通過API重定向的方法,可以將其他桌面虛擬機對GPU的調(diào)用指令傳遞給圖形虛擬機,調(diào)用圖形虛擬機的API來快速訪問物理GPU。這種方法實現(xiàn)了多臺虛擬機共享一個物理GPU,使多臺虛擬機可以同時在一個GPU上完成圖形處理業(yè)務(wù)。通過這種方法桌面虛擬機調(diào)用圖形虛擬機的API對GPU進行訪問,相當于將GPU直通給多個虛擬機。相比于對OpenGL和DirectX的API重定向,這種方法在實現(xiàn)GPU共享的同時,可以使用GPU的所有特性,擁有更好的性能。

客戶端通過門戶服務(wù)器選擇、并獲得指定游戲所在游戲服務(wù)器中對應(yīng)虛擬機的網(wǎng)絡(luò)地址,其中,客戶端通過門戶服務(wù)器選擇指定游戲,門戶服務(wù)器控制游戲服務(wù)器選擇模塊根據(jù)客戶端所選游戲,按客戶端所在地理位置、網(wǎng)絡(luò)狀況以及各個游戲服務(wù)器的運行狀態(tài),選擇客戶端所選游戲?qū)?yīng)的最佳游戲服務(wù)器,并經(jīng)網(wǎng)絡(luò)啟動該最佳游戲服務(wù)器上所選游戲?qū)?yīng)的虛擬機,以及獲得該最佳游戲服務(wù)器上所選游戲所對應(yīng)虛擬機的網(wǎng)絡(luò)地址,并將網(wǎng)絡(luò)地址返回給門戶服務(wù)器,門戶服務(wù)器將該網(wǎng)絡(luò)地址返回給客戶端;在云游戲中網(wǎng)絡(luò)延遲更為關(guān)鍵,因為云游戲客戶端不具備游戲狀態(tài)信息,很難有機會進行延遲補償,例如像在普通網(wǎng)絡(luò)游戲中一樣進行死亡預(yù)測。因此,在本發(fā)明所設(shè)計框架中,門戶服務(wù)器會根據(jù)玩家選擇的游戲類型評估該游戲?qū)W(wǎng)絡(luò)延遲的敏感程度以及推薦的硬件配置,然后根據(jù)玩家的地理位置,網(wǎng)絡(luò)狀況以及各個游戲服務(wù)器的運行狀態(tài)來選擇一個最佳的游戲服務(wù)器。

本發(fā)明基于上述客戶端所獲網(wǎng)絡(luò)地址,即客戶端獲得指定游戲所在游戲服務(wù)器中對應(yīng)虛擬機的網(wǎng)絡(luò)地址,客戶端根據(jù)指定游戲所在游戲服務(wù)器中對應(yīng)虛擬機的網(wǎng)絡(luò)地址,連接對應(yīng)游戲服務(wù)器中的對應(yīng)虛擬機;各臺虛擬機上的代理分別實現(xiàn)所連客戶端控制指令的接收,以及針對虛擬機上所運行游戲進行游戲音視頻信號的截取,并發(fā)送至所連客戶端;其中,如圖3所示,各臺游戲服務(wù)器上各臺虛擬機上所設(shè)置的代理分別包括音頻源處理模塊、視頻源處理模塊、音視頻網(wǎng)絡(luò)傳輸服務(wù)模塊和輸入事件處理模塊,其中,音頻源處理模塊用于針對虛擬機上所運行游戲進行游戲音頻信號的截??;視頻源處理模塊用于針對虛擬機上所運行游戲進行游戲視頻信號的截??;音視頻網(wǎng)絡(luò)傳輸服務(wù)模塊為基于RTSP網(wǎng)絡(luò)協(xié)議的音視頻網(wǎng)絡(luò)傳輸服務(wù)模塊,音視頻網(wǎng)絡(luò)傳輸服務(wù)模塊基于RTSP網(wǎng)絡(luò)協(xié)議,將所獲對應(yīng)虛擬機上所運行游戲的游戲音視頻信號發(fā)送至所連客戶端;輸入事件處理模塊基于TCP/UDP網(wǎng)絡(luò)協(xié)議,實現(xiàn)所連客戶端控制指令的接收,并將其轉(zhuǎn)化為游戲動作、傳遞給對應(yīng)虛擬機上所運行的游戲中,使用TCP或UDP協(xié)議單獨的連接,這樣做的好處是可以減小延遲;如果使用相同的RTSP協(xié)議連接,輸入事件可能或因為其他消息被延遲,另外,RTSP協(xié)議是基于文本的,而文本解析相對耗時,所以使用RTSP協(xié)議傳輸可能會帶來更長的延遲??蛻舳嘶贚ive555庫處理所連虛擬機中音視頻網(wǎng)絡(luò)傳輸服務(wù)模塊基于RTSP網(wǎng)絡(luò)協(xié)議所發(fā)送的游戲音視頻信號,并且為了提高延遲方面的用戶體驗,客戶端中不針對所接收到的音視頻信號進行緩沖,Live555的數(shù)據(jù)包沒有文件頭,所以客戶端根據(jù)數(shù)據(jù)包的標記位來判斷這些連續(xù)的數(shù)據(jù)包是不是屬于同一個視頻幀,雖然零緩沖策略可能會導(dǎo)致在網(wǎng)絡(luò)延遲不穩(wěn)定時視頻播放速率的不一致,但是它最大限度地減少了輸入響應(yīng)延遲,權(quán)衡畫面質(zhì)量與輸入響應(yīng)后,這種方式能提供更好的用戶體驗;中心服務(wù)器和所述各臺游戲服務(wù)器處于同一局域網(wǎng)中,中心服務(wù)器用于實現(xiàn)各臺游戲服務(wù)器之間的調(diào)度,即為所有游戲服務(wù)器創(chuàng)建了一個資源池,它將這些游戲服務(wù)器結(jié)合在一起形成一個管理實體。通過這個資源池,可以把多臺主機和它們連接的共享存儲看作一個統(tǒng)一的資源,并基于它們的資源需求和業(yè)務(wù)優(yōu)先級,實現(xiàn)虛擬機的靈活部署。結(jié)合共享存儲,虛擬機可以在池中任何一臺主機上啟動,如果有一個游戲服務(wù)器硬件故障,你可以在池中的另一個游戲服務(wù)器中重啟失敗的虛擬機,并且只有很短的停機時間。

在游戲中實時捕獲桌面屏幕主要有兩種方式,一種是按照一定頻率截取整個屏幕,也可以根據(jù)需要截取指定的區(qū)域。另一種是攔截游戲?qū)D形繪制函數(shù)的調(diào)用,當一個新游戲畫面渲染完成時立刻從游戲的緩沖區(qū)捕獲桌面屏幕。桌面截取方式是以輪詢方式觸發(fā)的,它是按照指定的頻率主動的在桌面上截圖。API攔截方式是事件驅(qū)動的,每當一個游戲畫面在后臺緩沖區(qū)完成繪制時,該方式都有機會獲取一個游戲畫面。代理進程使用一個速率控制器決定模塊是否應(yīng)該捕獲一個屏幕,以滿足所需的視頻流幀速率。

本發(fā)明所設(shè)計云游戲框架在實際應(yīng)用中,采用了上述兩種捕獲桌面屏幕的方式。屏幕捕獲是有平臺依賴性的,在Linux下使用MIT-SHM截取屏幕,在Windows下使用GDI截取屏幕。對于支持DirectDraw和Direct3D的游戲,可以使用攔截DirectX API的方式,這種方式效率更高,延遲更低。

對于音頻和視頻幀來說,分別由兩個不同的編碼器模塊進行編碼,編碼的模式主要有兩種,一種是由兩個編碼器分別負責所有的音頻和視頻幀編碼,這種編碼方式擁有更好的效率,不會增加CPU的負載,因為不論有多少用戶,所有的音頻和視頻幀只被編碼一次,然后發(fā)送到各個客戶端。另一種方式為每一個用戶分配一個專用的編碼器,優(yōu)點是它可以針對不同用戶使用不同的編碼配置,如比特率、分辨率和視頻質(zhì)量參數(shù),但是相應(yīng)的也會增加CPU的負載,這種方式無法支持太多的用戶。本發(fā)明實際應(yīng)用中,對捕獲的幀進行編碼可以根據(jù)需要使用上述任何一種編碼模式。一對多的方式支持更多的用戶同時使用,一對一的方式更加靈活,支持使用不同的編碼配置。

如圖4所示,客戶端主要由兩部分組成,一是RTSP客戶端,是用來接收視音頻流的,這部分基于Live555庫實現(xiàn),并采用了零緩沖的機制來減少延遲,在接收完一個幀的數(shù)據(jù)后立刻解碼交給SDL庫渲染顯示。2D視頻流的渲染顯示不需要專用的顯示芯片,極大的減小了客戶端的圖形處理壓力,因此瘦客戶端可以移植到很多資源受限的平臺,例如移動設(shè)備和機頂盒。二是輸入事件的捕獲,通過鉤子攔截底層鍵盤和鼠標事件來完美地模仿每一個游戲服務(wù)器上的玩家的輸入,這種方式可以跨平臺捕獲SDL事件,更好的支持各種特殊的輸入設(shè)備。

如圖5所示,這是云游戲系統(tǒng)的架構(gòu)圖,說明了一個云游戲服務(wù)的示例,其中游戲服務(wù)器將游戲屏幕以視頻流的形式發(fā)送給瘦客戶端,瘦客戶端將用戶的輸入如鍵盤和鼠標的動作,發(fā)送到游戲服務(wù)器。通過云游戲,游戲玩家可以隨時隨地玩最新的電腦游戲,而游戲開發(fā)人員可以根據(jù)一個特定的服務(wù)器配置優(yōu)化他們的游戲。

基于上述所設(shè)計基于圖形虛擬化技術(shù)的云游戲框架,實際應(yīng)用中,使得游戲畫面的響應(yīng)延遲可以達到100ms左右,可以滿足大部分游戲?qū)ρ舆t的要求,響應(yīng)延遲由處理延遲、傳輸延遲和顯示延遲三部分組成,其中,顯示延遲為30ms,和其他云游戲系統(tǒng)一樣,解碼器對于不同的游戲擁有一個穩(wěn)定的解碼時間;處理延遲降低到了30ms,相對于使用設(shè)備仿真法和應(yīng)用層接口重定向法來提供3D處理能力,并且本發(fā)明使用的圖形虛擬化方案具有更強的處理能力和更小的處理延遲;不僅如此,相對現(xiàn)有其它虛擬化方案對物理GPU利用率平均只有20%左右,且非常不穩(wěn)定的缺點,本發(fā)明使用的圖形虛擬化技術(shù)對GPU卡的利用率一直在50%以上,且狀態(tài)保持非常穩(wěn)定。

上面結(jié)合附圖對本發(fā)明的實施方式作了詳細說明,但是本發(fā)明并不限于上述實施方式,在本領(lǐng)域普通技術(shù)人員所具備的知識范圍內(nèi),還可以在不脫離本發(fā)明宗旨的前提下做出各種變化。

當前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
紫云| 子长县| 得荣县| 崇仁县| 卓尼县| 南阳市| 深泽县| 万载县| 莎车县| 来安县| 墨脱县| 武川县| 光山县| 原阳县| 襄垣县| 安化县| 焉耆| 铜陵市| 仪陇县| 门头沟区| 桐乡市| 都江堰市| 都安| 台东县| 房产| 寿阳县| 尚志市| 漳州市| 西平县| 博湖县| 墨江| 疏勒县| 信宜市| 南木林县| 井陉县| 康乐县| 休宁县| 永平县| 新野县| 卫辉市| 张掖市|