亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

虛擬桌面呈現(xiàn)設(shè)備中的視頻顯示加速方法與流程

文檔序號:11960372閱讀:880來源:國知局
虛擬桌面呈現(xiàn)設(shè)備中的視頻顯示加速方法與流程

本發(fā)明涉及一種視頻加速方法,尤其是涉及一種虛擬桌面呈現(xiàn)設(shè)備中的視頻顯示加速方法。



背景技術(shù):

當前虛擬桌面解決方案主要分為兩大類:VDI(Virtual Desktop Infrastructure)和SBC(Server-Based Computing)。

基于VDI的虛擬桌面解決方案,其原理是在服務(wù)器側(cè)為每個用戶準備其專用的虛擬機并在其中部署用戶所需的操作系統(tǒng)和各種應(yīng)用,然后通過桌面顯示協(xié)議將完整的虛擬機桌面交付給遠程的用戶使用。因此,這類解決方案的基礎(chǔ)是服務(wù)器虛擬化。服務(wù)器虛擬化主要有基于硬件輔助的虛擬化和基于操作系統(tǒng)輔助的虛擬化兩種,其中,前者是一種完全虛擬化的方法,能夠為虛擬機中的操作系統(tǒng)提供一個與物理硬件完全相同的虛擬硬件環(huán)境;而后者則是一種部分虛擬化的方法,需要通過修改操作系統(tǒng)系統(tǒng)才能夠?qū)⑵洳渴疬M虛擬機中。

基于SBC的虛擬桌面解決方案,其原理是將應(yīng)用軟件統(tǒng)一安裝在遠程服務(wù)器上,用戶通過和服務(wù)器建立的會話對服務(wù)器桌面及相關(guān)應(yīng)用進行訪問和操作,而不同用戶之間的會話是彼此隔離的。這類解決方案是在操作系統(tǒng)事件(例如鍵盤敲擊、鼠標點擊、視頻顯示更新等等)層和應(yīng)用軟件層之間插入虛擬化層,從而削弱了兩個層次之間的緊密耦合關(guān)系,使得應(yīng)用的運行不再局限于本地操作系統(tǒng)事件的驅(qū)使。其實,這種方式在早先的服務(wù)器版Windows中已有支持,但是在之前的應(yīng)用中,用戶環(huán)境被固定在特定服務(wù)器上,導(dǎo)致服務(wù)器不能夠根據(jù)負載情況調(diào)整資源配給。另外,之前的應(yīng)用場景主要是會話型業(yè)務(wù),其應(yīng)用具有局限性,例如不支持雙向語音、對視頻傳輸支持較差等等,而且服務(wù)器和用戶端之間的通信具有不安全性。因此,新型的基于SBC的虛擬桌面解決方案主要是在服務(wù)器版Windows提供的終端服務(wù)能力的基礎(chǔ)上對虛擬桌面的功能、性能、用戶體驗等方面進行改進。

而無論是VDI還是SBC的虛擬桌面解決方案,客戶端設(shè)備中的多媒體解碼主要是利用純軟件方法實現(xiàn),從服務(wù)器將編碼后的多媒體流一幀一幀的傳輸?shù)娇蛻舳?,在客戶端軟件解碼后直接渲染。該方式解碼速度緩慢,給用戶最直觀的的感受便是視頻很不流暢。



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

本發(fā)明的目的就是為了克服上述現(xiàn)有技術(shù)存在的缺陷而提供一種虛擬桌面呈現(xiàn)設(shè)備中的視頻顯示加速方。

本發(fā)明的目的可以通過以下技術(shù)方案來實現(xiàn):

一種虛擬桌面呈現(xiàn)設(shè)備中的多媒體顯示加速方法,包括:

S1:服務(wù)端對多媒體流數(shù)據(jù)進行編碼,并將編碼后的多媒體流數(shù)據(jù)發(fā)送到客戶端;

S2:客戶端接收編碼后的多媒體流數(shù)據(jù)后,識別其多媒體文件類型;

S3:基于識別出的多媒體文件類型得到所述多媒體流數(shù)據(jù)的編碼方式,并判斷SoC內(nèi)的硬件多媒體解碼模塊是否存在對應(yīng)的編解碼子模塊,若為是,則采用對應(yīng)的編解碼子模塊對多媒體流數(shù)據(jù)進行解碼,若為否,則使用軟件方式對多媒體流數(shù)據(jù)進行解碼;

S4:判斷解碼后的多媒體流數(shù)據(jù)是否支持硬件渲染,若為是,則采用GPU對多媒體流數(shù)據(jù)進行渲染,若為否,則使用軟件方式對多媒體流數(shù)據(jù)進行渲染。

所述硬件多媒體解碼模塊包括:H.246編解碼子模塊、JPEG編解碼子模塊、MPEG4編解碼子模塊和MP3編解碼子模塊。

所述步驟S4具體包括步驟:

S41:判斷多媒體文件是否為純音頻,若為是,則直接播放,若為否,則執(zhí)行步驟S42;

S42:判斷解碼后的多媒體流數(shù)據(jù)是否支持硬件渲染,若為是,則采用GPU對多媒體流數(shù)據(jù)進行渲染,若為否,則使用軟件方式對多媒體流數(shù)據(jù)進行渲染。

支持硬件渲染的多媒體流數(shù)據(jù)編碼方式種類包括:H.246、JPEG、MPEG4和RGB。

所述步驟S42中,采用GPU對多媒體流數(shù)據(jù)進行渲染的過程具體包括步驟:

S421:解碼后的多媒體流數(shù)據(jù)存放于系統(tǒng)內(nèi)存中;

S422:DMA控制器控制系統(tǒng)內(nèi)存中存放的解碼后的多媒體流數(shù)據(jù)傳輸至GPU中;

S423:GPU根據(jù)解碼后的多媒體流數(shù)據(jù)對多媒體流數(shù)據(jù)進行渲染。

所述步驟S422的過程中,DMA控制器接管系統(tǒng)總線的控制權(quán)。

所述步驟S422的過程中,DMA控制器和CPU交替訪問系統(tǒng)內(nèi)存。

所述系統(tǒng)內(nèi)存為物理內(nèi)存和/或虛擬內(nèi)存。

與現(xiàn)有技術(shù)相比,本發(fā)明具有以下優(yōu)點:

1)對支持硬解和硬件渲染的多媒體流數(shù)據(jù)優(yōu)先采用硬件計算的方式,可以節(jié)省本已稀缺的CPU計算資源,提升客戶端的響應(yīng)速度和播放體驗。

2)通過SoC內(nèi)的硬件多媒體編解碼模塊充分利用軟件與硬件功能,解決虛擬桌面呈現(xiàn)設(shè)備的視頻播放性能不足的問題,以實現(xiàn)視頻處理加速的功能。

3)對各種格式的多媒體流數(shù)據(jù)進行篩選處理,降低了網(wǎng)絡(luò)帶寬的使用率,同時兼顧了兼容性。

4)數(shù)據(jù)從內(nèi)存中到GPU中的過程采用了DMA方式,這種方式可以不需要CPU來執(zhí)行中轉(zhuǎn),因此CPU可以處理自己的計算任務(wù),不會被拖累,提高了CPU的效率。

5)采用DMA和CPU交替訪問系統(tǒng)內(nèi)存的方式,CPU既不停止主程序的運行,也不進入等待狀態(tài),可以更加高效。

附圖說明

圖1為本發(fā)明方法的主要步驟流程示意圖;

圖2為本發(fā)明實現(xiàn)系統(tǒng)的組成結(jié)構(gòu)示意圖;

其中1、CPU,2、GPU,3、DMA控制器,4、系統(tǒng)內(nèi)存,5、SoC,6、系統(tǒng)總線。

具體實施方式

下面結(jié)合附圖和具體實施例對本發(fā)明進行詳細說明。本實施例以本發(fā)明技術(shù)方案為前提進行實施,給出了詳細的實施方式和具體的操作過程,但本發(fā)明的保護范圍不限于下述的實施例。

為了實現(xiàn)本申請,如圖2所示,客戶端的SoC 5包含CPU 1、GPU 2以及DMA 控制器3,CPU 1、GPU 2以及DMA控制器均與系統(tǒng)總線6連接,此外系統(tǒng)內(nèi)存4也連接至系統(tǒng)總線6。

一種虛擬桌面呈現(xiàn)設(shè)備中的多媒體顯示加速方法,如圖1所示,包括:

S1:服務(wù)端對多媒體流數(shù)據(jù)進行編碼,并將編碼后的多媒體流數(shù)據(jù)發(fā)送到客戶端;

S2:客戶端接收編碼后的多媒體流數(shù)據(jù)后,識別其多媒體文件類型;

S3:基于識別出的多媒體文件類型得到多媒體流數(shù)據(jù)的編碼方式,并判斷SoC 5內(nèi)的硬件多媒體解碼模塊是否存在對應(yīng)的編解碼子模塊,若為是,則采用對應(yīng)的編解碼子模塊對多媒體流數(shù)據(jù)進行解碼,若為否,則使用軟件方式對多媒體流數(shù)據(jù)進行解碼,其中,硬件多媒體解碼模塊包括:H.246編解碼子模塊、JPEG編解碼子模塊、MPEG4編解碼子模塊和MP3編解碼子模塊;

S4:判斷解碼后的多媒體流數(shù)據(jù)是否支持硬件渲染,若為是,則采用GPU 2對多媒體流數(shù)據(jù)進行渲染,若為否,則使用軟件方式對多媒體流數(shù)據(jù)進行渲染,支持硬件渲染的多媒體流數(shù)據(jù)編碼方式種類包括:H.246、JPEG、MPEG4和RGB。

步驟S4具體包括步驟:

S41:判斷多媒體文件是否為純音頻,若為是,則直接播放,若為否,則執(zhí)行步驟S42;

S42:判斷解碼后的多媒體流數(shù)據(jù)是否支持硬件渲染,若為是,則采用GPU 2對多媒體流數(shù)據(jù)進行渲染,若為否,則使用軟件方式對多媒體流數(shù)據(jù)進行渲染,其中,采用GPU 2對多媒體流數(shù)據(jù)進行渲染的過程具體包括步驟:

S421:解碼后的多媒體流數(shù)據(jù)存放于系統(tǒng)內(nèi)存4中,其中,系統(tǒng)內(nèi)存4為物理內(nèi)存和/或虛擬內(nèi)存,具有由操作系統(tǒng)決定;

S422:DMA控制器3控制系統(tǒng)內(nèi)存4中存放的解碼后的多媒體流數(shù)據(jù)傳輸至GPU 2中,其中,步驟S422的過程中,DMA控制器3接管系統(tǒng)總線6的控制權(quán),優(yōu)選為,DMA控制器3和CPU 1交替訪問系統(tǒng)內(nèi)存4;

S423:GPU 2根據(jù)解碼后的多媒體流數(shù)據(jù)對多媒體流數(shù)據(jù)進行渲染。

采用基于VDI的解決方案,用戶能夠獲得一個完整的桌面操作系統(tǒng)環(huán)境,與傳統(tǒng)的本地計算機的使用體驗十分接近。而且在這類解決方案中,用戶虛擬桌面能夠做到性能和安全的隔離,并擁有服務(wù)器虛擬化技術(shù)帶來的其它優(yōu)勢,服務(wù)質(zhì)量可以得到保障。但是,這類解決方案需要在服務(wù)器側(cè)部署服務(wù)器虛擬化及其管理軟件, 對計算資源和存儲資源要求較高,具有較高的成本。

采用基于SBC的解決方案,應(yīng)用軟件可以像傳統(tǒng)方式一樣安裝和部署到服務(wù)器上,然后同時提供給多個用戶使用,具有較低的資源需求,但是在性能隔離和安全隔離方面只能夠依賴于底層的Windows操作系統(tǒng)。另外,因為這類解決方案在服務(wù)器上安裝的是服務(wù)器版Windows,其界面與用戶慣用的桌面版操作系統(tǒng)有所差異,所以為了減少用戶在使用時的困擾,當前的解決方案往往只為用戶提供應(yīng)用軟件的操作界面而并非完整的操作系統(tǒng)桌面。因此

基于VDI的虛擬桌面比較適合于對桌面功能需求完善的用戶使用,基于SBC的虛擬桌面更適合于對軟件需求單一的內(nèi)部用戶使用。因此本申請中采用VDI的虛擬桌面會更加合適。

首先服務(wù)器的VDI模塊會自動選擇當前最合適的編碼方式對視頻數(shù)據(jù)進行編碼,并將編碼后的數(shù)據(jù)流發(fā)送到客戶端。

當前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1