新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 一種優(yōu)化的機頂盒電子節(jié)目指南系統(tǒng)的設(shè)計方案

一種優(yōu)化的機頂盒電子節(jié)目指南系統(tǒng)的設(shè)計方案

作者: 時間:2014-04-07 來源:網(wǎng)絡(luò) 收藏


本文針對兩類不同的SI表接收要求設(shè)計不同的SI引擎解決方案。其中簡單的SI引擎流程如圖2,高級的SI引擎流程如圖3.





當(dāng)過濾器收到EIT表并調(diào)用中斷處理函數(shù)時,簡單采用先關(guān)閉EIT P/F信道,并設(shè)置相關(guān)標(biāo)志,等待后臺輪詢函數(shù)解析處理完該表以后再打開EIT P/F信道重新接收,即過濾器接收表的過程和后臺輪詢函數(shù)解析處理是串行處理的,這種機制能夠?qū)崟r處理當(dāng)前的表,適合簡單EPG信息量小、更新速度快的特點;高級EPG則不關(guān)閉信道,而是先解析表頭,如果該段沒有接收過,則將該段信息插入消息隊列,等待后臺輪詢函數(shù)解析處理,即過濾器接收表的過程和后臺輪詢函數(shù)解析處理是并行處理的,這種機制能夠保證過濾器收表過程連續(xù)而不被后臺打斷,適合高級EPG信息量大、前端連續(xù)發(fā)送的特點。

在EIT表版本更新方面,簡單EPG收到當(dāng)前和下一個節(jié)目信息以后,立即將過濾器設(shè)置成只接收新版本EIT P/F表,這樣可以實時接收并更新簡單EPG信息;對于高級EPG,由于信息量大且前端更新速度慢,所以在只在每次重新開機時接收最新版本的EIT表信息。

3.2 EPG數(shù)據(jù)庫

傳統(tǒng)上的EPG數(shù)據(jù)庫是單一的節(jié)目信息數(shù)據(jù)庫,本文的優(yōu)化處理在于:節(jié)目索引和節(jié)目詳細(xì)信息分別建立數(shù)據(jù)庫并彼此獨立維護。其中節(jié)目索引數(shù)據(jù)庫是按照頻道-子表-段-節(jié)目的樹狀索引結(jié)構(gòu),如圖4所示。其中段節(jié)點包含了它所屬所有節(jié)目的id(參數(shù)event_id),同時還包含了表示該段是否接收的參數(shù)sectavail.



這種樹狀索引數(shù)據(jù)庫有三個優(yōu)點:

1. 樹狀索引所有節(jié)目id,這樣便于節(jié)目信息的查詢和按時間排序;

2. 記錄某頻道的EIT表所有段的接收情況,便于SI引擎在接收時判斷該段是否已經(jīng)接收;

3. 索引結(jié)構(gòu)便于節(jié)目信息數(shù)據(jù)庫的管理,如刪除某一個頻道的所有高級EPG信息等。

節(jié)目信息數(shù)據(jù)庫則存儲了每個節(jié)目的詳細(xì)信息,包括節(jié)目名稱、節(jié)目起始和終止時間、節(jié)目簡介以及節(jié)目語言種類等。其中重要的參數(shù)是節(jié)目id,通過該參數(shù)節(jié)目索引數(shù)據(jù)庫可以訪問相應(yīng)的節(jié)目信息數(shù)據(jù)庫內(nèi)容。

3.3 EPG應(yīng)用程序測試與分析

EPG應(yīng)用程序主要功能是響應(yīng)遙控器中相關(guān)的EPG按鈕,并查詢EPG數(shù)據(jù)庫,將節(jié)目信息按照時間排序輸出到OSD界面中。對于簡單EPG,只需作當(dāng)前和下一個節(jié)目的時間排序輸出;而對于高級EPG,OSD界面中選中特定頻道和特定日期以后,通過訪問EPG數(shù)據(jù)庫中的節(jié)目索引數(shù)據(jù)庫,提取出指定頻道的所有節(jié)目id,然后根據(jù)節(jié)目id在節(jié)目信息數(shù)據(jù)庫中篩選出指定日期的節(jié)目,并按節(jié)目起始時間做冒泡排序,最后輸出到OSD顯示。

4 結(jié)論

本文介紹了中EPG系統(tǒng)的架構(gòu),并就具體的功能模塊介紹了優(yōu)化方案。在SI引擎方面提出了針對簡單EPG和高級EPG不同的流程,在EPG數(shù)據(jù)庫方面提出了節(jié)目索引和節(jié)目信息分離的數(shù)據(jù)庫結(jié)構(gòu)。這種優(yōu)化結(jié)構(gòu)在實際的EPG碼流測試中取得良好的效果。


上一頁 1 2 下一頁

關(guān)鍵詞: EPG 機頂盒 數(shù)字電視

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉