專利名稱:一種數(shù)字電視的數(shù)據(jù)處理系統(tǒng)及方法、數(shù)字電視接收終端的制作方法
技術(shù)領(lǐng)域:
本發(fā)明屬于數(shù)字電視技術(shù)領(lǐng)域,尤其涉及一種數(shù)字電視的數(shù)據(jù)處理系統(tǒng)及方法、 數(shù)字電視接收終端。
背景技術(shù):
隨著國(guó)家三網(wǎng)融合政策的大力推行,機(jī)頂盒增值業(yè)務(wù)的市場(chǎng)需求為整個(gè)社會(huì)發(fā)展 帶來(lái)了巨大的商機(jī)。目前致力于數(shù)字電視業(yè)務(wù)開發(fā)的中間件公司也隨之增多,中間件的表 現(xiàn)形式日趨多樣化。瀏覽器、數(shù)據(jù)廣播、股票系統(tǒng)、互動(dòng)游戲、以及涵蓋數(shù)字電視各類應(yīng)用的 純中間件系統(tǒng)等多種增值業(yè)務(wù)在機(jī)頂盒終端得到了廣泛移植和應(yīng)用。由于目前中間件的開發(fā)尚未標(biāo)準(zhǔn)化、統(tǒng)一化、流程化,各個(gè)中間件廠商設(shè)計(jì)出來(lái)的 軟件系統(tǒng)架構(gòu)千差萬(wàn)別,并且機(jī)頂盒廠商自身所采用的方案、軟件架構(gòu)以及CA模塊實(shí)現(xiàn)方 法也是多種多樣,這些差異的存在無(wú)疑給機(jī)頂盒終端廠商對(duì)中間件的移植工作帶來(lái)了很大 麻煩。其中表現(xiàn)較為突出的是中間件內(nèi)加密節(jié)目的解擾實(shí)現(xiàn)問(wèn)題。CA模塊是機(jī)頂盒中一個(gè)非常重要的模塊,CA模塊直接決定著加密節(jié)目是否能夠 正常收看。而且,廣電運(yùn)營(yíng)商為了控制節(jié)目的播控權(quán),對(duì)原始節(jié)目流大都進(jìn)行了加密。當(dāng)加 密發(fā)生在中間件所涉及的節(jié)目時(shí),中間件的移植就會(huì)變得較為繁瑣。對(duì)于中間件系統(tǒng)內(nèi)加 密節(jié)目的解擾應(yīng)該由中間件廠商完成還是由機(jī)頂盒廠商完成,其實(shí)在業(yè)界一直存在著不同 意見,但考慮到入網(wǎng)機(jī)頂盒在CA認(rèn)證方面的工作量和經(jīng)費(fèi)問(wèn)題,目前CA解擾功能的實(shí)現(xiàn)大 都在盒端由機(jī)頂盒廠家完成。在實(shí)際的中間件移植實(shí)施過(guò)程中,在節(jié)目播放方面,中間件與 機(jī)頂盒終端的對(duì)接形式多種多樣,這些形式歸納起來(lái),大致有以下幾種。(Ml)、當(dāng)播放加密節(jié)目時(shí),中間件以音頻標(biāo)志碼傳輸包(Packet Identifier, PID)、視頻PID、PCR PID作為輸入?yún)?shù)定義節(jié)目播放函數(shù)與機(jī)頂盒對(duì)接。(M2)、當(dāng)播放加密節(jié)目時(shí),中間件以音頻PID、視頻PID、PCR PID、音頻ECM PID、視 頻ECM PID作為輸入?yún)?shù)定義節(jié)目播放函數(shù)與機(jī)頂盒對(duì)接。(M3)、當(dāng)播放加密節(jié)目時(shí),中間件以傳送流的數(shù)據(jù)流(TS) ID和ServiceID作為輸 入?yún)?shù)定義節(jié)目播放函數(shù)與機(jī)頂盒對(duì)接。(M4)、當(dāng)播放加密節(jié)目時(shí),中間件以節(jié)目的PMT表的PID作為輸入?yún)?shù)定義節(jié)目播 放函數(shù)與機(jī)頂盒對(duì)接。(M5)、當(dāng)播放加密節(jié)目時(shí),中間件以節(jié)目的PMT表作為輸入?yún)?shù)定義節(jié)目播放函 數(shù)與機(jī)頂盒對(duì)接。中間件與機(jī)頂盒終端在節(jié)目播放方面多種對(duì)接形式的存在,使得中間件啟動(dòng)盒端 CA解擾模塊的適配方法也多種多樣,目前常用的方法歸納起來(lái)有以下幾種(m)、當(dāng)中間件播放加密節(jié)目時(shí)所傳遞給機(jī)頂盒的參數(shù)為音頻PID、視頻PID、PCR PID或者TSID、Service ID時(shí),僅憑音頻PID、視頻PID、PCR PID三個(gè)參數(shù)或者TS ID、 Service ID兩個(gè)參數(shù),盒端現(xiàn)有的CA模塊是無(wú)法直接為中間件啟動(dòng)解擾的,現(xiàn)有方法通 常是在當(dāng)前CA模塊的架構(gòu)上再增加一個(gè)接口,以音頻PID、視頻PID、PCR PID或者TS ID、Service ID作為匹配目標(biāo),通過(guò)查詢的方式從節(jié)目搜索時(shí)已存儲(chǔ)的數(shù)據(jù)庫(kù)中,找到當(dāng)前節(jié) 目的PMT,或者采用即時(shí)接收PMT的方式,從正在播發(fā)的傳送流中,收到當(dāng)前節(jié)目所對(duì)應(yīng)的 PMT, CA模塊從PMT中分析出加密節(jié)目的ECM PID信息,由此完成中間件加密節(jié)目的解擾功 能。(N2)、當(dāng)中間件播放加密節(jié)目時(shí)所傳遞給機(jī)頂盒的參數(shù)為ECM PID時(shí),現(xiàn)有方法通 常是直接以ECM PID作為輸入?yún)?shù)由CA模塊定義一個(gè)接口,在此接口內(nèi)完成中間件加密節(jié) 目的解擾功能。(N3)、當(dāng)中間件播放加密節(jié)目時(shí)所傳遞給機(jī)頂盒的參數(shù)為PMT表的PID時(shí),現(xiàn)有方 法通常是以PMT PID作為輸入?yún)?shù),由CA模塊定義一個(gè)接口,在該接口內(nèi)采用即時(shí)接收的 方法,通過(guò)創(chuàng)建節(jié)目影射表(Program Map Table, PMT)的解復(fù)用通道,并將PMT PID設(shè)入解 復(fù)用通道中,從正在播發(fā)的傳送流中接收到與之對(duì)應(yīng)的PMT,從PMT中分析出加密節(jié)目的授 權(quán)控制信息(ECM)PID信息,由此完成加密節(jié)目的解擾功能。(N4)、當(dāng)中間件播放加密節(jié)目時(shí)所傳遞給機(jī)頂盒的參數(shù)為PMT表時(shí),現(xiàn)有方法通 常是以PMT表的內(nèi)存地址作為輸入?yún)?shù),由CA模塊定義一個(gè)接口,在該接口內(nèi)CA模塊通過(guò) 分析傳入的PMT內(nèi)容,得出加密節(jié)目的ECM PID信息,完成加密節(jié)目的解擾功能。本發(fā)明的發(fā)明人在研究過(guò)程中發(fā)現(xiàn),現(xiàn)有技術(shù)存在如下缺點(diǎn)(Li)、中間件與機(jī)頂盒在節(jié)目播放方面多種對(duì)接形式的存在,使得機(jī)頂盒在CA解 擾實(shí)現(xiàn)方面與中間件的適配方法種類繁多,機(jī)頂盒通常都是根據(jù)不同種類的中間件所傳遞 的不同形式的信息內(nèi)容通過(guò)修改CA模塊的接口,采用與其相配套的接口和方法完成CA解 擾功能,這就要求機(jī)頂盒CA模塊根據(jù)中間件的不同種類時(shí)常做出一些變更,使得機(jī)頂盒能 夠完成中間件內(nèi)部業(yè)務(wù)的解擾功能。這樣就會(huì)使得盒端CA模塊與中間件種類的耦合性增 強(qiáng),加大了維護(hù)CA模塊的工作量,同時(shí),中間件的移植工作也變得非常繁瑣,通常調(diào)通了一 種中間件的CA解擾功能,在移植其他種類的中間件時(shí),還需要再次做重復(fù)性的調(diào)試工作。(L2)、通常數(shù)字電視傳輸網(wǎng)中單個(gè)頻點(diǎn)下包含若干個(gè)節(jié)目(一般小于10),傳送流 以0. 1 0. 5秒的時(shí)間間隔循環(huán)傳輸一張節(jié)目關(guān)聯(lián)表(Program AssociationTable, PAT) 表,該表包含了每個(gè)節(jié)目與其對(duì)應(yīng)的PMT PID之間的映射關(guān)系,并以0. 1 0.5秒的時(shí)間間 隔循環(huán)傳輸每個(gè)節(jié)目所對(duì)應(yīng)的PMT表。當(dāng)中間件播放加密節(jié)目所傳遞給機(jī)頂盒的參數(shù)形 式需要CA模塊必須采用即時(shí)接收PMT的方式啟動(dòng)CA解擾時(shí),現(xiàn)有的方法通常是將當(dāng)前頻 點(diǎn)下所有節(jié)目的PMT全部接收下來(lái),從中找到與中間件加密節(jié)對(duì)應(yīng)的PMT來(lái)啟動(dòng)CA解擾。 因此,這種啟動(dòng)CA解擾的方法是需要一個(gè)時(shí)間過(guò)程的,而且中間件所在的頻點(diǎn)中包含的節(jié) 目和業(yè)務(wù)的個(gè)數(shù)越多,從這些節(jié)目中即時(shí)找到這些節(jié)目和業(yè)務(wù)的PMT表的接收時(shí)間就會(huì)越 長(zhǎng),中間件播放加密節(jié)目啟動(dòng)CA解擾的過(guò)程耗時(shí)也就越長(zhǎng)。(L3)、由于運(yùn)營(yíng)商對(duì)前端隨時(shí)都可能進(jìn)行升級(jí),每個(gè)節(jié)目的PMT都存在隨時(shí)變動(dòng)、 調(diào)整的可能,當(dāng)中間件啟動(dòng)CA解擾時(shí),如果采用節(jié)目信息數(shù)據(jù)庫(kù)中的PMT作為啟動(dòng)CA解擾 的參數(shù),當(dāng)前正在播發(fā)的PMT可能與歷史時(shí)刻用戶搜索時(shí)所存儲(chǔ)的PMT內(nèi)容不一致,從而使 得CA模塊得到的是一個(gè)與當(dāng)前加密節(jié)目不相匹配的PMT,造成CA模塊的解擾失敗。并且, 為了緩解數(shù)字電視網(wǎng)絡(luò)的通信負(fù)荷,很多中間件視頻點(diǎn)播(Video On Demand, V0D)節(jié)目的 PMT通常只有在用戶請(qǐng)求點(diǎn)播時(shí)前端才會(huì)傳送,因此,在用戶進(jìn)行節(jié)目搜索時(shí),很多點(diǎn)播節(jié) 目的PMT是無(wú)法獲取到的,那么在點(diǎn)播系統(tǒng)內(nèi),直接通過(guò)查詢的方法是無(wú)法得到對(duì)應(yīng)節(jié)目的PMT的。由此可見,通過(guò)節(jié)目信息數(shù)據(jù)庫(kù)查詢的方法獲取PMT表完成CA解擾的啟動(dòng),是 不可靠的。綜上,如何降低CA模塊與中間件的耦合性,減少開發(fā)人員維護(hù)CA模塊的工作量, 提高各類中間件移植工作的效率,是數(shù)字電視技術(shù)領(lǐng)域研究的方向之一。
發(fā)明內(nèi)容
本發(fā)明實(shí)施例的目的在于提供一種數(shù)字電視的數(shù)據(jù)處理系統(tǒng)及方法、數(shù)字電視接 收終端,旨在降低CA模塊與中間件的耦合性,減少開發(fā)人員維護(hù)CA模塊的工作量,提高各 類中間件移植工作的效率。本發(fā)明實(shí)施例是這樣實(shí)現(xiàn)的,一種數(shù)字電視的數(shù)據(jù)處理系統(tǒng),所述系統(tǒng)包括中間 件模塊,CA模塊,所述中間件模塊與所述CA模塊之間還設(shè)置有一適配模塊以及節(jié)目映射表 緩存模塊,其中,所述中間件模塊,用于向所述適配模塊發(fā)送參數(shù);所述適配模塊,用于獲取所述中間件模塊發(fā)送的參數(shù)的類型,根據(jù)所述參數(shù)的類 型在所述緩存模塊中組成完整的節(jié)目映射表,所述節(jié)目映射表對(duì)應(yīng)所述參數(shù);所述適配模塊,還用于將完整的節(jié)目映射表發(fā)送至所述CA模塊,由所述CA模塊進(jìn) 行解擾。優(yōu)選的,所述系統(tǒng)包括判斷啟動(dòng)模塊,用于判斷所述所述中間件模塊是否啟動(dòng),若 所述中間件模塊啟動(dòng),所述適配模塊根據(jù)所述參數(shù)的類型在所述節(jié)目映射表緩存模塊中組 成完整的節(jié)目映射表。優(yōu)選的,所述判斷啟動(dòng)模塊,還用于判斷所述中間件模塊運(yùn)行過(guò)程中頻點(diǎn)是否發(fā) 生跳轉(zhuǎn),若所述中間件模塊運(yùn)行過(guò)程中頻點(diǎn)發(fā)生跳轉(zhuǎn),所述適配模塊根據(jù)所述參數(shù)的類型 在所述節(jié)目映射表緩存模塊中組成完整的節(jié)目映射表。優(yōu)選的,所述判斷啟動(dòng)模塊,還用于判斷當(dāng)前頻點(diǎn)下的節(jié)目關(guān)聯(lián)表版本是否發(fā)生 變化,若當(dāng)前頻點(diǎn)下的節(jié)目關(guān)聯(lián)表版本發(fā)生變化,所述適配模塊根據(jù)所述參數(shù)的類型在所 述節(jié)目映射表緩存模塊中組成完整的節(jié)目映射表,其中,頻點(diǎn)一一對(duì)應(yīng)節(jié)目關(guān)聯(lián)表。優(yōu)選的,所述節(jié)目映射表緩存模塊,在未接收到適配模塊發(fā)來(lái)的參數(shù)時(shí),按照每個(gè) 節(jié)目映射表的先后順序進(jìn)行接收;在接收到適配模塊發(fā)來(lái)的參數(shù)時(shí),優(yōu)選處理所述參數(shù)對(duì)應(yīng)的節(jié)目關(guān)聯(lián)表。優(yōu)選的,所述節(jié)目映射表緩存模塊,還用于存儲(chǔ)中間件模塊在運(yùn)行期間需要的不 同頻點(diǎn)下所有節(jié)目的節(jié)目關(guān)聯(lián)表,其中,已存儲(chǔ)的節(jié)目關(guān)聯(lián)表不再重復(fù)接收。優(yōu)選的,所述適配模塊據(jù)所述參數(shù)的類型在所述緩存模塊中組成完整的節(jié)目映射 表的過(guò)程中,還判斷接收所述節(jié)目映射表的時(shí)間是否大于系統(tǒng)設(shè)置的閾值,若大于,則終止 對(duì)所述節(jié)目映射表的接收。本發(fā)明實(shí)施例的還一目的在于提供一種數(shù)字電視的數(shù)據(jù)處理方法,所述方法包括 以下步驟提供中間件模塊、CA模塊,以及所述中間件模塊與所述CA模塊之間的適配模塊和 節(jié)目映射表緩存模塊,所述中間件模塊向所述適配模塊發(fā)送參數(shù);
所述適配模塊獲取所述中間件模塊發(fā)送的參數(shù)的類型,根據(jù)所述參數(shù)的類型在所 述緩存模塊中組成完整的節(jié)目映射表,其中,所述節(jié)目映射表對(duì)應(yīng)所述參數(shù);所述適配模塊將完整的節(jié)目映射表發(fā)送至所述CA模塊,由所述CA模塊進(jìn)行解擾。優(yōu)選的,所述適配模塊根據(jù)所述參數(shù)的類型在所述緩存模塊中組成完整的節(jié)目映 射表的步驟之前,所述方法還包括以下步驟判斷所述中間件模塊是否啟動(dòng),若所述中間件模塊啟動(dòng),則所述適配模塊根據(jù)所 述參數(shù)的類型在所述緩存模塊中組成完整的節(jié)目映射表。優(yōu)選的,所述適配模塊根據(jù)所述參數(shù)的類型在所述緩存模塊中組成完整的節(jié)目映 射表的步驟之前,所述方法還包括以下步驟判斷所述中間件模塊運(yùn)行過(guò)程中頻點(diǎn)是否發(fā)生跳轉(zhuǎn),若所述中間件模塊運(yùn)行過(guò)程 中頻點(diǎn)發(fā)生跳轉(zhuǎn),則所述適配模塊根據(jù)所述參數(shù)的類型在所述緩存模塊中組成完整的節(jié)目 映射表。優(yōu)選的,所述適配模塊根據(jù)所述參數(shù)的類型在所述緩存模塊中組成完整的節(jié)目映 射表的步驟之前,所述方法還包括以下步驟;判斷當(dāng)前頻點(diǎn)下的節(jié)目關(guān)聯(lián)表版本是否發(fā)生變化,若發(fā)生變化,則所述適配模塊 根據(jù)所述參數(shù)的類型在所述緩存模塊中組成完整的節(jié)目映射表,其中,頻點(diǎn)一一對(duì)應(yīng)節(jié)目 關(guān)聯(lián)表。優(yōu)選的,所述適配模塊根據(jù)所述參數(shù)的類型在所述緩存模塊中組成完整的節(jié)目映 射表的步驟之前,所述方法還包括所述節(jié)目映射表緩存模塊,在未接收到適配模塊發(fā)來(lái)的參數(shù)時(shí),按照每個(gè)節(jié)目映 射表的先后順序進(jìn)行接收;在接收到適配模塊發(fā)來(lái)的參數(shù)時(shí),優(yōu)選處理所述參數(shù)對(duì)應(yīng)的節(jié)目關(guān)聯(lián)表。優(yōu)選的,所述適配模塊根據(jù)所述參數(shù)的類型在所述緩存模塊中組成完整的節(jié)目映 射表時(shí),所述節(jié)目映射表緩存模塊,還存儲(chǔ)中間件模塊在運(yùn)行期間需要的不同頻點(diǎn)下所有 節(jié)目的節(jié)目關(guān)聯(lián)表,其中,已存儲(chǔ)的節(jié)目關(guān)聯(lián)表不再重復(fù)接收。優(yōu)選的,所述適配模塊據(jù)所述參數(shù)的類型在所述緩存模塊中組成完整的節(jié)目映射 表時(shí),還包括以下步驟判斷接收所述節(jié)目映射表的時(shí)間是否大于系統(tǒng)設(shè)置的閾值,若大于,則終止對(duì)所 述節(jié)目映射表的接收。本發(fā)明實(shí)施例通過(guò)在中間件模塊與CA模塊之間設(shè)置適配模塊和節(jié)目映射表緩存 模塊,所述適配模塊獲取所述中間件模塊發(fā)送的參數(shù)的類型,根據(jù)所述參數(shù)的類型在所述 緩存模塊中組成完整的節(jié)目映射表發(fā)送給CA模塊,由所述CA模塊進(jìn)行解擾,極大的降低了 機(jī)頂盒CA模塊與中間件模塊的耦合性,減少了開發(fā)人員維護(hù)CA模塊的工作量,提高了各類 中間件移植工作的效率。
圖1是本發(fā)明實(shí)施例提供的數(shù)字電視的數(shù)據(jù)處理系統(tǒng)的總體結(jié)構(gòu)圖;圖2是本發(fā)明實(shí)施例提供的數(shù)字電視的數(shù)據(jù)處理方法的流程圖;圖3是本發(fā)明實(shí)施例提供的數(shù)字電視的數(shù)據(jù)處理方法的詳細(xì)流程圖4是本發(fā)明實(shí)施例提供的PMT緩存模塊元素信息的構(gòu)成示意圖;圖5是本發(fā)明實(shí)施例提供的PMT緩存模塊的具體實(shí)施方法流程圖;圖6是本發(fā)明實(shí)施例提供的音、視頻節(jié)目PMT的構(gòu)造方法的流程圖。
具體實(shí)施例方式為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對(duì) 本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說(shuō)明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并 不用于限定本發(fā)明。本發(fā)明實(shí)施例通過(guò)在中間件模塊與CA模塊之間設(shè)置適配模塊和節(jié)目映射表緩存 模塊,所述適配模塊獲取所述中間件模塊發(fā)送的參數(shù)的類型,根據(jù)所述參數(shù)的類型在所述 緩存模塊中組成完整的節(jié)目映射表發(fā)送給CA模塊,由所述CA模塊進(jìn)行解擾本發(fā)明第一實(shí)施例提供了一種數(shù)字電視的數(shù)據(jù)處理系統(tǒng),請(qǐng)參閱圖1。所述系統(tǒng)包括中間件模塊11,CA模塊12,所述中間件模塊11與所述CA模塊12之 間還設(shè)置有一適配模塊13以及節(jié)目映射表緩存模塊14。其中,所述中間件模塊11向所述適配模塊13發(fā)送參數(shù),所述適配模塊13獲取所 述中間件模塊11發(fā)送的參數(shù)的類型,根據(jù)所述參數(shù)的類型在所述緩存模塊14中組成完整 的節(jié)目映射表,所述節(jié)目映射表對(duì)應(yīng)所述參數(shù)。所述適配模塊13將完整的節(jié)目映射表發(fā)送至所述CA模塊12,由所述CA模塊12 進(jìn)行解擾。其中,所述系統(tǒng)包括判斷啟動(dòng)模塊15,判斷啟動(dòng)模塊15判斷所述所述中間件模塊 11是否啟動(dòng),若所述中間件模塊11啟動(dòng),所述適配模塊13根據(jù)所述參數(shù)的類型在所述節(jié)目 映射表緩存模塊14中組成完整的節(jié)目映射表。其中,所述判斷啟動(dòng)模塊15還判斷所述中間件模塊11運(yùn)行過(guò)程中頻點(diǎn)是否發(fā)生 跳轉(zhuǎn),若所述中間件模塊11運(yùn)行過(guò)程中頻點(diǎn)發(fā)生跳轉(zhuǎn),所述適配模塊13根據(jù)所述參數(shù)的類 型在所述節(jié)目映射表緩存模塊14中組成完整的節(jié)目映射表。其中,所述判斷啟動(dòng)模塊15還判斷當(dāng)前頻點(diǎn)下的節(jié)目關(guān)聯(lián)表版本是否發(fā)生變化, 若當(dāng)前頻點(diǎn)下的節(jié)目關(guān)聯(lián)表版本發(fā)生變化,所述適配模塊13根據(jù)所述參數(shù)的類型在所述 節(jié)目映射表緩存模塊14中組成完整的節(jié)目映射表,其中,頻點(diǎn)一一對(duì)應(yīng)節(jié)目關(guān)聯(lián)表。其中,所述節(jié)目映射表緩存模塊14在未接收到適配模塊發(fā)來(lái)的參數(shù)時(shí),按照每個(gè) 節(jié)目映射表的先后順序進(jìn)行接收;在接收到適配模塊發(fā)來(lái)的參數(shù)時(shí),優(yōu)選處理所述參數(shù)對(duì) 應(yīng)的節(jié)目關(guān)聯(lián)表。其中,所述節(jié)目映射表緩存模塊14存儲(chǔ)中間件模塊在運(yùn)行期間需要的不同頻點(diǎn) 下所有節(jié)目的節(jié)目關(guān)聯(lián)表,對(duì)于已存儲(chǔ)的節(jié)目關(guān)聯(lián)表不再重復(fù)接收。其中,所述適配模塊13據(jù)所述參數(shù)的類型在所述緩存模塊14中組成完整的節(jié)目 映射表時(shí),還判斷接收所述節(jié)目映射表的時(shí)間是否大于系統(tǒng)設(shè)置的閾值,若大于,則終止對(duì) 所述節(jié)目映射表的接收。更具體的工作過(guò)程請(qǐng)參閱下文描述。本發(fā)明實(shí)施例第二實(shí)施例提供的數(shù)字電視的數(shù)據(jù)處理方法的基本流程,請(qǐng)參閱圖 2。
在步驟S201中,提供中間件模塊、機(jī)頂盒端的CA模塊,以及所述中間件模塊與所 述CA模塊之間的適配模塊和節(jié)目映射表緩存模塊。在步驟S202中,中間件模塊向所述適配模塊發(fā)送參數(shù)。在步驟S203中,適配模塊獲取中間件模塊發(fā)送的參數(shù)的類型,根據(jù)參數(shù)的類型在 所述緩存模塊中組成完整的節(jié)目映射表,其中,節(jié)目映射表對(duì)應(yīng)參數(shù)。在步驟S204中,適配模塊將完整的節(jié)目映射表發(fā)送至CA模塊,由CA模塊進(jìn)行解 擾。其中,所述適配模塊根據(jù)所述參數(shù)的類型在所述緩存模塊中組成完整的節(jié)目映射 表的步驟之前,還判斷所述中間件模塊是否啟動(dòng),若所述中間件模塊啟動(dòng),則所述適配模塊 根據(jù)所述參數(shù)的類型在所述緩存模塊中組成完整的節(jié)目映射表。優(yōu)選的,所述適配模塊根據(jù)所述參數(shù)的類型在所述緩存模塊中組成完整的節(jié)目映 射表的步驟之前,還判斷所述中間件模塊運(yùn)行過(guò)程中頻點(diǎn)是否發(fā)生跳轉(zhuǎn),若所述中間件模 塊運(yùn)行過(guò)程中頻點(diǎn)發(fā)生跳轉(zhuǎn),則所述適配模塊根據(jù)所述參數(shù)的類型在所述緩存模塊中組成 完整的節(jié)目映射表。優(yōu)選的,所述適配模塊根據(jù)所述參數(shù)的類型在所述緩存模塊中組成完整的節(jié)目映 射表的步驟之前,還判斷當(dāng)前頻點(diǎn)下的節(jié)目關(guān)聯(lián)表版本是否發(fā)生變化,若發(fā)生變化,則所述 適配模塊根據(jù)所述參數(shù)的類型在所述緩存模塊中組成完整的節(jié)目映射表,其中,頻點(diǎn)一一 對(duì)應(yīng)節(jié)目關(guān)聯(lián)表。其中,適配模塊根據(jù)參數(shù)的類型在緩存模塊中組成完整的節(jié)目映射表的步驟之 前,所述方法還包括所述節(jié)目映射表緩存模塊,在未接收到適配模塊發(fā)來(lái)的參數(shù)時(shí),按照每個(gè)節(jié)目映 射表的先后順序進(jìn)行接收;在接收到適配模塊發(fā)來(lái)的參數(shù)時(shí),優(yōu)選處理所述參數(shù)對(duì)應(yīng)的節(jié)目關(guān)聯(lián)表。其中,所述適配模塊根據(jù)所述參數(shù)的類型在所述緩存模塊中組成完整的節(jié)目映射 表時(shí),所述節(jié)目映射表緩存模塊,還存儲(chǔ)中間件模塊在運(yùn)行期間需要的不同頻點(diǎn)下所有節(jié) 目的節(jié)目關(guān)聯(lián)表,其中,已存儲(chǔ)的節(jié)目關(guān)聯(lián)表不再重復(fù)接收。其中,所述適配模塊據(jù)所述參數(shù)的類型在所述緩存模塊中組成完整的節(jié)目映射表 時(shí),還包括以下步驟判斷接收所述節(jié)目映射表的時(shí)間是否大于系統(tǒng)設(shè)置的閾值,若大于,則終止對(duì)所 述節(jié)目映射表的接收。本發(fā)明實(shí)施例還提供了 一種利用上述數(shù)據(jù)處理方法的數(shù)字電視終端,尤其是一種 機(jī)頂盒,此處不再詳述。請(qǐng)參閱圖3,圖3為本發(fā)明實(shí)施例提供的數(shù)字電視的數(shù)據(jù)處理方法的詳細(xì)流程。為了便于確定不同中間件模塊傳遞給機(jī)頂盒的參數(shù)類型,本發(fā)明實(shí)施例采用如下 幾種簡(jiǎn)化的字符串進(jìn)行表示(a) Info = AudioPid. VideoPid. PcrPid ;(b) Info = AudioPid. VideoPid. PcrPid. AudioEcmPid. VideoEcmPid ;(c) Info = TsId. ServiceId ;(d) Info = PmtPid ;
(e) Info = ServicePmt。基于上述字符串形式,以下通過(guò)中間件模塊定義的音、視頻播放接口的適配流程 來(lái)具體說(shuō)明適配模塊的工作原理。其中,本發(fā)明實(shí)施例的下述方法和步驟全部在中間件模 塊定義的音、視頻節(jié)目播放接口內(nèi)完成。步驟S301,向節(jié)目映射表(PMT)緩存模塊發(fā)送啟動(dòng)消息,通知PMT緩存模塊創(chuàng)建并 啟動(dòng),轉(zhuǎn)入步驟S302 ;步驟S302,讀取中間件模塊通過(guò)音視頻播放接口函數(shù)傳遞過(guò)來(lái)的參數(shù),判定所述 參數(shù)的類型,若為(a),則轉(zhuǎn)入步驟S303 ;若為(b),則轉(zhuǎn)入步驟S304 ;若為(c),則轉(zhuǎn)入步驟 S305 ;若為(d),則轉(zhuǎn)入步驟S306 ;若為(e),則轉(zhuǎn)入步驟S307 ;其他情況則提示參數(shù)無(wú)效, 轉(zhuǎn)入步驟S310 ;步驟S303、將AudioPid、VideoPid、PcrPid作為匹配目標(biāo),設(shè)定閾值為3秒,查詢 PMT緩存模塊搜索與之匹配的PMT,若在3秒內(nèi)找到,則轉(zhuǎn)入步驟S308 ;當(dāng)查詢時(shí)間超過(guò)3秒 時(shí),或者沒(méi)有找到,則提示PMT獲取失敗,并轉(zhuǎn)入步驟S310 ;步驟S304、根據(jù) AudioPid、VideoPid、PcrPicU AudioEcmPid 以及 VideoEcmPid,構(gòu) 造一個(gè)PMT (具體構(gòu)造方法請(qǐng)參閱圖5以及針對(duì)圖5的詳細(xì)描述),并向PMT緩存模塊發(fā)送 攜帶PMT內(nèi)容的消息,通知PMT緩存模塊將當(dāng)前PMT進(jìn)行注入保存,轉(zhuǎn)入步驟S308 ;步驟S305、向PMT緩存模塊發(fā)送攜帶krvicelDJsId的消息,通知PMT緩存模塊 優(yōu)先獲取與當(dāng)前krvicelD和TsId相對(duì)應(yīng)的PMT,設(shè)定閾值為3秒,將krviceID、TsId作 為匹配目標(biāo),查詢PMT緩存模塊中的RiitBuffer,若在3秒內(nèi)查詢不為空,則轉(zhuǎn)入步驟S308 ; 若用時(shí)超過(guò)3秒,或者為空,則提示PMT獲取失敗,轉(zhuǎn)入步驟S310 ;步驟S306、向PMT緩存模塊發(fā)送攜帶PMTPID的消息,通知PMT緩存模塊優(yōu)先獲取 與當(dāng)前PMTPID相對(duì)應(yīng)的PMT,設(shè)定閾值為3秒,將PMTPID作為匹配目標(biāo),查詢PMT緩存模塊 中的RiitBuffer,若在3秒內(nèi)查詢不為空,則轉(zhuǎn)入步驟S308 ;若超過(guò)3秒,或者為空,則提示 PMT獲取失敗,并轉(zhuǎn)入步驟S310 ;步驟S307、讀取中間件模塊通過(guò)節(jié)目播放函數(shù)傳遞過(guò)來(lái)的PMT,并向PMT緩存模塊 發(fā)送攜帶PMT的消息,通知PMT緩存模塊將當(dāng)前PMT進(jìn)行注入保存,轉(zhuǎn)入步驟S308 ;步驟S308、將獲取到的PMT通過(guò)CA模塊提供的以PMT作為輸入?yún)?shù)的接口函數(shù)傳 遞給盒端CA模塊,請(qǐng)求CA模塊啟動(dòng)解擾;步驟S309、設(shè)定音頻PID、視頻PID、PCR PID,并啟動(dòng)解碼器,之后,CA模塊開始工 作,加密節(jié)目正常播出。步驟S310、結(jié)束返回。在具體實(shí)施過(guò)程中,通常數(shù)字電視傳輸網(wǎng)中單個(gè)頻點(diǎn)下包含若干個(gè)節(jié)目,傳送流 以0. 1 0. 5秒的時(shí)間間隔循環(huán)傳輸一張PAT表,該P(yáng)AT表包含了每個(gè)節(jié)目與其對(duì)應(yīng)的PMT PID之間的映射關(guān)系,以0. 1 0. 5秒的時(shí)間間隔循環(huán)傳輸每個(gè)節(jié)目所對(duì)應(yīng)的PMT表,并通 過(guò)PAT表第六個(gè)字節(jié)攜帶的版本號(hào)的變化情況,通知終端機(jī)頂盒前端環(huán)境對(duì)當(dāng)前頻點(diǎn)下所 傳送的節(jié)目PMT是否發(fā)生變更和調(diào)整。由此可見,PMT表的接收是需要一個(gè)時(shí)間過(guò)程的,而 且中間件模塊所在的頻點(diǎn)中包含的節(jié)目和業(yè)務(wù)的個(gè)數(shù)越多,獲取到這些節(jié)目和業(yè)務(wù)的PMT 表的接收時(shí)間就會(huì)越長(zhǎng);并且通過(guò)對(duì)PAT版本號(hào)的監(jiān)測(cè),可以得知當(dāng)前頻點(diǎn)下的節(jié)目PMT的 更新情況,為了使得各類中間件模塊系統(tǒng)在其啟動(dòng)時(shí)刻和整個(gè)運(yùn)行過(guò)程中在請(qǐng)求終端播放加密節(jié)目時(shí),中間件模塊能夠?yàn)橹焖俚墨@取PMT并傳遞給盒端CA解擾模塊,以達(dá)到快速 啟動(dòng)CA解擾的目的,提高中間件模塊系統(tǒng)內(nèi)加密業(yè)務(wù)和節(jié)目的切換速度,并確保所請(qǐng)求播 放的節(jié)目每個(gè)時(shí)刻都能獲取到正確的PMT,本發(fā)明設(shè)計(jì)了一個(gè)PMT緩存模塊。本發(fā)明實(shí)施例提供的PMT緩存模塊,主要包括有以下幾個(gè)特征(1)、將PMT接收以及再接收的時(shí)間消耗控制在中間件模塊系統(tǒng)啟動(dòng)時(shí)或者中間 件模塊運(yùn)行過(guò)程中頻點(diǎn)發(fā)生跳轉(zhuǎn)時(shí)或者終端監(jiān)測(cè)到當(dāng)前頻點(diǎn)下的PAT版本發(fā)生變化時(shí),只 有檢測(cè)到這些情況發(fā)生時(shí),才啟動(dòng)緩存模塊對(duì)PMT的接收。(2)、PMT緩存模塊將存儲(chǔ)中間件模塊系統(tǒng)在整個(gè)運(yùn)行期間需要的每個(gè)不同頻點(diǎn)下 所有節(jié)目的PMT,并控制同一個(gè)頻點(diǎn)下相同節(jié)目和業(yè)務(wù)的PMT不能進(jìn)行重復(fù)接收。(3)、在中間件模塊系統(tǒng)啟動(dòng)時(shí)或者中間件模塊系統(tǒng)運(yùn)行期間頻點(diǎn)發(fā)生跳轉(zhuǎn)時(shí)或 者終端監(jiān)測(cè)到當(dāng)前頻點(diǎn)下的PAT版本發(fā)生變化時(shí),當(dāng)PMT緩存模塊在沒(méi)有接收到適配模塊 發(fā)來(lái)的消息時(shí),將按照每個(gè)節(jié)目的PMT PID在PAT中所描述的先后順序,依次為其接收PMT ; 當(dāng)PMT緩存模塊接收到適配模塊發(fā)來(lái)的消息時(shí),緩存模塊會(huì)立刻打破正常的接收順序,根 據(jù)得到的消息內(nèi)容,從PAT中找到與消息內(nèi)容對(duì)應(yīng)的PMT PID,優(yōu)先為適配模塊正在請(qǐng)求的 PMT安排接收;當(dāng)PMT緩存模塊檢測(cè)到適配模塊發(fā)來(lái)的消息攜帶PMT內(nèi)容時(shí),PMT緩存模塊 將會(huì)直接采用當(dāng)前PMT,而不再為與之對(duì)應(yīng)節(jié)目重復(fù)接收該P(yáng)MT。(4)、在中間件模塊系統(tǒng)運(yùn)行期間,PMT緩存模塊將自身收到的PMT或者中間件模 塊發(fā)送過(guò)來(lái)的PMT全部保存起來(lái),以方便中間件模塊的隨時(shí)查詢和調(diào)用。通過(guò)運(yùn)用PMT緩存模塊的上述設(shè)計(jì)機(jī)制,為中間件模塊PMT的快速獲取和CA模塊 的快速啟動(dòng)提供了保障,并為中間件模塊播放加密節(jié)目時(shí)對(duì)PMT的即時(shí)獲取提供了條件, 確保了加密節(jié)目PMT的即時(shí)性和準(zhǔn)確性。請(qǐng)參閱圖4,圖4所示的表格為PMT緩存模塊元素信息構(gòu)成列表。本發(fā)明實(shí)施例將圖4所示的表格的內(nèi)容作為成員定義一個(gè)結(jié)構(gòu)體,并采用該結(jié)構(gòu) 體申請(qǐng)一塊內(nèi)存,將此塊內(nèi)存作為中間件模塊當(dāng)前頻點(diǎn)下獲取PMT的緩存模塊。其中,內(nèi)存 的大小根據(jù)中間件模塊運(yùn)行頻點(diǎn)中所傳送的節(jié)目和業(yè)務(wù)個(gè)數(shù)而定,內(nèi)存的空間在中間件模 塊運(yùn)行期間根據(jù)頻點(diǎn)跳轉(zhuǎn)情況進(jìn)行動(dòng)態(tài)分配,當(dāng)中間件模塊系統(tǒng)退出時(shí)將其全部釋放?;谏鲜霾呗?,請(qǐng)參閱圖5,圖5為本發(fā)明實(shí)施例PMT緩存模塊的具體實(shí)施方法流 程。步驟S501、創(chuàng)建一消息隊(duì)列,通過(guò)消息發(fā)送機(jī)制完成適配模塊與PMT緩存模塊的 通信,轉(zhuǎn)入步驟S502。步驟S502、查詢消息隊(duì)列,當(dāng)PMT緩存模塊有啟動(dòng)消息到來(lái)時(shí),則執(zhí)行步驟S503, 否則執(zhí)行步驟S502。步驟S503、鎖定中間件模塊運(yùn)行的當(dāng)前頻點(diǎn),創(chuàng)建PAT解復(fù)用通道,并將PAT的 PID 0X00設(shè)入解復(fù)用通道,啟動(dòng)解復(fù)用通道接收PAT,轉(zhuǎn)入步驟S504。步驟S504、分析PAT,從中得到當(dāng)前頻點(diǎn)下所傳送的節(jié)目和業(yè)務(wù)總數(shù)TotalNum, 采用標(biāo)C函數(shù)sizeof計(jì)算出圖4所示的表格中結(jié)構(gòu)體暫用的內(nèi)存空間大小M,然后以 TotalNumXM作為空間大小分配一塊內(nèi)存作為當(dāng)前頻點(diǎn)下所有節(jié)目和業(yè)務(wù)的PMT緩存模 塊,轉(zhuǎn)入步驟S505。步驟S505、分析PAT,得到當(dāng)前頻點(diǎn)所在的TSID和傳送的所有節(jié)目的krvicelD,以及每個(gè)ServiceID所對(duì)應(yīng)的PMT的PID,并依次將其填充到緩存模塊中的TSID、 ServiceID以及PMTPID的成員中,轉(zhuǎn)入步驟S506。步驟S506、查詢消息隊(duì)列,當(dāng)攜帶TSID和krviceld的消息到來(lái)時(shí),則執(zhí)行步驟 S509 ;當(dāng)攜帶PMTPID的消息到來(lái)時(shí),則執(zhí)行步驟S5010 ;當(dāng)攜帶PMT內(nèi)容的消息到來(lái)時(shí),則 執(zhí)行步驟S5011,否則執(zhí)行步驟S5012。步驟S507、分析PAT,得到PAT的版本號(hào),檢測(cè)是否發(fā)生變化,若是則將當(dāng)前頻點(diǎn)下 PMT緩存模塊中的所有成員全部置0,轉(zhuǎn)入步驟S505 ;否則,轉(zhuǎn)入步驟S508。步驟S508、檢測(cè)中間件模塊所運(yùn)行的頻點(diǎn)是否發(fā)生跳轉(zhuǎn),若是,則執(zhí)行步驟S503, 否則執(zhí)行步驟S506。步驟S509、將消息中的TSID和ServiceId作為匹配目標(biāo)查詢PMT緩存模塊,當(dāng) 與之對(duì)應(yīng)的RntBuffer內(nèi)容為空時(shí),則根據(jù)緩存模塊中與之對(duì)應(yīng)的PMT的PID,創(chuàng)建并 設(shè)定PMT解復(fù)用通道,啟動(dòng)PMT的接收,并將得到的PMT存儲(chǔ)到緩存模塊中當(dāng)前TsId和 ServiceID所對(duì)應(yīng)的PmtBuffer中;當(dāng)PmtBuffer不為空時(shí),不需要啟動(dòng)PMT接收過(guò)程,轉(zhuǎn) 入步驟S506。步驟S510、將消息中的PMTPID作為匹配目標(biāo)查詢PMT緩存模塊,當(dāng)與之對(duì)應(yīng)的 PmtBuffer內(nèi)容為空時(shí),則根據(jù)緩存模塊中與之對(duì)應(yīng)的PMT表的PID,創(chuàng)建并設(shè)定PMT解復(fù) 用通道,啟動(dòng)PMT表的接收,并將得到的PMT表存儲(chǔ)到緩存模塊中當(dāng)前PMTPID所對(duì)應(yīng)的 PmtBuffer中;當(dāng)RntBuffer不為空時(shí),不需要啟動(dòng)PMT接收過(guò)程,轉(zhuǎn)入步驟S506。步驟S511、分析通過(guò)消息傳遞過(guò)來(lái)的PMT內(nèi)容,從中得到%1^化610,WkrviceID 作為匹配目標(biāo)查詢PMT緩存模塊,找到與之對(duì)應(yīng)的存儲(chǔ)PMT的位置RntBuffer,并將PMT填 充到該位置,轉(zhuǎn)入步驟S506。步驟S512、按照節(jié)目的PMT在PAT中所描述的先后順序依次查詢緩存模塊中下一 個(gè)krvicelD所對(duì)應(yīng)的PmtBuffer,當(dāng)PmtBuffer為空時(shí),則根據(jù)與其對(duì)應(yīng)的ServiceID所 對(duì)應(yīng)的PMT PID,創(chuàng)建并設(shè)定PMT解復(fù)用通道,設(shè)置超時(shí)為2秒,啟動(dòng)PMT的接收。若接收成 功,則將得到的PMT存儲(chǔ)到緩存模塊中與之對(duì)應(yīng)的RntBuffer中,并轉(zhuǎn)入步驟S506,若接收 失敗,則直接轉(zhuǎn)入步驟S506 ;當(dāng)RntBuffer不為空時(shí),不需要啟動(dòng)PMT接收過(guò)程,直接轉(zhuǎn)入 步驟S506。當(dāng)中間件模塊通過(guò)音、視頻播放接口函數(shù)傳遞過(guò)來(lái)的參數(shù)類型為(b)時(shí),本發(fā)明 將采用參數(shù)中的AudioPicU VideoPicU AudioEcmPicU VideoEcmPid的信息通過(guò)直接構(gòu)造的 方法形成一個(gè)PMT,提供給盒端CA模塊,這樣便可以節(jié)省從傳送流中接收PMT的時(shí)間消耗, 從而以最快的速度為中間件模塊啟動(dòng)盒端CA解擾模塊。通過(guò)分析PMT,我們知道,標(biāo)準(zhǔn)的 PMT由12個(gè)字節(jié)的表頭、若干個(gè)基本流描述子和CA描述子共同構(gòu)成。其中表頭的第一個(gè) 字節(jié)為PMT約定的TableID號(hào)0x02,第二個(gè)字節(jié)的低四位和第三個(gè)字節(jié)為PMT的長(zhǎng)度,從 第13個(gè)字節(jié)開始存放基本流描述子和CA描述子的內(nèi)容,最后4個(gè)字節(jié)為CRC校驗(yàn)值。基 本流描述子包括了每個(gè)節(jié)目的類型、音頻PID、視頻PID以及該描述子的長(zhǎng)度,CA描述子包 括了 PMT約定的加密標(biāo)識(shí)0x09、CA廠商ID、加密節(jié)目的ECM PID以及CA描述子的長(zhǎng)度。請(qǐng)參閱圖6,圖6為音、視頻節(jié)目PMT的構(gòu)造方法的流程。步驟S601、聲明一個(gè)類型為unsigned char、長(zhǎng)度為10 的數(shù)組uRntBuf并初始 化為0x00,用于存放構(gòu)造的PMT內(nèi)容,聲明一個(gè)類型為unsigned char*的指針pftntBuf,同時(shí)指向UftIitBuf,聲明一個(gè)類型為unsigned short的變量nByteCnt,并賦初值為0,轉(zhuǎn)入步 驟 S602。步驟S602、將uRntBuf的第一個(gè)字節(jié)填充為0x02 (標(biāo)準(zhǔn)PMT約定的TableID),并 將指針PftiitBuf偏移12個(gè)字節(jié),將nByteCnt增加12,轉(zhuǎn)入步驟S603。步驟S603、將0x02 (標(biāo)準(zhǔn)PMT約定的視頻節(jié)目類型)賦值給pRntBuf
,將中間件 模塊傳遞過(guò)來(lái)的雙字節(jié)視頻PID的高8位取出來(lái)賦值給PPmtBuf [1],將雙字節(jié)視頻PID的 低8位取出來(lái)賦值給pRiitBuf [2],將視頻節(jié)目的CA描述子的長(zhǎng)度0x06賦值給pRntBuf [4], 將指針PftiitBuf偏移5個(gè)字節(jié),將nByteCnt增加5,轉(zhuǎn)入步驟S604。步驟S604、將0x09 (標(biāo)準(zhǔn)PMT約定的CA描述子的標(biāo)識(shí))賦值給pRntBuf
,將視 頻ECM信息描述子的長(zhǎng)度0x04賦值給pftiitBuf [1],根據(jù)機(jī)頂盒使用的CA種類,得到雙字節(jié) CA廠商ID值,將CA廠商ID的高8位取出來(lái)賦值給pftiitBuf [2],將CA廠商ID的低8位取 出來(lái)賦值給PftiitBuf [3],將中間件模塊傳遞過(guò)來(lái)的雙字節(jié)視頻Vide0EcmPid的高8位取出 來(lái)賦值給PftiitBuf W] JfVideoEcmPid的低8位取出來(lái)賦值給pftntBuf [5],將指針pftntBuf 偏移6個(gè)字節(jié),將nByteCnt增加6,轉(zhuǎn)入步驟S605。步驟S605、將0x04 (標(biāo)準(zhǔn)PMT約定的音頻節(jié)目類型)賦值給pRntBuf
,將中間件 模塊傳遞過(guò)來(lái)的雙字節(jié)音頻PID的高8位取出來(lái)賦值給pPmtBuf[l],將雙字節(jié)音頻PID的 低8位取出來(lái)賦值給pRiitBuf [2],將音頻節(jié)目的CA描述子的長(zhǎng)度0x06賦值給pRntBuf [4], 將指針PftiitBuf偏移5個(gè)字節(jié),將nByteCnt增加5,轉(zhuǎn)入步驟S606。 步驟S606、將0x09 (標(biāo)準(zhǔn)PMT約定的CA描述子的標(biāo)識(shí))賦值給pRntBuf
,將音 頻ECM信息描述子的長(zhǎng)度0x04賦值給pftiitBuf [1],根據(jù)機(jī)頂盒使用的CA種類,得到雙字節(jié) CA廠商ID值,將CA廠商ID的高8位取出來(lái)賦值給pftiitBuf [2],將CA廠商ID的低8位取 出來(lái)賦值給PftiitBuf [3],將中間件模塊傳遞過(guò)來(lái)的雙字節(jié)音頻AudioEcmPid的高8位取出 來(lái)賦值給PftiitBuf W] JfAudioEcmPid的低8位取出來(lái)賦值給pftntBuf [5],將指針pftntBuf 偏移6個(gè)字節(jié),將nByteCnt增加6,轉(zhuǎn)入步驟S607。步驟S607、將nByteCnt增加4 (PMT末尾CRC校驗(yàn)位的字節(jié)個(gè)數(shù)),減少3 (PMT表頭 的前三個(gè)字節(jié)),由此計(jì)算得到PMT的長(zhǎng)度,將nByteCnt的高8位取出賦值給uftiitBuf [1], 將nByteCnt的低8位取出賦值給uftntBuf [2]。本發(fā)明實(shí)施例通過(guò)在中間件模塊與CA模塊之間設(shè)置適配模塊和節(jié)目映射表緩存 模塊,所述適配模塊獲取所述中間件模塊發(fā)送的參數(shù)的類型,根據(jù)所述參數(shù)的類型在所述 緩存模塊中組成完整的節(jié)目映射表發(fā)送給CA模塊,由所述CA模塊進(jìn)行解擾,極大的降低了 機(jī)頂盒CA模塊與中間件模塊的耦合性,減少了開發(fā)人員維護(hù)CA模塊的工作量,提高了各類 中間件移植工作的效率。以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精 神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
1.一種數(shù)字電視的數(shù)據(jù)處理系統(tǒng),其特征在于,所述系統(tǒng)包括中間件模塊、CA模塊,所述中間件模塊與所述CA模塊之間還設(shè)置有一適 配模塊以及節(jié)目映射表緩存模塊,其中,所述中間件模塊用于向所述適配模塊發(fā)送參數(shù);所述適配模塊用于獲取所述中間件模塊發(fā)送的參數(shù)的類型,根據(jù)所述參數(shù)的類型在所 述節(jié)目映射表緩存模塊中組成完整的節(jié)目映射表,所述節(jié)目映射表對(duì)應(yīng)所述參數(shù);所述適配模塊還用于將完整的節(jié)目映射表發(fā)送至所述CA模塊,由所述CA模塊進(jìn)行解擾。
2.如權(quán)利要求1所述的數(shù)字電視的數(shù)據(jù)處理系統(tǒng),其特征在于,所述系統(tǒng)包括判斷啟動(dòng)模塊,用于判斷所述所述中間件模塊是否啟動(dòng),若所述中間件 模塊啟動(dòng),所述適配模塊根據(jù)所述參數(shù)的類型在所述節(jié)目映射表緩存模塊中組成完整的節(jié) 目映射表。
3.如權(quán)利要求2所述的數(shù)字電視的數(shù)據(jù)處理系統(tǒng),其特征在于,所述判斷啟動(dòng)模塊,還 用于判斷所述中間件模塊運(yùn)行過(guò)程中頻點(diǎn)是否發(fā)生跳轉(zhuǎn),若所述中間件模塊運(yùn)行過(guò)程中頻 點(diǎn)發(fā)生跳轉(zhuǎn),所述適配模塊根據(jù)所述參數(shù)的類型在所述節(jié)目映射表緩存模塊中組成完整的 節(jié)目映射表。
4.如權(quán)利要求2所述的數(shù)字電視的數(shù)據(jù)處理系統(tǒng),其特征在于,所述判斷啟動(dòng)模塊,還 用于判斷當(dāng)前頻點(diǎn)下的節(jié)目關(guān)聯(lián)表版本是否發(fā)生變化,若當(dāng)前頻點(diǎn)下的節(jié)目關(guān)聯(lián)表版本發(fā) 生變化,所述適配模塊根據(jù)所述參數(shù)的類型在所述節(jié)目映射表緩存模塊中組成完整的節(jié)目 映射表,其中,頻點(diǎn)一一對(duì)應(yīng)節(jié)目關(guān)聯(lián)表。
5.如權(quán)利要求2、3或4所述的數(shù)字電視的數(shù)據(jù)處理系統(tǒng),其特征在于,所述節(jié)目映射 表緩存模塊,在未接收到適配模塊發(fā)來(lái)的參數(shù)時(shí),按照每個(gè)節(jié)目映射表的先后順序進(jìn)行接 收;在接收到適配模塊發(fā)來(lái)的參數(shù)時(shí),優(yōu)選處理所述參數(shù)對(duì)應(yīng)的節(jié)目關(guān)聯(lián)表。
6.如權(quán)利要求1所述的數(shù)字電視的數(shù)據(jù)處理系統(tǒng),其特征在于,所述節(jié)目映射表緩存 模塊,還用于存儲(chǔ)中間件模塊在運(yùn)行期間需要的不同頻點(diǎn)下所有節(jié)目的節(jié)目關(guān)聯(lián)表,其中, 已存儲(chǔ)的節(jié)目關(guān)聯(lián)表不再重復(fù)接收。
7.如權(quán)利要求1所述的數(shù)字電視的數(shù)據(jù)處理系統(tǒng),其特征在于,所述適配模塊據(jù)所述 參數(shù)的類型在所述節(jié)目映射表緩存模塊中組成完整的節(jié)目映射表的過(guò)程中,還判斷接收所 述節(jié)目映射表的時(shí)間是否大于系統(tǒng)設(shè)置的閾值,若大于,則終止對(duì)所述節(jié)目映射表的接收。
8.一種數(shù)字電視的數(shù)據(jù)處理方法,其特征在于,預(yù)先設(shè)置中間件模塊與CA模塊之間的 適配模塊和節(jié)目映射表緩存模塊,所述方法包括以下步驟所述中間件模塊向所述適配模塊發(fā)送參數(shù);所述適配模塊獲取所述中間件模塊發(fā)送的參數(shù)的類型,根據(jù)所述參數(shù)的類型在所述緩 存模塊中組成完整的節(jié)目映射表,其中,所述節(jié)目映射表對(duì)應(yīng)所述參數(shù);所述適配模塊將完整的節(jié)目映射表發(fā)送至所述CA模塊,由所述CA模塊進(jìn)行解擾。
9.如權(quán)利要求8所述的數(shù)字電視的數(shù)據(jù)處理方法,其特征在于,所述適配模塊根據(jù)所 述參數(shù)的類型在所述緩存模塊中組成完整的節(jié)目映射表的步驟之前,所述方法還包括以下 步驟判斷所述中間件模塊是否啟動(dòng),若所述中間件模塊啟動(dòng),則所述適配模塊根據(jù)所述參 數(shù)的類型在所述緩存模塊中組成完整的節(jié)目映射表。
10.如權(quán)利要求8所述的數(shù)字電視的數(shù)據(jù)處理方法,其特征在于,所述適配模塊根據(jù)所 述參數(shù)的類型在所述緩存模塊中組成完整的節(jié)目映射表的步驟之前,所述方法還包括以下 步驟判斷所述中間件模塊運(yùn)行過(guò)程中頻點(diǎn)是否發(fā)生跳轉(zhuǎn),若所述中間件模塊運(yùn)行過(guò)程中頻 點(diǎn)發(fā)生跳轉(zhuǎn),則所述適配模塊根據(jù)所述參數(shù)的類型在所述緩存模塊中組成完整的節(jié)目映射表。
11.如權(quán)利要求8所述的數(shù)字電視的數(shù)據(jù)處理方法,其特征在于,所述適配模塊根據(jù)所 述參數(shù)的類型在所述緩存模塊中組成完整的節(jié)目映射表的步驟之前,所述方法還包括以下 步驟;判斷當(dāng)前頻點(diǎn)下的節(jié)目關(guān)聯(lián)表版本是否發(fā)生變化,若發(fā)生變化,則所述適配模塊根據(jù) 所述參數(shù)的類型在所述緩存模塊中組成完整的節(jié)目映射表,其中,頻點(diǎn)一一對(duì)應(yīng)節(jié)目關(guān)聯(lián)表。
12.如權(quán)利要求8所述的數(shù)字電視的數(shù)據(jù)處理方法,其特征在于,所述適配模塊根據(jù)所 述參數(shù)的類型在所述緩存模塊中組成完整的節(jié)目映射表的步驟之前,所述方法還包括所述節(jié)目映射表緩存模塊,在未接收到適配模塊發(fā)來(lái)的參數(shù)時(shí),按照每個(gè)節(jié)目映射表 的先后順序進(jìn)行接收;在接收到適配模塊發(fā)來(lái)的參數(shù)時(shí),優(yōu)選處理所述參數(shù)對(duì)應(yīng)的節(jié)目關(guān)聯(lián)表。
13.如權(quán)利要求6所述的數(shù)字電視的數(shù)據(jù)處理方法,其特征在于,所述適配模塊根據(jù)所 述參數(shù)的類型在所述緩存模塊中組成完整的節(jié)目映射表時(shí),所述節(jié)目映射表緩存模塊,還 存儲(chǔ)中間件模塊在運(yùn)行期間需要的不同頻點(diǎn)下所有節(jié)目的節(jié)目關(guān)聯(lián)表,其中,已存儲(chǔ)的節(jié) 目關(guān)聯(lián)表不再重復(fù)接收。
14.如權(quán)利要求6所述的數(shù)字電視的數(shù)據(jù)處理方法,其特征在于,所述適配模塊根據(jù)所 述參數(shù)的類型在所述緩存模塊中組成完整的節(jié)目映射表時(shí),還包括以下步驟判斷接收所述節(jié)目映射表的時(shí)間是否大于系統(tǒng)設(shè)置的閾值,若大于,則終止對(duì)所述節(jié) 目映射表的接收。
15.一種利用權(quán)利要求8至14所述的數(shù)據(jù)處理方法的數(shù)字電視終端。
全文摘要
本發(fā)明公開了一種數(shù)字電視的數(shù)據(jù)處理系統(tǒng)及方法、數(shù)字電視接收終端,所述系統(tǒng)包括中間件模塊,CA模塊,所述中間件模塊與所述CA模塊之間還設(shè)置有一適配模塊以及節(jié)目映射表緩存模塊,其中,所述中間件模塊,用于向所述適配模塊發(fā)送參數(shù);所述適配模塊,用于獲取所述中間件模塊發(fā)送的參數(shù)的類型,根據(jù)所述參數(shù)的類型在所述緩存模塊中組成完整的節(jié)目映射表,所述節(jié)目映射表對(duì)應(yīng)所述參數(shù);所述適配模塊,還用于將完整的節(jié)目映射表發(fā)送至所述CA模塊,由所述CA模塊進(jìn)行解擾。本發(fā)明實(shí)施例降低了CA模塊與中間件模塊的耦合性,減少了開發(fā)人員維護(hù)CA模塊的工作量,提高了各類中間件模塊移植工作的效率。
文檔編號(hào)H04N21/43GK102149013SQ201110076458
公開日2011年8月10日 申請(qǐng)日期2011年3月29日 優(yōu)先權(quán)日2011年3月29日
發(fā)明者田超 申請(qǐng)人:深圳創(chuàng)維數(shù)字技術(shù)股份有限公司