0.34414(Cb-128)-0.71414(Cr-128)
[0058]B = Y+1.772 (Cb-128)
[0059]其中,R代表紅色,G代表綠色,B代表藍(lán)色,Y代表明亮度,Cr代表RGB輸入信號(hào)紅色部分與RGB信號(hào)亮度值之間的差異,Cb代表RGB輸入信號(hào)藍(lán)色部分與RGB信號(hào)亮度值之間的差異。
[0060]保存RGB數(shù)據(jù)信息,調(diào)用本地圖形顯示庫(kù)傳遞RGB數(shù)據(jù)顯示mjpeg幀。
[0061]若客戶端的顯示驅(qū)動(dòng)支持直接mjpeg幀顯示,則客戶端對(duì)解碼后的幀數(shù)據(jù)調(diào)用顯示控制器做顯示輸出。
[0062]下面對(duì)一些縮略語(yǔ)和關(guān)鍵術(shù)語(yǔ)定義進(jìn)行如下介紹。
[0063]虛擬機(jī):用軟件或硬件的輔助,在主機(jī)上運(yùn)行多個(gè)獨(dú)立操作系統(tǒng)的計(jì)算機(jī)技術(shù);
[0064]虛擬設(shè)備:虛擬機(jī)中設(shè)備;
[0065]VDI !virtual device interface,向軟件提供虛擬設(shè)備交互接口 ;
[0066]spice: 一種使用VDI做虛擬設(shè)備交互的協(xié)議;
[0067]mjpeg:Mot1n Joint Photographic Experts Group,是一種視頻編碼格式;
[0068]KVM:kernel-based virtual module,是一種虛擬化技術(shù);
[0069]DaaS:云桌面服務(wù);
[0070]GPU:英文全稱Graphic Processing Unit,中文翻譯為“圖形處理器”。
[0071]如圖2、3所示,一種基于SPICE協(xié)議的遠(yuǎn)程視頻顯示系統(tǒng),包括服務(wù)器和客戶端,所述服務(wù)器包括,第一控制模塊,其用于與客戶端進(jìn)行數(shù)據(jù)交互,根據(jù)客戶端反饋的信息判斷客戶端的顯示驅(qū)動(dòng)是否支持視頻圖像幀的直接顯示,如果支持則調(diào)用幀數(shù)據(jù)處理模塊;否則調(diào)用幀數(shù)據(jù)發(fā)送模塊;幀數(shù)據(jù)處理模塊,其用于將待傳輸?shù)囊曨l圖像幀進(jìn)行倒轉(zhuǎn),進(jìn)而調(diào)用幀數(shù)據(jù)發(fā)送模塊;幀數(shù)據(jù)發(fā)送模塊,其用于將待傳輸?shù)囊曨l圖像幀發(fā)送給客戶端;
[0072]所述客戶端包括,幀數(shù)據(jù)接收模塊,其用于接收幀數(shù)據(jù)并發(fā)送給硬件解碼模塊;硬件解碼模塊,其用于對(duì)接收的視頻圖像幀進(jìn)行硬件解碼,對(duì)解碼后的視頻圖像幀進(jìn)行保存?zhèn)溆?;第二控制模塊,其用于查詢客戶端的顯示驅(qū)動(dòng)信息,判斷顯示驅(qū)動(dòng)是否支持視頻圖像幀的直接顯示,如果支持則調(diào)用顯示控制器,如果不支持調(diào)用色彩空間轉(zhuǎn)換模塊;顯示控制器,其用于直接顯示解碼后的視頻圖像幀;色彩空間轉(zhuǎn)換模塊,其用于將解碼后的視頻圖像幀進(jìn)行色彩空間轉(zhuǎn)換,對(duì)轉(zhuǎn)換后的視頻圖像幀調(diào)用本地圖像顯示庫(kù)進(jìn)行顯示。
[0073]其中,所述硬件解碼模塊包括解析單元、解碼單元和存儲(chǔ)單元:所述解析單元,其用于對(duì)所得視頻圖像幀進(jìn)行解析獲取幀數(shù)據(jù)信息;所述解碼單元,其用于根據(jù)所得幀數(shù)據(jù)信息進(jìn)行硬件解碼處理;所述存儲(chǔ)單元,其用于將硬件解碼后的數(shù)據(jù)保存?zhèn)溆?。所述幀?shù)據(jù)信息包括量化表、霍夫曼表及圖像數(shù)據(jù)長(zhǎng)度。具體地硬件解碼模塊可以通過(guò)DSP等處理器實(shí)現(xiàn)。
[0074]以上所述僅為本發(fā)明的較佳實(shí)施例,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
【主權(quán)項(xiàng)】
1.一種基于SPICE協(xié)議的遠(yuǎn)程視頻顯示方法,其特征在于,包括如下步驟: 服務(wù)器與客戶端信息交互,判斷客戶端的顯示驅(qū)動(dòng)是否支持視頻圖像幀的直接顯示,如果支持,則將待傳輸?shù)囊曨l圖像幀進(jìn)行倒轉(zhuǎn)發(fā)送給客戶端,如果不支持,則直接將待傳輸?shù)囊曨l圖像幀發(fā)送給客戶端; 客戶端對(duì)接收的視頻圖像幀進(jìn)行硬件解碼,對(duì)解碼后的視頻圖像幀進(jìn)行保存?zhèn)溆茫豢蛻舳瞬樵冿@示驅(qū)動(dòng)信息,判斷顯示驅(qū)動(dòng)是否支持視頻圖像幀的直接顯示,如果支持,則調(diào)用顯示控制器直接顯示解碼后的視頻圖像幀,如果不支持,將解碼后的視頻圖像幀進(jìn)行色彩空間轉(zhuǎn)換,對(duì)轉(zhuǎn)換后的視頻圖像幀調(diào)用本地圖像顯示庫(kù)進(jìn)行顯示。2.根據(jù)權(quán)利要求1所述一種基于SPICE協(xié)議的遠(yuǎn)程視頻顯示方法,其特征在于,所述客戶端對(duì)接收的視頻圖像幀進(jìn)行硬件解碼的具體實(shí)現(xiàn)為: 對(duì)所得視頻圖像幀進(jìn)行解析獲取幀數(shù)據(jù)信息; 根據(jù)所得的幀數(shù)據(jù)信息進(jìn)行硬件解碼處理; 將硬件解碼后的數(shù)據(jù)保存?zhèn)溆谩?.根據(jù)權(quán)利要求2所述一種基于SPICE協(xié)議的遠(yuǎn)程視頻顯示方法,其特征在于,所述幀數(shù)據(jù)信息包括量化表、霍夫曼表及圖像數(shù)據(jù)長(zhǎng)度。4.根據(jù)權(quán)利要求1所述一種基于SPICE協(xié)議的遠(yuǎn)程視頻顯示方法,其特征在于,客戶端的顯示驅(qū)動(dòng)不支持視頻圖像幀的直接顯示的情況下,將解碼后的視頻圖像幀進(jìn)行色彩空間轉(zhuǎn)換的具體實(shí)現(xiàn)為進(jìn)行YCrCb向RGB的色彩空間轉(zhuǎn)換,轉(zhuǎn)換公式如下:R = Y+1.402(Cr-128)G = Y-0.34414(Cb-128)-0.71414(Cr-128)B = Y+1.772(Cb-128) 其中,R代表紅色,G代表綠色,B代表藍(lán)色,Y代表明亮度,Cr代表RGB輸入信號(hào)紅色部分與RGB信號(hào)亮度值之間的差異,Cb代表RGB輸入信號(hào)藍(lán)色部分與RGB信號(hào)亮度值之間的差異。5.根據(jù)權(quán)利要求1所述一種基于SPICE協(xié)議的遠(yuǎn)程視頻顯示方法,其特征在于,所述視頻圖像幀為mjpeg格式的視頻圖像幀。6.一種基于SPICE協(xié)議的遠(yuǎn)程視頻顯示系統(tǒng),其特征在于,包括服務(wù)器和客戶端, 所述服務(wù)器包括, 第一控制模塊,其用于與客戶端進(jìn)行數(shù)據(jù)交互,根據(jù)客戶端反饋的信息判斷客戶端的顯示驅(qū)動(dòng)是否支持視頻圖像幀的直接顯示,如果支持則調(diào)用幀數(shù)據(jù)處理模塊;否則調(diào)用幀數(shù)據(jù)發(fā)送模塊; 幀數(shù)據(jù)處理模塊,其用于將待傳輸?shù)囊曨l圖像幀進(jìn)行倒轉(zhuǎn),進(jìn)而調(diào)用幀數(shù)據(jù)發(fā)送模塊; 幀數(shù)據(jù)發(fā)送模塊,其用于將待傳輸?shù)囊曨l圖像幀發(fā)送給客戶端; 所述客戶端包括, 幀數(shù)據(jù)接收模塊,其用于接收幀數(shù)據(jù)并發(fā)送給硬件解碼模塊; 硬件解碼模塊,其用于對(duì)接收的視頻圖像幀進(jìn)行硬件解碼,對(duì)解碼后的視頻圖像幀進(jìn)行保存?zhèn)溆茫? 第二控制模塊,其用于查詢客戶端的顯示驅(qū)動(dòng)信息,判斷顯示驅(qū)動(dòng)是否支持視頻圖像幀的直接顯示,如果支持則調(diào)用顯示控制器,如果不支持調(diào)用色彩空間轉(zhuǎn)換模塊; 顯示控制器,其用于直接顯示解碼后的視頻圖像幀; 色彩空間轉(zhuǎn)換模塊,其用于將解碼后的視頻圖像幀進(jìn)行色彩空間轉(zhuǎn)換,對(duì)轉(zhuǎn)換后的視頻圖像幀調(diào)用本地圖像顯示庫(kù)進(jìn)行顯示。7.根據(jù)權(quán)利要求6所述一種基于SPICE協(xié)議的遠(yuǎn)程視頻顯示系統(tǒng),其特征在于,所述硬件解碼模塊包括解析單元、解碼單元和存儲(chǔ)單元: 所述解析單元,其用于對(duì)所得視頻圖像幀進(jìn)行解析獲取幀數(shù)據(jù)信息; 所述解碼單元,其用于根據(jù)所得幀數(shù)據(jù)信息進(jìn)行硬件解碼處理; 所述存儲(chǔ)單元,其用于將硬件解碼后的數(shù)據(jù)保存?zhèn)溆谩?.根據(jù)權(quán)利要求7所述一種基于SPICE協(xié)議的遠(yuǎn)程視頻顯示系統(tǒng),其特征在于,所述幀數(shù)據(jù)信息包括量化表、霍夫曼表及圖像數(shù)據(jù)長(zhǎng)度。9.根據(jù)權(quán)利要求6所述一種基于SPICE協(xié)議的遠(yuǎn)程視頻顯示系統(tǒng),其特征在于,所述色彩空間轉(zhuǎn)換模塊進(jìn)行空間轉(zhuǎn)換的具體實(shí)現(xiàn)為進(jìn)行YCrCb向RGB的色彩空間轉(zhuǎn)換,轉(zhuǎn)換公式如下:R = Y+1.402(Cr-128)G = Y-0.34414(Cb-128)-0.71414(Cr-128)B = Y+1.772(Cb-128) 其中,R代表紅色,G代表綠色,B代表藍(lán)色,Y代表明亮度,Cr代表RGB輸入信號(hào)紅色部分與RGB信號(hào)亮度值之間的差異,Cb代表RGB輸入信號(hào)藍(lán)色部分與RGB信號(hào)亮度值之間的差異。10.根據(jù)權(quán)利要求6所述一種基于SPICE協(xié)議的遠(yuǎn)程視頻顯示系統(tǒng),其特征在于,所述視頻圖像幀為mjpeg格式的視頻圖像幀。
【專利摘要】本發(fā)明涉及一種基于SPICE協(xié)議的遠(yuǎn)程視頻顯示方法,包括服務(wù)器判斷客戶端的顯示驅(qū)動(dòng)是否支持視頻圖像幀的直接顯示,如果支持則將待傳輸?shù)囊曨l圖像幀進(jìn)行倒轉(zhuǎn)發(fā)送給客戶端,如果不支持則直接將待傳輸?shù)囊曨l圖像幀發(fā)送給客戶端;客戶端對(duì)接收的視頻圖像幀進(jìn)行硬件解碼,對(duì)解碼后的視頻圖像幀進(jìn)行保存?zhèn)溆?;客戶端查詢顯示驅(qū)動(dòng)信息,判斷顯示驅(qū)動(dòng)是否支持視頻圖像幀的直接顯示,如果支持則調(diào)用顯示控制器驅(qū)動(dòng)直接顯示解碼后的視頻圖像幀,如果不支持將解碼后的視頻圖像幀進(jìn)行色彩空間轉(zhuǎn)換,對(duì)轉(zhuǎn)換后的視頻圖像幀調(diào)用本地圖像顯示庫(kù)進(jìn)行顯示。本發(fā)明通過(guò)服務(wù)器端簡(jiǎn)單的圖像處理及直接使用客戶端本地硬件的解碼及顯示控制功能可以很大改善視頻顯示效果。
【IPC分類】H04N21/643, H04N21/4402, H04N21/2343
【公開號(hào)】CN105025359
【申請(qǐng)?zhí)枴緾N201510395119
【發(fā)明人】李廣
【申請(qǐng)人】國(guó)鼎網(wǎng)絡(luò)空間安全技術(shù)有限公司
【公開日】2015年11月4日
【申請(qǐng)日】2015年7月7日