專利名稱:基于移動終端的網(wǎng)頁Flash動畫顯示方法和裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及移動互聯(lián)網(wǎng)網(wǎng)頁處理技術(shù)領(lǐng)域,更為具體地,涉及一種基于移動終端的網(wǎng)頁Flash動畫顯示方法和裝置。
背景技術(shù):
隨著社會的進(jìn)步和技術(shù)的發(fā)展,人們越來越多地使用接入終端來以無線的方式接入因特網(wǎng)來獲取信息。作為一種富因特網(wǎng)應(yīng)用的實現(xiàn)平臺,F(xiàn)lash已被廣泛應(yīng)用于互聯(lián)網(wǎng), 大多數(shù)瀏覽器都內(nèi)置了 Flash播放器來支持網(wǎng)頁Flash動畫的播放,作為終端瀏覽器重要組成部分的移動瀏覽器也不例外,目前的移動瀏覽器也是通過同樣的方式來支持Flash動畫的播放。然而這種方式存在以下兩個不足1)受移動終端硬件的限制,其上的Flash播放器(Flash-lite)所支持的Flash版本較低;2)某些移動終端干脆就不支持Flash-lite,因此無法以這種方式播放Flash動畫。本方案則提供了一種在移動終端上播放高版本Flash動畫的解決方案,而不依賴與該移動終端是否安裝了 Flash-lite。專利CN1136730C/2004-1-28也曾提出一種在移動終端支持Flash動畫播放的解決方案(《用于無線網(wǎng)絡(luò)和無線手持式設(shè)備的動畫壓縮方法》)從Flash文件中獲取原始幀,并對其進(jìn)行色彩轉(zhuǎn)換、提取關(guān)鍵幀,之后對關(guān)鍵幀進(jìn)行差分處理,將結(jié)果以PNG包格式保存,并將PNG文件與播放器一起打包,供移動終端下載并解包之后,便可使用其中附帶的播放器播放動畫。上述的方案有以下缺點1)它不是針對瀏覽器的解決方案,對即時瀏覽支持不佳,需要將Flash文件處理打包之后放到指定網(wǎng)站,然后等用戶下載之后才能播放;對與Flash驗證碼等需要動態(tài)播放的內(nèi)容不能支持;2)是通過播放器播放Flash并以指定時間間隔截取和保存播放窗口的內(nèi)容來采集Flash原始幀,這種方法沒有對Flash文件內(nèi)容進(jìn)行分析,轉(zhuǎn)換的耗時依賴于Flash播放的耗時,效率低下;3)仍然需要在移動終端設(shè)備上運行專門的播放器才能顯示動畫。
發(fā)明內(nèi)容
鑒于上述問題,本發(fā)明的目的是提供一種不需要安裝其他額外的播放器或者插件的基于移動終端瀏覽器的網(wǎng)頁Flash動畫顯示處理技術(shù)。根據(jù)本發(fā)明的一個方面,提供了一種基于移動終端瀏覽器的網(wǎng)頁Flash動畫顯示方法,包括根據(jù)對網(wǎng)頁頁面的解析獲取Flash文件的源地址;
根據(jù)所述獲取Flash文件的源地址下載對應(yīng)的Flash文件數(shù)據(jù);將所述下載的Flash文件數(shù)據(jù)轉(zhuǎn)換為預(yù)設(shè)格式的圖片,所述預(yù)設(shè)格式為支持動畫的圖片格式;在所述移動終端瀏覽器以顯示所述預(yù)設(shè)格式的圖片的方式進(jìn)行所述網(wǎng)頁Flash 動畫的顯示。根據(jù)本發(fā)明的另一方面,提供了一種基于移動終端瀏覽器的網(wǎng)頁Flash動畫顯示處理服務(wù)器,包括Flash文件的源地址獲取單元,用于根據(jù)對網(wǎng)頁頁面的解析獲取Flash文件的源地址;Flash文件下載單元,用于根據(jù)所述獲取Flash文件的源地址下載對應(yīng)的Flash文件數(shù)據(jù);Flash文件轉(zhuǎn)換單元,用于將所述下載的Flash文件數(shù)據(jù)轉(zhuǎn)換為預(yù)設(shè)格式的圖片。根據(jù)本發(fā)明的再一方面,提供了一種基于移動終端瀏覽器的網(wǎng)頁Flash動畫顯示處理系統(tǒng),包括移動終端和前述網(wǎng)頁Flash動畫顯示處理服務(wù)器,其中,所述移動終端通過瀏覽器以顯示所述網(wǎng)頁Flash動畫顯示處理服務(wù)器轉(zhuǎn)換的預(yù)設(shè)格式的圖片的方式進(jìn)行所述網(wǎng)頁Flash動畫的顯示。本發(fā)明在瀏覽器解析網(wǎng)頁的過程中將頁面上的Flash動畫即時轉(zhuǎn)換為預(yù)設(shè)的支持動畫格式的圖片,從而支持移動終端對網(wǎng)頁上Flash動畫的即時瀏覽,不需安裝其他額外的播放器或插件,不依賴于該移動終端是否支持或者安裝了 Flash-lite,能夠極大地降低移動終端對瀏覽Flash動畫的硬件配置需求,并加快瀏覽速度,降低流量。為了實現(xiàn)上述以及相關(guān)目的,本發(fā)明的一個或多個方面包括后面將詳細(xì)說明并在權(quán)利要求中特別指出的特征。下面的說明以及附圖詳細(xì)說明了本發(fā)明的某些示例性方面。 然而,這些方面指示的僅僅是可使用本發(fā)明的原理的各種方式中的一些方式。此外,本發(fā)明旨在包括所有這些方面以及它們的等同物。
通過參考以下結(jié)合附圖的說明及權(quán)利要求書的內(nèi)容,并且隨著對本發(fā)明的更全面理解,本發(fā)明的其它目的及結(jié)果將更加明白及易于理解。在附圖中圖1為根據(jù)本發(fā)明實施例的基于移動終端瀏覽器的網(wǎng)頁Flash動畫顯示方法的流程圖;圖2為根據(jù)本發(fā)明實施例的轉(zhuǎn)換引擎中swf向gif的格式轉(zhuǎn)換流程示意圖;圖3為根據(jù)本發(fā)明實施例的基于移動終端瀏覽器的網(wǎng)頁Flash動畫顯示服務(wù)器的方框示意圖;圖4為根據(jù)本發(fā)明實施例的網(wǎng)頁Flash動畫顯示處理系統(tǒng)整體架構(gòu)示意圖。在所有附圖中相同的標(biāo)號指示相似或相應(yīng)的特征或功能。
具體實施例方式以下將結(jié)合附圖對本發(fā)明的具體實施例進(jìn)行詳細(xì)描述?;诂F(xiàn)有的移動終端Flash播放解決方案 存在的問題,本發(fā)明充分考慮移動終端的硬件特點,另辟蹊徑,使Flash的播放脫離專門播放器的限制,提供一種全新的在移動終端上播放Flash動畫的技術(shù)。圖1示出了根據(jù)本發(fā)明實施例的基于移動終端瀏覽器的網(wǎng)頁Flash動畫顯示方法的流程圖。 當(dāng)用戶通過移動終端瀏覽網(wǎng)頁時,瀏覽服務(wù)器會根據(jù)用戶的瀏覽請求對網(wǎng)頁進(jìn)行解析,如果網(wǎng)頁中存在需要瀏覽的Flash動畫,在移動終端沒有安裝其他的相關(guān)播放器或者插件時,瀏覽服務(wù)器會通過如圖1所示流程對網(wǎng)頁Flash動畫數(shù)據(jù)進(jìn)行處理。首先,在步驟SllO中,根據(jù)對網(wǎng)頁頁面的解析獲取Flash文件的源地址,然后,在步驟S120中,根據(jù)所獲取Flash文件的源地址下載對應(yīng)的Flash文件數(shù)據(jù)。由于本發(fā)明提供的播放Flash動畫的技術(shù)不需要專門Flash播放器的支持,因此,需要在瀏覽服務(wù)器端對該Flash文件數(shù)據(jù)進(jìn)行相應(yīng)的處理,即如步驟S130所示的將所下載的Flash文件數(shù)據(jù)轉(zhuǎn)換為預(yù)設(shè)格式的圖片,這種預(yù)設(shè)格式為支持動畫的圖片格式。目前常用的支持動畫的圖片格式為gif格式,因此,為了便于表述,在以下的實施方式說明中,均以gif格式作為Flash文件數(shù)據(jù)轉(zhuǎn)換的圖片的預(yù)設(shè)格式。毋庸置疑,其他能夠表現(xiàn)動畫的圖片格式均能夠?qū)崿F(xiàn)與gif格式圖片相同的展示目的。由于在移動終端瀏覽器顯示gif圖片是普通移動終端都能夠?qū)崿F(xiàn)的功能,不需要額外的播放器或者插件就可以實現(xiàn),因此,在將Flash文件數(shù)據(jù)轉(zhuǎn)換為gif圖片后,就可以在移動終端瀏覽器以顯示該gif圖片的方式進(jìn)行網(wǎng)頁Flash動畫的顯示。Flash文件的專用格式是一種支持矢量和點陣圖形的數(shù)據(jù)格式,通常也被表示為 swf (type 為“application/x-shockwave-Flash “的 object 或 embed 兀素),則按照圖所示的流程,在獲取swf的源地址(object元素取屬性〃 data"的值,embed元素取屬性"src"的值)后,根據(jù)swf的url下載對應(yīng)的swf數(shù)據(jù),然后再將swf數(shù)據(jù)轉(zhuǎn)換為gif 圖片。從瀏覽服務(wù)器運營商的商業(yè)運營角度而言,針對Flash廣告,需要有選擇性的顯示某些指定的Flash廣告,以免轉(zhuǎn)換所有的Flash造成服務(wù)器壓力和用戶流量的增加。因此,一般需要對網(wǎng)頁中的Flash廣告進(jìn)行選擇性的過濾,通常以地址中的域名/路徑來過濾,支持通配規(guī)則,如下面的配置列表[www. abc. cn/f/a. swf, . abc. cn/f, uc. cn]第一項表示支持 http://www. abc. cn/f/a. swf 這個 Flash ;第二項表示支持· abc. cn域名的路徑/f下的所有Flash ;第三項表示支持uc. cn這個域名下的所有Flash。因此,在本發(fā)明的一個優(yōu)選實施方式中,在獲取swf源地址后,先用事先配置好的名單對地址進(jìn)行過濾。在具體的實現(xiàn)過程中,預(yù)置的名單可以為白名單或者黑名單,對于白名單,所做的過濾處理為忽略源地址不在白名單中的Flash元素,只對在名單內(nèi)的swf源地址所對應(yīng)的Flash數(shù)據(jù)作進(jìn)一步處理;對于黑名單,則所做的過濾則為剔除所獲取的swf源地址中出現(xiàn)在黑名單上的源地址,只對剩下的swf源地址所對應(yīng)的Flash數(shù)據(jù)作進(jìn)一步處理。另外,由于存在多個用戶瀏覽同一網(wǎng)頁的Flash動畫以及同一用戶重復(fù)瀏覽同一 Flash動畫的情形,如果瀏覽服務(wù)器針對每一用戶的每一次瀏覽請求都進(jìn)行一次圖1所示的“解析_下載-格式轉(zhuǎn)換”流程,則會大大增加瀏覽服務(wù)器的工作負(fù)荷,產(chǎn)生大量不必要的重復(fù)處理工作。因此,在本發(fā)明的一個優(yōu)選實施方式中,在瀏覽服務(wù)器設(shè)置一個緩存單元,用于緩存從Flash文件轉(zhuǎn)換得到的gif圖片。在瀏覽服務(wù)器根據(jù)對網(wǎng)頁頁面的解析獲取Flash文件的源地址之后,首先檢查是否存在與所獲取Flash文件對應(yīng)的gif圖片的緩存,如果存在,則直接調(diào)用緩存中的對應(yīng)gif圖片,然后在移動終端瀏覽器以顯示該緩存中的gif圖片的方式進(jìn)行網(wǎng)頁Flash動畫的顯示;否則根據(jù)所獲取Flash文件的源地址下載對應(yīng)的Flash文件數(shù)據(jù)并轉(zhuǎn)換為gif圖片后,將所轉(zhuǎn)換后的gif圖片保存至緩存中,以備該 Flash文件被再一次瀏覽時調(diào)用。在緩存轉(zhuǎn)換后的gif圖片時,為了便于檢索調(diào)用,需要建立起該gif圖片與對應(yīng)的 Flash文件(swf)之間的關(guān)聯(lián)關(guān)系。由于特定的Flash文件都具有特定源地址,基于源地址的映射能夠最簡單直接的表示出格式轉(zhuǎn)換前后的文件的關(guān)聯(lián)關(guān)系。因此,在本發(fā)明的一個具體實施方式
中,通過Flash文件的源地址(SWF-URL)建立該Flash文件與對應(yīng)轉(zhuǎn)換的 gif圖片的對應(yīng)關(guān)系具體地,作為示例,為建立Swf及其轉(zhuǎn)換出來的gif圖片的對應(yīng)關(guān)系,給轉(zhuǎn)換后gif 圖片安排一個url (為便于描述,稱為GIF-URL),此url為swf源地址(SWF-URL)與“#· gif” 拼接而成(例如,若swf源地址為XXX. swf,則圖片url為xxx. swf#. gif)。當(dāng)需要從緩存中讀/寫swf對應(yīng)的gif圖片時,先根據(jù)SWF-URL計算出GIF-URL,然后以GIF-URL為key 訪問緩存。另外,由于有的Flash是不能緩存的(如Flash驗證碼),一個網(wǎng)站的Flash文件能否緩存是由對方網(wǎng)站指定的,并通過http緩存規(guī)則告訴瀏覽服務(wù)器,因此在對Flash文件進(jìn)行格式轉(zhuǎn)換之后需要做能否緩存的判斷,以便理解對方網(wǎng)站在緩存方面的意圖,從而保障緩存應(yīng)該緩存的數(shù)據(jù)提高效率;避免緩存不該緩存的數(shù)據(jù)以免出錯。因此,在本發(fā)明的一個優(yōu)選實施方式中,在將轉(zhuǎn)換后的gif圖片保存至緩存中之前,還根據(jù)http緩存規(guī)則判斷相對應(yīng)的Flash動畫數(shù)據(jù)是否可以緩存,如果可以緩存,則認(rèn)為對應(yīng)的gif亦可緩存,就將所述轉(zhuǎn)換后的gif圖片保存至緩存中;否則不能將gif寫到緩存。對于swf向gif的轉(zhuǎn)換,從技術(shù)上可有兩種實現(xiàn)方式1)錄制播放swf并采集(截取)播放窗口內(nèi)容,將其轉(zhuǎn)成gif,其特點是轉(zhuǎn)換耗時與播放耗時一致,轉(zhuǎn)換的效率偏低。2)轉(zhuǎn)換運行swf,將其直接轉(zhuǎn)成gif,其特點是轉(zhuǎn)換耗時與播放耗時無關(guān),轉(zhuǎn)換耗時遠(yuǎn)遠(yuǎn)小于播放的耗時,轉(zhuǎn)換的效率較高。如果以錄制方式實現(xiàn)swf向gif的轉(zhuǎn)換,則瀏覽服務(wù)器調(diào)用Flash播放器或者插件播放Flash,指定播放窗口的區(qū)域,在播放過程中,以一定的時間間隔對此窗口進(jìn)行截圖, 并保存截取到的圖片,播放結(jié)束后將這些截到的一系列圖片合成為gif。采用這種方式的轉(zhuǎn)換效率偏低。在本發(fā)明的一個優(yōu)選實施方式中,采用上述第二種轉(zhuǎn)換方式來實現(xiàn)swf向gif的轉(zhuǎn)換。圖2示出了本發(fā)明實施例的轉(zhuǎn)換引擎中swf向gif的格式轉(zhuǎn)換流程,如圖2所示,在將所下載的Flash文件數(shù)據(jù)轉(zhuǎn)換為gif圖片的過程中,利用轉(zhuǎn)換引擎運行所下載的Flash 文件數(shù)據(jù)并將其直接轉(zhuǎn)換成gif圖片的流程包括S210 根據(jù)所下載的Flash文件數(shù)據(jù)確定轉(zhuǎn)換引擎的內(nèi)部采幀頻率N = F/M,其中F為所述下載的Flash文件數(shù)據(jù)指定的幀率,M為轉(zhuǎn)換后的gif圖片所要求的幀率;S220 按照所確定的內(nèi)部采幀頻率對所運行的Flash文件進(jìn)行幀采集,并在采集時將當(dāng)前幀渲染到一個內(nèi)存區(qū),使用Magick將其轉(zhuǎn)換為gif圖幀;S230 在上述幀采集結(jié)束后,使用Magick庫將所采集得到的所有g(shù)if圖幀合成為一個gif圖片,并將所合成的gif圖片的幀率設(shè)為M。
在圖2所示的實施方式中,采用Magick處理庫將所運行的Flash文件轉(zhuǎn)換為gif 圖幀,同樣,也可以采用有相應(yīng)的gif格式圖片處理能力的圖像處理庫進(jìn)行圖像數(shù)據(jù)格式的轉(zhuǎn)換,或者采用有相應(yīng)預(yù)設(shè)的支持動畫的圖片格式的圖片處理能力的圖像處理庫進(jìn)行相應(yīng)圖像數(shù)據(jù)格式的轉(zhuǎn)換。本發(fā)明的轉(zhuǎn)換引擎是真正的數(shù)據(jù)格式轉(zhuǎn)換而非錄制-截取方式的轉(zhuǎn)換。在本發(fā)明的轉(zhuǎn)換引擎中,幀采集頻率分外部采幀頻率和內(nèi)部采幀頻率兩種表示。其中,外部采幀頻率 M表示轉(zhuǎn)換處理后的gif圖片的幀率,以時間間隔表示,單位為fps (幀/秒),也就是說,轉(zhuǎn)換處理的gif圖片在移動終端瀏覽器以M為幀率進(jìn)行播放顯示。內(nèi)部采幀頻率N表示轉(zhuǎn)換引擎內(nèi)部對swf的采幀頻率,使用幀間隔表示,單位為(幀/次),意為在Flash文件運行的過程中每隔多少幀采集一次。轉(zhuǎn)換引擎運行swf之前,需將外部采幀頻率換算成內(nèi)部采幀頻率,以根據(jù)最終在移動終端瀏覽器播放顯示的gif圖片的幀率來進(jìn)行對原始SWf文件的采幀處理。假設(shè)SWf 源數(shù)據(jù)指定的幀率為F fps,則N = F/M。例如,一個swf指定的幀率F = 24fps,如果外部采幀頻率M = 2fps,則此swf的內(nèi)部采幀頻率N = 24/2 = 12 (幀/次),即每12個原始幀采集一個GIF圖幀。外部采幀頻率M的配置可以根據(jù)產(chǎn)品運營具體需要手工設(shè)定(不超過Flash的原始幀率即可),一般比Flash原始幀率小很多,如M = 4即是每秒4幀,M越高則每秒顯示的圖幀越多,對應(yīng)的gif圖片的數(shù)據(jù)量(流量)就越大,通過設(shè)置合適的值,達(dá)到在保留顯示效果的前提下降低流量和cpu消耗的目的。在本發(fā)明的一個優(yōu)選實施方式中,轉(zhuǎn)換引擎是在開源的Flash播放器Gnash的基礎(chǔ)上改進(jìn)而成的,Gnash是一個播放Adobe (以前的Macromedia) Flash的自由軟件,和free BIOS、ATI顯卡驅(qū)動、GCJ等一樣是FSF高優(yōu)先級項目之一。目前的Gnash是一個獨立播放器,也可以做為瀏覽器的插件使用,幾乎能夠?qū)崿F(xiàn)Flash 7的所有規(guī)格。并且Gnash具有占用內(nèi)存小、速度快的特點,可以在多種硬件平臺上運行。當(dāng)然,也可以選用其他功能足夠強(qiáng) (滿足需要即可)的開源的Flash播放器作為轉(zhuǎn)換引擎。具體地,作為示例,在使用轉(zhuǎn)換引擎轉(zhuǎn)換下載的swf時,首先使用⑶I (Graphical User Interface,圖形用戶界面)的模式運行下載的Flash動畫文件,在運行Flash動畫文件時,不再按照swf設(shè)定的幀率播放,而是采用連續(xù)、無時間間隔的方式進(jìn)行播放;在根據(jù) swf指定的幀率F和所設(shè)置的外部采幀頻率M確定轉(zhuǎn)換過程中所需要的內(nèi)部采幀頻率N之后,按照內(nèi)部采幀頻率N對運行的Flash動畫文件進(jìn)行幀采集,采集時將當(dāng)前幀渲染到一個內(nèi)存區(qū),并使用Magick庫就地將其轉(zhuǎn)為GIF圖幀;幀采集結(jié)束后,使用Magick庫將采集得到的所有GIF圖幀合成為一個GIF圖片,并將此GIF圖片的幀率設(shè)為M0由于內(nèi)部采幀頻率N是根據(jù)swf指定的幀率F和所設(shè)置的外部采幀頻率M計算確定的,因此通過設(shè)置外部采幀頻率M能方便設(shè)置不同的幀采集頻率,從而使本發(fā)明的轉(zhuǎn)換引擎具有更好的適應(yīng)性。并且,在上述方案中,僅在采集時才做內(nèi)存渲染,不做幀采集時不渲染,能夠大大減少運算量,有效降低瀏覽服務(wù)器的功耗。最終轉(zhuǎn)換所得的gif圖片將替代網(wǎng)頁中原來的Flash動畫由終端瀏覽器的中間服務(wù)器進(jìn)行適應(yīng)屏幕的縮放和排版,并隨頁面其他數(shù)據(jù)一起壓縮返回給移動終端,這樣,網(wǎng)頁的Flash動畫最終在移動終端播放的就以gif動畫格式的形式播放。 與現(xiàn)行的Flash-lite的方案相比,本發(fā)明的網(wǎng)頁Flash動畫顯示方法不需要調(diào)用移動終端的Flash播放器,而是使用瀏覽器的服務(wù)器將Flash轉(zhuǎn)成gif動畫圖片,由瀏覽器客戶端顯示gif動畫。由于不依賴于移動終端是否支持或者安裝了 Flash-lite,因此,本發(fā)明具有更廣的適用范圍和更低的適用要求;并且,由于Flash-lite僅支持到swf版本7, 而本發(fā)明的服務(wù)器處理模式可隨著服務(wù)器的改善支持更高的版本,而不需客戶端(移動終端)做任何改變,對用戶來講適用成本更低。與公開號為CN1136730A的專利所公開的動畫壓縮方法相比,本發(fā)明有以下不同l)Flash數(shù)據(jù)源的獲取方式不同。CNl 136730A的方案需要事先下載或制作Flash 文件,并以此作為數(shù)據(jù)源;本發(fā)明則在移動終端瀏覽器訪問網(wǎng)頁的過程中,如果網(wǎng)頁中有需要顯示的Flash動畫時,再由瀏覽器下載Flash數(shù)據(jù),并作為數(shù)據(jù)源,下載的Flash數(shù)據(jù)直接在內(nèi)存處理不必保存為Flash文件。2)處理結(jié)果的使用方式不同。CN1136730A的方案是預(yù)先將處理后的PNG文件和播放器打包,放到指定網(wǎng)站,移動終端下載此包后解壓并播放;而本發(fā)明則是將轉(zhuǎn)換后的 GIF文件連同它所在的網(wǎng)頁內(nèi)容經(jīng)UC服務(wù)器整壓縮理成特有的應(yīng)答格式返回給瀏覽器客戶端,客戶端顯示該網(wǎng)頁時,在網(wǎng)頁上原Flash的位置上顯示gif動畫圖片。由1)、2)兩點可以看出,本發(fā)明能夠使移動終端支持網(wǎng)頁上Flash動畫的即時顯示,而不需再安裝其他工具或插件。3)Flash幀的采集技術(shù)不同。CN1136730A的方案是通過播放Flash文件,截圖播放窗口的內(nèi)容,并按照指定的時間間隔將播放內(nèi)容保存為連續(xù)的圖片文件,是屬于“錄制”技術(shù),錄制多少內(nèi)容必須要使用播放器播放相應(yīng)多的內(nèi)容,并且播放器受到Flash文件指定幀率限制,這種采集技術(shù)總體效率不高。本發(fā)明則將開源的Flash播放器Gnash改造成轉(zhuǎn)換引擎,使用轉(zhuǎn)換引擎生成原始幀,而不是通過外部程序截取播放窗口,這是屬于“轉(zhuǎn)換”的技術(shù)。與“錄制”相比,“轉(zhuǎn)換”由于不依賴于Flash文件的原始幀率,所以效率要高得多,據(jù)實驗數(shù)據(jù),本發(fā)明的轉(zhuǎn)換引擎轉(zhuǎn)換一個大小為640x100、幀數(shù)為330幀、正常播放時間為11 秒的Flash廣告僅需100毫秒左右。如上參照圖1和圖2描述了根據(jù)本發(fā)明的基于移動終端瀏覽器的網(wǎng)頁Flash動畫顯示方法。本發(fā)明的上述方法,可以采用軟件實現(xiàn),也可以采用硬件實現(xiàn),或采用軟件和硬件組合的方式實現(xiàn)。從系統(tǒng)架構(gòu)來看,本發(fā)明是通過客戶端/服務(wù)器(C/S)的架構(gòu)實現(xiàn)的,在服務(wù)器端對網(wǎng)頁上的Flash動畫進(jìn)行處理,通過瀏覽器應(yīng)答格式壓縮后返回移動終端進(jìn)行顯示。其中進(jìn)行網(wǎng)頁Flash動畫顯示處理的服務(wù)器可以是單獨的服務(wù)器,也可以集成在瀏覽服務(wù)器中。圖3示出了根據(jù)本發(fā)明的實施例的基于移動終端瀏覽器的網(wǎng)頁Flash動畫顯示服務(wù)器的方框示意圖。如圖3所示,網(wǎng)頁Flash動畫顯示處理服務(wù)器300包括Flash文件的源地址獲取單元310、Flash文件下載單元320和Flash文件轉(zhuǎn)換單元330。其中,F(xiàn)lash文件轉(zhuǎn)換單元330進(jìn)一步包括采幀頻率確定單元331、幀采集單元332以及圖幀合成單元333。 Flash文件的源地址獲取單元310用于根據(jù)對網(wǎng)頁頁面的解析獲取Flash文件的源地址;Flash文件下載單元320用于根據(jù)Flash文件的源地址獲取單元310所獲取Flash 文件的源地址下載對應(yīng)的Flash文件數(shù)據(jù);Flash文件轉(zhuǎn)換單元330則用于將Flash文件下載單元320所下載的Flash文件數(shù)據(jù)轉(zhuǎn)換為預(yù)設(shè)格式的圖片,該預(yù)設(shè)格式為支持動畫的圖片格式。在Flash文件轉(zhuǎn)換單元330中,采幀頻率確定單元331用于根據(jù)Flash文件下載單元320所下載的Flash文件數(shù)據(jù)確定所述轉(zhuǎn)換引擎的內(nèi)部采幀頻率N = F/M,其中F為所述下載的Flash文件數(shù)據(jù)指定的幀率,M為轉(zhuǎn)換后的預(yù)設(shè)格式的圖片所要求的幀率。在本發(fā)明的一個具體實施方式
中,預(yù)設(shè)的圖片格式為gif格式,這是目前常用的支持動畫的圖片格式,當(dāng)然,也不排除選用其他可行的支持動畫的圖片格式的可行性,其基本的數(shù)據(jù)處理流程和選用gif格式為預(yù)設(shè)圖片格式的數(shù)據(jù)處理流程基本相同。幀采集單元332用于按照采幀頻率確定單元331所確定的內(nèi)部采幀頻率對所述運行的Flash文件進(jìn)行幀采集,并在采集時將當(dāng)前幀渲染到一個內(nèi)存區(qū),使用Magick將其轉(zhuǎn)換為gif圖幀。圖幀合成單元333用于在幀采集單元332的幀采集結(jié)束后,使用Magick庫將所述采集得到的所有g(shù)if圖幀合成為一個gif圖片,并將所述合成的gif圖片的幀率設(shè)為M。同樣,也可以采用Magick處理庫以外的有相應(yīng)的gif格式圖片處理能力的圖像處理庫進(jìn)行圖像數(shù)據(jù)格式的轉(zhuǎn)換,或者采用有相應(yīng)預(yù)設(shè)的支持動畫的圖片格式的圖片處理能力的圖像處理庫進(jìn)行相應(yīng)圖像數(shù)據(jù)格式的轉(zhuǎn)換。另外,網(wǎng)頁Flash動畫顯示處理服務(wù)器300還可以包括Flash文件過濾單元(圖中未示出),用于利用預(yù)置的名單對Flash文件的源地址獲取單元310獲取的Flash文件的源地址進(jìn)行過濾。另外,如果網(wǎng)頁Flash動畫顯示處理服務(wù)器300是一個獨立于瀏覽服務(wù)器的單獨的服務(wù)器,還可以包括發(fā)送單元(圖中未示出),用來將所轉(zhuǎn)換的gif圖片發(fā)送至瀏覽服務(wù)器以將最終的gif圖片和其他網(wǎng)頁數(shù)據(jù)進(jìn)行合成,以便將gif圖片是和其他網(wǎng)頁數(shù)據(jù)一起壓縮返回至移動終端;或者再不需要和其他網(wǎng)頁數(shù)據(jù)作進(jìn)一步的合成時直接把gif圖片發(fā)送至移動終端。圖4示出了根據(jù)本發(fā)明實施例的網(wǎng)頁Flash動畫顯示處理系統(tǒng)整體架構(gòu)示意圖。 如圖4所示,從系統(tǒng)的整體架構(gòu)來看,本發(fā)明提供的基于移動終端瀏覽器的網(wǎng)頁Flash動畫顯示處理系統(tǒng)400包括移動終端500和網(wǎng)頁Flash動畫顯示處理服務(wù)器300,其中,網(wǎng)頁 Flash動畫顯示處理服務(wù)器300根據(jù)用戶的瀏覽請求將網(wǎng)頁中的Flash動畫文件轉(zhuǎn)換為預(yù)設(shè)格式的圖片,這種預(yù)設(shè)格式為支持動畫的圖片格式,移動終端500則通過瀏覽器以顯示網(wǎng)頁Flash動畫顯示處理服務(wù)器300轉(zhuǎn)換的預(yù)設(shè)格式的圖片的方式進(jìn)行網(wǎng)頁Flash動畫的顯不。另外,在網(wǎng)頁中,F(xiàn)lash動畫文件根據(jù)其在網(wǎng)頁中所處的版塊或者所起作用的不同而呈現(xiàn)出不同的表現(xiàn)形式,如Flash廣告、Flash游戲、待Flash驗證碼的注冊/登錄等。下面以Flash廣告和Flash驗證碼兩種表現(xiàn)形式對本發(fā)明的具體應(yīng)用做示例性說明。
當(dāng)移動終端不支持Flash (如iPhone,或者無法安裝Flash-lite的低端機(jī))時,其自帶瀏覽器無法瀏覽網(wǎng)頁上的Flash廣告,如新浪首頁的Flash廣告。使用本發(fā)明所提供的方案,只要移動終端上安裝的瀏覽器的服務(wù)器將網(wǎng)頁中的Flash廣告轉(zhuǎn)換為相應(yīng)的gif 圖片,就可以在終端瀏覽器上以播放gif圖片的形式進(jìn)行網(wǎng)頁Flash廣告的瀏覽。從商業(yè)運營角度來說,瀏覽器提供商的服務(wù)器首先收集一系列需要支持的Flash廣告,得到一個白名單;當(dāng)用戶使用該瀏覽器訪問帶Flash廣告的網(wǎng)頁時,例如http://WWW. sina. com. cn/ 上有個385x90的廣告,服務(wù)器自動將此廣告轉(zhuǎn)成GIF圖片,并夾帶在頁面應(yīng)當(dāng)數(shù)據(jù)中壓縮返回,于是用戶便能夠在正常瀏覽此頁面其他內(nèi)容的同時也看到此Flash廣告了,而這一個廣告,由于格式的轉(zhuǎn)換,僅產(chǎn)生14k左右的額外流量,遠(yuǎn)小于傳輸swf文件所產(chǎn)生的流量。某些網(wǎng)站在登錄、注冊等地方 使用了 Flash驗證碼(如酷玩網(wǎng)http//www. handsky. cn/)的注冊,如果移動終端不支持Flash,則該終端就無法看到驗證碼,也就無法使用頁面的這些功能。公開號為CN1136730A的專利所公開的的方案由于沒有與瀏覽器結(jié)合,對于驗證碼這類需要cookie等動態(tài)信息的Flash應(yīng)用,它也是無法支持的。而本發(fā)明的上述技術(shù)正好解決了這個問題,只要移動終端的瀏覽器服務(wù)器采用的本發(fā)明所提供的網(wǎng)頁Flash動畫顯示處理技術(shù),當(dāng)用戶使用該瀏覽器訪問這些登錄、注冊頁面時,服務(wù)器按照上述網(wǎng)頁Flash動畫顯示處理的技術(shù)將Flash驗證碼轉(zhuǎn)成gif圖片并展現(xiàn)在移動終端的瀏覽器客戶端,用戶便能夠正確填寫驗證碼從而正常使用登錄、注冊功能。如上參照附圖以示例的方式描述根據(jù)本發(fā)明基于移動終端瀏覽器的網(wǎng)頁Flash 動畫顯示處理方法和裝置。但是,本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解,對于上述本發(fā)明所提出的基于移動終端瀏覽器的網(wǎng)頁Flash動畫顯示處理方法及裝置,還可以在不脫離本發(fā)明內(nèi)容的基礎(chǔ)上做出各種改進(jìn)。因此,本發(fā)明的保護(hù)范圍應(yīng)當(dāng)由所附的權(quán)利要求書的內(nèi)容確定。
權(quán)利要求
1.一種基于移動終端瀏覽器的網(wǎng)頁Flash動畫顯示方法,包括 根據(jù)對網(wǎng)頁頁面的解析獲取Flash文件的源地址;根據(jù)所述獲取Flash文件的源地址下載對應(yīng)的Flash文件數(shù)據(jù); 將所述下載的Flash文件數(shù)據(jù)轉(zhuǎn)換為預(yù)設(shè)格式的圖片,所述預(yù)設(shè)格式為支持動畫的圖片格式;在所述移動終端瀏覽器以顯示所述預(yù)設(shè)格式的圖片的方式進(jìn)行所述網(wǎng)頁Flash動畫的顯示。
2.如權(quán)利要求1所述的網(wǎng)頁Flash動畫顯示方法,其中,在所述移動終端瀏覽器服務(wù)器根據(jù)對網(wǎng)頁頁面的解析獲取Flash文件的源地址之后,還包括檢查是否存在與所述獲取 Flash文件對應(yīng)的預(yù)設(shè)格式的圖片的緩存的步驟,其中如果存在與所述獲取Flash文件對應(yīng)的預(yù)設(shè)格式的圖片的緩存,則直接調(diào)用所述緩存在所述移動終端瀏覽器以顯示所述緩存中的預(yù)設(shè)格式的圖片的方式進(jìn)行所述網(wǎng)頁Flash 動畫的顯示;否則根據(jù)所述獲取Flash文件的源地址下載對應(yīng)的Flash文件數(shù)據(jù),并且在將所述下載的 Flash文件數(shù)據(jù)轉(zhuǎn)換為預(yù)設(shè)格式的圖片后,將所述轉(zhuǎn)換后的預(yù)設(shè)格式的圖片保存至緩存中。
3.如權(quán)利要求2所述的網(wǎng)頁Flash動畫顯示方法,其中,通過所述Flash文件的源地址建立所述Flash文件與對應(yīng)轉(zhuǎn)換的預(yù)設(shè)格式的圖片的對應(yīng)關(guān)系。
4.如權(quán)利要求2所述的網(wǎng)頁Flash動畫顯示方法,其中,將所述轉(zhuǎn)換后的預(yù)設(shè)格式的圖片保存至緩存中之前,根據(jù)http緩存規(guī)則判斷相對應(yīng)的所述Flash動畫數(shù)據(jù)是否可以緩存,如果可以緩存,則將所述轉(zhuǎn)換后的預(yù)設(shè)格式的圖片保存至緩存中;否則不緩存。
5.如權(quán)利要求1 4中任一項所述的網(wǎng)頁Flash動畫顯示方法,其中,所述預(yù)設(shè)格式為 gif格式。
6.如權(quán)利要求5所述的網(wǎng)頁Flash動畫顯示方法,其中,在將所述下載的Flash文件數(shù)據(jù)轉(zhuǎn)換為gif圖片的過程中,利用轉(zhuǎn)換引擎運行所述Flash文件數(shù)據(jù)并將其直接轉(zhuǎn)換成 gif圖片,具體包括根據(jù)所述下載的Flash文件數(shù)據(jù)確定所述轉(zhuǎn)換引擎的內(nèi)部采幀頻率N = F/M,其中F為所述下載的Flash文件數(shù)據(jù)指定的幀率,M為轉(zhuǎn)換后的gif圖片所要求的幀率;按照所述內(nèi)部采幀頻率對所述運行的Flash文件進(jìn)行幀采集,并在采集時將當(dāng)前幀渲染到一個內(nèi)存區(qū),使用Magick將其轉(zhuǎn)換為gif圖幀;在所述幀采集結(jié)束后,使用Magick庫將所述采集得到的所有g(shù)if圖幀合成為一個gif 圖片,并將所述合成的gif圖片的幀率設(shè)為M。
7.如權(quán)利要求6所述的網(wǎng)頁Flash動畫顯示方法,其中,根據(jù)所述移動終端瀏覽器的設(shè)置確定所述轉(zhuǎn)換后的gif圖片所要求的幀率M。
8.一種基于移動終端瀏覽器的網(wǎng)頁Flash動畫顯示處理服務(wù)器,包括Flash文件的源地址獲取單元,用于根據(jù)對網(wǎng)頁頁面的解析獲取Flash文件的源地址; Flash文件下載單元,用于根據(jù)所述獲取Flash文件的源地址下載對應(yīng)的Flash文件數(shù)據(jù);Flash文件轉(zhuǎn)換單元,用于將所述下載的Flash文件數(shù)據(jù)轉(zhuǎn)換為預(yù)設(shè)格式的圖片,所述預(yù)設(shè)格式為支持動畫的圖片格式。
9.如權(quán)利要求8所述的網(wǎng)頁Flash動畫顯示處理服務(wù)器,其中, 所述預(yù)設(shè)格式為gif格式。
10.如權(quán)利要求9所述的網(wǎng)頁Flash動畫顯示處理服務(wù)器,所述Flash文件轉(zhuǎn)換單元包括采幀頻率確定單元,用于根據(jù)所述下載的Flash文件數(shù)據(jù)確定所述轉(zhuǎn)換引擎的內(nèi)部采幀頻率ν = F/M,其中F為所述下載的Flash文件數(shù)據(jù)指定的幀率,M為轉(zhuǎn)換后的gif圖片所要求的幀率;幀采集單元,用于按照所述采幀頻率確定單元所確定的內(nèi)部采幀頻率對所述運行的 Flash文件進(jìn)行幀采集,并在采集時將當(dāng)前幀渲染到一個內(nèi)存區(qū),使用Magick將其轉(zhuǎn)換為 gif圖幀;圖幀合成單元,用于在所述幀采集單元的幀采集結(jié)束后,使用Magick庫將所述采集得到的所有g(shù)if圖幀合成為一個gif圖片,并將所述合成的gif圖片的幀率設(shè)為M。
11.一種基于移動終端瀏覽器的網(wǎng)頁Flash動畫顯示處理系統(tǒng),包括移動終端和網(wǎng)頁 Flash動畫顯示處理服務(wù)器,其中,所述網(wǎng)頁Flash動畫顯示處理服務(wù)器為權(quán)利要求9 10中任一項所述的網(wǎng)頁Flash 動畫顯示處理服務(wù)器;所述移動終端通過瀏覽器以顯示所述網(wǎng)頁Flash動畫顯示處理服務(wù)器轉(zhuǎn)換的預(yù)設(shè)格式的圖片的方式進(jìn)行所述網(wǎng)頁Flash動畫的顯示。
全文摘要
本發(fā)明提供了一種基于移動終端瀏覽器的網(wǎng)頁Flash動畫顯示方法,包括根據(jù)對網(wǎng)頁頁面的解析獲取Flash文件的源地址;根據(jù)所述獲取Flash文件的源地址下載對應(yīng)的Flash文件數(shù)據(jù);將所述下載的Flash文件數(shù)據(jù)轉(zhuǎn)換為預(yù)設(shè)格式的圖片,所述預(yù)設(shè)格式為支持動畫的圖片格式;在所述移動終端瀏覽器以顯示所述預(yù)設(shè)格式的圖片的方式進(jìn)行所述網(wǎng)頁Flash動畫的顯示。利用本發(fā)明,能夠使移動終端不需安裝其他額外的播放器或插件就可以支持移動終端對網(wǎng)頁上Flash動畫的即時瀏覽,能夠極大地降低移動終端對瀏覽Flash動畫的硬件配置需求,并加快瀏覽速度,降低流量。
文檔編號G06F17/30GK102364459SQ201110176738
公開日2012年2月29日 申請日期2011年6月28日 優(yōu)先權(quán)日2011年6月28日
發(fā)明者吳伙成, 梁捷, 江蔚然 申請人:廣州市動景計算機(jī)科技有限公司