專利名稱:一種應(yīng)用于手機電視的電子服務(wù)指南加載方法
技術(shù)領(lǐng)域:
本發(fā)明涉及手機電視領(lǐng)域,尤其涉及一種應(yīng)用于手機電視的電子服務(wù)指南ESG(Electronic Service Guide)加載方法。
背景技術(shù):
隨著3G時代的到來,手機電視相關(guān)技術(shù)越來越成為通訊電子領(lǐng)域研究的熱點。在目前手機電視的主流標準中,其中DVB-H(Digital VideoBroadcasting Handheld,數(shù)字電視廣播手持設(shè)備)支持的公司最多,覆蓋面最廣。它是歐洲數(shù)字電視廣播標準化團體組織為通過地面數(shù)字廣播網(wǎng)絡(luò)向便攜/手持終端提供多媒體業(yè)務(wù)所制定的傳輸標準,且有著廣泛的商用前景。在實際應(yīng)用中,要用DVB-H手機電視收看電視節(jié)目首先需要通過終端安裝一個ESG瀏覽器應(yīng)用來加載ESG信息來提供給終端用戶。ESG包含了當前手機電視可用業(yè)務(wù)的信息(如電視頻道、電視節(jié)目、視頻文件下載、媒體播放參數(shù)等信息),通過這些信息,用戶可以選擇自己感興趣的業(yè)務(wù)進行消費。通常ESG加載的過程是ESG瀏覽器調(diào)用一個CDP(Contention DeliveryProtocol,內(nèi)容傳輸協(xié)議)模塊在當前網(wǎng)絡(luò)中收取一個ESG啟動文件,通過分析該文件可知道目前網(wǎng)絡(luò)中廣播的所有包含ESG信息的ESG容器文件。CDP模塊再將這些ESG容器文件傳給一個ESG引擎模塊進行解析,最后ESG瀏覽器通過向ESG引擎模塊查詢相關(guān)的ESG信息來呈現(xiàn)給用戶。這種在手機電視開機時從CDP模塊收取ESG啟動文件到ESG解析完所有ESG容器文件的ESG加載過程需要較長的時間,特別是在ESG容器文件的數(shù)目比較多時,系統(tǒng)消耗的時間會更長,一般都會在十幾秒以上。如果用戶在在一段時間內(nèi)反復(fù)啟動手機電視ESG瀏覽器應(yīng)用時,每次他都將等待很長的時間才能瀏覽到ESG信息來選擇電視頻道并播放節(jié)目,這對用戶是無法忍受的,同時也會過多消耗終端的電池能量。通常解決這個問題的辦法是在ESG瀏覽器應(yīng)用每次退出時,ESG引擎模塊將本次使用的ESG數(shù)據(jù)保存在本地的數(shù)據(jù)文件中,這樣在下次ESG瀏覽器應(yīng)用啟動時,無需調(diào)用CDP模塊,ESG引擎模塊可直接快速地從本地文件中將ESG數(shù)據(jù)導入到內(nèi)存中,提供給ESG瀏覽器查詢使用。但是這也同時帶來另一問題,即若在ESG瀏覽器應(yīng)用上次退出和本次進入之間的時間內(nèi)網(wǎng)絡(luò)中的ESG信息發(fā)生了改變,這時若仍然通過ESG引擎直接導入本地保存的ESG數(shù)據(jù)文件并由ESG瀏覽器呈現(xiàn)給用戶,那么用戶看到的一些電視頻道和節(jié)目信息則已經(jīng)過期了。特別是若一些ESG播放參數(shù)發(fā)生變化,用戶將無法正常收看到電視節(jié)目。
所以在DVB-H手機電視系統(tǒng)中,迫切需要一種能快速、實時地加載ESG信息的方法,從而提高DVB-H手機電視的整體性能。
發(fā)明內(nèi)容
本發(fā)明要解決的技術(shù)問題就是提供一種應(yīng)用于手機電視的電子服務(wù)指南加載方法,克服了DVB-H手機電視系統(tǒng)中常規(guī)ESG加載方法的缺點,既可以避免每次用戶每次進入ESG瀏覽器應(yīng)用都要等待很長時間才能看到電視節(jié)目信息進行播放的情況,也能保障ESG信息的實時性,從而提高DVB-H手機電視的整體性能。
為了解決上述技術(shù)問題,本發(fā)明提供一種應(yīng)用于手機電視的電子服務(wù)指南加載方法,包括如下步驟(1)電子服務(wù)指南ESG瀏覽器啟動,并啟動內(nèi)容傳輸協(xié)議CDP模塊和ESG引擎模塊;(2)CDP模塊在當前網(wǎng)絡(luò)中收取文件傳輸表FDT,根據(jù)FDT中的ESG容器信息,判斷當前網(wǎng)絡(luò)中的ESG信息相較于原來本地保存的ESG信息是否發(fā)生改變;(3)若當前網(wǎng)絡(luò)中的ESG信息相較于原來本地保存的ESG信息發(fā)生改變,則CDP模塊收取ESG容器文件,ESG引擎模塊解析后得到新的ESG信息;若當前網(wǎng)絡(luò)中的ESG信息相較于原來本地保存的ESG信息未發(fā)生改變,則ESG引擎模塊使用原來保存的ESG數(shù)據(jù)文件作為當前的ESG信息。
進一步地,所述步驟(2)中,CDP模塊在當前網(wǎng)絡(luò)中收取文件傳輸表FDT之前,先根據(jù)固定的IP地址和端口號在當前網(wǎng)絡(luò)的IP流中收取到ESG啟動文件bootstrap,CDP模塊解析bootstrap文件,得到當前各個FDT表格文件所在IP地址和端口號。
進一步地,所述步驟(2)中,CDP模塊通過當前各個FDT文件所在IP地址和端口號在各個IP流上收取對應(yīng)的FDT文件。
進一步地,所述步驟(2)中,CDP模塊在當前網(wǎng)絡(luò)中收取文件傳輸表FDT后,解析FDT文件,得到各個ESG容器文件的參數(shù)。
進一步地,所述ESG容器文件的參數(shù)為容器文件名和容器版本號,所述步驟(2)中,判斷當前網(wǎng)絡(luò)中的ESG信息相較于原來本地保存的ESG信息是否發(fā)生改變包括CDP模塊將新的容器文件名和容器版本號與上一次本地保存的FDT表格中的容器文件名和容器版本號比較,判斷收到的ESG容器文件參數(shù)是否與本地保存的ESG容器文件參數(shù)不同,若發(fā)現(xiàn)有ESG容器文件的版本號發(fā)生改變或ESG容器文件有增添時,則發(fā)生改變;否則,未發(fā)生改變。
進一步地,所述步驟(3)中,若當前網(wǎng)絡(luò)中的ESG信息相較于原來本地保存的ESG信息發(fā)生改變,則執(zhí)行如下步驟(a)CDP模塊保存本次FDT的信息到本地;(b)CDP模塊向ESG瀏覽器報告ESG需要更新的消息;(c)ESG瀏覽器向ESG引擎模塊發(fā)送重新收取ESG的命令;(d)ESG引擎模塊向CDP模塊發(fā)送收取所有ESG容器文件的消息;(e)CDP模塊根據(jù)當前FDT中的信息在當前網(wǎng)絡(luò)中收取所有的ESG容器文件發(fā)送給ESG引擎模塊;(f)ESG引擎模塊接收到CDP模塊上報的所有容器文件,對它們依次進行解析,構(gòu)造新的ESG數(shù)據(jù)模型,并將新的ESG數(shù)據(jù)保存在本地。
進一步地,所述步驟(3)中,若當前網(wǎng)絡(luò)中的ESG信息相較于原來本地保存的ESG信息未發(fā)生改變,則執(zhí)行如下步驟(A)CDP模塊向ESG瀏覽器報告ESG未改變的消息;
(B)ESG瀏覽器向ESG引擎模塊發(fā)送從本地的ESG數(shù)據(jù)文件裝載ESG的命令;(C)ESG引擎模塊將本地的ESG數(shù)據(jù)文件導入到內(nèi)存中,并還原為原來的ESG數(shù)據(jù)模型。
進一步地,所述步驟(3)執(zhí)行之后,ESG瀏覽器通過向ESG引擎模塊查詢將ESG信息呈現(xiàn)給終端用戶。
本發(fā)明采用了在ESG瀏覽器應(yīng)用啟動時根據(jù)FDT表中的ESG容器信息來判斷當前網(wǎng)絡(luò)中的ESG信息相較于原來本地保存的ESG信息是否發(fā)生改變,然后決策是重新收取ESG信息還是直接導入上一次保存的ESG數(shù)據(jù)。這樣就可避免每次進入ESG瀏覽器應(yīng)用都需要CDP模塊收齊當前網(wǎng)絡(luò)中所有的ESG容器文件交給ESG引擎模塊進行解析的繁瑣過程,使得用戶無需每次都要等待很長時間才能瀏覽到電視節(jié)目,同時還可保障ESG信息的實時性,并且節(jié)約了手機終端大量的電池能量消耗,從而極大地提高了DVB-H手機電視的整體性能。
圖1是本發(fā)明實施例涉及與DVB-H手機電視中ESG相關(guān)的系統(tǒng)結(jié)構(gòu)圖;圖2是本發(fā)明實施例的總體流程圖。
具體實施例方式
本發(fā)明所述DVB-H手機電視ESG加載方法的核心思想是在ESG瀏覽器應(yīng)用剛啟動時,底層的CDP模塊根據(jù)FDT(File Delivery Table,文件傳輸表)表中的ESG容器信息來判斷當前網(wǎng)絡(luò)中的ESG信息相較于原來本地保存的ESG信息是否發(fā)生改變,然后決定是重新收取ESG信息還是直接導入上一次保存的ESG數(shù)據(jù)。
下面結(jié)合附圖及具體實施例對本發(fā)明進行詳細說明。
如圖1所示,DVB-H手機電視中ESG相關(guān)的系統(tǒng)包括ESG瀏覽器、CDP模塊、ESG引擎模塊。ESG瀏覽器用于調(diào)用CDP模塊、ESG引擎模塊,接收ESG引擎模塊發(fā)送的ESG信息,并顯示出來;CDP模塊用于收取ESG啟動文件bootstrap和ESG信息的IP數(shù)據(jù)流,其中ESG信息的IP數(shù)據(jù)流中包括了FDT表格文件數(shù)據(jù)以及ESG容器文件數(shù)據(jù);在ESG瀏覽器啟動后,CDP模塊在當前網(wǎng)絡(luò)中收取包含ESG啟動文件bootstrap以及FDT表格文件,根據(jù)接收到的FDT表格文件中的ESG容器信息來判斷當前網(wǎng)絡(luò)中的ESG信息相較于原來本地保存的ESG信息是否發(fā)生改變,若有改變,則通過CDP模塊接收ESG容器文件,發(fā)送給ESG引擎模塊;ESG引擎模塊與ESG瀏覽器、CDP模塊通訊,若當前網(wǎng)絡(luò)中的ESG信息相較于原來本地保存的ESG信息沒有改變,則ESG引擎文件直接導入保存的ESG數(shù)據(jù)文件,發(fā)送給ESG瀏覽器,若有改變,則接收CDP模塊發(fā)送的ESG容器文件,解析后發(fā)給ESG瀏覽器。
如圖2所示,本發(fā)明實施例的工作流程為步驟201,手機電視的ESG瀏覽器啟動時,同時啟動CDP模塊和ESG引擎模塊;步驟202,CDP模塊啟動后,首先根據(jù)DVB-H協(xié)議中固定的IP地址和端口號在當前網(wǎng)絡(luò)的IP流中收取到ESG啟動文件-bootstrap;步驟203,CDP模塊解析bootstrap文件,得到目前各個FDT表格文件所在IP流的參數(shù)-IP地址和端口號;步驟204,CDP模塊再通過以上得到的IP地址和端口號在各個IP流上收取對應(yīng)的FDT表格文件;步驟205,CDP模塊解析FDT表格,得到各個ESG容器文件的參數(shù)-容器文件名和容器版本號;步驟206CDP模塊將這些新的容器文件名和容器版本號與上一次本地保存的FDT表格中的容器文件名和容器版本號比較,判斷收到的ESG容器文件參數(shù)是否與本地保存的ESG容器文件參數(shù)不同,若發(fā)現(xiàn)有ESG容器文件的版本號發(fā)生改變或ESG容器文件有增添時,保存本次FDT的信息到本地,然后進入步驟207,否則進入步驟212;步驟207,CDP模塊向ESG瀏覽器報告ESG需要更新的消息,消息標識為MSG_CDP_DVB_ESGUPDATE;步驟208,ESG瀏覽器接收到MSG_CDP_DVB_ESGUPDATE消息,向ESG引擎模塊發(fā)送重新收取ESG的命令,命令標識為CMD_DVB_ESG_GETESG;步驟209,ESG引擎模塊接收到CMD_DVB_ESG_GETESG命令,則向CDP模塊發(fā)送收取所有ESG容器文件的消息,消息標識為MSG_ESG_CDP_GETESGCONTAINER;步驟210,CDP模塊接收到MSG_ESG_CDP_GETESGCONTAINER消息,根據(jù)當前FDT中的信息在當前網(wǎng)絡(luò)中收取所有的ESG容器文件發(fā)送給ESG引擎模塊;步驟211,ESG引擎模塊接收到CDP模塊上報的所有容器文件,對它們依次進行解析,構(gòu)造新的ESG數(shù)據(jù)模型,并將新的ESG數(shù)據(jù)保存在本地,然后進入步驟215;步驟212,CDP模塊向ESG瀏覽器報告ESG未改變的消息,消息標識為MSG_CDP_DVB_ESGUPNODATE;步驟213,ESG瀏覽器應(yīng)用接收到MSG_CDP_DVB_ESGNOUPDATE消息,向ESG引擎模塊發(fā)送從本地的ESG數(shù)據(jù)文件裝載ESG的命令,命令標識為CMD_DVB_ESG_LOADESGFROMLOCAL;步驟214,ESG引擎模塊接收到CMD_DVB_ESG_LOADESGFROMLOCAL命令,則將本地的ESG數(shù)據(jù)文件導入到內(nèi)存中,并還原為原來的ESG數(shù)據(jù)模型(ESG數(shù)據(jù)保存在內(nèi)存中,稱為ESG數(shù)據(jù)模型;ESG數(shù)據(jù)保存在磁盤中,稱為ESG數(shù)據(jù)文件);步驟215,ESG引擎模塊向ESG瀏覽器發(fā)送ESG數(shù)據(jù)準備好的消息,消息標識為MSG_ESG_DVB_ESGREADY;步驟216,ESG瀏覽器接收到消息MSG_ESG_DVB_ESGREADY后,則通過向ESG引擎模塊查詢將ESG信息呈現(xiàn)給終端用戶。
權(quán)利要求
1.一種應(yīng)用于手機電視的電子服務(wù)指南加載方法,包括如下步驟(1)電子服務(wù)指南ESG瀏覽器啟動,并啟動內(nèi)容傳輸協(xié)議CDP模塊和ESG引擎模塊;(2)CDP模塊在當前網(wǎng)絡(luò)中收取文件傳輸表FDT,根據(jù)FDT中的ESG容器信息,判斷當前網(wǎng)絡(luò)中的ESG信息相較于原來本地保存的ESG信息是否發(fā)生改變;(3)若當前網(wǎng)絡(luò)中的ESG信息相較于原來本地保存的ESG信息發(fā)生改變,則CDP模塊收取ESG容器文件,ESG引擎模塊解析后得到新的ESG信息;若當前網(wǎng)絡(luò)中的ESG信息相較于原來本地保存的ESG信息未發(fā)生改變,則ESG引擎模塊使用原來保存的ESG數(shù)據(jù)文件作為當前的ESG信息。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述步驟(2)中,CDP模塊在當前網(wǎng)絡(luò)中收取文件傳輸表FDT之前,先根據(jù)固定的IP地址和端口號在當前網(wǎng)絡(luò)的IP流中收取到ESG啟動文件bootstrap,CDP模塊解析bootstrap文件,得到當前各個FDT表格文件所在IP地址和端口號。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述步驟(2)中,CDP模塊通過當前各個FDT文件所在IP地址和端口號在各個IP流上收取對應(yīng)的FDT文件。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述步驟(2)中,CDP模塊在當前網(wǎng)絡(luò)中收取文件傳輸表FDT后,解析FDT文件,得到各個ESG容器文件的參數(shù)。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述ESG容器文件的參數(shù)為容器文件名和容器版本號,所述步驟(2)中,判斷當前網(wǎng)絡(luò)中的ESG信息相較于原來本地保存的ESG信息是否發(fā)生改變包括CDP模塊將新的容器文件名和容器版本號與上一次本地保存的FDT表格中的容器文件名和容器版本號比較,判斷收到的ESG容器文件參數(shù)是否與本地保存的ESG容器文件參數(shù)不同,若發(fā)現(xiàn)有ESG容器文件的版本號發(fā)生改變或ESG容器文件有增添時,則發(fā)生改變;否則,未發(fā)生改變。
6.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述步驟(3)中,若當前網(wǎng)絡(luò)中的ESG信息相較于原來本地保存的ESG信息發(fā)生改變,則執(zhí)行如下步驟(a)CDP模塊保存本次FDT的信息到本地;(b)CDP模塊向ESG瀏覽器報告ESG需要更新的消息;(c)ESG瀏覽器向ESG引擎模塊發(fā)送重新收取ESG的命令;(d)ESG引擎模塊向CDP模塊發(fā)送收取所有ESG容器文件的消息;(e)CDP模塊根據(jù)當前FDT中的信息在當前網(wǎng)絡(luò)中收取所有的ESG容器文件發(fā)送給ESG引擎模塊;(f)ESG引擎模塊接收到CDP模塊上報的所有容器文件,對它們依次進行解析,構(gòu)造新的ESG數(shù)據(jù)模型,并將新的ESG數(shù)據(jù)保存在本地。
7.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述步驟(3)中,若當前網(wǎng)絡(luò)中的ESG信息相較于原來本地保存的ESG信息未發(fā)生改變,則執(zhí)行如下步驟(A)CDP模塊向ESG瀏覽器報告ESG未改變的消息;(B)ESG瀏覽器向ESG引擎模塊發(fā)送從本地的ESG數(shù)據(jù)文件裝載ESG的命令;(C)ESG引擎模塊將本地的ESG數(shù)據(jù)文件導入到內(nèi)存中,并還原為原來的ESG數(shù)據(jù)模型。
8.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述步驟(3)執(zhí)行之后,ESG瀏覽器通過向ESG引擎模塊查詢將ESG信息呈現(xiàn)給終端用戶。
全文摘要
本發(fā)明公開了一種應(yīng)用于手機電視的電子服務(wù)指南加載方法,包括ESG瀏覽器啟動,并啟動CDP模塊和ESG引擎模塊;CDP模塊在當前網(wǎng)絡(luò)中收取文件傳輸表FDT,根據(jù)FDT中的ESG容器信息,判斷當前網(wǎng)絡(luò)中的ESG信息相較于原來本地保存的ESG信息是否發(fā)生改變;若發(fā)生改變,則CDP模塊收取ESG容器文件,ESG引擎模塊解析后得到新的ESG信息;若未發(fā)生改變,則ESG引擎模塊使用原來保存的ESG數(shù)據(jù)文件作為當前的ESG信息。本發(fā)明既可以避免每次用戶每次進入ESG瀏覽器應(yīng)用都要等待很長時間才能看到電視節(jié)目信息進行播放的情況,也能保障ESG信息的實時性,從而提高DVB-H手機電視的整體性能。
文檔編號H04N7/24GK101014113SQ20071000755
公開日2007年8月8日 申請日期2007年2月6日 優(yōu)先權(quán)日2007年2月6日
發(fā)明者曹剛, 王澤民, 張本全 申請人:中興通訊股份有限公司