本發(fā)明涉及桌面虛擬化的流媒體處理技術(shù)領(lǐng)域,具體而言,涉及一種flash重定向方法及裝置。
背景技術(shù):
隨著計算機技術(shù)以及網(wǎng)絡(luò)普及化的發(fā)展,虛擬桌面技術(shù)在目前企業(yè)辦公環(huán)境中的應(yīng)用越來越廣。一般來說在視頻網(wǎng)站點播過程中,會經(jīng)歷遠程視頻資源請求、傳輸、解碼、渲染等然后用戶才能看到視頻圖像。視頻是以一系列靜態(tài)圖像通過編碼、壓縮、文件封裝等操作壓制而成的文件,它具有幅面大、畫面變化快等特點,通俗的講就是視頻為了讓人眼觀看起來是流暢、連貫的,它必須保持一定的幀率(每秒顯示的幀數(shù))。然而,現(xiàn)有的通常的做法是在服務(wù)端檢測畫面變化較快的區(qū)域,將其區(qū)域判斷為視頻流,然后通過將區(qū)域的數(shù)據(jù)進行壓縮,再發(fā)送到客戶端進行解碼渲染,從而極大程度的增加了服務(wù)端的工作壓力以及網(wǎng)絡(luò)的工作負載;部分產(chǎn)品雖通過一些方法對視頻網(wǎng)站的播放資源進行了重定向,但需要人工對配置文件進行修改,同時無法將服務(wù)端的播放窗口與客戶端的播放窗口實時保持對齊,導(dǎo)致了客戶端與服務(wù)端的播放區(qū)域不一致,從而較大程度的降低了功能的實用性及用戶體驗。因此,如何解決上述問題是目前面臨的一大難題。
技術(shù)實現(xiàn)要素:
本發(fā)明提供一種flash重定向方法及裝置,旨在改善上述問題。
第一方面,本發(fā)明提供的一種flash重定向方法,應(yīng)用于服務(wù)端,包括:獲取虛擬桌面播放的flash視頻的資源標(biāo)識和播放參數(shù);判斷所述資源標(biāo)識是否滿足預(yù)設(shè)規(guī)則;當(dāng)所述資源標(biāo)識滿足預(yù)設(shè)規(guī)則時,停止所述flash視頻的播放并將所述資源標(biāo)識和播放參數(shù)發(fā)送至客戶端。
優(yōu)選地,所述的判斷所述資源標(biāo)識是否滿足預(yù)設(shè)規(guī)則的步驟包括:獲取所述資源標(biāo)識中所攜帶的關(guān)鍵字符串;將所述關(guān)鍵字符串與所述預(yù)設(shè)規(guī)則中的比對字符串進行匹配;當(dāng)所述關(guān)鍵字符串與所述比對字符串匹配時,判定所述資源標(biāo)識滿足預(yù)設(shè)規(guī)則;當(dāng)所述關(guān)鍵字符串與所述比對字符串不匹配時,判定所述資源標(biāo)識不滿足預(yù)設(shè)規(guī)則。
優(yōu)選地,所述的判斷所述資源標(biāo)識是否滿足預(yù)設(shè)規(guī)則的步驟之后,還包括:當(dāng)所述資源標(biāo)識不滿足預(yù)設(shè)規(guī)則時,繼續(xù)在所述虛擬桌面中播放所述flash視頻。
第二方面,本發(fā)明提供的一種flash重定向方法,應(yīng)用于客戶端,其特征在于,包括:獲取服務(wù)端發(fā)送的資源標(biāo)識和播放參數(shù);同步所述客戶端的預(yù)設(shè)播放器的窗口信息與所述服務(wù)端的播放器的窗口信息;基于所述資源標(biāo)識和所述播放參數(shù)調(diào)用所述預(yù)設(shè)播放器播放所述資源標(biāo)識所綁定的flash視頻。
優(yōu)選地,所述的同步所述客戶端的預(yù)設(shè)播放器的窗口信息與所述服務(wù)端的播放器的窗口信息的步驟包括:獲取虛擬桌面播放所述flash視頻時的第一播放窗口的窗口信息;根據(jù)所述第一播放窗口的窗口信息設(shè)置所述預(yù)設(shè)播放器的播放窗口的窗口信息,以使所述預(yù)設(shè)播放器的播放窗口的尺寸和位置與所述第一播放窗口的尺寸和位置匹配。
優(yōu)選地,所述的獲取虛擬桌面播放所述flash視頻時的第一播放窗口的窗口信息的步驟之后,還包括:根據(jù)所述第一播放窗口的窗口信息設(shè)置所述預(yù)設(shè)播放器的播放窗口的窗口信息,以使對所述預(yù)設(shè)播放器的播放窗口執(zhí)行拖動、最大化、最小化和/或隱藏動作時,所述預(yù)設(shè)播放器的播放窗口與所述第一播放窗口保持一致。
第三方面,本發(fā)明提供的一種flash重定向裝置,應(yīng)用于服務(wù)端,包括:數(shù)據(jù)獲取單元,用于獲取虛擬桌面播放的flash視頻的資源標(biāo)識和播放參數(shù);數(shù)據(jù)判斷單元,用于判斷所述資源標(biāo)識是否滿足預(yù)設(shè)規(guī)則;數(shù)據(jù)處理單元,用于當(dāng)所述資源標(biāo)識滿足預(yù)設(shè)規(guī)則時,停止所述flash視頻的播放并將所述資源標(biāo)識和播放參數(shù)發(fā)送至客戶端。
優(yōu)選地,所述數(shù)據(jù)判斷單元包括:數(shù)據(jù)獲取子單元,用于獲取所述資源標(biāo)識中所攜帶的關(guān)鍵字符串;數(shù)據(jù)匹配子單元,用于將所述關(guān)鍵字符串與所述預(yù)設(shè)規(guī)則中的比對字符串進行匹配;第一數(shù)據(jù)判斷子單元,用于當(dāng)所述關(guān)鍵字符串與所述比對字符串匹配時,判定所述資源標(biāo)識滿足預(yù)設(shè)規(guī)則;第二數(shù)據(jù)判斷子單元,用于當(dāng)所述關(guān)鍵字符串與所述比對字符串不匹配時,判定所述資源標(biāo)識不滿足預(yù)設(shè)規(guī)則。
第四方面,本發(fā)明提供的一種flash重定向裝置,應(yīng)用于客戶端,包括:數(shù)據(jù)獲取單元,用于獲取服務(wù)端發(fā)送的資源標(biāo)識和播放參數(shù);播放窗口設(shè)置單元,用于同步所述客戶端的預(yù)設(shè)播放器的窗口信息與所述服務(wù)端的播放器的窗口信息;視頻播放單元,用于基于所述資源標(biāo)識和所述播放參數(shù)調(diào)用所述預(yù)設(shè)播放器播放所述資源標(biāo)識所綁定的flash視頻。
優(yōu)選地,所述播放窗口設(shè)置單元包括:數(shù)據(jù)獲取子單元,用于獲取虛擬桌面播放所述flash視頻時的第一播放窗口的窗口信息;數(shù)據(jù)設(shè)置單元,用于根據(jù)所述第一播放窗口的窗口信息設(shè)置所述預(yù)設(shè)播放器的播放窗口的窗口信息,以使所述預(yù)設(shè)播放器的播放窗口的尺寸和位置與所述第一播放窗口的尺寸和位置匹配;視頻播放子單元,用于基于所述資源標(biāo)識獲取所述flash視頻,以使所獲取的flash視頻在所述預(yù)設(shè)播放器的播放窗口中進行播放。
上述本發(fā)明提供的一種flash重定向方法及裝置,本發(fā)明通過獲取服務(wù)端的資源標(biāo)識和播放參數(shù)將虛擬桌面中adobeflash內(nèi)容重定向到客戶端進行處理,從而有效地降低了服務(wù)器和網(wǎng)絡(luò)的工作負載,同時對客戶端的flash播放區(qū)域進行了位置匹配,以保證客戶端flash播放區(qū)域與服務(wù)端flash播放區(qū)域的完全同步,進而使得用戶能夠獲得高清晰度和流暢的用戶體驗。
為使本發(fā)明的上述目的、特征和優(yōu)點能更明顯易懂,下文特舉較佳實施例,并配合所附附圖,作詳細說明如下。
附圖說明
為了更清楚地說明本發(fā)明實施例的技術(shù)方案,下面將對實施例中所需要使用的附圖作簡單地介紹,應(yīng)當(dāng)理解,以下附圖僅示出了本發(fā)明的某些實施例,因此不應(yīng)被看作是對范圍的限定,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他相關(guān)的附圖。
圖1為本發(fā)明較佳實施例提供的服務(wù)器與用戶終端進行交互的示意圖;
圖2為本發(fā)明較佳實施例提供的電子設(shè)備的結(jié)構(gòu)框圖;
圖3為本發(fā)明第一實施例提供的一種flash重定向方法的流程圖;
圖4為本發(fā)明第二實施例提供的一種flash重定向方法的流程圖;
圖5為本發(fā)明第三實施例提供的一種flash重定向裝置的功能模塊示意圖;
圖6為本發(fā)明第四實施例提供的一種flash重定向裝置的功能模塊示意圖。
具體實施方式
為使本發(fā)明實施例的目的、技術(shù)方案和優(yōu)點更加清楚,下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例是本發(fā)明一部分實施例,而不是全部的實施例。基于本發(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。因此,以下對在附圖中提供的本發(fā)明的實施例的詳細描述并非旨在限制要求保護的本發(fā)明的范圍,而是僅僅表示本發(fā)明的選定實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
如圖1所示,是本發(fā)明較佳實施例提供的服務(wù)器與用戶終端進行交互的示意圖。所述服務(wù)器100通過網(wǎng)絡(luò)與一個或多個用戶終端200進行通信連接,以進行數(shù)據(jù)通信或交互。所述服務(wù)器100可以是網(wǎng)絡(luò)服務(wù)器、數(shù)據(jù)庫服務(wù)器等。所述用戶終端200可以是個人電腦(personalcomputer,pc)、平板電腦、智能手機、個人數(shù)字助理(personaldigitalassistant,pda)、智能穿戴設(shè)備等。在本實施例中,用戶終端200中可以設(shè)置應(yīng)用程序,即用戶使用的應(yīng)用程序,可以獲取服務(wù)器100所發(fā)送的flash視頻的資源標(biāo)識和播放參數(shù),從而根據(jù)所獲取的flash視頻的資源標(biāo)識和播放參數(shù)在用戶終端中的應(yīng)用程序上進行播放。
如圖2所示,為本發(fā)明實施例提供的一種電子設(shè)備的結(jié)構(gòu)框圖。所述電子設(shè)備300可以作為用戶終端200,也可以作為服務(wù)器100。所述電子設(shè)備300包括flash重定向裝置、存儲器302、存儲控制器303、處理器304及外設(shè)接口305。
所述存儲器302、存儲控制器303、處理器304及外設(shè)接口305各元件相互之間直接或間接地電性連接,以實現(xiàn)數(shù)據(jù)的傳輸或交互。例如,這些元件相互之間可通過一條或多條通訊總線或信號線實現(xiàn)電性連接。所述flash重定向裝置包括至少一個可以軟件或固件(firmware)的形式存儲于所述存儲器302中或固化在所述電子設(shè)備300的操作系統(tǒng)(operatingsystem,os)中的軟件功能模塊。所述處理器304用于執(zhí)行存儲器302中存儲的可執(zhí)行模塊,例如所述flash重定向裝置包括的軟件功能模塊或計算機程序。
其中,存儲器302可以是,但不限于,隨機存取存儲器(randomaccessmemory,ram),只讀存儲器(readonlymemory,rom),可編程只讀存儲器(programmableread-onlymemory,prom),可擦除只讀存儲器(erasableprogrammableread-onlymemory,eprom),電可擦除只讀存儲器(electricerasableprogrammableread-onlymemory,eeprom)等。其中,存儲器302用于存儲程序,所述處理器304在接收到執(zhí)行指令后,執(zhí)行所述程序,前述本發(fā)明實施例任一實施例揭示的流過程定義的服務(wù)器100所執(zhí)行的方法可以應(yīng)用于處理器304中,或者由處理器304實現(xiàn)。
處理器304可能是一種集成電路芯片,具有信號的處理能力。上述的處理器304可以是通用處理器,包括中央處理器(centralprocessingunit,簡稱cpu)、網(wǎng)絡(luò)處理器(networkprocessor,簡稱np)等;還可以是數(shù)字信號處理器(dsp)、專用集成電路(asic)、現(xiàn)成可編程門陣列(fpga)或者其他可編程邏輯器件、分立門或者晶體管邏輯器件、分立硬件組件??梢詫崿F(xiàn)或者執(zhí)行本發(fā)明實施例中的公開的各方法、步驟及邏輯框圖。通用處理器可以是微處理器或者該處理器也可以是任何常規(guī)的處理器等。
所述外設(shè)接口305將各種輸入/輸入裝置耦合至處理器304以及存儲器302。在一些實施例中,外設(shè)接口305、處理器304以及存儲控制器303可以在單個芯片中實現(xiàn)。在其他一些實例中,他們可以分別由獨立的芯片實現(xiàn)。
請參閱圖3,是本發(fā)明第一實施例提供的一種flash重定向方法的流程圖。所述flash重定向方法應(yīng)用于服務(wù)端。下面將對圖3所示的具體流程進行詳細闡述。
步驟s301,獲取虛擬桌面播放的flash視頻的資源標(biāo)識和播放參數(shù)。
其中,所述虛擬桌面是指支持企業(yè)級實現(xiàn)桌面系統(tǒng)的遠程動態(tài)訪問與數(shù)據(jù)中心統(tǒng)一托管的技術(shù)。一個形象的類比就是,現(xiàn)在我們可以通過任何設(shè)備、在任何地點,任何時間訪問在網(wǎng)絡(luò)上的我們的郵件系統(tǒng),或者網(wǎng)盤;而未來,我們可以通過任何設(shè)備,在任何地點、任何時間訪問在網(wǎng)絡(luò)上的屬于我們個人的桌面系統(tǒng)。
其中,所述資源標(biāo)識是指虛擬桌面中所播放的flash視頻的視頻源的url地址(uniformresourcelocator,統(tǒng)一資源定位符)。
在本實施例中,所述播放參數(shù)是指所述flash視頻的身份信息。
作為一種實施方式,通過在虛擬桌面中安裝一個iebho插件(browserhelperobject,瀏覽器輔助對象),從而來獲取到flash視頻的資源標(biāo)識和播放參數(shù)。具體地,flash插件作為ie的一個附加組件,以activex的方式被ie所加載,其導(dǎo)出了多個接口和ie進行交互。其中activex和網(wǎng)頁腳本進行交互是通過invoke接口通過調(diào)用id進行轉(zhuǎn)發(fā)。bho插件通過comhook勾住invoke接口,從而實現(xiàn)了對flashactivex控件的監(jiān)控。最后通過調(diào)用預(yù)設(shè)的put_movie程序接口和調(diào)用預(yù)設(shè)的put_flashvars程序接口,從而實現(xiàn)獲取虛擬桌面播放的flash視頻的資源標(biāo)識和播放參數(shù)。其中,所述put_movie程序接口用于設(shè)置播放資源標(biāo)識。所述put_flashvars程序接口用于設(shè)置播放參數(shù)。
步驟s302,判斷所述資源標(biāo)識是否滿足預(yù)設(shè)規(guī)則。
其中,所述預(yù)設(shè)規(guī)則是指將所述資源標(biāo)識與預(yù)設(shè)的比對信息按照正則表達式的方式進行匹配。
作為一種實施方式,通過先獲取所述資源標(biāo)識中所攜帶的關(guān)鍵字符串;再將所述關(guān)鍵字符串與所述預(yù)設(shè)規(guī)則中的比對字符串進行匹配;當(dāng)所述關(guān)鍵字符串與所述比對字符串匹配時,判定所述資源標(biāo)識滿足預(yù)設(shè)規(guī)則;當(dāng)所述關(guān)鍵字符串與所述比對字符串不匹配時,判定所述資源標(biāo)識不滿足預(yù)設(shè)規(guī)則。例如,預(yù)設(shè)的比對程序接口如下所示:
將該比對程序接口中的字符串與關(guān)鍵字符串按照正則表達式的規(guī)則進行匹配。例如,當(dāng)前的關(guān)鍵字符串為youku.com.1,將所述youku.com.1分別與比對程序接口中的字符串進行匹配,比對程序接口中的比對字符串為youku,按照youku.*格式進行匹配,可以毫無疑義的得出youku.com.1滿足預(yù)設(shè)規(guī)則。其中,*表示通配符。
其中,所述關(guān)鍵字符串是指所述資源標(biāo)識中用來進行比對的字符串。所述字符串是指多個字符組成的。
步驟s303,當(dāng)所述資源標(biāo)識不滿足預(yù)設(shè)規(guī)則時,繼續(xù)在所述虛擬桌面中播放所述flash視頻。
步驟s304,當(dāng)所述資源標(biāo)識滿足預(yù)設(shè)規(guī)則時,停止所述flash視頻的播放并將所述資源標(biāo)識和播放參數(shù)發(fā)送至客戶端。
其中,停止所述flash視頻是指停止在所述虛擬桌面上播放的flash視頻。
作為一種實施方式,當(dāng)停止所述flash視頻時,并發(fā)送一個提示信息,以使用戶通過提示信息所知曉為什么當(dāng)前所播放的flash視頻被停止了。例如,所述提示信息為“您的視頻已經(jīng)被重定向”。
在本實施例中,可以通過將invoke接口中的原始視頻源地址變?yōu)橐粋€事先準(zhǔn)備好的顯示用戶提示的swf文件,從而進行提示。
在本實施例中,當(dāng)停止所述flash視頻的播放后,將所述資源標(biāo)識和播放參數(shù)發(fā)送至客戶端,以使所述客戶端能夠根據(jù)所述資源標(biāo)識和播放參數(shù)進行播放所述flash視頻。
請參閱圖4,是本發(fā)明第二實施例提供的一種flash重定向方法的流程圖。所述flash重定向方法應(yīng)用于客戶端。下面將對圖4所示的具體流程進行詳細闡述。
步驟s401,獲取服務(wù)端發(fā)送的資源標(biāo)識和播放參數(shù)。
當(dāng)所述虛擬桌面中的所述flash視頻停止播放時,獲取服務(wù)端發(fā)送的資源標(biāo)識和播放參數(shù)。
步驟s402,同步所述客戶端的預(yù)設(shè)播放器的窗口信息與所述服務(wù)端的播放器的窗口信息。
在本實施例中,所述預(yù)設(shè)播放器為flashplayer。所述同步是指根據(jù)所述服務(wù)端的播放器的窗口信息設(shè)置所述客戶端的預(yù)設(shè)播放器的窗口信息,以使所述客戶端的預(yù)設(shè)播放器的窗口信息始終與所述服務(wù)端的播放器的窗口信息保持一致。
作為一種實施方式,獲取虛擬桌面播放所述flash視頻時的第一播放窗口的窗口信息;根據(jù)所述第一播放窗口的窗口信息設(shè)置所述預(yù)設(shè)播放器的播放窗口的窗口信息,以使所述預(yù)設(shè)播放器的播放窗口的尺寸和位置與所述第一播放窗口的尺寸和位置匹配。通過獲取虛擬桌面播放所述flash視頻時的第一播放窗口的窗口信息,從而根據(jù)所述第一播放窗口的窗口信息設(shè)置所述預(yù)設(shè)播放器的播放窗口的窗口信息,有效的使得所述第一播放窗口與所述預(yù)設(shè)播放器的播放窗口對齊,可以使得用戶觀看flash視頻播放時有無縫體驗的享受,既使用戶通過重定向方式觀看的flash視頻與本地觀看的flash視頻具有相同的清晰度與流暢性。
其中,所述窗口信息是指播放窗口的大小以及在虛擬桌面上的相對位置信息。
其中,以使所述預(yù)設(shè)播放器的播放窗口的尺寸和位置與所述第一播放窗口的尺寸和位置匹配是指將所述預(yù)設(shè)播放器的播放窗口的尺寸和位置按照所述第一播放窗口的尺寸和位置進行設(shè)置,即預(yù)設(shè)播放器的播放窗口與所述第一播放窗口重合。
其中,通過實現(xiàn)iolewindow窗口,從而在ie瀏覽器上進行窗口的顯示。具體地,可以通過comhook勾住iolewindow的getwindow接口來獲取到flash播放器的窗口句柄,通過窗口句柄就可以通過getwindowposition來獲取窗口位置,并通過windows消息來wm_windowposchanged來獲取窗口位置變化消息并實時更新區(qū)域信息。對于flash窗口被遮擋區(qū)域,則可以通過getrandomrgn來獲取。
作為另一種實施方式,獲取虛擬桌面播放所述flash視頻時的第一播放窗口的窗口信息;根據(jù)所述第一播放窗口的窗口信息設(shè)置所述預(yù)設(shè)播放器的播放窗口的窗口信息,以使對所述預(yù)設(shè)播放器的播放窗口執(zhí)行拖動、最大化、最小化和/或隱藏動作時,所述預(yù)設(shè)播放器的播放窗口與所述第一播放窗口保持一致。根據(jù)所述第一播放窗口的窗口信息設(shè)置所述預(yù)設(shè)播放器的播放窗口的窗口信息,以使所述預(yù)設(shè)播放器的播放窗口的尺寸和位置與所述第一播放窗口的尺寸和位置匹配。通過根據(jù)所述第一播放窗口的窗口信息設(shè)置所述預(yù)設(shè)播放器的播放窗口的窗口信息,還可以使得對所述預(yù)設(shè)播放器的播放窗口執(zhí)行拖動、最大化、最小化和/或隱藏動作時,所述預(yù)設(shè)播放器的播放窗口與所述第一播放窗口保持一致。進一步地使得用戶在觀看flash視頻播放時對播放器進行拖動、最大化、最小化和/或隱藏時都能夠有無縫體驗的享受。
步驟s403,基于所述資源標(biāo)識和所述播放參數(shù)調(diào)用所述預(yù)設(shè)播放器播放所述資源標(biāo)識所綁定的flash視頻。
在本實施例中,所述綁定是指所述資源標(biāo)識所對應(yīng)的flash視頻。即通過所述資源標(biāo)識能夠找到所述flash視頻。
在本實施例中,通過所述資源標(biāo)識和所述播放參數(shù)獲取flash視頻,以使所述flash視頻能夠在所述預(yù)設(shè)播放器中進行播放,以使用戶所看到的高清晰度和流暢的flash視頻,進而提升用戶體驗。
請參閱圖5,是本發(fā)明第三實施例提供的一種flash重定向裝置的功能模塊示意圖。所述flash重定向裝置500應(yīng)用于服務(wù)端。所述flash重定向裝置500包括數(shù)據(jù)獲取單元510、數(shù)據(jù)判斷單元520和數(shù)據(jù)處理單元530。
數(shù)據(jù)獲取單元510,用于獲取虛擬桌面播放的flash視頻的資源標(biāo)識和播放參數(shù)。
數(shù)據(jù)判斷單元520,用于判斷所述資源標(biāo)識是否滿足預(yù)設(shè)規(guī)則。
其中,所述數(shù)據(jù)判斷單元520還包括:數(shù)據(jù)獲取子單元521、數(shù)據(jù)匹配子單元522、第一數(shù)據(jù)判斷子單元523和第二數(shù)據(jù)判斷子單元524。
數(shù)據(jù)獲取子單元521,用于獲取所述資源標(biāo)識中所攜帶的關(guān)鍵字符串。
數(shù)據(jù)匹配子單元522,用于將所述關(guān)鍵字符串與所述預(yù)設(shè)規(guī)則中的比對字符串進行匹配。
第一數(shù)據(jù)判斷子單元523,用于當(dāng)所述關(guān)鍵字符串與所述比對字符串匹配時,判定所述資源標(biāo)識滿足預(yù)設(shè)規(guī)則。
第二數(shù)據(jù)判斷子單元524,用于當(dāng)所述關(guān)鍵字符串與所述比對字符串不匹配時,判定所述資源標(biāo)識不滿足預(yù)設(shè)規(guī)則。
數(shù)據(jù)處理單元530,用于當(dāng)所述資源標(biāo)識滿足預(yù)設(shè)規(guī)則時,停止所述flash視頻的播放并將所述資源標(biāo)識和播放參數(shù)發(fā)送至客戶端。
其中,所述數(shù)據(jù)處理單元530,還用于當(dāng)所述資源標(biāo)識不滿足預(yù)設(shè)規(guī)則時,繼續(xù)在所述虛擬桌面中播放所述flash視頻。
請參閱圖6,是本發(fā)明第四實施例提供的一種flash重定向裝置的功能模塊示意圖。所述flash重定向裝置600應(yīng)用于客戶端。所述flash重定向裝置600包括數(shù)據(jù)獲取單元610、播放窗口設(shè)置單元620和所述視頻播放單元630。
數(shù)據(jù)獲取單元610,用于獲取服務(wù)端發(fā)送的資源標(biāo)識和播放參數(shù)。
播放窗口設(shè)置單元620,用于同步所述客戶端的預(yù)設(shè)播放器的窗口信息與所述服務(wù)端的播放器的窗口信息。
所述播放窗口設(shè)置單元620包括:數(shù)據(jù)獲取子單元621、第一數(shù)據(jù)設(shè)置單元622和第二數(shù)據(jù)設(shè)置單元623。
數(shù)據(jù)獲取子單元621,用于獲取虛擬桌面播放所述flash視頻時的第一播放窗口的窗口信息。
第一數(shù)據(jù)設(shè)置單元622,用于根據(jù)所述第一播放窗口的窗口信息設(shè)置所述預(yù)設(shè)播放器的播放窗口的窗口信息,以使所述預(yù)設(shè)播放器的播放窗口的尺寸和位置與所述第一播放窗口的尺寸和位置匹配。
第二數(shù)據(jù)設(shè)置單元623,用于根據(jù)所述第一播放窗口的窗口信息設(shè)置所述預(yù)設(shè)播放器的播放窗口的窗口信息,以使對所述預(yù)設(shè)播放器的播放窗口執(zhí)行拖動、最大化、最小化和/或隱藏動作時,所述預(yù)設(shè)播放器的播放窗口與所述第一播放窗口保持一致。
視頻播放單元630,用于基于所述資源標(biāo)識和所述播放參數(shù)調(diào)用預(yù)設(shè)播放器播放所述資源標(biāo)識所綁定的flash視頻。
綜上所述,本發(fā)明提供一種flash重定向方法及裝置,本發(fā)明通過獲取服務(wù)端的資源標(biāo)識和播放參數(shù)將虛擬桌面中adobeflash視頻重定向到客戶端進行處理,從而降低服務(wù)器和網(wǎng)絡(luò)的工作負載,同時對客戶端的flash播放區(qū)域進行了位置匹配,以保證客戶端flash播放區(qū)域與服務(wù)端flash播放區(qū)域的完全同步,進而使得用戶能夠獲得高清晰度和流暢的用戶體驗。
在本申請所提供的幾個實施例中,應(yīng)該理解到,所揭露的裝置和方法,也可以通過其它的方式實現(xiàn)。以上所描述的裝置實施例僅僅是示意性的,例如,附圖中的流程圖和框圖顯示了根據(jù)本發(fā)明的多個實施例的裝置、方法和計算機程序產(chǎn)品的可能實現(xiàn)的體系架構(gòu)、功能和操作。在這點上,流程圖或框圖中的每個方框可以代表一個模塊、程序段或代碼的一部分,所述模塊、程序段或代碼的一部分包含一個或多個用于實現(xiàn)規(guī)定的邏輯功能的可執(zhí)行指令。也應(yīng)當(dāng)注意,在有些作為替換的實現(xiàn)方式中,方框中所標(biāo)注的功能也可以以不同于附圖中所標(biāo)注的順序發(fā)生。例如,兩個連續(xù)的方框?qū)嶋H上可以基本并行地執(zhí)行,它們有時也可以按相反的順序執(zhí)行,這依所涉及的功能而定。也要注意的是,框圖和/或流程圖中的每個方框、以及框圖和/或流程圖中的方框的組合,可以用執(zhí)行規(guī)定的功能或動作的專用的基于硬件的系統(tǒng)來實現(xiàn),或者可以用專用硬件與計算機指令的組合來實現(xiàn)。
另外,在本發(fā)明各個實施例中的各功能模塊可以集成在一起形成一個獨立的部分,也可以是各個模塊單獨存在,也可以兩個或兩個以上模塊集成形成一個獨立的部分。
所述功能如果以軟件功能模塊的形式實現(xiàn)并作為獨立的產(chǎn)品銷售或使用時,可以存儲在一個計算機可讀取存儲介質(zhì)中?;谶@樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻的部分或者該技術(shù)方案的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計算機軟件產(chǎn)品存儲在一個存儲介質(zhì)中,包括若干指令用以使得一臺計算機設(shè)備(可以是個人計算機,服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個實施例所述方法的全部或部分步驟。而前述的存儲介質(zhì)包括:u盤、移動硬盤、只讀存儲器(rom,read-onlymemory)、隨機存取存儲器(ram,randomaccessmemory)、磁碟或者光盤等各種可以存儲程序代碼的介質(zhì)。需要說明的是,在本文中,諸如第一和第二等之類的關(guān)系術(shù)語僅僅用來將一個實體或者操作與另一個實體或操作區(qū)分開來,而不一定要求或者暗示這些實體或操作之間存在任何這種實際的關(guān)系或者順序。而且,術(shù)語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設(shè)備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者設(shè)備所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,并不排除在包括所述要素的過程、方法、物品或者設(shè)備中還存在另外的相同要素。
以上所述僅為本發(fā)明的優(yōu)選實施例而已,并不用于限制本發(fā)明,對于本領(lǐng)域的技術(shù)人員來說,本發(fā)明可以有各種更改和變化。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進等,均應(yīng)包含在本發(fā)明的保護范圍之內(nèi)。應(yīng)注意到:相似的標(biāo)號和字母在下面的附圖中表示類似項,因此,一旦某一項在一個附圖中被定義,則在隨后的附圖中不需要對其進行進一步定義和解釋。