一種遠(yuǎn)程桌面的重定向方法及裝置制造方法
【專利摘要】本發(fā)明實施例公開了一種遠(yuǎn)程桌面的重定向方法,包括:服務(wù)終端從顯示驅(qū)動中獲取操作系統(tǒng)發(fā)送的顯示圖像數(shù)據(jù)的操作指令;服務(wù)終端根據(jù)操作指令從所述顯示驅(qū)動中獲取2D圖像數(shù)據(jù),或者生成2D圖像數(shù)據(jù);服務(wù)終端根據(jù)所述操作指令從物理顯卡中獲取3D圖像數(shù)據(jù);服務(wù)終端根據(jù)客戶終端的圖像處理能力,和預(yù)設(shè)的2D圖像數(shù)據(jù)的處理策略和3D圖像數(shù)據(jù)的處理策略分別對2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)進(jìn)行處理;服務(wù)終端將所述處理得到的圖像數(shù)據(jù)封裝為協(xié)議數(shù)據(jù)發(fā)送給客戶終端。本發(fā)明實施例還公開了一種服務(wù)終端和客戶終端。采用本發(fā)明,具有可豐富圖像數(shù)據(jù)的處理形式,增強圖像數(shù)據(jù)處理和顯示的用戶體驗的優(yōu)點。
【專利說明】一種遠(yuǎn)程桌面的重定向方法及裝置
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及通信【技術(shù)領(lǐng)域】,尤其涉及一種遠(yuǎn)程桌面的重定向方法及裝置。
【背景技術(shù)】
[0002]遠(yuǎn)程桌面是當(dāng)前企業(yè)辦公的一種流行技術(shù)之一,常用來將一臺計算機屏幕顯示的內(nèi)容傳送到另一個顯示屏顯示。遠(yuǎn)程桌面又可稱為虛擬桌面,在虛擬桌面場景下至少存在一臺服務(wù)器和一臺客戶機,客戶機可通過虛擬桌面客戶終端軟件登陸到服務(wù)器上。在虛擬化平臺上,如果服務(wù)器上有物理顯卡,服務(wù)器則可為服務(wù)器上的某一臺虛擬機綁定物理顯卡,進(jìn)而可通過物理顯卡來處理圖形等圖像數(shù)據(jù)并將處理得到的數(shù)據(jù)發(fā)送給客戶機。
[0003]現(xiàn)有技術(shù)中的遠(yuǎn)程桌面的重定向主要是通過服務(wù)器的虛擬機綁定的物理顯卡完成圖像數(shù)據(jù)的處理之后,通過一個圖像數(shù)據(jù)的捕捉模塊將物理顯卡處理好的數(shù)據(jù)發(fā)送給遠(yuǎn)程客戶終端(即客戶機),遠(yuǎn)程客戶終端再將圖像顯示出來?,F(xiàn)有技術(shù)的遠(yuǎn)程桌面重定向方法中服務(wù)器只是通過一個圖像數(shù)據(jù)捕捉模塊來實時獲取物理顯卡處理得到的圖像數(shù)據(jù),無法區(qū)分2D數(shù)據(jù)和3D數(shù)據(jù),也無法對2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)采用不同的方法進(jìn)行處理和顯示,圖像數(shù)據(jù)處理形式單一,圖像顯示的用戶體驗效果低。
【發(fā)明內(nèi)容】
[0004]本發(fā)明實施例提供一種遠(yuǎn)程桌面的重定向方法及裝置,可對2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)進(jìn)行分策略處理和顯示,豐富圖像數(shù)據(jù)的處理形式,增強圖像數(shù)據(jù)處理和顯示的用戶體驗。
[0005]本發(fā)明實施例第一方面提供了一種遠(yuǎn)程桌面的重定向方法,其可包括:
[0006]服務(wù)終端從虛擬機的顯示驅(qū)動中獲取操作系統(tǒng)發(fā)送的顯示圖像數(shù)據(jù)的操作指令;
[0007]所述服務(wù)終端根據(jù)所述操作指令從所述顯示驅(qū)動中獲取2D圖像數(shù)據(jù),或者根據(jù)所述操作指令生成2D圖像數(shù)據(jù);
[0008]所述服務(wù)終端根據(jù)所述操作指令從所述虛擬機綁定的物理顯卡中獲取3D圖像數(shù)據(jù);
[0009]所述服務(wù)終端根據(jù)客戶終端的圖像處理能力,和預(yù)設(shè)的2D圖像數(shù)據(jù)的處理策略對所述2D圖像數(shù)據(jù)進(jìn)行處理;
[0010]所述服務(wù)終端根據(jù)所述客戶終端的圖像處理能力,和預(yù)設(shè)的3D圖像數(shù)據(jù)的處理策略對所述3D圖像數(shù)據(jù)進(jìn)行處理;
[0011]所述服務(wù)終端將所述處理得到的圖像數(shù)據(jù)封裝為協(xié)議數(shù)據(jù)發(fā)送給所述客戶終端,以通過所述客戶終端將所述2D圖像數(shù)據(jù)和所述3D圖像數(shù)據(jù)寫入指定顯示區(qū)域。
[0012]結(jié)合第一方面,在第一種可能的實現(xiàn)方式中,所述操作系統(tǒng)發(fā)送的顯示圖像數(shù)據(jù)的操作指令,包括:畫線指令、填充指令、拷貝指令中至少一種;
[0013]所述服務(wù)終端根據(jù)所述操作指令從所述顯示驅(qū)動中獲取2D圖像數(shù)據(jù),或者根據(jù)所述操作指令生成2D圖像數(shù)據(jù),包括:
[0014]所述服務(wù)終端根據(jù)所述拷貝指令從所述顯示驅(qū)動中獲取2D圖像數(shù)據(jù),并記錄所述2D圖像數(shù)據(jù)在所述顯示驅(qū)動中的顯示區(qū)域;或者
[0015]所述服務(wù)終端根據(jù)所述畫線指令或者填充指令對指定區(qū)域進(jìn)行填充處理,生成2D圖像數(shù)據(jù)和所述2D圖像數(shù)據(jù)及其填充區(qū)域的對應(yīng)關(guān)系。
[0016]結(jié)合第一方面,在第二種可能的實現(xiàn)方式中,所述操作系統(tǒng)發(fā)送的顯示圖像數(shù)據(jù)的操作指令中包括:3D的應(yīng)用程序編程接口 API接口調(diào)用指令;
[0017]所述服務(wù)終端根據(jù)所述操作指令從所述虛擬機綁定的物理顯卡中獲取3D圖像數(shù)據(jù),包括:
[0018]所述服務(wù)終端根據(jù)所述3D的API接口調(diào)用指令從所述虛擬機綁定的物理顯卡中獲取3D圖像、所述3D圖像的顯示區(qū)域、所述3D圖像對應(yīng)的窗口屬性中至少一種3D圖像數(shù)據(jù)。
[0019]結(jié)合第一方面至第一方面第二種可能的實現(xiàn)方式中任一種,在第三種可能的實現(xiàn)方式中,所述預(yù)設(shè)的2D圖像數(shù)據(jù)的處理策略中包括2D圖像數(shù)據(jù)的圖像壓縮策略、圖像發(fā)送間隔策略、圖像丟幀的處理策略中至少一種;
[0020]所述預(yù)設(shè)的3D圖像數(shù)據(jù)的處理策略中包括3D圖像數(shù)據(jù)的圖像壓縮策略、圖像發(fā)送間隔策略、圖像丟幀的處理策略中至少一種。
[0021]結(jié)合第一方面第三種可能的實現(xiàn)方式,在第四種可能的實現(xiàn)方式中,所述客戶終端的圖像處理能力包括:圖像解壓縮能力、圖像接收能力、圖像的幀處理能力中至少一種;
[0022]所述服務(wù)終端根據(jù)客戶終端的圖像處理能力,和預(yù)設(shè)的2D圖像數(shù)據(jù)的處理策略對所述2D圖像數(shù)據(jù)進(jìn)行處理,包括:
[0023]所述服務(wù)終端根據(jù)客戶終端的圖像解壓縮能力,從預(yù)設(shè)的2D圖像數(shù)據(jù)的處理策略中選擇相應(yīng)的圖像壓縮策略對所述2D圖像數(shù)據(jù)進(jìn)行壓縮;或者
[0024]所述服務(wù)終端根據(jù)客戶終端的圖像接收能力,從預(yù)設(shè)的2D圖像數(shù)據(jù)的處理策略中選擇相應(yīng)的圖像發(fā)送間隔策略設(shè)定所述2D圖像數(shù)據(jù)的發(fā)送間隔;或者
[0025]所述服務(wù)終端在網(wǎng)絡(luò)擁堵時根據(jù)客戶終端的圖像的幀處理能力,從預(yù)設(shè)的2D圖像數(shù)據(jù)的處理策略中選擇相應(yīng)的圖像丟幀的處理策略對所述2D圖像數(shù)據(jù)進(jìn)行丟幀處理。
[0026]結(jié)合第一方面第三種可能的實現(xiàn)方式或者第一方面第四種可能的實現(xiàn)方式,在第五種可能的實現(xiàn)方式中,所述客戶終端的圖像處理能力包括:圖像解壓縮能力、圖像接收能力、圖像的幀處理能力中至少一種;
[0027]所述服務(wù)終端根據(jù)所述客戶終端的圖像處理能力,和預(yù)設(shè)的3D圖像數(shù)據(jù)的處理策略對所述3D圖像數(shù)據(jù)進(jìn)行處理,包括:
[0028]所述服務(wù)終端根據(jù)客戶終端的圖像解壓縮能力,從預(yù)設(shè)的3D圖像數(shù)據(jù)的處理策略中選擇相應(yīng)的圖像壓縮策略對所述3D圖像數(shù)據(jù)進(jìn)行壓縮;或者
[0029]所述服務(wù)終端根據(jù)客戶終端的圖像接收能力,從預(yù)設(shè)的3D圖像數(shù)據(jù)的處理策略中選擇相應(yīng)的圖像發(fā)送間隔策略設(shè)定所述3D圖像數(shù)據(jù)的發(fā)送間隔;或者
[0030]所述服務(wù)終端在網(wǎng)絡(luò)擁堵時根據(jù)客戶終端的圖像的幀處理能力,從預(yù)設(shè)的3D圖像數(shù)據(jù)的處理策略中選擇相應(yīng)的圖像丟幀的處理策略對所述3D圖像數(shù)據(jù)進(jìn)行丟幀處理。
[0031]結(jié)合第一方面至第一方面第五種可能的實現(xiàn)方式中任一種,在第六種可能的實現(xiàn)方式中,所述協(xié)議數(shù)據(jù)中包括:處理后的2D圖像數(shù)據(jù)、所述2D圖像數(shù)據(jù)的顯示區(qū)域、所述2D圖像數(shù)據(jù)的表面數(shù)據(jù)、所述2D圖像數(shù)據(jù)的壓縮策略;
[0032]所述協(xié)議數(shù)據(jù)中還包括:處理后的3D圖像數(shù)據(jù)、所述3D圖像數(shù)據(jù)的顯示區(qū)域、所述3D圖像數(shù)據(jù)的表面數(shù)據(jù)、所述3D圖像數(shù)據(jù)的壓縮策略;
[0033]其中,所述2D圖像數(shù)據(jù)的顯示區(qū)域為所述2D圖像在所述顯卡驅(qū)動中的顯示區(qū)域;
[0034]所述3D圖像數(shù)據(jù)的顯示區(qū)域為所述3D圖像數(shù)據(jù)在所述物理顯卡中的顯示區(qū)域;
[0035]所述2D圖像數(shù)據(jù)的表面數(shù)據(jù)為所述2D圖像數(shù)據(jù)在所述客戶終端中的所述指定顯示區(qū)域,所述指定顯示區(qū)域具體為所述客戶終端顯示界面上的2D區(qū)域;
[0036]所述3D圖像數(shù)據(jù)的表面數(shù)據(jù)為所述3D圖像數(shù)據(jù)在所述客戶終端中的所述指定顯示區(qū)域,所述指定顯示區(qū)域具體為所述客戶終端顯示界面上的3D區(qū)域。
[0037]本發(fā)明實施例第二方面提供了一種遠(yuǎn)程桌面的重定向方法,其可包括:
[0038]客戶終端接收服務(wù)終端發(fā)送的協(xié)議數(shù)據(jù),所述協(xié)議數(shù)據(jù)中包括2D圖像數(shù)據(jù)以及所述2D圖像數(shù)據(jù)的處理策略,和3D圖像數(shù)據(jù)以及所述3D圖像數(shù)據(jù)的處理策略;
[0039]所述客戶終端根據(jù)所述2D圖像數(shù)據(jù)的處理策略對所述2D圖像數(shù)據(jù)進(jìn)行處理,并將所述2D圖像數(shù)據(jù)寫入指定顯示區(qū)域;
[0040]所述客戶終端根據(jù)所述3D圖像數(shù)據(jù)的處理策略對所述3D圖像數(shù)據(jù)進(jìn)行處理,并將所述3D圖像數(shù)據(jù)寫入指定顯示區(qū)域。
[0041]結(jié)合第二方面,在第一種可能的實現(xiàn)方式中,所述協(xié)議數(shù)據(jù)還包括:所述2D圖像數(shù)據(jù)的顯示區(qū)域、所述2D圖像數(shù)據(jù)的表面數(shù)據(jù);
[0042]所述協(xié)議數(shù)據(jù)還包括:所述3D圖像數(shù)據(jù)的顯示區(qū)域、所述3D圖像數(shù)據(jù)的表面數(shù)據(jù);
[0043]其中,所述2D圖像數(shù)據(jù)的顯示區(qū)域為所述2D圖像數(shù)據(jù)在所述服務(wù)終端的顯示驅(qū)動中的顯示區(qū)域;
[0044]所述3D圖像數(shù)據(jù)的顯示區(qū)域為所述3D圖像數(shù)據(jù)在所述服務(wù)終端的物理顯卡中的顯示區(qū)域;
[0045]所述2D圖像數(shù)據(jù)的表面數(shù)據(jù)為所述2D圖像數(shù)據(jù)在所述客戶終端中的所述指定顯示區(qū)域,所述指定顯示區(qū)域具體為所述客戶終端顯示界面上的2D區(qū)域;
[0046]所述3D圖像數(shù)據(jù)的表面數(shù)據(jù)為所述3D圖像數(shù)據(jù)在所述客戶終端中的所述指定顯示區(qū)域,所述指定顯示區(qū)域具體為所述客戶終端顯示界面上的3D區(qū)域。
[0047]結(jié)合第二方面第一種可能的實現(xiàn)方式,在第二種可能的實現(xiàn)方式中,所述2D圖像數(shù)據(jù)的處理策略中包含所述2D圖像數(shù)據(jù)的圖像壓縮策略;
[0048]所述客戶終端根據(jù)所述2D圖像數(shù)據(jù)的處理策略對所述2D圖像數(shù)據(jù)進(jìn)行處理,并將所述2D圖像數(shù)據(jù)寫入指定顯示區(qū)域,包括:
[0049]所述客戶終端根據(jù)所述2D圖像數(shù)據(jù)的圖像壓縮策略對所述2D圖像數(shù)據(jù)進(jìn)行解壓縮,并將所述解壓縮得到的所述2D圖像數(shù)據(jù)寫入所述客戶終端顯示界面上的2D區(qū)域。
[0050]結(jié)合第二方面第一種可能的實現(xiàn)方式或者第二方面第二種可能的實現(xiàn)方式,在第
三種可能的實現(xiàn)方式中,所述3D圖像數(shù)據(jù)的處理策略中包含所述3D圖像數(shù)據(jù)的圖像壓縮策略;[0051]所述客戶終端根據(jù)所述3D圖像數(shù)據(jù)的處理策略對所述3D圖像數(shù)據(jù)進(jìn)行處理,并將所述3D圖像數(shù)據(jù)寫入指定顯示區(qū)域,包括:
[0052]所述客戶終端根據(jù)所述3D圖像數(shù)據(jù)的圖像壓縮策略對所述3D圖像數(shù)據(jù)進(jìn)行解壓縮,并將所述解壓縮得到的所述3D圖像數(shù)據(jù)寫入所述客戶終端顯示界面上的3D區(qū)域。
[0053]本發(fā)明實施例第三方面提供了 一種服務(wù)終端,其可包括:
[0054]獲取模塊,用于從虛擬機的顯示驅(qū)動中獲取操作系統(tǒng)發(fā)送的顯示圖像數(shù)據(jù)的操作指令;
[0055]第一捕捉模塊,用于根據(jù)所述獲取模塊獲取的所述操作指令從所述顯示驅(qū)動中獲取2D圖像數(shù)據(jù),或者根據(jù)所述操作指令生成2D圖像數(shù)據(jù);
[0056]第二捕捉模塊,用于根據(jù)所述獲取模塊獲取的所述操作指令從所述虛擬機綁定的物理顯卡中獲取3D圖像數(shù)據(jù);
[0057]第一處理模塊,用于根據(jù)客戶終端的圖像處理能力,和預(yù)設(shè)的2D圖像數(shù)據(jù)的處理策略對所述第一捕捉模塊捕捉的2D圖像數(shù)據(jù)進(jìn)行處理;
[0058]第二處理模塊,用于根據(jù)客戶終端的圖像處理能力,和預(yù)設(shè)的3D圖像數(shù)據(jù)的處理策略對所述第二捕捉模塊捕捉的3D圖像數(shù)據(jù)進(jìn)行處理;
[0059]發(fā)送模塊,用于將所述第一處理模塊和第二處理模塊處理得到的圖像數(shù)據(jù)封裝為協(xié)議數(shù)據(jù)發(fā)送給所述客戶終端,以通過所述客戶終端將所述2D圖像數(shù)據(jù)和所述3D圖像數(shù)據(jù)寫入指定顯示區(qū)域。
[0060]結(jié)合第三方面,在第一種可能的實現(xiàn)方式中,所述獲取模塊獲取的所述操作系統(tǒng)發(fā)送的顯示圖像數(shù)據(jù)的操作指令,包括:畫線指令、填充指令、拷貝指令中至少一種;
[0061]所述第一捕捉模塊,具體用于:
[0062]根據(jù)所述拷貝指令從所述顯示驅(qū)動中獲取2D圖像數(shù)據(jù),并記錄所述2D圖像數(shù)據(jù)在所述顯示驅(qū)動中的顯示區(qū)域;或者
[0063]根據(jù)所述畫線指令或者填充指令對指定區(qū)域進(jìn)行填充處理,生成2D圖像數(shù)據(jù)和所述2D圖像數(shù)據(jù)及其填充區(qū)域的對應(yīng)關(guān)系。
[0064]結(jié)合第三方面,在第二種可能的實現(xiàn)方式中,所述獲取模塊獲取的操作系統(tǒng)發(fā)送的顯示圖像數(shù)據(jù)的操作指令包括:3D的API接口調(diào)用指令;
[0065]所述第二捕捉模塊,具體用于:
[0066]根據(jù)所述3D的API接口調(diào)用指令從所述虛擬機綁定的物理顯卡中獲取3D圖像、所述3D圖像的顯示區(qū)域、所述3D圖像對應(yīng)的窗口屬性中至少一種3D圖像數(shù)據(jù)。
[0067]結(jié)合第三方面至第三方面第二種可能的實現(xiàn)方式中任一種,在第三種可能的實現(xiàn)方式中,所述預(yù)設(shè)的2D圖像數(shù)據(jù)的處理策略中包括2D圖像數(shù)據(jù)的圖像壓縮策略、圖像發(fā)送間隔策略、圖像丟幀的處理策略至少一種;
[0068]所述預(yù)設(shè)的3D圖像數(shù)據(jù)的處理策略中包括3D圖像數(shù)據(jù)的圖像壓縮策略、圖像發(fā)送間隔策略、圖像丟幀的處理策略中至少一種。
[0069]結(jié)合第三方面第三種可能的實現(xiàn)方式,在第四種可能的實現(xiàn)方式中,所述客戶終端的圖像處理能力包括:圖像解壓縮能力、圖像接收能力、圖像的幀處理能力中至少一種;
[0070]所述第一處理模塊,具體用于:
[0071]根據(jù)客戶終端的圖像解壓縮能力,從預(yù)設(shè)的2D圖像數(shù)據(jù)的處理策略中選擇相應(yīng)的圖像壓縮策略對所述2D圖像數(shù)據(jù)進(jìn)行壓縮;或者
[0072]根據(jù)客戶終端的圖像接收能力,從預(yù)設(shè)的2D圖像數(shù)據(jù)的處理策略中選擇相應(yīng)的圖像發(fā)送間隔策略設(shè)定所述2D圖像數(shù)據(jù)的發(fā)送間隔;或者
[0073]在網(wǎng)絡(luò)擁堵時根據(jù)客戶終端的圖像的幀處理能力,從預(yù)設(shè)的2D圖像數(shù)據(jù)的處理策略中選擇相應(yīng)的圖像丟幀的處理策略對所述2D圖像數(shù)據(jù)進(jìn)行丟幀處理。
[0074]結(jié)合第三方面第三種可能的實現(xiàn)方式或第三方面第四種可能的實現(xiàn)方式,在第五種可能的實現(xiàn)方式中,所述客戶終端的圖像處理能力包括:圖像解壓縮能力、圖像接收能力、圖像的幀處理能力中至少一種;
[0075]所述第二處理模塊,具體用于:
[0076]根據(jù)客戶終端的圖像解壓縮能力,從預(yù)設(shè)的3D圖像數(shù)據(jù)的處理策略中選擇相應(yīng)的圖像壓縮策略對所述3D圖像數(shù)據(jù)進(jìn)行壓縮;或者
[0077]根據(jù)客戶終端的圖像接收能力,從預(yù)設(shè)的3D圖像數(shù)據(jù)的處理策略中選擇相應(yīng)的圖像發(fā)送間隔策略設(shè)定所述3D圖像數(shù)據(jù)的發(fā)送間隔;或者
[0078]在網(wǎng)絡(luò)擁堵時根據(jù)客戶終端的圖像的幀處理能力,從預(yù)設(shè)的3D圖像數(shù)據(jù)的處理策略中選擇相應(yīng)的圖像丟幀的處理策略對所述3D圖像數(shù)據(jù)進(jìn)行丟幀處理。
[0079]結(jié)合第三方面至第三方面第五種可能的實現(xiàn)方式中任一種,在第六種可能的實現(xiàn)方式中,所述協(xié)議數(shù)據(jù)中包括:處理后的2D圖像數(shù)據(jù)、所述2D圖像數(shù)據(jù)的顯示區(qū)域、所述2D圖像數(shù)據(jù)的表面數(shù)據(jù)、所述2D圖像數(shù)據(jù)的壓縮策略;
[0080]所述協(xié)議數(shù)據(jù)中還包括:處理后的3D圖像數(shù)據(jù)、所述3D圖像數(shù)據(jù)的顯示區(qū)域、所述3D圖像數(shù)據(jù)的表面數(shù)據(jù)、所述3D圖像數(shù)據(jù)的壓縮策略;
[0081]其中,所述2D圖像數(shù)據(jù)的顯示區(qū)域為所述2D圖像在所述顯卡驅(qū)動中的顯示區(qū)域;
[0082]所述3D圖像數(shù)據(jù)的顯示區(qū)域為所述3D圖像數(shù)據(jù)在所述物理顯卡中的顯示區(qū)域;
[0083]所述2D圖像數(shù)據(jù)的表面數(shù)據(jù)為所述2D圖像數(shù)據(jù)在所述客戶終端中的所述指定顯示區(qū)域,所述指定顯示區(qū)域具體為所述客戶終端顯示界面上的2D區(qū)域;
[0084]所述3D圖像數(shù)據(jù)的表面數(shù)據(jù)為所述3D圖像數(shù)據(jù)在所述客戶終端中的所述指定顯示區(qū)域,所述指定顯示區(qū)域具體為所述客戶終端顯示界面上的3D區(qū)域。
[0085]本發(fā)明實施例第四方面提供了一種客戶終端,其可包括:
[0086]接收模塊,用于接收服務(wù)終端發(fā)送的協(xié)議數(shù)據(jù),所述協(xié)議數(shù)據(jù)中包括2D圖像數(shù)據(jù)以及所述2D圖像數(shù)據(jù)的處理策略,和3D圖像數(shù)據(jù)以及所述3D圖像數(shù)據(jù)的處理策略;
[0087]第一處理模塊,用于根據(jù)所述2D圖像數(shù)據(jù)的處理策略對所述2D圖像數(shù)據(jù)進(jìn)行處理,并將所述2D圖像數(shù)據(jù)寫入指定顯示區(qū)域;
[0088]第二處理模塊,用于根據(jù)所述3D圖像數(shù)據(jù)的處理策略對所述3D圖像數(shù)據(jù)進(jìn)行處理,并將所述3D圖像數(shù)據(jù)寫入指定顯示區(qū)域。
[0089]結(jié)合第四方面,在第一種可能的實現(xiàn)方式中,所述接收模塊接收到的協(xié)議數(shù)據(jù)還包括:所述2D圖像數(shù)據(jù)的顯示區(qū)域、所述2D圖像數(shù)據(jù)的表面數(shù)據(jù);
[0090]所述協(xié)議數(shù)據(jù)還包括:所述3D圖像數(shù)據(jù)的顯示區(qū)域、所述3D圖像數(shù)據(jù)的表面數(shù)據(jù);
[0091]其中,所述2D圖像數(shù)據(jù)的顯示區(qū)域為所述2D圖像數(shù)據(jù)在所述服務(wù)終端的顯示驅(qū)動中的顯示區(qū)域;
[0092]所述3D圖像數(shù)據(jù)的顯示區(qū)域為所述3D圖像數(shù)據(jù)在所述服務(wù)終端的物理顯卡中的顯示區(qū)域;
[0093]所述2D圖像數(shù)據(jù)的表面數(shù)據(jù)為所述2D圖像數(shù)據(jù)在所述客戶終端中的所述指定顯示區(qū)域,所述指定顯示區(qū)域具體為所述客戶終端顯示界面上的2D區(qū)域;
[0094]所述3D圖像數(shù)據(jù)的表面數(shù)據(jù)為所述3D圖像數(shù)據(jù)在所述客戶終端中的所述指定顯示區(qū)域,所述指定顯示區(qū)域具體為所述客戶終端顯示界面上的3D區(qū)域。
[0095]結(jié)合第四方面第一種可能的實現(xiàn)方式,在第二種可能的實現(xiàn)方式中,2D圖像數(shù)據(jù)的處理策略中包含所述2D圖像數(shù)據(jù)的圖像壓縮策略;
[0096]所述第一處理模塊,具體用于:
[0097]根據(jù)所述2D圖像數(shù)據(jù)的圖像壓縮策略對所述2D圖像數(shù)據(jù)進(jìn)行解壓縮,并將所述解壓縮得到的所述2D圖像數(shù)據(jù)寫入所述客戶終端顯示界面上的2D區(qū)域。
[0098]結(jié)合第四方面第一種可能的實現(xiàn)方式或者第二種可能的實現(xiàn)方式,在第三種可能的實現(xiàn)方式中,所述3D圖像數(shù)據(jù)的處理策略中包含所述3D圖像數(shù)據(jù)的圖像壓縮策略;
[0099]所述第二處理模塊,具體用于:
[0100]根據(jù)所述3D圖像數(shù)據(jù)的圖像壓縮策略對所述3D圖像數(shù)據(jù)進(jìn)行解壓縮,并將所述解壓縮得到的所述3D圖像數(shù)據(jù)寫入所述客戶終端顯示界面上的3D區(qū)域。
[0101]本發(fā)明實施例第五方面還提供了一種遠(yuǎn)程桌面的重定向的系統(tǒng),其可包括:本發(fā)明實施例第三方面提供的服務(wù)終端和本發(fā)明實施例第四方面提供的客戶終端。
[0102]在本發(fā)明實施例中,服務(wù)終端可在接收到操作系統(tǒng)發(fā)送的操作指令或者接口調(diào)用時,根據(jù)接收到的操作指令或者接口調(diào)用獲取2D圖像數(shù)據(jù)或者3D圖像數(shù)據(jù),進(jìn)而可分別對2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)進(jìn)行處理并發(fā)送到客戶終端顯示,實現(xiàn)2D圖像和3D圖像的融合顯示;本發(fā)明實施例可分別對2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)進(jìn)行處理和顯示,豐富了圖像數(shù)據(jù)的處理形式,增強圖像數(shù)據(jù)處理和顯示的用戶體驗。
【專利附圖】
【附圖說明】
[0103]為了更清楚地說明本發(fā)明實施例中的技術(shù)方案,下面將對實施例描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0104]圖1是本發(fā)明實施例提供的遠(yuǎn)程桌面的重定向方法的第一實施例流程示意圖;
[0105]圖2是本發(fā)明實施例提供的服務(wù)終端的實施例結(jié)構(gòu)示意圖;
[0106]圖3是本發(fā)明實施例提供的遠(yuǎn)程桌面的重定向方法的第二實施例流程示意圖;
[0107]圖4是本發(fā)明實施例提供的客戶終端的實施例結(jié)構(gòu)示意圖;
[0108]圖5是本發(fā)明實施例提供的遠(yuǎn)程桌面的重定向方法的交互示意圖;
[0109]圖6是本發(fā)明實施例提供的遠(yuǎn)程桌面的重定向的系統(tǒng)的結(jié)構(gòu)示意圖。
【具體實施方式】
[0110]下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護(hù)的范圍。
[0111]具體實現(xiàn)中,本發(fā)明實施例中所描述的客戶終端可包括:臺式電腦、筆記本電腦、平板電腦、手機等,上述客戶終端僅是舉例,而非窮舉。
[0112]參見圖1,是本發(fā)明實施例提供的遠(yuǎn)程桌面的重定向方法的第一實施例流程示意圖。本實施例中所描述的遠(yuǎn)程桌面的重定向方法,包括步驟:
[0113]S101,服務(wù)終端從虛擬機的顯示驅(qū)動中獲取操作系統(tǒng)發(fā)送的顯示圖像數(shù)據(jù)的操作指令。
[0114]在一些可行的實施方式中,本發(fā)明實施例中所描述的服務(wù)終端可為虛擬平臺下的遠(yuǎn)程桌面服務(wù)器,遠(yuǎn)程桌面服務(wù)器提供了遠(yuǎn)程桌面的載體,客戶終端(也稱客戶機)的桌面系統(tǒng)可以虛擬機的軟件形式存儲于遠(yuǎn)程桌面服務(wù)器上,本實施例中所描述的遠(yuǎn)程服務(wù)終端中可包括多個虛擬機。具體實現(xiàn)中,本發(fā)明實施例中所描述的服務(wù)終端也可包括一些軟件模塊,可由軟件模塊來實現(xiàn)本發(fā)明實施例中所描述的服務(wù)終端的功能。
[0115]在一些可行的實施方式中,當(dāng)用戶想要將圖像數(shù)據(jù)傳送至遠(yuǎn)程桌面顯示時,可先將客戶終端與遠(yuǎn)程桌面的服務(wù)終端(例如遠(yuǎn)程桌面服務(wù)器)建立連接,具體的,客戶終端可通過虛擬桌面基礎(chǔ)架構(gòu)(Virtual Desktop Infrastructure, VDI)管理系統(tǒng)與遠(yuǎn)程桌面的服務(wù)終端中的用戶虛擬機建立遠(yuǎn)程桌面連接。如果遠(yuǎn)程桌面的服務(wù)終端中有物理顯卡,則可將服務(wù)終端中與客戶終端建立遠(yuǎn)程桌面連接的虛擬機綁定該物理顯卡,再安裝該物理顯卡對應(yīng)的顯示驅(qū)動,使該物理顯卡生效,進(jìn)而可通過該物理顯卡獲取圖像數(shù)據(jù)。具體實現(xiàn)中,客戶終端與遠(yuǎn)程桌面服務(wù)終端建立連接之后,則可通過用戶虛擬機中的某個應(yīng)用程序(或者多個應(yīng)用程序)向服務(wù)終端的操作系統(tǒng)發(fā)起圖像(包括2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù))顯示的請求,比如,通過AutoCAD向操作系統(tǒng)發(fā)送圖形顯示請求,請求將一張工程圖顯示到虛擬機桌面的某一個區(qū)域。具體的,操作系統(tǒng)接收到虛擬機的某個應(yīng)用程序發(fā)送的圖形顯示的請求之后則可根據(jù)應(yīng)用程序發(fā)送的請求生成多種操作指令(包括接口調(diào)用指令),并將生成的顯示圖像數(shù)據(jù)的操作指令或者接口調(diào)用發(fā)送給物理顯卡或者虛擬機鏡像驅(qū)動的顯示驅(qū)動等。具體實現(xiàn)中,上述操作系統(tǒng)向上述物理顯卡及顯示驅(qū)動發(fā)送的顯示圖像數(shù)據(jù)的操作指令,可包括:畫線指令、拷貝指令、填充指令等,上述操作指令僅是舉例,而非窮舉。
[0116]在一些可行的實施方式中,顯示驅(qū)動獲取到操作系統(tǒng)發(fā)送的顯示圖像數(shù)據(jù)的操作指令之后,則可從操作系統(tǒng)的顯示應(yīng)用程序編程接口(Application ProgrammingInterface,API)獲取相應(yīng)的圖像數(shù)據(jù),并將獲取到的圖像數(shù)據(jù)放置到指定的共享內(nèi)存中。
[0117]S102,所述服務(wù)終端根據(jù)所述操作指令從所述顯示驅(qū)動中獲取2D圖像數(shù)據(jù),或者根據(jù)所述操作指令生成2D圖像數(shù)據(jù)。
[0118]在一些可行的實施方式中,服務(wù)終端從顯示驅(qū)動中獲取到操作系統(tǒng)發(fā)送的顯示圖像數(shù)據(jù)的操作指令之后,則可根據(jù)獲取到的操作指令從上述顯示驅(qū)動中獲取圖像數(shù)據(jù),或者根據(jù)獲取到的操作指令生成圖像數(shù)據(jù)。具體實現(xiàn)中,本實施例中所描述的顯示驅(qū)動采用的實現(xiàn)方式可為鏡像驅(qū)動,在物理顯卡對圖像數(shù)據(jù)進(jìn)行處理時,鏡像驅(qū)動也會收到操作系統(tǒng)下發(fā)的2D圖像顯示指令和2D圖像數(shù)據(jù),服務(wù)終端接收到上述操作指令之后則可從上述顯示驅(qū)動中獲取數(shù)據(jù)或者根據(jù)上述操作指令生成相應(yīng)的圖像數(shù)據(jù)。例如,當(dāng)服務(wù)終端接收到的操作指令為拷貝指令時,則可根據(jù)該指令從顯示驅(qū)動中獲取2D圖像數(shù)據(jù),將2D圖像數(shù)據(jù)從源區(qū)域拷貝到指定區(qū)域,還可記錄上述2D圖像數(shù)據(jù)在上述顯示區(qū)域中的顯示區(qū)域,上述2D圖像數(shù)據(jù)在顯示區(qū)域中的顯示區(qū)域可用于指導(dǎo)客戶終端將2D圖像數(shù)據(jù)寫入遠(yuǎn)程桌面的相應(yīng)位置,以還原圖像并在遠(yuǎn)程桌面中顯示上述圖像。當(dāng)服務(wù)終端接收到的操作指令為畫線指令或者填充指令時,服務(wù)終端則可根據(jù)畫線指令在指定區(qū)域畫線,生成2D圖像數(shù)據(jù),或者根據(jù)填充指令對指定區(qū)域進(jìn)行顏色填充等填充處理,生成2D圖像數(shù)據(jù);服務(wù)終端根據(jù)接收到的操作指令生成2D圖像數(shù)據(jù)之后,還可生成2D圖像數(shù)據(jù)、上述2D圖像數(shù)據(jù)及其填充區(qū)域的對應(yīng)關(guān)系,上述對應(yīng)關(guān)系可用于指導(dǎo)客戶終端將上述2D圖像數(shù)據(jù)寫入遠(yuǎn)程桌面的相應(yīng)位置,以還原圖像在遠(yuǎn)程桌面中顯示上述圖像。服務(wù)終端獲取到相應(yīng)的2D圖像數(shù)據(jù)之后,則可將獲取到的2D圖像數(shù)據(jù)存放至服務(wù)終端的共存內(nèi)存中,以對該2D圖像數(shù)據(jù)進(jìn)行進(jìn)一步處理,并將處理得到的2D圖像數(shù)據(jù)發(fā)送至客戶終端顯示。
[0119]S103,所述服務(wù)終端根據(jù)所述操作指令從所述虛擬機綁定的物理顯卡中獲取3D圖像數(shù)據(jù)。
[0120]在一些可行的實施方式中,在本實施例中顯示驅(qū)動采用的鏡像驅(qū)動的實現(xiàn)方式,此時,服務(wù)終端需要從物理顯卡獲取3D圖像數(shù)據(jù)。具體的,服務(wù)終端可根據(jù)操作系統(tǒng)發(fā)送的接口調(diào)用指令從虛擬機綁定的物理顯卡獲取3D圖像數(shù)據(jù)以及3D圖像數(shù)據(jù)的顯示區(qū)域、或者窗口屬性等信息。例如,服務(wù)終端可接收到上述操作系統(tǒng)發(fā)送的3D的API接口調(diào)用時,通過3D的API接口掛鉤子截獲該接口調(diào)用,通過該接口調(diào)用從物理顯卡獲取3D圖像數(shù)據(jù)、3D圖像數(shù)據(jù)的顯示區(qū)域、窗口屬性等信息,并計算3D窗口的位置遮擋、移動等信息,進(jìn)而將獲取到的3D圖像數(shù)據(jù)存放至服務(wù)終端的共享內(nèi)存中,以對該3D圖像數(shù)據(jù)進(jìn)行進(jìn)一步處理,并將處理得到的3D圖像數(shù)據(jù)發(fā)送至客戶終端顯示。
[0121]S104,所述服務(wù)終端根據(jù)客戶終端的圖像處理能力,和預(yù)設(shè)的2D圖像數(shù)據(jù)的處理策略對所述2D圖像數(shù)據(jù)進(jìn)行處理。
[0122]S105,所述服務(wù)終端根據(jù)所述客戶終端的圖像處理能力,和預(yù)設(shè)的3D圖像數(shù)據(jù)的處理策略對所述3D圖像數(shù)據(jù)進(jìn)行處理。
[0123]在一些可行的實施方式中,服務(wù)終端獲取到2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)之后,則可分別對上述2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)進(jìn)行處理,可分別采用不同的處理方法對2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)進(jìn)行處理。具體實現(xiàn)中,用戶可預(yù)先在VDI管理系統(tǒng)中設(shè)定2D圖像數(shù)據(jù)的處理策略和3D圖像數(shù)據(jù)的處理策略,生成一個策略文件存儲在VDI管理系統(tǒng)中;其中,上述圖像數(shù)據(jù)(包括2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù))的處理策略中包括圖像壓縮策略、圖像發(fā)送間隔策略、圖像丟幀的處理策略等,上述圖像數(shù)據(jù)的處理策略僅是舉例,而非窮舉。服務(wù)終端獲取到2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)之后,則可根據(jù)客戶終端的圖像處理能力,結(jié)合VDI管理系統(tǒng)中預(yù)設(shè)的2D圖像數(shù)據(jù)的處理策略對上述2D圖像數(shù)據(jù)進(jìn)行處理,并結(jié)合VDI管理系統(tǒng)中預(yù)設(shè)的3D圖像數(shù)據(jù)的處理策略對3D圖像數(shù)據(jù)進(jìn)行處理。其中,上述客戶終端的圖像處理能力包括:圖像解壓縮能力、圖像接收能力、圖像的幀處理能力等。在本實施例中,月艮務(wù)終端對獲取到的2D圖像數(shù)據(jù)進(jìn)行處理時,VDI管理系統(tǒng)可將上述圖像數(shù)據(jù)的處理策略文件動態(tài)下發(fā)給服務(wù)終端,服務(wù)終端可根據(jù)客戶終端的圖像解壓縮能力,從預(yù)設(shè)的2D圖像數(shù)據(jù)處理策略中選擇相應(yīng)的圖像壓縮策略對獲取到的2D圖像數(shù)據(jù)進(jìn)行壓縮,或者,根據(jù)客戶終端的圖像接收能力,從預(yù)設(shè)的2D圖像數(shù)據(jù)的處理策略中選擇相應(yīng)的圖像發(fā)送間隔策略設(shè)定將上述2D圖像數(shù)據(jù)發(fā)送給客戶終端的發(fā)送間隔;此外,如果服務(wù)終端向客戶終端發(fā)送數(shù)據(jù)的過程中出現(xiàn)網(wǎng)絡(luò)擁堵,服務(wù)終端還可根據(jù)客戶終端的圖像的幀處理能力,從預(yù)設(shè)的2D圖像數(shù)據(jù)的處理策略中選擇相應(yīng)的圖像丟幀的處理策略對上述2D圖像數(shù)據(jù)進(jìn)行丟幀處理,以使2D圖像數(shù)據(jù)的發(fā)送更加順暢。
[0124]具體實現(xiàn)中,服務(wù)終端對獲取到的3D圖像數(shù)據(jù)進(jìn)行處理時,VDI管理系統(tǒng)也可將上述圖像數(shù)據(jù)的處理策略文件動態(tài)下發(fā)給服務(wù)終端,服務(wù)終端可根據(jù)客戶終端的圖像解壓縮能力,從預(yù)設(shè)的3D圖像數(shù)據(jù)處理策略中選擇相應(yīng)的圖像壓縮策略分別對獲取到的3D圖像數(shù)據(jù)進(jìn)行壓縮,或者,根據(jù)客戶終端的圖像接收能力,從預(yù)設(shè)的3D圖像數(shù)據(jù)的處理策略中選擇相應(yīng)的圖像發(fā)送間隔策略設(shè)定將上述3D圖像數(shù)據(jù)發(fā)送給客戶終端的發(fā)送間隔;如果服務(wù)終端向客戶終端發(fā)送數(shù)據(jù)的過程中出現(xiàn)網(wǎng)絡(luò)擁堵,服務(wù)終端還可根據(jù)客戶終端的圖像的幀處理能力,從預(yù)設(shè)的3D圖像數(shù)據(jù)處理策略中選擇相應(yīng)的圖像丟幀的處理策略對上述3D圖像數(shù)據(jù)進(jìn)行丟幀處理,以使3D圖像數(shù)據(jù)的發(fā)送更加順暢。
[0125]在一些可行的實施方式中,服務(wù)終端分別對上述2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)進(jìn)程處理時可采用不同的處理策略,也可采用相同的處理策略,具體可根據(jù)客戶終端的圖像處理能力以及圖像數(shù)據(jù)的特點選擇相應(yīng)的處理策略。此外,服務(wù)終端將圖像數(shù)據(jù)發(fā)送給客戶終端之后,客戶終端還可向服務(wù)終端反饋圖像數(shù)據(jù)的處理情況,服務(wù)終端可根據(jù)客戶終端的反饋信息判斷客戶終端的圖像處理能力,進(jìn)而可對圖像數(shù)據(jù)的處理策略進(jìn)行調(diào)整,以使圖像數(shù)據(jù)的處理效果更好地配合客戶終端,客戶終端可以以更好的效果顯示圖像數(shù)據(jù)。
[0126]S106,所述服務(wù)終端將所述處理得到的圖像數(shù)據(jù)封裝為協(xié)議數(shù)據(jù)發(fā)送給所述客戶終端。
[0127]在一些可行的實施方式中,服務(wù)終端采用不同的圖像數(shù)據(jù)處理策略分別對獲取到的2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)進(jìn)行處理之后,則可將處理得到的圖像數(shù)據(jù)(包括2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù))封裝為協(xié)議數(shù)據(jù),通過協(xié)議數(shù)據(jù)的方式將圖像數(shù)據(jù)和相應(yīng)的圖像數(shù)據(jù)處理策略、顯示指令等信息發(fā)送給客戶終端。具體實現(xiàn)中,上述協(xié)議數(shù)據(jù)中可包括:處理后的2D圖像數(shù)據(jù)、上述2D圖像數(shù)據(jù)的顯示區(qū)域、上述2D圖像數(shù)據(jù)的表面數(shù)據(jù)、上述2D圖像數(shù)據(jù)的處理策略等,上述協(xié)議數(shù)據(jù)中還包括:處理后的3D圖像數(shù)據(jù)、上述3D圖像數(shù)據(jù)的顯示區(qū)域,上述3D圖像數(shù)據(jù)的表面數(shù)據(jù),上述3D圖像數(shù)據(jù)的處理策略等;其中,上述2D圖像數(shù)據(jù)的顯示區(qū)域指該2D圖像數(shù)據(jù)在顯示驅(qū)動中的顯示區(qū)域,上述3D圖像數(shù)據(jù)的顯示區(qū)域指該3D圖像數(shù)據(jù)在物理顯卡中的顯示區(qū)域;上述2D圖像數(shù)據(jù)的表面數(shù)據(jù)指上述2D圖像數(shù)據(jù)的指定顯示區(qū)域,即上述2D圖像數(shù)據(jù)在客戶終端顯示時的顯示區(qū)域(即客戶終端顯示界面上的2D區(qū)域);上述3D圖像數(shù)據(jù)的表面數(shù)據(jù)指上述3D圖像數(shù)據(jù)的指定顯示區(qū)域,即上述3D圖像數(shù)據(jù)在客戶終端顯示時的顯示區(qū)域(即客戶終端顯示界面上的3D區(qū)域)。具體實現(xiàn)中,服務(wù)終端將處理得到的圖像數(shù)據(jù)通過協(xié)議數(shù)據(jù)的方式發(fā)送給客戶終端之后,客戶終端則可對上述協(xié)議數(shù)據(jù)進(jìn)行解析,以對上述2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)進(jìn)行解壓縮,并根據(jù)上述協(xié)議數(shù)據(jù)中2D圖像數(shù)據(jù)的顯示區(qū)域和3D圖像數(shù)據(jù)的顯示區(qū)域?qū)⑸鲜?D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)分別寫入指定區(qū)域,實現(xiàn)2D和3D的融合顯示。即客戶終端可根據(jù)服務(wù)終端發(fā)送過來的協(xié)議數(shù)據(jù)中的2D圖像數(shù)據(jù)的處理策略對上述2D圖像數(shù)據(jù)進(jìn)行解壓縮等處理,根據(jù)上述協(xié)議數(shù)據(jù)中的3D圖像數(shù)據(jù)的處理策略對上述3D圖像數(shù)據(jù)進(jìn)行解壓縮等處理,進(jìn)而根據(jù)上述協(xié)議數(shù)據(jù)中包含的2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)的顯示區(qū)域,將解壓縮處理得到的2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)分別寫入客戶終端顯示區(qū)域的2D區(qū)域和客戶終端顯示區(qū)域相對應(yīng)的3D區(qū)域,將圖像數(shù)據(jù)還原為與服務(wù)終端發(fā)送過來的圖像數(shù)據(jù)一樣,實現(xiàn)圖形等圖像數(shù)據(jù)在遠(yuǎn)程桌面顯不。
[0128]在本發(fā)明實施例,服務(wù)終端可分別獲取2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù),并分別對獲取到的2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)進(jìn)行處理,進(jìn)而將處理得到的圖像數(shù)據(jù)發(fā)送給客戶終端,以通過客戶終端進(jìn)行還原處理并顯示至指定顯示區(qū)域,實現(xiàn)2D和3D的融合顯示,豐富了圖像數(shù)據(jù)的處理形式,增強了圖像數(shù)據(jù)的處理方式的多樣性,提高了圖像處理和顯示的用戶體驗。
[0129]參見圖2,是本發(fā)明實施例提供的服務(wù)終端的實施例結(jié)構(gòu)示意圖。本實施例中所描述的服務(wù)終端,包括:
[0130]獲取模塊10,用于從虛擬機的顯示驅(qū)動中獲取操作系統(tǒng)發(fā)送的顯示圖像數(shù)據(jù)的操作指令。
[0131]第一捕捉模塊20,用于根據(jù)所述獲取模塊獲取的所述操作指令從所述顯示驅(qū)動中獲取2D圖像數(shù)據(jù),或者根據(jù)所述操作指令生成2D圖像數(shù)據(jù)。
[0132]第二捕捉模塊30,用于根據(jù)所述獲取模塊獲取的所述操作指令從所述虛擬機綁定的物理顯卡中獲取3D圖像數(shù)據(jù)。
[0133]第一處理模塊40,用于根據(jù)客戶終端的圖像處理能力,和預(yù)設(shè)的2D圖像數(shù)據(jù)的處理策略對所述第一捕捉模塊捕捉的2D圖像數(shù)據(jù)進(jìn)行處理。
[0134]第二處理模塊90,用于根據(jù)客戶終端的圖像處理能力,和預(yù)設(shè)的3D圖像數(shù)據(jù)的處理策略對所述第二捕捉模塊捕捉的3D圖像數(shù)據(jù)進(jìn)行處理。
[0135]發(fā)送模塊50,用于將所述第一處理模塊和第二處理模塊處理得到的圖像數(shù)據(jù)封裝為協(xié)議數(shù)據(jù)發(fā)送給所述客戶終端,以通過所述客戶終端將所述2D圖像數(shù)據(jù)和所述3D圖像數(shù)據(jù)寫入指定顯示區(qū)域。
[0136]在一些可行的實施方式中,本發(fā)明實施例中所描述的服務(wù)終端可為虛擬平臺下的遠(yuǎn)程桌面服務(wù)器,遠(yuǎn)程桌面服務(wù)器提供了遠(yuǎn)程桌面的載體,客戶終端(也稱客戶機)的桌面系統(tǒng)可以虛擬機的軟件形式存儲于遠(yuǎn)程桌面服務(wù)器上,本實施例中所描述的遠(yuǎn)程服務(wù)終端中可包括多個虛擬機。具體實現(xiàn)中,本發(fā)明實施例中所描述的服務(wù)終端也可包括一些軟件模塊,可由軟件模塊來實現(xiàn)本發(fā)明實施例中所描述的服務(wù)終端的功能。
[0137]在一些可行的實施方式中,當(dāng)用戶想要將圖像數(shù)據(jù)傳送至遠(yuǎn)程桌面顯示時,可先將客戶終端與遠(yuǎn)程桌面的服務(wù)終端(例如遠(yuǎn)程桌面服務(wù)器)建立連接,具體的,客戶終端可通過VDI管理系統(tǒng)與遠(yuǎn)程桌面的服務(wù)終端中的用戶虛擬機建立遠(yuǎn)程桌面連接。如果遠(yuǎn)程桌面的服務(wù)終端中有物理顯卡,則可將服務(wù)終端中與客戶終端建立遠(yuǎn)程桌面連接的虛擬機綁定該物理顯卡,再安裝該物理顯卡對應(yīng)的顯示驅(qū)動,使該物理顯卡生效,進(jìn)而可通過該物理顯卡獲取圖像數(shù)據(jù)。具體實現(xiàn)中,客戶終端與遠(yuǎn)程桌面服務(wù)終端建立連接之后,則可通過用戶虛擬機中的某個應(yīng)用程序(或者多個應(yīng)用程序)向服務(wù)終端的操作系統(tǒng)發(fā)起圖像(包括2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù))顯示的請求,比如,通過AutoCAD向操作系統(tǒng)發(fā)送圖形顯示請求,請求將一張工程圖顯示到虛擬機桌面的某一個區(qū)域。具體的,操作系統(tǒng)接收到虛擬機的某個應(yīng)用程序發(fā)送的圖形顯示的請求之后則可根據(jù)應(yīng)用程序發(fā)送的請求生成多種操作指令(包括接口調(diào)用指令),并將生成的顯示圖像數(shù)據(jù)的操作指令或者接口調(diào)用發(fā)送給物理顯卡或者鏡像驅(qū)動的顯示驅(qū)動。具體實現(xiàn)中,上述操作系統(tǒng)向上述物理顯卡及顯示驅(qū)動發(fā)送的顯示圖像數(shù)據(jù)的操作指令,可包括:畫線指令、拷貝指令、填充指令等,上述操作指令僅是舉例,而非窮舉。
[0138]在一些可行的實施方式中,本實施例中所描述的顯示驅(qū)動可采用鏡像驅(qū)動方式的實現(xiàn)方式來獲取相應(yīng)的數(shù)據(jù)。具體實現(xiàn)中,顯示驅(qū)動獲取到操作系統(tǒng)發(fā)送的顯示圖像數(shù)據(jù)的操作指令或者接口調(diào)用之后,獲取模塊10則可從顯示驅(qū)動中獲取操作系統(tǒng)發(fā)送的操作指令或者接口調(diào)用,進(jìn)而可從操作系統(tǒng)的顯示API獲取相應(yīng)的圖像數(shù)據(jù),并將獲取到的圖像數(shù)據(jù)放置到指定的共享內(nèi)存中,以將獲取到的圖像數(shù)據(jù)或者操作指令或者接口調(diào)用共享給第一捕捉模塊20或者第二捕捉模塊30。具體實現(xiàn)中獲取模塊接收操作系統(tǒng)發(fā)送的操作指令或者接口調(diào)用、從操作系統(tǒng)的顯示API獲取圖像數(shù)據(jù)的具體實現(xiàn)過程可參見本發(fā)明實施例提供的遠(yuǎn)程桌面的重定向方法的第一實施例的步驟S101,在此不再贅述。
[0139]在一些可行的實施方式中,上述獲取模塊10獲取的所述操作系統(tǒng)發(fā)送的顯示圖像數(shù)據(jù)的操作指令,包括:畫線指令、填充指令、拷貝指令中至少一種;
[0140]上述第一捕捉模塊20,具體用于:
[0141]根據(jù)所述拷貝指令從所述顯示驅(qū)動中獲取2D圖像數(shù)據(jù),并記錄所述2D圖像數(shù)據(jù)在所述顯示驅(qū)動中的顯示區(qū)域;或者
[0142]根據(jù)所述畫線指令或者填充指令對指定區(qū)域進(jìn)行填充處理,生成2D圖像數(shù)據(jù)及所述2D圖像數(shù)據(jù)及其填充區(qū)域的對應(yīng)關(guān)系。
[0143]在一些可行的實施方式中,獲取模塊10從顯示驅(qū)動中獲取到操作系統(tǒng)發(fā)送的顯示圖像數(shù)據(jù)的操作指令之后,第一捕捉模塊20或者第二捕捉模塊30則可根據(jù)獲取模塊10獲取到的操作指令從顯示驅(qū)動中獲取圖像數(shù)據(jù),或者根據(jù)獲取到的操作指令生成圖像數(shù)據(jù)。具體實現(xiàn)中,本實施例中所描述的顯示驅(qū)動采用的實現(xiàn)方式可為鏡像驅(qū)動,在物理顯卡對圖像數(shù)據(jù)進(jìn)行處理時,鏡像驅(qū)動也會收到操作系統(tǒng)下發(fā)的2D圖像顯示指令和2D圖像數(shù)據(jù),獲取模塊10從顯示驅(qū)動中獲取數(shù)據(jù)并將獲取到的數(shù)據(jù)放至共享內(nèi)存之后,第一捕捉模塊20則可根據(jù)獲取模塊10獲取到的操作指令從該顯示驅(qū)動中獲取數(shù)據(jù)或者根據(jù)上述操作指令生成相應(yīng)的圖像數(shù)據(jù)。例如,當(dāng)獲取模塊10接收到的操作指令為拷貝指令時,第一捕捉模塊20則可根據(jù)該指令從顯示驅(qū)動中獲取2D圖像數(shù)據(jù),將2D圖像數(shù)據(jù)從源區(qū)域拷貝到指定區(qū)域,還可記錄上述2D圖像數(shù)據(jù)在上述顯示區(qū)域中的顯示區(qū)域,上述2D圖像數(shù)據(jù)在顯示區(qū)域中的顯示區(qū)域可用于指導(dǎo)客戶終端將2D圖像數(shù)據(jù)寫入遠(yuǎn)程桌面的相應(yīng)位置,以還原圖像并在遠(yuǎn)程桌面中顯示上述圖像。當(dāng)獲取模塊10接收到的操作指令為畫線指令或者填充指令時,第一捕捉模塊20則可根據(jù)畫線指令在指定區(qū)域畫線,生成2D圖像數(shù)據(jù),或者根據(jù)填充指令對指定區(qū)域進(jìn)行顏色填充等填充處理,生成2D圖像數(shù)據(jù);第一捕捉模塊20根據(jù)獲取模塊10接收到的操作指令生成2D圖像數(shù)據(jù)之后,還可生成2D圖像數(shù)據(jù)及上述2D圖像數(shù)據(jù)及其填充區(qū)域的對應(yīng)關(guān)系,上述對應(yīng)關(guān)系可用于指導(dǎo)客戶終端將上述2D圖像數(shù)據(jù)寫入遠(yuǎn)程桌面的相應(yīng)位置,以還原圖像在遠(yuǎn)程桌面中顯示上述圖像。第一捕捉模塊20獲取到相應(yīng)的2D圖像數(shù)據(jù)之后,則可將獲取到的2D圖像數(shù)據(jù)存放至服務(wù)終端的共存內(nèi)存中,以通過服務(wù)終端的第一處理模塊40對上述2D圖像數(shù)據(jù)進(jìn)行進(jìn)一步處理,并通過發(fā)送模塊50將處理得到的2D圖像數(shù)據(jù)發(fā)送至客戶終端顯示。具體實現(xiàn)中,第一捕捉模塊20獲取2D圖像數(shù)據(jù)的具體實現(xiàn)過程可參見本發(fā)明實施例提供的遠(yuǎn)程桌面的重定向方法的第一實施例的步驟S102,在此不再贅述。
[0144]在一些可行的實施方式中,上述獲取模塊10獲取的操作系統(tǒng)發(fā)送的顯示圖像數(shù)據(jù)的操作指令中包括:3D的API接口調(diào)用指令;
[0145]上述第二捕捉模塊30,具體用于:
[0146]根據(jù)所述3D的API接口調(diào)用指令從所述虛擬機綁定的物理顯卡中獲取3D圖像、所述3D圖像的顯示區(qū)域、所述3D圖像對應(yīng)的窗口屬性中至少一種3D圖像數(shù)據(jù)。
[0147]在一些可行的實施方式中,在本實施例中顯示驅(qū)動采用的鏡像驅(qū)動的實現(xiàn)方式,此時,服務(wù)終端需要從物理顯卡獲取3D圖像數(shù)據(jù)。具體的,第二捕捉模塊30可根據(jù)獲取模塊10獲取到的操作系統(tǒng)發(fā)送的接口調(diào)用指令從虛擬機綁定的物理顯卡獲取3D圖像數(shù)據(jù)以及3D圖像數(shù)據(jù)的顯示區(qū)域、或者窗口屬性等信息。例如,第二捕捉模塊30可接收到上述操作系統(tǒng)發(fā)送的3D的API接口調(diào)用時,通過3D的API接口掛鉤子截獲該接口調(diào)用,通過該接口調(diào)用從物理顯卡獲取3D圖像數(shù)據(jù)、3D圖像數(shù)據(jù)的顯示區(qū)域、窗口屬性等信息,并計算3D窗口的位置遮擋、移動等信息,進(jìn)而將獲取到的3D圖像數(shù)據(jù)存放至服務(wù)終端的共享內(nèi)存中,以通過服務(wù)終端的第二處理模塊90對該3D圖像數(shù)據(jù)進(jìn)行進(jìn)一步處理,并通過發(fā)送模塊50將處理得到的3D圖像數(shù)據(jù)發(fā)送至客戶終端顯示。具體實現(xiàn)中,第二捕捉模塊30獲取3D圖像數(shù)據(jù)的具體實現(xiàn)過程可參見本發(fā)明實施例提供的遠(yuǎn)程桌面的重定向方法的第一實施例的步驟S103,在此不再贅述。
[0148]在一些可行的實施方式中,所述客戶終端的圖像處理能力包括:圖像解壓縮能力、圖像接收能力、圖像的幀處理能力中至少一種;
[0149]上述第一處理模塊40,具體用于:
[0150]根據(jù)客戶終端的圖像解壓縮能力,從預(yù)設(shè)的2D圖像數(shù)據(jù)的處理策略中選擇相應(yīng)的圖像壓縮策略對所述2D圖像數(shù)據(jù)進(jìn)行壓縮;或者
[0151]根據(jù)客戶終端的圖像接收能力,從預(yù)設(shè)的2D圖像數(shù)據(jù)的處理策略中選擇相應(yīng)的圖像發(fā)送間隔策略設(shè)定所述2D圖像數(shù)據(jù)的發(fā)送間隔;或者
[0152]在網(wǎng)絡(luò)擁堵時根據(jù)客戶終端的圖像的幀處理能力,從預(yù)設(shè)的2D圖像數(shù)據(jù)的處理策略中選擇相應(yīng)的圖像丟幀的處理策略對所述2D圖像數(shù)據(jù)進(jìn)行丟幀處理。
[0153]在一些可行的實施方式中,服務(wù)終端通過第一捕捉模塊20獲取到2D圖像數(shù)據(jù)、通過第二捕捉模塊30獲取到3D圖像數(shù)據(jù)之后,第一處理模塊40則可對第一捕捉模塊20獲取到的2D圖像數(shù)據(jù)進(jìn)行處理,第二處理模塊90可對第二捕捉模塊30獲取到的3D圖像數(shù)據(jù)進(jìn)行處理。具體的,第一處理模塊40和第二處理模塊90可分別采用不同的處理方法對2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)進(jìn)行處理。具體實現(xiàn)中,用戶可預(yù)先在VDI管理系統(tǒng)中分別設(shè)定2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)的處理策略,生成一個策略文件存儲在VDI管理系統(tǒng)中;其中,上述圖像數(shù)據(jù)(包括2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù))的處理策略中包括圖像壓縮策略、圖像發(fā)送間隔策略、圖像丟幀的處理策略等,上述圖像數(shù)據(jù)的處理策略僅是舉例,而非窮舉。服務(wù)終端的第一捕捉模塊20獲取到2D圖像數(shù)據(jù)之后,第一處理模塊40則可根據(jù)客戶終端的圖像處理能力,結(jié)合VDI管理系統(tǒng)中預(yù)設(shè)的2D圖像數(shù)據(jù)的處理策略對上述2D圖像數(shù)據(jù)進(jìn)行處理。其中,上述客戶終端的圖像處理能力包括:圖像解壓縮能力、圖像接收能力、圖像的幀處理能力等。在本實施例中,第一處理模塊40對第一捕捉模塊20獲取到的2D圖像數(shù)據(jù)進(jìn)行處理時,VDI管理系統(tǒng)可將上述2D圖像數(shù)據(jù)的處理策略文件動態(tài)下發(fā)給服務(wù)終端,第一處理模塊40可根據(jù)客戶終端的圖像解壓縮能力,從預(yù)設(shè)的2D圖像數(shù)據(jù)的處理策略中選擇相應(yīng)的圖像壓縮策略對第一捕捉模塊20獲取到的2D圖像數(shù)據(jù)進(jìn)行壓縮,或者,根據(jù)客戶終端的圖像接收能力,從預(yù)設(shè)的2D圖像數(shù)據(jù)的處理策略中選擇相應(yīng)的圖像發(fā)送間隔策略設(shè)定將上述2D圖像數(shù)據(jù)發(fā)送給客戶終端的發(fā)送間隔;此外,如果服務(wù)終端向客戶終端發(fā)送數(shù)據(jù)的過程中出現(xiàn)網(wǎng)絡(luò)擁堵,第一處理模塊40還可根據(jù)客戶終端的圖像的幀處理能力,從預(yù)設(shè)的2D圖像數(shù)據(jù)的處理策略中選擇相應(yīng)的圖像丟幀的處理策略對上述2D圖像數(shù)據(jù)進(jìn)行丟幀處理,以使2D圖像數(shù)據(jù)的發(fā)送更加順暢。
[0154]具體實現(xiàn)中,服務(wù)終端的第二捕捉模塊30獲取到3D圖像數(shù)據(jù)之后,第二處理模塊90則可根據(jù)客戶終端的圖像處理能力,結(jié)合VDI管理系統(tǒng)中預(yù)設(shè)的3D圖像數(shù)據(jù)的處理策略對上述3D圖像數(shù)據(jù)進(jìn)行處理。其中,上述客戶終端的圖像處理能力包括:圖像解壓縮能力、圖像接收能力、圖像的幀處理能力等。具體的,第二處理模塊90對第二捕捉模塊30獲取到的3D圖像數(shù)據(jù)進(jìn)行處理時,VDI管理系統(tǒng)可將上述3D圖像數(shù)據(jù)的處理策略文件動態(tài)下發(fā)給服務(wù)終端,第二處理模塊90可根據(jù)客戶終端的圖像解壓縮能力,從預(yù)設(shè)的3D圖像數(shù)據(jù)的處理策略中選擇相應(yīng)的圖像壓縮策略對第二捕捉模塊30獲取到的3D圖像數(shù)據(jù)進(jìn)行壓縮,或者,根據(jù)客戶終端的圖像接收能力,從預(yù)設(shè)的3D圖像數(shù)據(jù)的處理策略中選擇相應(yīng)的圖像發(fā)送間隔策略設(shè)定將上述3D圖像數(shù)據(jù)發(fā)送給客戶終端的發(fā)送間隔;如果服務(wù)終端向客戶終端發(fā)送數(shù)據(jù)的過程中出現(xiàn)網(wǎng)絡(luò)擁堵,第二處理模塊90還可根據(jù)客戶終端的圖像的幀處理能力,從預(yù)設(shè)的3D圖像數(shù)據(jù)的處理策略中選擇相應(yīng)的圖像丟幀的處理策略對上述3D圖像數(shù)據(jù)進(jìn)行丟幀處理,以使3D圖像數(shù)據(jù)的發(fā)送更加順暢。
[0155]在一些可行的實施方式中,第一處理模塊40和第二處理模塊90對上述2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)進(jìn)程處理時可采用不同的處理策略,也可采用相同的處理策略,具體可根據(jù)客戶終端的圖像處理能力以及圖像數(shù)據(jù)的特點選擇相應(yīng)的處理策略。此外,服務(wù)終端將圖像數(shù)據(jù)發(fā)送給客戶終端之后,客戶終端還可向服務(wù)終端反饋圖像數(shù)據(jù)的處理情況,月艮務(wù)終端的第一處理模塊40和第二處理模塊90還可根據(jù)客戶終端的反饋信息判斷客戶終端的圖像處理能力,進(jìn)而可對圖像數(shù)據(jù)的處理策略進(jìn)行調(diào)整,以使圖像數(shù)據(jù)的處理效果更好地配合客戶終端,客戶終端可以以更好的效果顯示圖像數(shù)據(jù)。具體實現(xiàn)中,第一處理模塊和第二處理模塊對第一捕捉模塊獲取到的2D圖像數(shù)據(jù)和第二捕捉模塊獲取到的3D圖像數(shù)據(jù)進(jìn)行處理的具體實現(xiàn)過程可參見本發(fā)明實施例提供的遠(yuǎn)程桌面的重定向方法的步驟S104-S105,在此不再贅述。
[0156]在一些可行的實施方式中,第一處理模塊40和第二處理模塊90米用不同的圖像數(shù)據(jù)處理策略對第一捕捉模塊20獲取到的2D圖像數(shù)據(jù)和第二捕捉模塊30獲取到的3D圖像數(shù)據(jù)進(jìn)行處理之后,發(fā)送模塊50則可將上述第一處理模塊40和第二處理模塊90處理得到的圖像數(shù)據(jù)封裝為協(xié)議數(shù)據(jù),通過協(xié)議數(shù)據(jù)的方式將圖像數(shù)據(jù)和相應(yīng)的顯示指令等信息發(fā)送給客戶終端。具體實現(xiàn)中,上述協(xié)議數(shù)據(jù)中可包括:處理后的2D圖像數(shù)據(jù)、上述2D圖像數(shù)據(jù)的顯示區(qū)域、上述2D圖像數(shù)據(jù)的表面數(shù)據(jù)、上述2D圖像數(shù)據(jù)的處理策略等,上述協(xié)議數(shù)據(jù)中還包括:處理后的3D圖像數(shù)據(jù)、上述3D圖像數(shù)據(jù)的顯示區(qū)域,上述3D圖像數(shù)據(jù)的表面數(shù)據(jù),上述3D圖像數(shù)據(jù)的處理策略等;其中,上述2D圖像數(shù)據(jù)的顯示區(qū)域指該2D圖像數(shù)據(jù)在顯示驅(qū)動中的顯示區(qū)域,上述3D圖像數(shù)據(jù)的顯示區(qū)域指該3D圖像數(shù)據(jù)在物理顯卡中的顯示區(qū)域;上述2D圖像數(shù)據(jù)的表面數(shù)據(jù)指上述2D圖像數(shù)據(jù)的指定顯示區(qū)域,即上述2D圖像數(shù)據(jù)在客戶終端顯示時的顯示區(qū)域(即客戶終端顯示界面上的2D區(qū)域);上述3D圖像數(shù)據(jù)的表面數(shù)據(jù)指上述3D圖像數(shù)據(jù)的指定顯示區(qū)域,即上述3D圖像數(shù)據(jù)在客戶終端顯示時的顯示區(qū)域(即客戶終端顯示界面上的3D區(qū)域)。具體實現(xiàn)中,發(fā)送模塊50將第一處理模塊40和第二處理模塊90處理得到的圖像數(shù)據(jù)通過協(xié)議數(shù)據(jù)的方式發(fā)送給客戶終端之后,客戶終端則可對上述協(xié)議數(shù)據(jù)進(jìn)行解析,根據(jù)上述協(xié)議數(shù)據(jù)中包含的2D圖像數(shù)據(jù)的處理策略對上述2D圖像數(shù)據(jù)進(jìn)行解壓縮等,并根據(jù)上述協(xié)議數(shù)據(jù)中包括的3D圖像數(shù)據(jù)的處理策略對上述3D圖像數(shù)據(jù)進(jìn)行解壓縮,進(jìn)而根據(jù)上述協(xié)議數(shù)據(jù)中2D圖像數(shù)據(jù)的顯示區(qū)域和3D圖像數(shù)據(jù)的顯示區(qū)域?qū)⑸鲜?D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)分別寫入指定區(qū)域,實現(xiàn)2D和3D的融合顯示。即客戶終端可根據(jù)服務(wù)終端發(fā)送過來的協(xié)議數(shù)據(jù)中2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)的顯示區(qū)域,將2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)分別寫入2D圖像數(shù)據(jù)的顯示區(qū)域相對應(yīng)的表面數(shù)據(jù)(即客戶終端顯示界面上的2D區(qū)域)中,將3D圖像數(shù)據(jù)分別寫入3D圖像數(shù)據(jù)的顯示區(qū)域相對應(yīng)的表面數(shù)據(jù)(即客戶終端顯示界面上的3D區(qū)域)中,將圖像數(shù)據(jù)還原為與服務(wù)終端發(fā)送過來的圖像數(shù)據(jù)一樣,實現(xiàn)圖形等圖像數(shù)據(jù)在遠(yuǎn)程桌面顯示。具體實現(xiàn)中,發(fā)送模塊50將第一處理模塊40和第二處理模塊90處理得到的圖像數(shù)據(jù)發(fā)送給客戶終端的具體實現(xiàn)過程可參見本發(fā)明實施例提供的遠(yuǎn)程桌面的重定向方法的第一實施例的步驟S106,在此不再贅述。
[0157]本發(fā)明實施例中所描述的服務(wù)終端可分別獲取2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù),并分別對獲取到的2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)進(jìn)行處理,進(jìn)而將處理得到的圖像數(shù)據(jù)發(fā)送給客戶終端,以通過客戶終端進(jìn)行還原處理并顯示至指定顯示區(qū)域,實現(xiàn)2D和3D的融合顯示,提高了圖像數(shù)據(jù)的處理效率,增強了圖像數(shù)據(jù)的處理方式的多樣性,提高了圖像處理和顯示的用戶體驗。
[0158]參見圖3,是本發(fā)明實施例提供的遠(yuǎn)程桌面的重定向的第二實施例流程示意圖。本實施例中所描述的遠(yuǎn)程桌面的重定向方法,包括步驟:
[0159]S201,客戶終端接收服務(wù)終端發(fā)送的協(xié)議數(shù)據(jù)。
[0160]S202,所述客戶終端根據(jù)所述2D圖像數(shù)據(jù)的處理策略對所述2D圖像數(shù)據(jù)進(jìn)行處理,并將所述2D圖像數(shù)據(jù)寫入指定顯示區(qū)域。
[0161]S203,所述客戶終端根據(jù)所述3D圖像數(shù)據(jù)的處理策略對所述3D圖像數(shù)據(jù)進(jìn)行處理,并將所述3D圖像數(shù)據(jù)寫入指定顯示區(qū)域。
[0162]在一些可行的實施方式中,本實施例中所描述的客戶終端也稱為客戶機,具體可包括:臺式電腦、筆記本電腦、平板電腦、手機等。具體實現(xiàn)中,服務(wù)終端采用不同的圖像數(shù)據(jù)處理策略對獲取到的2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)進(jìn)行處理之后,則可將處理得到的圖像數(shù)據(jù)封裝為協(xié)議數(shù)據(jù),通過協(xié)議數(shù)據(jù)的方式將圖像數(shù)據(jù)和相應(yīng)的顯示指令等信息發(fā)送給客戶終端。上述協(xié)議數(shù)據(jù)中可包括:處理后的2D圖像數(shù)據(jù)、上述2D圖像數(shù)據(jù)的顯示區(qū)域、上述2D圖像數(shù)據(jù)的表面數(shù)據(jù)、上述2D圖像數(shù)據(jù)的處理策略等,上述協(xié)議數(shù)據(jù)中還包括:處理后的3D圖像數(shù)據(jù)、上述3D圖像數(shù)據(jù)的顯示區(qū)域,上述3D圖像數(shù)據(jù)的表面數(shù)據(jù),上述3D圖像數(shù)據(jù)的處理策略等;其中,上述2D圖像數(shù)據(jù)的顯示區(qū)域指該2D圖像數(shù)據(jù)在顯示驅(qū)動中的顯示區(qū)域,上述3D圖像數(shù)據(jù)的顯示區(qū)域指該3D圖像數(shù)據(jù)在物理顯卡中的顯示區(qū)域;上述2D圖像數(shù)據(jù)的表面數(shù)據(jù)指上述2D圖像數(shù)據(jù)的指定顯示區(qū)域,即上述2D圖像數(shù)據(jù)在客戶終端顯示時的顯示區(qū)域(即客戶終端顯示界面上的2D區(qū)域);上述3D圖像數(shù)據(jù)的表面數(shù)據(jù)指上述3D圖像數(shù)據(jù)的指定顯示區(qū)域,即上述3D圖像數(shù)據(jù)在客戶終端顯示時的顯示區(qū)域(即客戶終端顯示界面上的3D區(qū)域)。具體實現(xiàn)中,客戶終端獲取到服務(wù)終端發(fā)送的協(xié)議數(shù)據(jù)之后,則可對上述協(xié)議數(shù)據(jù)進(jìn)行解析,從上述協(xié)議數(shù)據(jù)中獲取服務(wù)終端對上述2D圖像數(shù)據(jù)進(jìn)行處理時采用的處理策略,從上述協(xié)議數(shù)據(jù)中獲取服務(wù)終端對上述3D圖像數(shù)據(jù)進(jìn)行處理時采用的處理策略,其中,上述2D圖像數(shù)據(jù)的處理策略具體可為上述2D圖像數(shù)據(jù)的圖像壓縮策略,上述3D圖像數(shù)據(jù)的處理策略具體可為上述2D圖像數(shù)據(jù)的圖像壓縮策略。具體的,客戶終端可依據(jù)上述2D圖像數(shù)據(jù)的壓縮策略對上述2D圖像數(shù)據(jù)進(jìn)行解壓縮,并依據(jù)上述3D圖像數(shù)據(jù)的壓縮策略對上述3D圖像數(shù)據(jù)進(jìn)行解壓縮,進(jìn)而可根據(jù)上述協(xié)議數(shù)據(jù)中包含的2D圖像數(shù)據(jù)的顯示區(qū)域和3D圖像數(shù)據(jù)的顯示區(qū)域分別將上述2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)分別寫入指定區(qū)域,實現(xiàn)2D和3D的融合顯示。即客戶終端可根據(jù)服務(wù)終端發(fā)送過來的協(xié)議數(shù)據(jù)中包含的2D圖像數(shù)據(jù)的顯示區(qū)域,將上述解壓縮得到的2D圖像數(shù)據(jù)寫入客戶終端顯示界面上的2D區(qū)域中相應(yīng)的位置,還可根據(jù)上述協(xié)議數(shù)據(jù)中包含的3D圖像數(shù)據(jù)的顯示區(qū)域?qū)⑸鲜鼋鈮嚎s得到的3D圖像數(shù)據(jù)分別寫入客戶終端顯示界面上的3D區(qū)域中相應(yīng)的位置,以將圖像數(shù)據(jù)還原為與服務(wù)終端發(fā)送過來的圖像數(shù)據(jù)一樣,實現(xiàn)圖形等圖像數(shù)據(jù)在遠(yuǎn)程桌面顯示。具體實現(xiàn)中,客戶終端對服務(wù)終端發(fā)送過來的2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)進(jìn)行處理,并將其顯示至指定區(qū)域之后,還可將圖像的處理情況反饋給服務(wù)終端,服務(wù)終端可根據(jù)客戶終端反饋的信息進(jìn)一步確定客戶終端的圖像處理能力,進(jìn)而對圖像數(shù)據(jù)的處理策略進(jìn)行調(diào)整,以更好地配合客戶終端進(jìn)行圖像數(shù)據(jù)的處理和顯示。
[0163]在本發(fā)明實施例中,客戶終端可對服務(wù)終端發(fā)送過來的2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)進(jìn)行解析,進(jìn)而將處理得到的圖像數(shù)據(jù)進(jìn)行還原并顯示至指定顯示區(qū)域,實現(xiàn)2D和3D的融合顯示,豐富了圖像數(shù)據(jù)的處理形式,增強了圖像數(shù)據(jù)的處理方式的多樣性,提高了圖像處理和顯示的用戶體驗。
[0164]參見圖4,是本發(fā)明實施例提供的客戶終端的實施例結(jié)構(gòu)示意圖。本實施例中所描述的客戶終端,包括:
[0165]接收模塊60,用于接收服務(wù)終端發(fā)送的協(xié)議數(shù)據(jù),所述協(xié)議數(shù)據(jù)中包括2D圖像數(shù)據(jù)以及所述2D圖像數(shù)據(jù)的處理策略,和3D圖像數(shù)據(jù)以及所述3D圖像數(shù)據(jù)的處理策略;
[0166]第一處理模塊70,用于根據(jù)所述2D圖像數(shù)據(jù)的處理策略對所述2D圖像數(shù)據(jù)進(jìn)行處理,并將所述2D圖像數(shù)據(jù)寫入指定顯示區(qū)域。
[0167]第二處理模塊80,用于根據(jù)所述3D圖像數(shù)據(jù)的處理策略對所述3D圖像數(shù)據(jù)進(jìn)行處理,并將所述3D圖像數(shù)據(jù)寫入指定顯示區(qū)域。
[0168]在一些可行的實施方式中,本實施例中所描述的客戶終端,也稱為客戶機,具體可包括:臺式電腦、筆記本電腦、平板電腦、手機等。具體實現(xiàn)中,服務(wù)終端采用不同的圖像數(shù)據(jù)處理策略對獲取到的2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)進(jìn)行處理之后,則可將處理得到的圖像數(shù)據(jù)封裝為協(xié)議數(shù)據(jù),通過協(xié)議數(shù)據(jù)的方式將圖像數(shù)據(jù)和相應(yīng)的顯示指令等信息發(fā)送給客戶終端,客戶終端的接收模塊60可接收服務(wù)終端發(fā)送的協(xié)議數(shù)據(jù)。上述協(xié)議數(shù)據(jù)中可包括:處理后的2D圖像數(shù)據(jù)、上述2D圖像數(shù)據(jù)的顯示區(qū)域、上述2D圖像數(shù)據(jù)的表面數(shù)據(jù)、上述2D圖像數(shù)據(jù)的處理策略等,上述協(xié)議數(shù)據(jù)中還包括:處理后的3D圖像數(shù)據(jù)、上述3D圖像數(shù)據(jù)的顯示區(qū)域,上述3D圖像數(shù)據(jù)的表面數(shù)據(jù),上述3D圖像數(shù)據(jù)的處理策略等;其中,上述2D圖像數(shù)據(jù)的顯示區(qū)域指該2D圖像數(shù)據(jù)在顯示驅(qū)動中的顯示區(qū)域,上述3D圖像數(shù)據(jù)的顯示區(qū)域指該3D圖像數(shù)據(jù)在物理顯卡中的顯示區(qū)域;上述2D圖像數(shù)據(jù)的表面數(shù)據(jù)指上述2D圖像數(shù)據(jù)的指定顯示區(qū)域,即上述2D圖像數(shù)據(jù)在客戶終端顯示時的顯示區(qū)域(即客戶終端顯示界面上的2D顯示區(qū)域);上述3D圖像數(shù)據(jù)的表面數(shù)據(jù)指上述3D圖像數(shù)據(jù)的指定顯示區(qū)域,即上述3D圖像數(shù)據(jù)在客戶終端顯示時的顯示區(qū)域(即客戶終端顯示界面上的3D顯示區(qū)域)。具體實現(xiàn)中,接收模塊60獲取到服務(wù)終端發(fā)送的協(xié)議數(shù)據(jù)之后,第一處理模塊70和第二處理模塊80則可對上述協(xié)議數(shù)據(jù)進(jìn)行解析,第一處理模塊70可對上述協(xié)議數(shù)據(jù)進(jìn)行解析,從上述協(xié)議數(shù)據(jù)中獲取服務(wù)終端對2D圖像數(shù)據(jù)進(jìn)行處理時采用的處理策略;第二處理模塊80可對上述協(xié)議數(shù)據(jù)進(jìn)行解析,從上述協(xié)議數(shù)據(jù)中獲取服務(wù)終端對3D圖像數(shù)據(jù)進(jìn)行處理時采用的處理策略。其中,上述2D圖像數(shù)據(jù)的處理策略具體可為上述2D圖像數(shù)據(jù)的圖像壓縮策略;上述3D圖像數(shù)據(jù)的處理策略具體可為上述3D圖像數(shù)據(jù)的圖像壓縮策略。具體的,第一處理模塊70可并依據(jù)上述2D圖像數(shù)據(jù)的壓縮策略對上述2D圖像數(shù)據(jù)進(jìn)行解壓縮,并根據(jù)上述協(xié)議數(shù)據(jù)中包含的2D圖像數(shù)據(jù)的顯示區(qū)域?qū)⑸鲜鼋鈮嚎s得到的2D圖像數(shù)據(jù)寫入客戶終端顯示界面上的2D區(qū)域中相應(yīng)的位置;第二處理模塊80可依據(jù)上述3D圖像數(shù)據(jù)的壓縮策略對上述3D圖像數(shù)據(jù)進(jìn)行解壓縮,并根據(jù)上述協(xié)議數(shù)據(jù)中包含的3D圖像數(shù)據(jù)的顯示區(qū)域?qū)⑸鲜?D圖像數(shù)據(jù)寫入客戶終端顯示界面上的3D區(qū)域中相應(yīng)的位置,實現(xiàn)2D和3D的融合顯示。即第一處理模塊70和第二處理模塊80可根據(jù)接收模塊60接收到的服務(wù)終端發(fā)送過來的協(xié)議數(shù)據(jù)中包含的2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)的顯示區(qū)域,將2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)分別寫入2D圖像數(shù)據(jù)的顯示區(qū)域相對應(yīng)的表面數(shù)據(jù)(即客戶終端顯示界面上2D區(qū)域中相應(yīng)的位置)中,將3D圖像數(shù)據(jù)分別寫入3D圖像數(shù)據(jù)的顯示區(qū)域相對應(yīng)的表面數(shù)據(jù)(即客戶終端顯示界面上3D區(qū)域中相應(yīng)的位置)中,以將圖像數(shù)據(jù)還原為與服務(wù)終端發(fā)送過來的圖像數(shù)據(jù)一樣,實現(xiàn)圖形等圖像數(shù)據(jù)在遠(yuǎn)程桌面顯示。具體實現(xiàn)中,客戶終端對服務(wù)終端發(fā)送過來的2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)進(jìn)行處理,并將其顯示至指定區(qū)域之后,還可將圖像的處理情況反饋給服務(wù)終端,服務(wù)終端可根據(jù)終端反饋的信息進(jìn)一步確定終端的圖像處理能力,進(jìn)而對圖像數(shù)據(jù)的處理策略進(jìn)行調(diào)整,以更好地配合客戶終端進(jìn)行圖像數(shù)據(jù)的處理和顯示。
[0169]本發(fā)明實施例中所描述的客戶終端可對服務(wù)終端發(fā)送過來的2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)進(jìn)行解析,進(jìn)而將處理得到的圖像數(shù)據(jù)進(jìn)行還原并顯示至指定顯示區(qū)域,實現(xiàn)2D和3D的融合顯示,增強了圖像數(shù)據(jù)的處理方式的多樣性,提高了圖像處理和顯示的用戶體驗。
[0170]參見圖5,是本發(fā)明實施例提供的遠(yuǎn)程桌面的重定向方法的交互示意圖。本實施例中所描述的方法,包括步驟:
[0171]S301,服務(wù)終端接收操作系統(tǒng)發(fā)送的操作指令。
[0172]在一些可行的實施方式中,本發(fā)明實施例中所描述的服務(wù)終端可為虛擬平臺下的遠(yuǎn)程桌面服務(wù)器,遠(yuǎn)程桌面服務(wù)器提供了遠(yuǎn)程桌面的載體;本實施例中所描述的客戶終端也稱為客戶機,具體可包括:臺式電腦、筆記本電腦、平板電腦、手機等??蛻艚K端的桌面系統(tǒng)可以虛擬機的軟件形式存儲于遠(yuǎn)程桌面的服務(wù)終端(例如遠(yuǎn)程桌面服務(wù)器)上,本實施例中所描述的遠(yuǎn)程服務(wù)終端中可包括多個虛擬機。
[0173]在一些可行的實施方式中,當(dāng)用戶想要將圖像數(shù)據(jù)傳送至遠(yuǎn)程桌面顯示時,可先將客戶終端與遠(yuǎn)程桌面服務(wù)終端建立連接,具體的,客戶終端可通過VDI管理系統(tǒng)與遠(yuǎn)程桌面服務(wù)終端中的用戶虛擬機建立遠(yuǎn)程桌面連接。如果遠(yuǎn)程桌面服務(wù)終端中有物理顯卡,則可將服務(wù)終端中與客戶終端建立遠(yuǎn)程桌面連接的虛擬機綁定該物理顯卡,再安裝該物理顯卡對應(yīng)的顯示驅(qū)動,使該物理顯卡生效,進(jìn)而可通過該物理顯卡獲取圖像數(shù)據(jù)。具體實現(xiàn)中,客戶終端與遠(yuǎn)程桌面服務(wù)終端建立連接之后,則可通過用戶虛擬機中的某個應(yīng)用程序(或者多個應(yīng)用程序)向服務(wù)終端的操作系統(tǒng)發(fā)起圖像(包括2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù))顯示的請求,比如,通過AutoCAD向操作系統(tǒng)發(fā)送圖形顯示請求,請求將一張工程圖顯示到虛擬機桌面的某一個區(qū)域。具體的,操作系統(tǒng)接收到虛擬機的某個應(yīng)用程序發(fā)送的圖形顯示的請求之后則可根據(jù)應(yīng)用程序發(fā)送的請求生成多種操作指令(包括接口調(diào)用指令),并將生成的顯示圖像數(shù)據(jù)的操作指令或者接口調(diào)用指令發(fā)送給服務(wù)終端的物理顯卡或者虛擬機的鏡像驅(qū)動的顯示驅(qū)動。具體實現(xiàn)中,上述操作系統(tǒng)向上述物理顯卡及顯示驅(qū)動發(fā)送的顯示圖像數(shù)據(jù)的操作指令,可包括:畫線指令、拷貝指令、填充指令等,上述操作指令僅是舉例,而非窮舉。
[0174]在一些可行的實施方式中,服務(wù)終端的顯示驅(qū)動獲取到操作系統(tǒng)發(fā)送的顯示圖像數(shù)據(jù)的操作指令之后,則可從操作系統(tǒng)的顯示API獲取相應(yīng)的圖像數(shù)據(jù),并將獲取到的圖像數(shù)據(jù)放置到指定的共享內(nèi)存中。
[0175]S302,所述服務(wù)終端根據(jù)所述操作指令獲取2D圖像數(shù)據(jù)。
[0176]在一些可行的實施方式中,服務(wù)終端的顯示驅(qū)動獲取到操作系統(tǒng)發(fā)送的顯示圖像數(shù)據(jù)的操作指令之后,服務(wù)終端則可根據(jù)獲取到的操作指令從上述顯示驅(qū)動中獲取圖像數(shù)據(jù),或者根據(jù)獲取到的操作指令生成圖像數(shù)據(jù)。具體實現(xiàn)中,本實施例中所描述的顯示驅(qū)動采用的實現(xiàn)方式可為鏡像驅(qū)動,在物理顯卡對圖像數(shù)據(jù)進(jìn)行處理時,鏡像驅(qū)動也會收到操作系統(tǒng)下發(fā)的2D圖像顯示指令和2D圖像數(shù)據(jù),服務(wù)終端接收到上述操作指令之后則可從該顯示驅(qū)動中獲取數(shù)據(jù)或者根據(jù)上述操作指令生成相應(yīng)的圖像數(shù)據(jù)。例如,當(dāng)服務(wù)終端接收到的操作指令為拷貝指令時,則可根據(jù)該指令從顯示驅(qū)動中獲取2D圖像數(shù)據(jù),將2D圖像數(shù)據(jù)從源區(qū)域拷貝到指定區(qū)域,還可記錄上述2D圖像數(shù)據(jù)在上述顯示區(qū)域中的顯示區(qū)域,上述2D圖像數(shù)據(jù)在顯示區(qū)域中的顯示區(qū)域可用于指導(dǎo)客戶終端將2D圖像數(shù)據(jù)寫入遠(yuǎn)程桌面的相應(yīng)位置,以還原圖像并在遠(yuǎn)程桌面中顯示上述圖像。當(dāng)服務(wù)終端接收到的操作指令為畫線指令或者填充指令時,服務(wù)終端則可根據(jù)畫線指令在指定區(qū)域畫線,生成2D圖像數(shù)據(jù),或者根據(jù)填充指令對指定區(qū)域進(jìn)行顏色填充等填充處理,生成2D圖像數(shù)據(jù);服務(wù)終端根據(jù)接收到的操作指令生成2D圖像數(shù)據(jù)之后,還可生成2D圖像數(shù)據(jù)、上述2D圖像數(shù)據(jù)及其填充區(qū)域的對應(yīng)關(guān)系,上述對應(yīng)關(guān)系可用于指導(dǎo)客戶終端將上述2D圖像數(shù)據(jù)寫入遠(yuǎn)程桌面的相應(yīng)位置,以還原圖像并在遠(yuǎn)程桌面中顯示上述圖像。服務(wù)終端獲取到相應(yīng)的2D圖像數(shù)據(jù)之后,則可將獲取到的2D圖像數(shù)據(jù)存放至服務(wù)終端的共存內(nèi)存中,以通過相應(yīng)的處理模塊對該2D圖像數(shù)據(jù)進(jìn)行進(jìn)一步處理,并將處理得到的2D圖像數(shù)據(jù)發(fā)送至客戶終端顯
/Jn ο
[0177]S303,所述服務(wù)終端根據(jù)所述接口調(diào)用指令獲取3D圖像數(shù)據(jù)。
[0178]在一些可行的實施方式中,在本實施例中顯示驅(qū)動采用的鏡像驅(qū)動的實現(xiàn)方式,此時,服務(wù)終端需要從物理顯卡獲取3D圖像數(shù)據(jù)。具體的,服務(wù)終端可根據(jù)操作系統(tǒng)發(fā)送的接口調(diào)用指令從虛擬機綁定的物理顯卡獲取3D圖像數(shù)據(jù)以及3D圖像數(shù)據(jù)的顯示區(qū)域、或者窗口屬性等信息。例如,服務(wù)終端可接收到上述操作系統(tǒng)發(fā)送的3D的API接口調(diào)用時,通過3D的API接口掛鉤子截獲該接口調(diào)用,通過該接口調(diào)用從物理顯卡獲取3D圖像數(shù)據(jù)、3D圖像數(shù)據(jù)的顯示區(qū)域、窗口屬性等信息,并計算3D窗口的位置遮擋、移動等信息,進(jìn)而將獲取到的3D圖像數(shù)據(jù)存放至服務(wù)終端的共享內(nèi)存中,以通過相應(yīng)的處理模塊對該3D圖像數(shù)據(jù)進(jìn)行進(jìn)一步處理,并將處理得到的3D圖像數(shù)據(jù)發(fā)送至客戶終端顯示。
[0179]S304,所述服務(wù)終端分別對所述2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)進(jìn)行處理。
[0180]在一些可行的實施方式中,服務(wù)終端獲取到2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)之后,則可分別對該2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)進(jìn)行處理,可分別采用不同的處理方法對2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)進(jìn)行處理。具體實現(xiàn)中,用戶可預(yù)先在VDI管理系統(tǒng)中設(shè)定2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)的處理策略,生成一個策略文件存儲在VDI管理系統(tǒng)中;其中,上述圖像數(shù)據(jù)(包括2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù))的處理策略中包括圖像壓縮策略、圖像發(fā)送間隔策略、圖像丟幀的處理策略等,上述圖像數(shù)據(jù)的處理策略僅是舉例,而非窮舉。服務(wù)終端獲取到2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)之后,則可根據(jù)客戶終端的圖像處理能力,結(jié)合VDI管理系統(tǒng)中預(yù)設(shè)的2D圖像數(shù)據(jù)的處理策略和3D圖像數(shù)據(jù)的處理策略分別對上述2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)進(jìn)行處理。其中,上述客戶終端的圖像處理能力包括:圖像解壓縮能力、圖像接收能力、圖像的幀處理能力等。在本實施例中,服務(wù)終端分別對獲取到的2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)進(jìn)行處理時,VDI管理系統(tǒng)可將上述圖像數(shù)據(jù)的處理策略文件動態(tài)下發(fā)給服務(wù)終端,服務(wù)終端可根據(jù)客戶終端的圖像解壓縮能力,從預(yù)設(shè)的2D圖像數(shù)據(jù)的處理策略和3D圖像數(shù)據(jù)的處理策略中選擇相應(yīng)的圖像壓縮策略對獲取到的2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)進(jìn)行壓縮,或者,根據(jù)客戶終端的圖像接收能力,從預(yù)設(shè)的2D圖像數(shù)據(jù)的處理策略和3D圖像數(shù)據(jù)的處理策略中選擇相應(yīng)的圖像發(fā)送間隔策略設(shè)定將上述2D圖像數(shù)據(jù)或者3D圖像數(shù)據(jù)發(fā)送給客戶終端的發(fā)送間隔;此外,如果服務(wù)終端向客戶終端發(fā)送數(shù)據(jù)的過程中出現(xiàn)網(wǎng)絡(luò)擁堵,服務(wù)終端還可根據(jù)客戶終端的圖像的幀處理能力,從預(yù)設(shè)的2D圖像數(shù)據(jù)的處理策略和3D圖像數(shù)據(jù)的處理策略中選擇相應(yīng)的圖像丟幀的處理策略對上述2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)進(jìn)行丟幀處理,以使圖像數(shù)據(jù)的發(fā)送更加順暢。具體實現(xiàn)中,服務(wù)終端分別對上述2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)進(jìn)程處理時可采用不同的處理策略,也可采用相同的處理策略,具體可根據(jù)客戶終端的圖像處理能力以及圖像數(shù)據(jù)的特點選擇相應(yīng)的處理策略。此外,服務(wù)終端將圖像數(shù)據(jù)發(fā)送給客戶終端之后,客戶終端還可向服務(wù)終端反饋圖像數(shù)據(jù)的處理情況,服務(wù)終端可根據(jù)客戶終端的反饋信息判斷客戶終端的圖像處理能力,進(jìn)而可對圖像數(shù)據(jù)的處理策略進(jìn)行調(diào)整,以使圖像數(shù)據(jù)的處理效果更好地配合客戶終端,客戶終端可以更好地效果顯示圖像數(shù)據(jù)。
[0181]S305,所述服務(wù)終端將所述處理得到的圖像數(shù)據(jù)封裝為協(xié)議數(shù)據(jù)發(fā)送給客戶終端。
[0182]在一些可行的實施方式中,服務(wù)終端采用不同的圖像數(shù)據(jù)處理策略對獲取到的2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)進(jìn)行處理之后,則可將處理得到的圖像數(shù)據(jù)封裝為協(xié)議數(shù)據(jù),通過協(xié)議數(shù)據(jù)的方式將圖像數(shù)據(jù)和相應(yīng)的顯示指令等信息發(fā)送給客戶終端。具體實現(xiàn)中,上述協(xié)議數(shù)據(jù)中可包括:處理后的2D圖像數(shù)據(jù)、上述2D圖像數(shù)據(jù)的顯示區(qū)域、上述2D圖像數(shù)據(jù)的表面數(shù)據(jù)、上述2D圖像數(shù)據(jù)的處理策略等,上述協(xié)議數(shù)據(jù)中還包括:處理后的3D圖像數(shù)據(jù)、上述3D圖像數(shù)據(jù)的顯示區(qū)域,上述3D圖像數(shù)據(jù)的表面數(shù)據(jù),上述3D圖像數(shù)據(jù)的處理策略等;其中,上述2D圖像數(shù)據(jù)的顯示區(qū)域指該2D圖像數(shù)據(jù)在顯示驅(qū)動中的顯示區(qū)域,上述3D圖像數(shù)據(jù)的顯示區(qū)域指該3D圖像數(shù)據(jù)在物理顯卡中的顯示區(qū)域;上述2D圖像數(shù)據(jù)的表面數(shù)據(jù)指上述2D圖像數(shù)據(jù)的指定顯示區(qū)域,即上述2D圖像數(shù)據(jù)在客戶終端顯示時的顯示區(qū)域(即客戶終端顯示界面上的2D區(qū)域);上述3D圖像數(shù)據(jù)的表面數(shù)據(jù)指上述3D圖像數(shù)據(jù)的指定顯示區(qū)域,即上述3D圖像數(shù)據(jù)在客戶終端顯示時的顯示區(qū)域(即客戶終端顯示界面上的3D區(qū)域)。服務(wù)終端可將上述協(xié)議數(shù)據(jù)封裝為網(wǎng)絡(luò)報文(即協(xié)議數(shù)據(jù))發(fā)送給客戶終端,以通過客戶終端將所述圖像數(shù)據(jù)顯示至指定位置。
[0183]S306,所述客戶終端對所述協(xié)議數(shù)據(jù)進(jìn)行處理。
[0184]S307,所述客戶終端將所述2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)寫入指定位置。
[0185]S308,所述客戶終端將圖像數(shù)據(jù)處理情況反饋給服務(wù)終端。
[0186]在一些可行的實施方式中,客戶終端獲取到服務(wù)終端發(fā)送的協(xié)議數(shù)據(jù)之后,則可對上述協(xié)議數(shù)據(jù)進(jìn)行解析,從上述協(xié)議數(shù)據(jù)中獲取服務(wù)終端對2D圖像數(shù)據(jù)進(jìn)行處理時采用的處理策略和服務(wù)終端對3D圖像數(shù)據(jù)進(jìn)行處理時采用的處理策略,其中,上述2D圖像數(shù)據(jù)的處理策略具體可為2D圖像數(shù)據(jù)的壓縮策略,上述3D圖像數(shù)據(jù)的處理策略具體可為3D圖像數(shù)據(jù)的壓縮策略。客戶終端對上述協(xié)議數(shù)據(jù)進(jìn)行解析之后,則可依據(jù)上述2D圖像數(shù)據(jù)的壓縮策略對上述2D圖像數(shù)據(jù)進(jìn)行解壓縮,并根據(jù)上述協(xié)議數(shù)據(jù)中包含的2D圖像數(shù)據(jù)的顯示區(qū)域?qū)⑸鲜鼋鈮嚎s得到的2D圖像數(shù)據(jù)寫入客戶終端顯示界面上2D區(qū)域中相應(yīng)的位置;還可依據(jù)上述3D圖像數(shù)據(jù)的壓縮策略對上述3D圖像數(shù)據(jù)進(jìn)行解壓縮,進(jìn)而根據(jù)上述協(xié)議數(shù)據(jù)中包含的3D圖像數(shù)據(jù)的顯示區(qū)域?qū)⑸鲜?D圖像數(shù)據(jù)分別寫入客戶終端的顯示界面上的3D區(qū)域中相應(yīng)的位置,實現(xiàn)2D和3D的融合顯示。即客戶終端可根據(jù)服務(wù)終端發(fā)送過來的協(xié)議數(shù)據(jù)中2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)的顯示區(qū)域,將2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)分別寫入2D圖像數(shù)據(jù)的顯示區(qū)域相對應(yīng)的表面數(shù)據(jù)中,將3D圖像數(shù)據(jù)分別寫入3D圖像數(shù)據(jù)的顯示區(qū)域相對應(yīng)的表面數(shù)據(jù)中,以將圖像數(shù)據(jù)還原為與服務(wù)終端發(fā)送過來的圖像數(shù)據(jù)一樣,實現(xiàn)圖形等圖像數(shù)據(jù)在遠(yuǎn)程桌面顯示。具體實現(xiàn)中,客戶終端對服務(wù)終端發(fā)送過來的2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)進(jìn)行處理,并將其顯示至指定區(qū)域之后,還可將圖像的處理情況反饋給服務(wù)終端,服務(wù)終端可根據(jù)客戶終端反饋的信息進(jìn)一步確定客戶終端的圖像處理能力,進(jìn)而對圖像數(shù)據(jù)的處理策略進(jìn)行調(diào)整,以更好地配合客戶終端進(jìn)行圖像數(shù)據(jù)的處理和顯不O
[0187]在本發(fā)明實施例,服務(wù)終端可分別獲取2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù),并分別對獲取到的2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)進(jìn)行處理,進(jìn)而將處理得到的圖像數(shù)據(jù)發(fā)送給客戶終端,通過客戶終端進(jìn)行還原處理并顯示至指定顯示區(qū)域,實現(xiàn)2D和3D的融合顯示,豐富了圖像數(shù)據(jù)的處理形式,增強了圖像數(shù)據(jù)的處理方式的多樣性,提高了圖像處理和顯示的用戶體驗。
[0188]參見圖6,是本發(fā)明實施例提供的遠(yuǎn)程桌面的重定向的系統(tǒng)的實施例結(jié)構(gòu)示意圖。本實施例中所描述的系統(tǒng),包括:服務(wù)終端100和客戶終端200。
[0189]在一些可行的實施方式中,本發(fā)明實施例中所描述的服務(wù)終端100可為虛擬平臺下的遠(yuǎn)程桌面服務(wù)終端,遠(yuǎn)程桌面服務(wù)終端提供了遠(yuǎn)程桌面的載體;本實施例中所描述的客戶終端200也稱為客戶機,具體可包括:臺式電腦、筆記本電腦、平板電腦、手機等??蛻艚K端的桌面系統(tǒng)可以虛擬機的軟件形式存儲于遠(yuǎn)程桌面服務(wù)終端上,本實施例中所描述的遠(yuǎn)程服務(wù)終端中可包括多個虛擬機。
[0190]在一些可行的實施方式中,當(dāng)用戶想要將圖像數(shù)據(jù)傳送至遠(yuǎn)程桌面顯示時,可先將客戶終端200與遠(yuǎn)程桌面服務(wù)終端100建立連接,具體的,客戶終端200可通過VDI管理系統(tǒng)與遠(yuǎn)程桌面服務(wù)終端100中的用戶虛擬機建立遠(yuǎn)程桌面連接。如果遠(yuǎn)程桌面服務(wù)終端100中有物理顯卡,則可將服務(wù)終端100中與客戶終端200建立遠(yuǎn)程桌面連接的虛擬機綁定該物理顯卡,再安裝該物理顯卡對應(yīng)的顯示驅(qū)動,使該物理顯卡生效,進(jìn)而可通過該物理顯卡獲取圖像數(shù)據(jù)。具體實現(xiàn)中,客戶終端200與遠(yuǎn)程桌面服務(wù)終端100建立連接之后,則可通過用戶虛擬機中的某個應(yīng)用程序(或者多個應(yīng)用程序)向服務(wù)終端100的操作系統(tǒng)發(fā)起圖像(包括2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù))顯示的請求,比如,通過AutoCAD向操作系統(tǒng)發(fā)送圖形顯示請求,請求將一張工程圖顯示到虛擬機桌面的某一個區(qū)域。具體的,操作系統(tǒng)接收到虛擬機的某個應(yīng)用程序發(fā)送的圖形顯示的請求之后則可根據(jù)應(yīng)用程序發(fā)送的請求生成多種操作指令或者接口調(diào)用,并將生成的顯示圖像數(shù)據(jù)的操作指令或者接口調(diào)用發(fā)送給服務(wù)終端100的物理顯卡或者虛擬機的鏡像驅(qū)動的顯示驅(qū)動。具體實現(xiàn)中,上述操作系統(tǒng)向上述物理顯卡及顯示驅(qū)動發(fā)送的顯示圖像數(shù)據(jù)的操作指令,可包括:畫線指令、拷貝指令、填充指令等,上述操作指令僅是舉例,而非窮舉。服務(wù)終端100的顯示驅(qū)動獲取到操作系統(tǒng)發(fā)送的顯示圖像數(shù)據(jù)的操作指令之后,則可從操作系統(tǒng)的顯示API獲取相應(yīng)的圖像數(shù)據(jù),并將獲取到的圖像數(shù)據(jù)放置到指定的共享內(nèi)存中。
[0191]在一些可行的實施方式中,本實施例中所描述的顯示驅(qū)動采用的實現(xiàn)方式可為鏡像驅(qū)動,在物理顯卡對圖像數(shù)據(jù)進(jìn)行處理時,鏡像驅(qū)動也會收到操作系統(tǒng)下發(fā)的2D圖像顯示指令和2D圖像數(shù)據(jù),服務(wù)終端100接收到上述操作指令之后則可從該顯示驅(qū)動中獲取數(shù)據(jù)或者根據(jù)上述操作指令生成相應(yīng)的圖像數(shù)據(jù)。例如,當(dāng)服務(wù)終端100接收到的操作指令為拷貝指令時,則可根據(jù)該指令從顯示驅(qū)動中獲取2D圖像數(shù)據(jù),將2D圖像數(shù)據(jù)從源區(qū)域拷貝到指定區(qū)域,還可記錄上述2D圖像數(shù)據(jù)在上述顯示區(qū)域中的顯示區(qū)域,上述2D圖像數(shù)據(jù)在顯示區(qū)域中的顯示區(qū)域可用于指導(dǎo)客戶終端將2D圖像數(shù)據(jù)寫入遠(yuǎn)程桌面的相應(yīng)位置,以還原圖像并在遠(yuǎn)程桌面中顯示上述圖像。當(dāng)服務(wù)終端100接收到的操作指令為畫線指令或者填充指令時,服務(wù)終端則可根據(jù)畫線指令在指定區(qū)域畫線,生成2D圖像數(shù)據(jù),或者根據(jù)填充指令對指定區(qū)域進(jìn)行顏色填充等填充處理,生成2D圖像數(shù)據(jù);服務(wù)終端100根據(jù)接收到的操作指令生成2D圖像數(shù)據(jù)之后,還可生成2D圖像數(shù)據(jù)、上述2D圖像數(shù)據(jù)及其填充區(qū)域的對應(yīng)關(guān)系,上述對應(yīng)關(guān)系可用于指導(dǎo)客戶終端將上述2D圖像數(shù)據(jù)寫入遠(yuǎn)程桌面的相應(yīng)位置,以還原圖像并在遠(yuǎn)程桌面中顯示上述圖像。服務(wù)終端100獲取到相應(yīng)的2D圖像數(shù)據(jù)之后,則可將獲取到的2D圖像數(shù)據(jù)存放至服務(wù)終端的共存內(nèi)存中,以通過相應(yīng)的處理模塊對該2D圖像數(shù)據(jù)進(jìn)行進(jìn)一步處理,并將處理得到的2D圖像數(shù)據(jù)發(fā)送至客戶終端200顯不O
[0192]在一些可行的實施方式中,在本實施例中顯示驅(qū)動采用的鏡像驅(qū)動的實現(xiàn)方式,而鏡像區(qū)域無法捕捉到3D圖像數(shù)據(jù),故此服務(wù)終端100需要從物理顯卡獲取3D圖像數(shù)據(jù)。具體的,服務(wù)終端100可根據(jù)操作系統(tǒng)發(fā)送的接口調(diào)用從虛擬機綁定的物理顯卡獲取3D圖像數(shù)據(jù)以及3D圖像數(shù)據(jù)的顯示區(qū)域、或者窗口屬性等信息。例如,服務(wù)終端100可接收到上述操作系統(tǒng)發(fā)送的3D的API接口調(diào)用時,通過3D的API接口掛鉤子截獲該接口調(diào)用,通過該接口調(diào)用從物理顯卡獲取3D圖像數(shù)據(jù)、3D圖像數(shù)據(jù)的顯示區(qū)域、窗口屬性等信息,并計算3D窗口的位置遮擋、移動等信息,進(jìn)而將獲取到的3D圖像數(shù)據(jù)存放至服務(wù)終端的共享內(nèi)存中,以通過相應(yīng)的處理模塊對該3D圖像數(shù)據(jù)進(jìn)行進(jìn)一步處理,并將處理得到的3D圖像數(shù)據(jù)發(fā)送至客戶終端200顯示。[0193]在一些可行的實施方式中,服務(wù)終端100獲取到2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)之后,則可分別對該2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)進(jìn)行處理,可分別采用不同的處理方法對2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)進(jìn)行處理。具體實現(xiàn)中,用戶可預(yù)先在VDI管理系統(tǒng)中設(shè)定2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)的處理策略,生成一個策略文件存儲在VDI管理系統(tǒng)中;其中,上述圖像數(shù)據(jù)(包括2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù))的處理策略中包括圖像壓縮策略、圖像發(fā)送間隔策略、圖像丟幀的處理策略等,上述圖像數(shù)據(jù)的處理策略僅是舉例,而非窮舉。服務(wù)終端100獲取到2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)之后,則可根據(jù)客戶終端200的圖像處理能力,結(jié)合VDI管理系統(tǒng)中預(yù)設(shè)的2D圖像數(shù)據(jù)的處理策略和3D圖像數(shù)據(jù)的處理策略分別對上述2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)進(jìn)行處理。其中,上述客戶終端200的圖像處理能力包括:圖像解壓縮能力、圖像接收能力、圖像的幀處理能力等。在本實施例中,服務(wù)終端100分別對獲取到的2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)進(jìn)行處理時,VDI管理系統(tǒng)可將上述圖像數(shù)據(jù)的處理策略文件動態(tài)下發(fā)給服務(wù)終端100,服務(wù)終端100可根據(jù)客戶終端的圖像解壓縮能力,從預(yù)設(shè)的2D圖像數(shù)據(jù)的處理策略和3D圖像數(shù)據(jù)的處理策略中選擇相應(yīng)的圖像壓縮策略對獲取到的2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)進(jìn)行壓縮,或者,根據(jù)客戶終端200的圖像接收能力,從預(yù)設(shè)的2D圖像數(shù)據(jù)的處理策略和3D圖像數(shù)據(jù)的處理策略中選擇相應(yīng)的圖像發(fā)送間隔策略設(shè)定將上述2D圖像數(shù)據(jù)或者3D圖像數(shù)據(jù)發(fā)送給客戶終端200的發(fā)送間隔;如果服務(wù)終端100向客戶終端200發(fā)送數(shù)據(jù)的過程中出現(xiàn)網(wǎng)絡(luò)擁堵,服務(wù)終端100還可根據(jù)客戶終端200的圖像的幀處理能力,從預(yù)設(shè)的2D圖像數(shù)據(jù)的處理策略和3D圖像數(shù)據(jù)的處理策略中選擇相應(yīng)的圖像丟幀的處理策略對上述2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)進(jìn)行丟幀處理,以使圖像數(shù)據(jù)的發(fā)送更加順暢。具體實現(xiàn)中,服務(wù)終端100分別對上述2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)進(jìn)程處理時可采用不同的處理策略,也可采用相同的處理策略,具體可根據(jù)客戶終端200的圖像處理能力以及圖像數(shù)據(jù)的特點選擇相應(yīng)的處理策略。此外,服務(wù)終端100將圖像數(shù)據(jù)發(fā)送給客戶終端200之后,客戶終端200還可向服務(wù)終端100反饋圖像數(shù)據(jù)的處理情況,服務(wù)終端100可根據(jù)客戶終端200的反饋信息判斷客戶終端200的圖像處理能力,進(jìn)而可對圖像數(shù)據(jù)的處理策略進(jìn)行調(diào)整,以使圖像數(shù)據(jù)的處理效果更好地配合客戶終端200,客戶終端200可以更好地效果顯示圖像數(shù)據(jù)。
[0194]在一些可行的實施方式中,服務(wù)終端100采用不同的圖像數(shù)據(jù)處理策略對獲取到的2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)進(jìn)行分策略處理之后,則可將處理得到的圖像數(shù)據(jù)封裝為協(xié)議數(shù)據(jù),通過協(xié)議數(shù)據(jù)的方式將圖像數(shù)據(jù)和相應(yīng)的顯示指令等信息發(fā)送給客戶終端200。具體實現(xiàn)中,上述協(xié)議數(shù)據(jù)中可包括:處理后的2D圖像數(shù)據(jù)、上述2D圖像數(shù)據(jù)的顯示區(qū)域、上述2D圖像數(shù)據(jù)的表面數(shù)據(jù)、上述2D圖像數(shù)據(jù)的處理策略等,上述協(xié)議數(shù)據(jù)中還包括:處理后的3D圖像數(shù)據(jù)、上述3D圖像數(shù)據(jù)的顯示區(qū)域,上述3D圖像數(shù)據(jù)的表面數(shù)據(jù),上述3D圖像數(shù)據(jù)的處理策略等;其中,上述2D圖像數(shù)據(jù)的顯示區(qū)域指該2D圖像數(shù)據(jù)在顯示驅(qū)動中的顯示區(qū)域,上述3D圖像數(shù)據(jù)的顯示區(qū)域指該3D圖像數(shù)據(jù)在物理顯卡中的顯示區(qū)域;上述2D圖像數(shù)據(jù)的表面數(shù)據(jù)指上述2D圖像數(shù)據(jù)的指定顯示區(qū)域,即上述2D圖像數(shù)據(jù)在客戶終端顯示時的顯示區(qū)域(即客戶終端顯示界面上的2D區(qū)域);上述3D圖像數(shù)據(jù)的表面數(shù)據(jù)指上述3D圖像數(shù)據(jù)的指定顯示區(qū)域,即上述3D圖像數(shù)據(jù)在客戶終端顯示時的顯示區(qū)域(即客戶終端顯示界面上的3D區(qū)域)。服務(wù)終端100可將上述協(xié)議數(shù)據(jù)封裝為網(wǎng)絡(luò)報文(即協(xié)議數(shù)據(jù))發(fā)送給客戶終端200,以通過客戶終端200將所述圖像數(shù)據(jù)顯示至指定位置。[0195]在一些可行的實施方式中,客戶終端200獲取到服務(wù)終端100發(fā)送的協(xié)議數(shù)據(jù)之后,則可對上述協(xié)議數(shù)據(jù)進(jìn)行解析,從上述協(xié)議數(shù)據(jù)中獲取服務(wù)終端對2D圖像數(shù)據(jù)進(jìn)行處理時采用的處理策略和服務(wù)終端對3D圖像數(shù)據(jù)進(jìn)行處理時采用的處理策略,其中,上述2D圖像數(shù)據(jù)的處理策略具體可為2D圖像數(shù)據(jù)的壓縮策略,上述3D圖像數(shù)據(jù)的處理策略具體可為3D圖像數(shù)據(jù)的壓縮策略。客戶終端200對上述協(xié)議數(shù)據(jù)進(jìn)行解析之后,則可依據(jù)上述2D圖像數(shù)據(jù)的壓縮策略對上述2D圖像數(shù)據(jù)進(jìn)行解壓縮,并根據(jù)上述協(xié)議數(shù)據(jù)中包含的2D圖像數(shù)據(jù)的顯示區(qū)域?qū)⑸鲜鼋鈮嚎s得到的2D圖像數(shù)據(jù)寫入客戶終端顯示界面上2D區(qū)域中相應(yīng)的位置;還可依據(jù)上述3D圖像數(shù)據(jù)的壓縮策略對上述3D圖像數(shù)據(jù)進(jìn)行解壓縮,進(jìn)而根據(jù)上述協(xié)議數(shù)據(jù)中包含的3D圖像數(shù)據(jù)的顯示區(qū)域?qū)⑸鲜?D圖像數(shù)據(jù)分別寫入客戶終端的顯示界面上的3D區(qū)域中相應(yīng)的位置,實現(xiàn)2D和3D的融合顯示。即客戶終端200可根據(jù)服務(wù)終端100發(fā)送過來的協(xié)議數(shù)據(jù)中2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)的顯示區(qū)域,將2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)分別寫入2D圖像數(shù)據(jù)的顯示區(qū)域相對應(yīng)的表面數(shù)據(jù)中,將3D圖像數(shù)據(jù)分別寫入3D圖像數(shù)據(jù)的顯示區(qū)域相對應(yīng)的表面數(shù)據(jù)中,以將圖像數(shù)據(jù)還原為與服務(wù)終端發(fā)送過來的圖像數(shù)據(jù)一樣,實現(xiàn)圖形等圖像數(shù)據(jù)在遠(yuǎn)程桌面顯示。具體實現(xiàn)中,客戶終端200對服務(wù)終端100發(fā)送過來的2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)進(jìn)行處理,并將其顯示至指定區(qū)域之后,還可將圖像的處理情況反饋給服務(wù)終端100,服務(wù)終端100可根據(jù)客戶終端200反饋的信息進(jìn)一步確定客戶終端的圖像處理能力,進(jìn)而對圖像數(shù)據(jù)的處理策略進(jìn)行調(diào)整,以更好地配合客戶終端進(jìn)行圖像數(shù)據(jù)的處理和顯示。
[0196]本發(fā)明實施例所描述的系統(tǒng)中服務(wù)終端可分別獲取2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù),并分別對獲取到的2D圖像數(shù)據(jù)和3D圖像數(shù)據(jù)進(jìn)行處理,進(jìn)而將處理得到的圖像數(shù)據(jù)發(fā)送給客戶終端,通過客戶終端進(jìn)行還原處理并顯示至指定顯示區(qū)域,實現(xiàn)2D和3D的融合顯示,豐富了圖像數(shù)據(jù)的處理形式,增強了圖像數(shù)據(jù)的處理方式的多樣性,提高了圖像處理和顯示的用戶體驗。
[0197]本領(lǐng)域普通技術(shù)人員可以理解實現(xiàn)上述實施例方法中的全部或部分流程,是可以通過計算機程序來指令相關(guān)的硬件來完成,所述的程序可存儲于計算機可讀取存儲介質(zhì)中,該程序在執(zhí)行時,可包括如上述各方法的實施例的流程。其中,所述的存儲介質(zhì)可為磁碟、光盤、只讀存儲記憶體(Read-Only Memory, ROM)或隨機存儲記憶體(Random AccessMemory, RAM)等。
[0198]以上所揭露的僅為本發(fā)明較佳實施例而已,當(dāng)然不能以此來限定本發(fā)明之權(quán)利范圍,因此依本發(fā)明權(quán)利要求所作的等同變化,仍屬本發(fā)明所涵蓋的范圍。
【權(quán)利要求】
1.一種遠(yuǎn)程桌面的重定向方法,其特征在于,包括: 服務(wù)終端從虛擬機的顯示驅(qū)動中獲取操作系統(tǒng)發(fā)送的顯示圖像數(shù)據(jù)的操作指令;所述服務(wù)終端根據(jù)所述操作指令從所述顯示驅(qū)動中獲取2D圖像數(shù)據(jù),或者根據(jù)所述操作指令生成2D圖像數(shù)據(jù); 所述服務(wù)終端根據(jù)所述操作指令從所述虛擬機綁定的物理顯卡中獲取3D圖像數(shù)據(jù);所述服務(wù)終端根據(jù)客戶終端的圖像處理能力,和預(yù)設(shè)的2D圖像數(shù)據(jù)的處理策略對所述2D圖像數(shù)據(jù)進(jìn)行處理; 所述服務(wù)終端根據(jù)所述客戶終端的圖像處理能力,和預(yù)設(shè)的3D圖像數(shù)據(jù)的處理策略對所述3D圖像數(shù)據(jù)進(jìn)行處理; 所述服務(wù)終端將所述處理得到的圖像數(shù)據(jù)封裝為協(xié)議數(shù)據(jù)發(fā)送給所述客戶終端,以通過所述客戶終端將所述2D圖像數(shù)據(jù)和所述3D圖像數(shù)據(jù)寫入指定顯示區(qū)域。
2.如權(quán)利要求1所述的方法,其特征在于,所述操作系統(tǒng)發(fā)送的顯示圖像數(shù)據(jù)的操作指令,包括:畫線指令、填充指令、拷貝指令中至少一種; 所述服務(wù)終端根據(jù)所述操作指令從所述顯示驅(qū)動中獲取2D圖像數(shù)據(jù),或者根據(jù)所述操作指令生成2D圖像數(shù)據(jù),包括: 所述服務(wù)終端根據(jù)所述拷貝指令從所述顯示驅(qū)動中獲取2D圖像數(shù)據(jù),并記錄所述2D圖像數(shù)據(jù)在所述顯示驅(qū)動中的顯示區(qū)域;或者 所述服務(wù)終端根據(jù)所述畫線指令或者填充指令對指定區(qū)域進(jìn)行填充處理,生成2D圖像數(shù)據(jù)和所述2D圖像數(shù)據(jù)及其填充區(qū)域的對應(yīng)關(guān)系。
3.如權(quán)利要求1所述的方法,其特征在于,所述操作系統(tǒng)發(fā)送的顯示圖像數(shù)據(jù)的操作指令中包括:3D的應(yīng)用程序編程接口 API接口調(diào)用指令; 所述服務(wù)終端根據(jù)所述操作指令從所述虛擬機綁定的物理顯卡中獲取3D圖像數(shù)據(jù),包括: 所述服務(wù)終端根據(jù)所述3D的API接口調(diào)用指令從所述虛擬機綁定的物理顯卡中獲取3D圖像、所述3D圖像的顯示區(qū)域、所述3D圖像對應(yīng)的窗口屬性中至少一種3D圖像數(shù)據(jù)。
4.如權(quán)利要求1-3任一項所述的方法,其特征在于,所述預(yù)設(shè)的2D圖像數(shù)據(jù)的處理策略中包括2D圖像數(shù)據(jù)的圖像壓縮策略、圖像發(fā)送間隔策略、圖像丟幀的處理策略中至少一種; 所述預(yù)設(shè)的3D圖像數(shù)據(jù)的處理策略中包括3D圖像數(shù)據(jù)的圖像壓縮策略、圖像發(fā)送間隔策略、圖像丟幀的處理策略中至少一種。
5.如權(quán)利要求4所述的方法,其特征在于,所述客戶終端的圖像處理能力包括:圖像解壓縮能力、圖像接收能力、圖像的幀處理能力中至少一種; 所述服務(wù)終端根據(jù)客戶終端的圖像處理能力,和預(yù)設(shè)的2D圖像數(shù)據(jù)的處理策略對所述2D圖像數(shù)據(jù)進(jìn)行處理,包括: 所述服務(wù)終端根據(jù)客戶終端的圖像解壓縮能力,從預(yù)設(shè)的2D圖像數(shù)據(jù)的處理策略中選擇相應(yīng)的圖像壓縮策略對所述2D圖像數(shù)據(jù)進(jìn)行壓縮;或者 所述服務(wù)終端根據(jù)客戶終端的圖像接收能力,從預(yù)設(shè)的2D圖像數(shù)據(jù)的處理策略中選擇相應(yīng)的圖像發(fā)送間隔策略設(shè)定所述2D圖像數(shù)據(jù)的發(fā)送間隔;或者 所述服務(wù)終端在網(wǎng)絡(luò)擁堵時根據(jù)客戶終端的圖像的幀處理能力,從預(yù)設(shè)的2D圖像數(shù)據(jù)的處理策略中選擇相應(yīng)的圖像丟幀的處理策略對所述2D圖像數(shù)據(jù)進(jìn)行丟幀處理。
6.如權(quán)利要求4或5所述的方法,其特征在于,所述客戶終端的圖像處理能力包括:圖像解壓縮能力、圖像接收能力、圖像的幀處理能力中至少一種; 所述服務(wù)終端根據(jù)所述客戶終端的圖像處理能力,和預(yù)設(shè)的3D圖像數(shù)據(jù)的處理策略對所述3D圖像數(shù)據(jù)進(jìn)行處理,包括: 所述服務(wù)終端根據(jù)客戶終端的圖像解壓縮能力,從預(yù)設(shè)的3D圖像數(shù)據(jù)的處理策略中選擇相應(yīng)的圖像壓縮策略對所述3D圖像數(shù)據(jù)進(jìn)行壓縮;或者 所述服務(wù)終端根據(jù)客戶終端的圖像接收能力,從預(yù)設(shè)的3D圖像數(shù)據(jù)的處理策略中選擇相應(yīng)的圖像發(fā)送間隔策略設(shè)定所述3D圖像數(shù)據(jù)的發(fā)送間隔;或者 所述服務(wù)終端在網(wǎng)絡(luò)擁堵時根據(jù)客戶終端的圖像的幀處理能力,從預(yù)設(shè)的3D圖像數(shù)據(jù)的處理策略中選擇相應(yīng)的圖像丟幀的處理策略對所述3D圖像數(shù)據(jù)進(jìn)行丟幀處理。
7.如權(quán)利要求1-6任一項所述的方法,其特征在于,所述協(xié)議數(shù)據(jù)中包括:處理后的2D圖像數(shù)據(jù)、所述2D圖像數(shù)據(jù)的顯示區(qū)域、所述2D圖像數(shù)據(jù)的表面數(shù)據(jù)、所述2D圖像數(shù)據(jù)的壓縮策略; 所述協(xié)議數(shù)據(jù)中還包括:處理后的3D圖像數(shù)據(jù)、所述3D圖像數(shù)據(jù)的顯示區(qū)域、所述3D圖像數(shù)據(jù)的表面數(shù)據(jù)、所述3D圖像數(shù)據(jù)的壓縮策略; 其中,所述2D圖像數(shù)據(jù)的顯示區(qū)域為所述2D圖像在所述顯卡驅(qū)動中的顯示區(qū)域; 所述3D圖像數(shù)據(jù)的顯示區(qū)域為所述3D圖像數(shù)據(jù)在所述物理顯卡中的顯示區(qū)域; 所述2D圖像數(shù)據(jù)的表面數(shù)據(jù)為所述2D圖像數(shù)據(jù)在所述客戶終端中的所述指定顯示區(qū)域,所述指定顯示區(qū)域具體為所述客戶終端顯示界面上的2D區(qū)域;` 所述3D圖像數(shù)據(jù)的表面數(shù)據(jù)為所述3D圖像數(shù)據(jù)在所述客戶終端中的所述指定顯示區(qū)域,所述指定顯示區(qū)域具體為所述客戶終端顯示界面上的3D區(qū)域。
8.—種遠(yuǎn)程桌面的重定向方法,其特征在于,包括: 客戶終端接收服務(wù)終端發(fā)送的協(xié)議數(shù)據(jù),所述協(xié)議數(shù)據(jù)中包括2D圖像數(shù)據(jù)以及所述2D圖像數(shù)據(jù)的處理策略,和3D圖像數(shù)據(jù)以及所述3D圖像數(shù)據(jù)的處理策略; 所述客戶終端根據(jù)所述2D圖像數(shù)據(jù)的處理策略對所述2D圖像數(shù)據(jù)進(jìn)行處理,并將所述2D圖像數(shù)據(jù)寫入指定顯示區(qū)域; 所述客戶終端根據(jù)所述3D圖像數(shù)據(jù)的處理策略對所述3D圖像數(shù)據(jù)進(jìn)行處理,并將所述3D圖像數(shù)據(jù)寫入指定顯示區(qū)域。
9.如權(quán)利要求8所述的方法,其特征在于,所述協(xié)議數(shù)據(jù)還包括:所述2D圖像數(shù)據(jù)的顯示區(qū)域、所述2D圖像數(shù)據(jù)的表面數(shù)據(jù); 所述協(xié)議數(shù)據(jù)還包括:所述3D圖像數(shù)據(jù)的顯示區(qū)域、所述3D圖像數(shù)據(jù)的表面數(shù)據(jù);其中,所述2D圖像數(shù)據(jù)的顯示區(qū)域為所述2D圖像數(shù)據(jù)在所述服務(wù)終端的顯示驅(qū)動中的顯示區(qū)域; 所述3D圖像數(shù)據(jù)的顯示區(qū)域為所述3D圖像數(shù)據(jù)在所述服務(wù)終端的物理顯卡中的顯示區(qū)域; 所述2D圖像數(shù)據(jù)的表面數(shù)據(jù)為所述2D圖像數(shù)據(jù)在所述客戶終端中的所述指定顯示區(qū)域,所述指定顯示區(qū)域具體為所述客戶終端顯示界面上的2D區(qū)域; 所述3D圖像數(shù)據(jù)的表面數(shù)據(jù)為所述3D圖像數(shù)據(jù)在所述客戶終端中的所述指定顯示區(qū)域,所述指定顯示區(qū)域具體為所述客戶終端顯示界面上的3D區(qū)域。
10.如權(quán)利要求9所述的方法,其特征在于,所述2D圖像數(shù)據(jù)的處理策略中包含所述2D圖像數(shù)據(jù)的圖像壓縮策略; 所述客戶終端根據(jù)所述2D圖像數(shù)據(jù)的處理策略對所述2D圖像數(shù)據(jù)進(jìn)行處理,并將所述2D圖像數(shù)據(jù)寫入指定顯示區(qū)域,包括: 所述客戶終端根據(jù)所述2D圖像數(shù)據(jù)的圖像壓縮策略對所述2D圖像數(shù)據(jù)進(jìn)行解壓縮,并將所述解壓縮得到的所述2D圖像數(shù)據(jù)寫入所述客戶終端顯示界面上的2D區(qū)域。
11.如權(quán)利要求9或10所述的方法,其特征在于,所述3D圖像數(shù)據(jù)的處理策略中包含所述3D圖像數(shù)據(jù)的圖像壓縮策略; 所述客戶終端根據(jù)所述3D圖像數(shù)據(jù)的處理策略對所述3D圖像數(shù)據(jù)進(jìn)行處理,并將所述3D圖像數(shù)據(jù)寫入指定顯示區(qū)域,包括: 所述客戶終端根據(jù)所述3D圖像數(shù)據(jù)的圖像壓縮策略對所述3D圖像數(shù)據(jù)進(jìn)行解壓縮,并將所述解壓縮得到的所述3D圖像數(shù)據(jù)寫入所述客戶終端顯示界面上的3D區(qū)域。
12.一種服務(wù)終端,其特征在于,包括: 獲取模塊,用于從虛擬機的顯示驅(qū)動中獲取操作系統(tǒng)發(fā)送的顯示圖像數(shù)據(jù)的操作指令; 第一捕捉模塊,用于根據(jù)所述獲取模塊獲取的所述操作指令從所述顯示驅(qū)動中獲取2D圖像數(shù)據(jù),或者根據(jù)所述操作指令生成2D圖像數(shù)據(jù); 第二捕捉模塊,用于根據(jù)所述獲取模塊獲取的所述操作指令從所述虛擬機綁定的物理顯卡中獲取3D圖像數(shù)據(jù); 第一處理模塊,用于根據(jù)客戶終端的圖像處理能力,和預(yù)設(shè)的2D圖像數(shù)據(jù)的處理策略對所述第一捕捉模塊捕捉的2D圖像數(shù)據(jù)進(jìn)行處理; 第二處理模塊,用于根據(jù)客戶終端的圖像處理能力,和預(yù)設(shè)的3D圖像數(shù)據(jù)的處理策略對所述第二捕捉模塊捕捉的3D圖像數(shù)據(jù)進(jìn)行處理; 發(fā)送模塊,用于將所述第一處理模塊和第二處理模塊處理得到的圖像數(shù)據(jù)封裝為協(xié)議數(shù)據(jù)發(fā)送給所述客戶終端,以通過所述客戶終端將所述2D圖像數(shù)據(jù)和所述3D圖像數(shù)據(jù)寫入指定顯示區(qū)域。
13.如權(quán)利要求12所述的服務(wù)終端,其特征在于,所述獲取模塊獲取的所述操作系統(tǒng)發(fā)送的顯示圖像數(shù)據(jù)的操作指令,包括:畫線指令、填充指令、拷貝指令中至少一種; 所述第一捕捉模塊,具體用于: 根據(jù)所述拷貝指令從所述顯示驅(qū)動中獲取2D圖像數(shù)據(jù),并記錄所述2D圖像數(shù)據(jù)在所述顯示驅(qū)動中的顯示區(qū)域;或者 根據(jù)所述畫線指令或者填充指令對指定區(qū)域進(jìn)行填充處理,生成2D圖像數(shù)據(jù)和所述2D圖像數(shù)據(jù)及其填充區(qū)域的對應(yīng)關(guān)系。
14.如權(quán)利要求12所述的服務(wù)終端,其特征在于,所述獲取模塊獲取的操作系統(tǒng)發(fā)送的顯示圖像數(shù)據(jù)的操作指令中包括:3D的API接口調(diào)用指令; 所述第二捕捉模塊,具體用于: 根據(jù)所述3D的API接口調(diào)用指令從所述虛擬機綁定的物理顯卡中獲取3D圖像、所述3D圖像的顯示區(qū)域、所述3D圖像對應(yīng)的窗口屬性中至少一種3D圖像數(shù)據(jù)。
15.如權(quán)利要求12-14任意一項所述的服務(wù)終端,其特征在于,所述預(yù)設(shè)的2D圖像數(shù)據(jù)的處理策略中包括2D圖像數(shù)據(jù)的圖像壓縮策略、圖像發(fā)送間隔策略、圖像丟幀的處理策略至少一種; 所述預(yù)設(shè)的3D圖像數(shù)據(jù)的處理策略中包括3D圖像數(shù)據(jù)的圖像壓縮策略、圖像發(fā)送間隔策略、圖像丟幀的處理策略中至少一種。
16.如權(quán)利要求15所述的服務(wù)終端,其特征在于,所述客戶終端的圖像處理能力包括:圖像解壓縮能力、圖像接收能力、圖像的幀處理能力中至少一種; 所述第一處理模塊,具體用于: 根據(jù)客戶終端的圖像解壓縮能力,從預(yù)設(shè)的2D圖像數(shù)據(jù)的處理策略中選擇相應(yīng)的圖像壓縮策略對所述2D圖像數(shù)據(jù)進(jìn)行壓縮;或者 根據(jù)客戶終端的圖像接收能力,從預(yù)設(shè)的2D圖像數(shù)據(jù)的處理策略中選擇相應(yīng)的圖像發(fā)送間隔策略設(shè)定所述2D圖像數(shù)據(jù)的發(fā)送間隔;或者 在網(wǎng)絡(luò)擁堵時根據(jù)客戶終端的圖像的幀處理能力,從預(yù)設(shè)的2D圖像數(shù)據(jù)的處理策略中選擇相應(yīng)的圖像丟幀的處理策略對所述2D圖像數(shù)據(jù)進(jìn)行丟幀處理。
17.如權(quán)利要求15或16所述的服務(wù)終端,其特征在于,所述客戶終端的圖像處理能力包括:圖像解壓縮能力、圖像接收能力、圖像的幀處理能力中至少一種; 所述第二處理模塊,具體用于: 根據(jù)客戶終端的圖像解壓縮能力,從預(yù)設(shè)的3D圖像數(shù)據(jù)的處理策略中選擇相應(yīng)的圖像壓縮策略對所述3D圖像數(shù)據(jù)進(jìn)行壓縮;或者 根據(jù)客戶終端的圖像接收能力,從預(yù)設(shè)的3D圖像數(shù)據(jù)的處理策略中選擇相應(yīng)的圖像發(fā)送間隔策略設(shè)定所述3D圖像數(shù)據(jù)的發(fā)送間隔;或者 在網(wǎng)絡(luò)擁堵時根據(jù)客戶終端的圖像的幀處理能力,從預(yù)設(shè)的3D圖像數(shù)據(jù)的處理策略中選擇相應(yīng)的圖像丟幀的處理策略對所述3D圖像數(shù)據(jù)進(jìn)行丟幀處理。
18.如權(quán)利要求12-17任一項所述的服務(wù)終端,其特征在于,所述協(xié)議數(shù)據(jù)中包括:處理后的2D圖像數(shù)據(jù)、所述2D圖像數(shù)據(jù)的顯示區(qū)域、所述2D圖像數(shù)據(jù)的表面數(shù)據(jù)、所述2D圖像數(shù)據(jù)的壓縮策略; 所述協(xié)議數(shù)據(jù)中還包括:處理后的3D圖像數(shù)據(jù)、所述3D圖像數(shù)據(jù)的顯示區(qū)域、所述3D圖像數(shù)據(jù)的表面數(shù)據(jù)、所述3D圖像數(shù)據(jù)的壓縮策略; 其中,所述2D圖像數(shù)據(jù)的顯示區(qū)域為所述2D圖像在所述顯卡驅(qū)動中的顯示區(qū)域; 所述3D圖像數(shù)據(jù)的顯示區(qū)域為所述3D圖像數(shù)據(jù)在所述物理顯卡中的顯示區(qū)域; 所述2D圖像數(shù)據(jù)的表面數(shù)據(jù)為所述2D圖像數(shù)據(jù)在所述客戶終端中的所述指定顯示區(qū)域,所述指定顯示區(qū)域具體為所述客戶終端顯示界面上的2D區(qū)域; 所述3D圖像數(shù)據(jù)的表面數(shù)據(jù)為所述3D圖像數(shù)據(jù)在所述客戶終端中的所述指定顯示區(qū)域,所述指定顯示區(qū)域具體為所述客戶終端顯示界面上的3D區(qū)域。
19.一種客戶終端,其特征在于,包括: 接收模塊,用于接收服務(wù)終端發(fā)送的協(xié)議數(shù)據(jù),所述協(xié)議數(shù)據(jù)中包括2D圖像數(shù)據(jù)以及所述2D圖像數(shù)據(jù)的處理策略,和3D圖像數(shù)據(jù)以及所述3D圖像數(shù)據(jù)的處理策略; 第一處理模塊,用于根據(jù)所述2D圖像數(shù)據(jù)的處理策略對所述2D圖像數(shù)據(jù)進(jìn)行處理,并將所述2D圖像數(shù)據(jù)寫入指定顯示區(qū)域;第二處理模塊,用于根據(jù)所述3D圖像數(shù)據(jù)的處理策略對所述3D圖像數(shù)據(jù)進(jìn)行處理,并將所述3D圖像數(shù)據(jù)寫入指定顯示區(qū)域。
20.如權(quán)利要求19所述的客戶終端,其特征在于,所述接收模塊接收到的協(xié)議數(shù)據(jù)還包括:所述2D圖像數(shù)據(jù)的顯示區(qū)域、所述2D圖像數(shù)據(jù)的表面數(shù)據(jù); 所述協(xié)議數(shù)據(jù)還包括:所述3D圖像數(shù)據(jù)的顯示區(qū)域、所述3D圖像數(shù)據(jù)的表面數(shù)據(jù); 其中,所述2D圖像數(shù)據(jù)的顯示區(qū)域為所述2D圖像數(shù)據(jù)在所述服務(wù)終端的顯示驅(qū)動中的顯示區(qū)域; 所述3D圖像數(shù)據(jù)的顯示區(qū)域為所述3D圖像數(shù)據(jù)在所述服務(wù)終端的物理顯卡中的顯示區(qū)域; 所述2D圖像數(shù)據(jù)的表面數(shù)據(jù)為所述2D圖像數(shù)據(jù)在所述客戶終端中的所述指定顯示區(qū)域,所述指定顯示區(qū)域具體為所述客戶終端顯示界面上的2D區(qū)域; 所述3D圖像數(shù)據(jù)的表面數(shù)據(jù)為所述3D圖像數(shù)據(jù)在所述客戶終端中的所述指定顯示區(qū)域,所述指定顯示區(qū)域具體為所述客戶終端顯示界面上的3D區(qū)域。
21.如權(quán)利要求20所述的客戶終端,其特征在于,所述2D圖像數(shù)據(jù)的處理策略中包含所述2D圖像數(shù)據(jù)的圖像壓縮策略; 所述第一處理模塊,具體用于: 根據(jù)所述2D圖像數(shù)據(jù)的圖像壓縮策略對所述2D圖像數(shù)據(jù)進(jìn)行解壓縮,并將所述解壓縮得到的所述2D圖像數(shù)據(jù)寫入所述客戶終端顯示界面上的2D區(qū)域。
22.如權(quán)利要求20或21所述的客戶終端,其特征在于,所述3D圖像數(shù)據(jù)的處理策略中包含所述3D圖像數(shù)據(jù)的圖像壓 縮策略; 所述第二處理模塊,具體用于: 根據(jù)所述3D圖像數(shù)據(jù)的圖像壓縮策略對所述3D圖像數(shù)據(jù)進(jìn)行解壓縮,并將所述解壓縮得到的所述3D圖像數(shù)據(jù)寫入所述客戶終端顯示界面上的3D區(qū)域。
23.—種遠(yuǎn)程桌面的重定向的系統(tǒng),其特征在于,包括:如權(quán)利要求12-18所述的服務(wù)終端和如權(quán)利要求19-22所述的客戶終端。
【文檔編號】H04N21/431GK103763610SQ201310739263
【公開日】2014年4月30日 申請日期:2013年12月27日 優(yōu)先權(quán)日:2013年12月27日
【發(fā)明者】王流安, 許天錫 申請人:華為技術(shù)有限公司