本發(fā)明涉及數(shù)字電視節(jié)目
技術領域:
:,尤其涉及一種防止前端私自修改數(shù)字電視節(jié)目碼流的方法及系統(tǒng)。
背景技術:
::目前,印度的數(shù)字前端市場比較混亂,在遇到印度項目時,會有這么一種現(xiàn)象,一些小村鎮(zhèn)的前端會私自添加一些節(jié)目或私自將加擾節(jié)目替換成清流,其具體做法為,從其它衛(wèi)星收取一些清流,并修改對應的pmt表,通過修改pmt表將一些節(jié)目偽裝成加擾節(jié)目,并將所述節(jié)目添加到前端,從而使所有用戶均可免費觀看這些私自添加的節(jié)目,這種行為嚴重損害了運營商的利益。然而,對于這種現(xiàn)象,運營商卻無法提供一種可有效檢測并防止此類現(xiàn)象發(fā)生的方法。因此,現(xiàn)有技術還有待于改進和發(fā)展。技術實現(xiàn)要素:鑒于上述現(xiàn)有技術的不足,本發(fā)明的目的在于提供一種防止前端私自修改數(shù)字電視節(jié)目碼流的方法和系統(tǒng),旨在解決現(xiàn)有技術缺少一種檢測并防止數(shù)字電視節(jié)目碼流被私自修改的問題。本發(fā)明的技術方案如下:一種防止前端私自修改數(shù)字電視節(jié)目碼流的方法,其中,包括步驟:對當前電視節(jié)目的pmt表進行分析,根據(jù)分析結果判斷當前電視節(jié)目是否是加擾節(jié)目;當當前電視節(jié)目是加擾節(jié)目時,檢測當前電視節(jié)目的ecm數(shù)據(jù)是否異常;當當前電視節(jié)目的ecm數(shù)據(jù)異常時,則關閉當前電視節(jié)目,并將當前電視節(jié)目的ecm數(shù)據(jù)進行異常標識,同時提醒用戶當前電視節(jié)目為私自添加節(jié)目。較佳地,所述的防止前端私自修改數(shù)字電視節(jié)目碼流的方法,其中,所述對當前電視節(jié)目的pmt表進行分析,根據(jù)分析結果判斷當前電視節(jié)目是否是加擾節(jié)目的步驟之前還包括:當機頂盒開機時,檢測電視節(jié)目的ecm數(shù)據(jù)是否存在異常標識,當存在時,則提醒用戶存在私自添加節(jié)目的現(xiàn)象。較佳地,所述的防止前端私自修改數(shù)字電視節(jié)目碼流的方法,其中,所述對當前電視節(jié)目的pmt表進行分析,根據(jù)分析結果判斷當前電視節(jié)目是否是加擾節(jié)目的步驟具體包括:對當前電視節(jié)目pmt表的數(shù)據(jù)結構進行分析;判斷當前電視節(jié)目pmt表的數(shù)據(jù)結構中是否定義了systemid及其對應的ecm和pid信息;當所述當前電視節(jié)目pmt表的數(shù)據(jù)結構中定義了systemid及其對應的ecm和pid信息時,則判定當前電視節(jié)目為加擾節(jié)目;當所述當前電視節(jié)目pmt表的數(shù)據(jù)結構中沒有定義systemid及其對應的ecm和pid信息時,則判定當前電視節(jié)目為非加擾節(jié)目。較佳地,所述的防止前端私自修改數(shù)字電視節(jié)目碼流的方法,其中,所述檢測當前電視節(jié)目的ecm數(shù)據(jù)是否異常的步驟具體包括:判斷是否在預定時長內接收到當前電視節(jié)目的ecm數(shù)據(jù);當在預定時長內沒有接收到當前電視節(jié)目的ecm數(shù)據(jù),則判定所述ecm數(shù)據(jù)異常;當在預定時長內接收到當前電視節(jié)目的ecm數(shù)據(jù),則判斷接收到的當前電視節(jié)目ecm數(shù)據(jù)的tableid是否發(fā)生變化,若未發(fā)生變化,則判定所述ecm數(shù)據(jù)異常,若發(fā)生變化,則判定所述ecm數(shù)據(jù)正常。較佳地,所述的防止前端私自修改數(shù)字電視節(jié)目碼流的方法,其中,還包括:當判定所述當前電視節(jié)目ecm數(shù)據(jù)正常時,則結束流程。一種防止前端私自修改數(shù)字電視節(jié)目碼流的系統(tǒng),其中,包括:分析模塊,用于對當前電視節(jié)目的pmt表進行分析,根據(jù)分析結果判斷當前電視節(jié)目是否是加擾節(jié)目;實時檢測模塊,用于當當前電視節(jié)目是加擾節(jié)目時,檢測當前電視節(jié)目的ecm數(shù)據(jù)是否異常;提醒模塊,用于當當前電視節(jié)目的ecm數(shù)據(jù)異常時,則關閉當前電視節(jié)目,并將當前電視節(jié)目的ecm數(shù)據(jù)進行異常標識,同時提醒用戶當前電視節(jié)目為私自添加節(jié)目。較佳地,所述的防止前端私自修改數(shù)字電視節(jié)目碼流的系統(tǒng),其中,還包括:開機檢測模塊,用于當機頂盒開機時,檢測電視節(jié)目的ecm數(shù)據(jù)是否存在異常標識,當存在時,則提醒用戶存在私自添加節(jié)目的現(xiàn)象。較佳地,所述的防止前端私自修改數(shù)字電視節(jié)目碼流的系統(tǒng),其中,所述分析模塊具體包括:分析單元,用于對當前電視節(jié)目pmt表的數(shù)據(jù)結構進行分析;第一判斷單元,用于判斷當前電視節(jié)目pmt表的數(shù)據(jù)結構中是否定義了systemid及其對應的ecm和pid信息;第一判定單元,用于當所述當前電視節(jié)目pmt表的數(shù)據(jù)結構中定義了systemid及其對應的ecm和pid信息時,則判定當前電視節(jié)目為加擾節(jié)目;當所述當前電視節(jié)目pmt表的數(shù)據(jù)結構中沒有定義systemid及其對應的ecm和pid信息時,則判定當前電視節(jié)目為非加擾節(jié)目。較佳地,所述的防止前端私自修改數(shù)字電視節(jié)目碼流的系統(tǒng),其中,所述實時檢測模塊具體包括:第二判斷單元,用于判斷是否在預定時長內接收到當前電視節(jié)目的ecm數(shù)據(jù);第二判定單元,用于當在預定時長內沒有接收到當前電視節(jié)目的ecm數(shù)據(jù),則判定所述ecm數(shù)據(jù)異常;第三判斷單元,用于當在預定時長內接收到當前電視節(jié)目的ecm數(shù)據(jù),則判斷接收到的當前電視節(jié)目ecm數(shù)據(jù)的tableid是否發(fā)生變化,若未發(fā)生變化,則判定所述ecm數(shù)據(jù)異常,若發(fā)生變化,則判定所述ecm數(shù)據(jù)正常。較佳地,所述的防止前端私自修改數(shù)字電視節(jié)目碼流的系統(tǒng),其中,還包括:結束模塊,用于當判定所述當前電視節(jié)目ecm數(shù)據(jù)正常時,則結束流程。有益效果:本發(fā)明通過對當前電視節(jié)目的pmt表進行分析,根據(jù)分析結果判斷當前電視節(jié)目是否是加擾節(jié)目,當是時,則進一步檢測當前電視節(jié)目的ecm數(shù)據(jù)是否異常,當所述ecm數(shù)據(jù)異常時,則關閉當前電視節(jié)目,并將當前電視節(jié)目的ecm數(shù)據(jù)進行異常標識,同時提醒用戶當前電視節(jié)目為私自添加節(jié)目,請拔打運營商電話。通過本發(fā)明可有效防止前端私自添加節(jié)目的現(xiàn)象發(fā)生,有效保護了運營商的利益。附圖說明圖1為本發(fā)明一種防止前端私自修改數(shù)字電視節(jié)目碼流的方法較佳實施例的流程圖;圖2為本發(fā)明一種防止前端私自修改數(shù)字電視節(jié)目碼流的系統(tǒng)較佳實施例的結構框圖。具體實施方式本發(fā)明提供一種防止前端私自修改數(shù)字電視節(jié)目碼流的方法及系統(tǒng),為使本發(fā)明的目的、技術方案及效果更加清楚、明確,以下對本發(fā)明進一步詳細說明。應當理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。請參閱圖1,圖1為本發(fā)明一種防止前端私自修改數(shù)字電視節(jié)目碼流的方法,其包括步驟:s100、對當前電視節(jié)目的pmt表進行分析,根據(jù)分析結果判斷當前電視節(jié)目是否是加擾節(jié)目;s200、當當前電視節(jié)目是加擾節(jié)目時,檢測當前電視節(jié)目的ecm數(shù)據(jù)是否異常;s300、當當前電視節(jié)目的ecm數(shù)據(jù)異常時,則關閉當前電視節(jié)目,并將當前電視節(jié)目的ecm數(shù)據(jù)進行異常標識,同時提醒用戶當前電視節(jié)目為私自添加節(jié)目。具體來說,通常數(shù)字電視機頂盒接收到的是一段段的碼流,所述碼流也被稱為ts流(transportstream,傳輸流),所述ts流是一種位流,它是由es流(elementarystream,基本碼流)分割成pes后復用而成的;所述碼流經過網絡傳輸被機頂盒接收到;較佳地,ts流是由一個個packet(包)構成的,每個包都是由packetheader(包頭)和packetdata(包數(shù)據(jù))組成的。其中packetheader指示了該packet是什么屬性的,并給出了該packetdata的數(shù)據(jù)的唯一網絡標識符pid。如果一個ts流中含有多個頻道,那么就會包含多個pid不同的pmt表(programmaptable,節(jié)目映射表),所述pmt表中包含的數(shù)據(jù)有:當前頻道中包含的所有video數(shù)據(jù)的pid;當前頻道中包含的所有audio數(shù)據(jù)的pid;和當前頻道關聯(lián)在一起的其他數(shù)據(jù)的pid(如數(shù)字廣播,數(shù)據(jù)通訊等的pid)。通過對pmt表進行處理,用戶就可以獲取頻道中所有的pid信息,如當前頻道包含多少個video、共多少個audio和其他數(shù)據(jù),還能知道每種數(shù)據(jù)對應的pid分別是什么。這樣如果用戶要選擇其中一個video和audio收看,那么只需要把要收看的節(jié)目的videopid和audiopid保存起來,在處理packet的時候進行過濾即可實現(xiàn)。然而,有些非法用戶通過從其他衛(wèi)星收取一些清流,并修改對應的pmt表,通過修改pmt表將改一些節(jié)目偽裝成加擾節(jié)目,添加到前端,但是這些節(jié)目并沒有真正的加擾,用戶無需向運營商付費即可觀看這些節(jié)目,這嚴重損害了運營商的利益。為解決上述問題,本發(fā)明通過對當前電視節(jié)目的pmt表進行分析,根據(jù)分析結果判斷當前電視節(jié)目是否是加擾節(jié)目,當是時,則進一步檢測當前電視節(jié)目的ecm數(shù)據(jù)是否異常,當所述ecm數(shù)據(jù)異常時,則關閉當前電視節(jié)目,并將當前電視節(jié)目的ecm數(shù)據(jù)進行異常標識,同時提醒用戶當前電視節(jié)目為私自添加節(jié)目,請拔打運營商電話。通過本發(fā)明可有效防止前端私自添加節(jié)目的現(xiàn)象發(fā)生,有效保護了運營商的利益。進一步,在本發(fā)明中,所述步驟s100具體包括:s110、對當前電視節(jié)目pmt表的數(shù)據(jù)結構進行分析;s120、判斷當前電視節(jié)目pmt表的數(shù)據(jù)結構中是否定義了systemid及其對應的ecm和pid信息;s130、當所述當前電視節(jié)目pmt表的數(shù)據(jù)結構中定義了systemid及其對應的ecm和pid信息時,則判定當前電視節(jié)目為加擾節(jié)目;當所述當前電視節(jié)目pmt表的數(shù)據(jù)結構中沒有定義systemid及其對應的ecm和pid信息時,則判定當前電視節(jié)目為非加擾節(jié)目。具體來說,mepg2(國際標準協(xié)議)定義了pmt表的數(shù)據(jù)結構,正常的節(jié)目所對應的pmt表是沒有descriptor()的,而在加擾節(jié)目中,descriptor()定義了systemid及其對應的ecm和pid信息,而所謂的偽加擾節(jié)目是指真正的音視頻流是沒有加擾的,但是其對應的pmt表是包含有效的descriptor()的?;诖耍景l(fā)明可通過對當前電視節(jié)目pmt表的數(shù)據(jù)結構進行分析,即通過判斷當前電視節(jié)目pmt表的數(shù)據(jù)結構中是否定義了systemid及其對應的ecm和pid信息,從而快速有效地判定當前電視節(jié)目是否為加擾節(jié)目。更進一步,所述步驟s200具體包括:s210、判斷是否在預定時長內接收到當前電視節(jié)目的ecm數(shù)據(jù);s220、當在預定時長內沒有接收到當前電視節(jié)目的ecm數(shù)據(jù),則判定所述ecm數(shù)據(jù)異常;s230、當在預定時長內接收到當前電視節(jié)目的ecm數(shù)據(jù),則判斷接收到的當前電視節(jié)目ecm數(shù)據(jù)的tableid是否發(fā)生變化,若未發(fā)生變化,則判定所述ecm數(shù)據(jù)異常,若發(fā)生變化,則判定所述ecm數(shù)據(jù)正常。具體來說,當判定所述當前電視節(jié)目為加擾節(jié)目時,則在所述加擾節(jié)目上停留預定時長(例如20s、30s、40s、50s等)接收當前電視節(jié)目的ecm(entitlecontrolmessage,授權控制信息)數(shù)據(jù),較佳地,在所述加擾節(jié)目上停留30s,當在30s的時間內沒有接收到當前電視節(jié)目的ecm數(shù)據(jù)時,則判定所述ecm數(shù)據(jù)異常;當在30s的時間內接收到了當前電視節(jié)目的ecm數(shù)據(jù)時,則進一步判斷所述ecm數(shù)據(jù)的tableid是否發(fā)生變化,若未發(fā)生變化,則判定所述ecm數(shù)據(jù)異常,若發(fā)生變化,則判定所述ecm數(shù)據(jù)正常。在本發(fā)明實施例中,對于一個加擾節(jié)目,其ecm數(shù)據(jù)在正常情況下是tableid0x80與tableid0x81交替接收的,并且10s中交替接收一次。也就是說,一個加擾節(jié)目,當前收到其對應的ecm數(shù)據(jù)的tableid是0x80,在下一個10s中收到的ecm數(shù)據(jù)的tableid是0x81,依次交替進行。因此,當在預定時長內接收不到對應的ecm數(shù)據(jù),或收到的ecm數(shù)據(jù)的tableid一直是0x80或0x81,就可判定ecm數(shù)據(jù)異常。進一步,在所述步驟s300中,當當前電視節(jié)目的ecm數(shù)據(jù)異常時,則關閉當前電視節(jié)目,并將當前電視節(jié)目的ecm數(shù)據(jù)進行異常標識,同時提醒用戶當前電視節(jié)目為私自添加節(jié)目。具體地,可通過將falsh標識為flag1的方式對ecm數(shù)據(jù)進行異常標識。較佳地,當判定當前電視節(jié)目的ecm數(shù)據(jù)異常時,還可提醒用戶撥打運營商電話。更進一步,當判定所述當前電視節(jié)目ecm數(shù)據(jù)正常時,則結束流程。在本發(fā)明中,所述步驟s100之前還包括:當機頂盒開機時,檢測電視節(jié)目的ecm數(shù)據(jù)是否存在異常標識,當存在時,則提醒用戶存在私自添加節(jié)目的現(xiàn)象。基于上述方法,本發(fā)明還提供一種防止前端私自修改數(shù)字電視節(jié)目碼流的系統(tǒng),如圖2所示,其中,包括:分析模塊100,用于對當前電視節(jié)目的pmt表進行分析,根據(jù)分析結果判斷當前電視節(jié)目是否是加擾節(jié)目;實時檢測模塊200,用于當當前電視節(jié)目是加擾節(jié)目時,檢測當前電視節(jié)目的ecm數(shù)據(jù)是否異常;提醒模塊300,用于當當前電視節(jié)目的ecm數(shù)據(jù)異常時,則關閉當前電視節(jié)目,并將當前電視節(jié)目的ecm數(shù)據(jù)進行異常標識,同時提醒用戶當前電視節(jié)目為私自添加節(jié)目。較佳地,所述的防止前端私自修改數(shù)字電視節(jié)目碼流的系統(tǒng),其中,還包括:開機檢測模塊,用于當機頂盒開機時,檢測電視節(jié)目的ecm數(shù)據(jù)是否存在異常標識,當存在時,則提醒用戶存在私自添加節(jié)目的現(xiàn)象。較佳地,所述的防止前端私自修改數(shù)字電視節(jié)目碼流的系統(tǒng),其中,所述分析模塊100具體包括:分析單元,用于對當前電視節(jié)目pmt表的數(shù)據(jù)結構進行分析;第一判斷單元,用于判斷當前電視節(jié)目pmt表的數(shù)據(jù)結構中是否定義了systemid及其對應的ecm和pid信息;第一判定單元,用于當所述當前電視節(jié)目pmt表的數(shù)據(jù)結構中定義了systemid及其對應的ecm和pid信息時,則判定當前電視節(jié)目為加擾節(jié)目;當所述當前電視節(jié)目pmt表的數(shù)據(jù)結構中沒有定義systemid及其對應的ecm和pid信息時,則判定當前電視節(jié)目為非加擾節(jié)目。較佳地,所述的防止前端私自修改數(shù)字電視節(jié)目碼流的系統(tǒng),其中,所述實時檢測模塊200具體包括:第二判斷單元,用于判斷是否在預定時長內接收到當前電視節(jié)目的ecm數(shù)據(jù);第二判定單元,用于當在預定時長內沒有接收到當前電視節(jié)目的ecm數(shù)據(jù),則判定所述ecm數(shù)據(jù)異常;第三判斷單元,用于當在預定時長內接收到當前電視節(jié)目的ecm數(shù)據(jù),則判斷接收到的當前電視節(jié)目ecm數(shù)據(jù)的tableid是否發(fā)生變化,若未發(fā)生變化,則判定所述ecm數(shù)據(jù)異常,若發(fā)生變化,則判定所述ecm數(shù)據(jù)正常。較佳地,所述的防止前端私自修改數(shù)字電視節(jié)目碼流的系統(tǒng),其中,還包括:結束模塊,用于當判定所述當前電視節(jié)目ecm數(shù)據(jù)正常時,則結束流程。關于上述模塊單元的技術細節(jié)在前面的方法中已有詳述,故不再贅述。綜上所述,本發(fā)明通過對當前電視節(jié)目的pmt表進行分析,根據(jù)分析結果判斷當前電視節(jié)目是否是加擾節(jié)目,當是時,則進一步檢測當前電視節(jié)目的ecm數(shù)據(jù)是否異常,當所述ecm數(shù)據(jù)異常時,則關閉當前電視節(jié)目,并將當前電視節(jié)目的ecm數(shù)據(jù)進行異常標識,同時提醒用戶當前電視節(jié)目為私自添加節(jié)目,請拔打運營商電話。通過本發(fā)明可有效防止前端私自添加節(jié)目的現(xiàn)象發(fā)生,有效保護了運營商的利益。應當理解的是,本發(fā)明的應用不限于上述的舉例,對本領域普通技術人員來說,可以根據(jù)上述說明加以改進或變換,所有這些改進和變換都應屬于本發(fā)明所附權利要求的保護范圍。當前第1頁12當前第1頁12