專利名稱:數(shù)字電視播放錄制方法及裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及數(shù)字電視的數(shù)據(jù)處理領(lǐng)域,具體地,是一種數(shù)字電視播放錄制的方法及裝置。
背景技術(shù):
隨著數(shù)字電視廣播技術(shù)的發(fā)展與應(yīng)用,數(shù)字電視已經(jīng)進(jìn)入千家萬戶,如手持移動(dòng)電視、車載電視及家庭電視等均廣泛應(yīng)用數(shù)字電視廣播技術(shù)。數(shù)字電視技術(shù)可以對數(shù)字電視的信號進(jìn)行播放與錄制,并且播放與錄制工作可以同時(shí)進(jìn)行。數(shù)據(jù)電視信號播放與錄制均需要接收傳輸流(transport stream)包,但由于外部傳輸?shù)膫鬏斄靼幸曨l包、音頻包、字幕包等,不同種類的傳輸流包使用不同的標(biāo)識碼(PID, Packet Identifier)進(jìn)行標(biāo)識,因此數(shù)字電視播放錄制裝置需要使用傳輸流控制器(transport streamcontroller)對傳輸流包進(jìn)行過濾,將傳輸流包中的視頻包、音頻包、字幕包等過濾出來,以便對各種包進(jìn)行解碼并播放或錄制。 現(xiàn)有的數(shù)字電視播放錄制的裝置的結(jié)構(gòu)框圖如圖I所示,其包含一個(gè)播放模塊
11、錄制模塊12以及兩個(gè)傳輸流控制器13、17,傳輸流控制器13僅接收播放模塊11發(fā)送的傳輸流包,而傳輸流控制器17僅接收錄制模塊12發(fā)送的傳輸流包。傳輸流控制器13內(nèi)設(shè)有多個(gè)過濾器14、15、16…,每一個(gè)過濾器14、15、16用于接收具有指定標(biāo)識碼的傳輸流包,不同的過濾器接收的傳輸流包往往是具有不同的標(biāo)識碼。在數(shù)字電視進(jìn)行播放操作時(shí),播放模塊11向傳輸流控制器13發(fā)送指令,要求傳輸流控制器13接收具有指定標(biāo)識碼的傳輸流包,傳輸流控制器13將分配一個(gè)固定的過濾器,如過濾器14,用于接收該指定標(biāo)識碼的傳輸流包。傳輸流控制器13接收外部發(fā)送的傳輸流包,如從路由器或調(diào)制解調(diào)器等接收傳輸流包后,根據(jù)傳輸流包的標(biāo)識碼將其發(fā)送至能夠接收該傳輸流包的過濾器中。本文所指的某一過濾器能夠接收某一傳輸流包,是指某一過濾器被分配所接收的傳輸流包的標(biāo)識碼與傳輸流控制器13所接收的傳輸流包的標(biāo)識碼相同。例如,過濾器11被指定接收標(biāo)識碼為PIDl的傳輸流包,若傳輸流控制器13接收到的傳輸流包的標(biāo)識碼為PID1,則過濾器11能夠接收該傳輸流包。若傳輸流控制器13接收的傳輸流包的標(biāo)識碼為PID2,則過濾器11不能接收該傳輸流包。傳輸流控制器13通過不同的過濾器對具有不同標(biāo)識碼的傳輸流包進(jìn)行分離,從而將視頻包、音頻包、字幕包等分開,即實(shí)現(xiàn)對傳輸流包的過濾。由于數(shù)字電視的播放對時(shí)間要求很高,要求傳輸流控制器13在短時(shí)間內(nèi)完成傳輸流包的過濾工作,因此傳輸流控制器13接收到傳輸流包后,需要馬上進(jìn)行過濾,并將過濾后的數(shù)據(jù)及時(shí)發(fā)送至播放模塊11。相同地,傳輸流控制器17內(nèi)也設(shè)有多個(gè)過濾器18、19、20…,每一個(gè)過濾器18、19、20用于接收具有指定標(biāo)識碼的傳輸流包。在錄制數(shù)字電視的數(shù)據(jù)時(shí),傳輸流控制器17接收外部發(fā)送的傳輸流包,并根據(jù)傳輸流包的標(biāo)識碼將傳輸流包發(fā)送至不同過濾器18、19、20等,并由過濾器18、19、20等將指定的視頻包、音頻包、字幕包等過濾出來,然后將過濾后的數(shù)據(jù)發(fā)送至錄制模塊12。由于錄制數(shù)字電視時(shí),希望盡量減少對存儲設(shè)備的寫入次數(shù),因此,錄制模塊12并不要求傳輸流控制器17及時(shí)將過濾后的數(shù)據(jù)發(fā)送至錄制模塊12,而是待傳輸流控制器17累積一定的數(shù)據(jù)量以后,將大量的數(shù)據(jù)一并發(fā)送至錄制模塊12中。由于傳輸流控制器13與傳輸流控制器17的結(jié)構(gòu)相同,過濾器的工作原理也相同,若播放模塊11與錄制模塊12簡單地共用一個(gè)傳輸流控制器,即播放模塊11與錄制模塊12均從同一個(gè)傳輸流控制器接收傳輸流包,若播放模塊11與錄制模塊12均需要從傳輸流控制器接收具有相同標(biāo)識碼的傳輸流包,則傳輸流控制器將具有相同標(biāo)識碼的傳輸流包發(fā)送至同一個(gè)過濾器,但過濾器無法分辨所接收的傳輸流包需要發(fā)送到播放模塊11還是錄制模塊12,導(dǎo)致播放模塊11與錄制模塊12中的一個(gè)將少接收一部分?jǐn)?shù)據(jù),影響播放或錄制的工作,不能實(shí)現(xiàn)同時(shí)播放與錄制。因此,基于上述情況,現(xiàn)有的數(shù)字電視播放錄制裝置需要設(shè)置兩個(gè)獨(dú)立工作的傳 輸流控制器13、17,分別滿足播放與錄制的要求,導(dǎo)致數(shù)字電視播放錄制裝置的生產(chǎn)較高。并且,兩個(gè)傳輸流控制器13、17分別獨(dú)立工作,也導(dǎo)致數(shù)字電視播放錄制裝置功率較大,消耗的電能較多,不利于節(jié)省能源。
發(fā)明內(nèi)容
本發(fā)明的主要目的是提供一種應(yīng)用硬件資源較小的數(shù)字電視播放錄制方法。本發(fā)明的另一目的是提供一種生產(chǎn)成本較低、功率較小的數(shù)字電視播放錄制裝置。為了實(shí)現(xiàn)上述的主要目的,本發(fā)明提供的數(shù)字電視播放錄制方法包括播放模塊或錄制模塊向傳輸流控制器發(fā)送接收具有指定標(biāo)識碼的傳輸流包的指令,傳輸流控制器建立過濾器的虛擬通道,同時(shí)建立過濾器與虛擬通道的映射關(guān)系,賦予每一虛擬通道唯一的標(biāo)識,將虛擬通道的標(biāo)識發(fā)送至播放模塊或錄制模塊,傳輸流控制器根據(jù)所接收的傳輸流包的標(biāo)識碼將傳輸流包發(fā)送至能夠接收傳輸流包的過濾器中,過濾器對應(yīng)的虛擬通道對傳輸流包進(jìn)行處理,并將處理后的數(shù)據(jù)發(fā)送至播放模塊或錄制模塊。由上述方案可見,傳輸流控制器通過建立過濾器的虛擬通道,實(shí)現(xiàn)過濾器的虛擬化,且仍由過濾器接收傳輸流包,而由虛擬通道執(zhí)行傳輸流包的后處理操作。這樣,傳輸流控制器既可以向播放模塊發(fā)送傳輸流包,又可以向錄制模塊發(fā)送傳輸流包,并分別使用不同的虛擬通道接收播放模塊或錄制模塊所需的傳輸流包,并由過濾器進(jìn)行過濾操作。由于不同的虛擬通道之間獨(dú)立工作,不會(huì)相互干擾,使得播放模塊與錄制模塊互不影響??梢?,數(shù)字電視播放錄制裝置使用一個(gè)傳輸流控制器,即可同時(shí)完成播放與錄制工作,減少數(shù)字電視播放錄制裝置所使用的硬件資源,降低數(shù)字電視播放錄制裝置的生產(chǎn)成本。一個(gè)優(yōu)選的方案是,傳輸流控制器建立在一個(gè)過濾器上的虛擬通道的數(shù)量為二條以上。由此可見,同一個(gè)過濾器上可以同時(shí)建立多個(gè)虛擬通道,能夠滿足播放與錄制的要求。進(jìn)一步的方案是,建立虛擬通道的步驟為傳輸流控制器接收指令后,判斷是否有處于工作狀態(tài)的過濾器已經(jīng)接收的傳輸流包的標(biāo)識碼與所接收的指令中需要接收的傳輸流包的標(biāo)識碼相同,如有,建立處于工作狀態(tài)的過濾器的一條新的虛擬通道;如沒有,激活一個(gè)新的過濾器,并建立新激活的過濾器的虛擬通道。可見,同一個(gè)過濾器的不同虛擬通道可以向上對應(yīng)不同的使用者,如播放模塊或錄制模塊,這樣播放模塊與錄制模塊所需的具有相同標(biāo)識碼的傳輸流包可以在同一個(gè)過濾器上進(jìn)行過濾操作,有利于減少過濾器的數(shù)量,從而節(jié)省數(shù)字電視播放錄制裝置的硬件資源。為實(shí)現(xiàn)上述的另一目的,本發(fā)明提供的數(shù)字電視播放錄制裝置包括播放模塊、錄制模塊及向播放模塊或錄制模塊發(fā)送數(shù)據(jù)的傳輸流控制器,傳輸流控制器具有一個(gè)以上的過濾器,其中,傳輸流控制器包括驅(qū)動(dòng)模塊,用于播放模塊或錄制模塊向傳輸流控制器發(fā)送接收具有指定標(biāo)識碼的傳輸流包的指令后,建立過濾器的虛擬通道,并建立過濾器與虛擬通道的映射關(guān)系,賦予每一虛擬通道唯一的標(biāo)識,將虛擬通道的標(biāo)識發(fā)送至播放模塊或錄制模塊,并根據(jù)所接收的傳輸流包的標(biāo)識碼將傳輸流控制器所接收的傳輸流包發(fā)送至能夠接收傳輸流包的過濾器中,虛擬通道用于對過濾器所接收的傳輸流包進(jìn)行處理,并將處理 后的數(shù)據(jù)發(fā)送至播放模塊或錄制模塊。由上述方案可見,由于傳輸流控制器建立了過濾器的虛擬通道,并使用虛擬通道接收播放模塊或錄制模塊所需的傳輸流包,同一過濾器的多條虛擬通道相互獨(dú)立的工作,因此播放模塊與錄制模塊所需的傳輸流包可以由在同一過濾器的不同虛擬通道分別進(jìn)行處理,并統(tǒng)一由對應(yīng)的過濾器進(jìn)行接收。這樣,數(shù)字電視播放錄制裝置僅需要設(shè)置一個(gè)傳輸流控制器,即可以滿足播放與錄制的需要,其生產(chǎn)成本較低,功率較小,節(jié)省電能的消耗。一個(gè)優(yōu)選的方案是,驅(qū)動(dòng)模塊還包括過濾器選取模塊,用于在傳輸流控制器接收指令后,判斷是否有處于工作狀態(tài)的過濾器已經(jīng)接收的傳輸流包的標(biāo)識碼與所接收的指令中需要接收的傳輸流包的標(biāo)識碼相同,如有,選取處于工作狀態(tài)的過濾器并建立該過濾器的一條新的虛擬通道;如沒有,選取并激活一個(gè)新的過濾器,建立新激活的過濾器的虛擬通道。由此可見,播放模塊與錄制模塊所需的具有相同標(biāo)識碼的傳輸流包可以由同一過濾器進(jìn)行接收操作,并通過不同的虛擬通道對傳輸流包進(jìn)行處理,有利于節(jié)省傳輸流控制器設(shè)置的過濾器的數(shù)量,從而降低數(shù)字電視播放錄制裝置的生產(chǎn)成本。
圖I是現(xiàn)有數(shù)字電視播放錄制裝置的結(jié)構(gòu)框圖。圖2是本發(fā)明數(shù)字電視播放錄制裝置實(shí)施例的結(jié)構(gòu)框圖。圖3是本發(fā)明數(shù)字電視播放錄制方法實(shí)施例中建立虛擬通道的流程圖。圖4是本發(fā)明數(shù)字電視播放錄制方法實(shí)施例中過濾器處理傳輸流包的流程圖。圖5是本發(fā)明數(shù)字電視播放錄制方法實(shí)施例中關(guān)閉過濾器的流程圖。以下結(jié)合附圖及實(shí)施例對本發(fā)明作進(jìn)一步說明。
具體實(shí)施例方式本發(fā)明的數(shù)字電視播放錄制裝置可以應(yīng)用在手持移動(dòng)電視、車載電視以及家庭電視中,還可以應(yīng)用在其他應(yīng)用數(shù)字電視廣播技術(shù)的電子設(shè)備中。參見圖2,本發(fā)明的數(shù)字電視播放錄制裝置具有播放模塊21、錄制模塊22以及傳輸流控制器23,播放模塊21可以接收傳輸流控制器23輸入的音視頻傳輸流包所攜帶的數(shù)據(jù)并進(jìn)行解碼處理,因此,播放模塊21是用于對數(shù)字電視的數(shù)據(jù)包進(jìn)行解碼播放。錄制模塊22用于將傳輸流控制器23輸入的音視頻傳輸流包所攜帶的數(shù)據(jù)存儲為文件,錄制模塊22接收到數(shù)據(jù),將數(shù)據(jù)存儲在自己的內(nèi)部大緩沖區(qū)內(nèi),再逐段寫入文件,由此提高寫入效率。因此,錄制模塊22用于對數(shù)據(jù)電視信號進(jìn)行錄制。傳輸流控制器23內(nèi)設(shè)有多個(gè)獨(dú)立工作的過濾器30、40、50···,每一個(gè)過濾器30、40,50均被設(shè)定其接收的傳輸流包的標(biāo)識碼,傳輸流控制器23接收到傳輸流包后,按該傳輸流包的標(biāo)識碼,發(fā)送到相應(yīng)的過濾器的緩沖器中,通過這種方式將傳輸流包中的視頻包、音頻包、字幕包等進(jìn)行過濾處理。傳輸流控制器23內(nèi)還設(shè)有驅(qū)動(dòng)模塊60,驅(qū)動(dòng)模塊60內(nèi)設(shè) 有過濾器選取模塊61、虛擬通道管理模塊62以及過濾器關(guān)閉模塊63。本發(fā)明采用硬件虛擬技術(shù),根據(jù)過濾器的工作需要,在過濾器上建立虛擬通道。如圖2所示的,傳輸流控制器23在過濾器30上建立四條虛擬通道,分別是虛擬通道31、32、33、34。建立虛擬通道采用的硬件虛擬技術(shù)為常用的硬件虛擬技術(shù),現(xiàn)有的硬件虛擬技術(shù)可以參考公開號為CN101751285A的中國發(fā)明專利申請。當(dāng)然,本發(fā)明還可以采用其他的硬件虛擬技術(shù)。虛擬通道31、32、33、34并不是固定存在的,而是傳輸流控制器23根據(jù)工作需要,在過濾器30上建立的,只有傳輸流控制器23接收到播放模塊21或錄制模塊22發(fā)送的指令后,才會(huì)在某一過濾器上建立虛擬通道。當(dāng)過濾器30處于空閑狀態(tài)時(shí),其沒有對應(yīng)的虛擬通道。在過濾器30將傳輸流包過濾完畢后,傳輸流控制器23根據(jù)播放模塊21或錄制模塊22發(fā)出的指令,取消不再工作的虛擬通道,并且在過濾器關(guān)聯(lián)的虛擬通道都取消后,關(guān)閉過濾器,過濾器即進(jìn)入空閑狀態(tài),此時(shí)過濾器上沒有虛擬通道。播放模塊21或錄制模塊22需要接收具有某一指定標(biāo)識碼的傳輸流包時(shí),向傳輸流控制器23發(fā)送指令,該指令是指示傳輸流控制器23接收具有指定標(biāo)識碼的傳輸流包。傳輸流控制器23接收指令后,將分配一個(gè)過濾器用于接收具有指定標(biāo)識碼的傳輸流包。驅(qū)動(dòng)模塊60的虛擬通道管理模塊62對建立的虛擬通道進(jìn)行管理,包括建立虛擬通道與過濾器的映射關(guān)系。例如,傳輸流控制器23接收到播放模塊21或錄制模塊22的指令后,需要在過濾器30上建立虛擬通道,若過濾器30處于空閑狀態(tài),即沒有建立任何的虛擬通道,此時(shí)驅(qū)動(dòng)模塊62在過濾器30上建立一條虛擬通道,如虛擬通道31。建立的虛擬通道31將接收到由播放模塊21或錄制模塊22發(fā)送的指針函數(shù),并使用該指針函數(shù)所指向的函數(shù)對傳輸流包的數(shù)據(jù)進(jìn)行處理。虛擬通道31、32均能存儲在過濾器30的緩沖器35的傳輸流包進(jìn)行處理,不同的虛擬通道分別使用各自的指針函數(shù)所指向函數(shù)對同一傳輸流包進(jìn)行處理,即一個(gè)傳輸流包可以被多個(gè)虛擬通道進(jìn)行處理。由于虛擬通道對傳輸流包進(jìn)行處理時(shí),只能讀取傳輸流包的數(shù)據(jù),不能改寫傳輸流包的數(shù)據(jù),因此多個(gè)虛擬通道對同一傳輸流包進(jìn)行處理,并不會(huì)影響傳輸流包的數(shù)據(jù)完整性。關(guān)于虛擬通道對傳輸流包的處理,對于發(fā)送給播放模塊21的數(shù)據(jù),是將傳輸流包去掉包頭重組為PES包,再去掉PES包的包頭所剩下的數(shù)據(jù)。對于發(fā)送給錄制模塊22的數(shù)據(jù)不做任何處理。虛擬通道讀取對應(yīng)的過濾器中的緩沖器數(shù)據(jù),然后對傳輸流包進(jìn)行處理,處理后的數(shù)據(jù)放入從播放模塊21或者錄制模塊22申請來的緩沖區(qū)中,不會(huì)改寫過濾器的緩沖器數(shù)據(jù),從而保證過濾器的緩沖器數(shù)據(jù)的純凈。由于在同一過濾器上建立的虛擬通道可以是多條,因此驅(qū)動(dòng)模塊60根據(jù)過濾器的實(shí)際工作需要,在同一過濾器上建立多于一條的虛擬通道。不同的虛擬通道分別接收不同傳輸流包。虛擬通道管理模塊62建立虛擬通道與過濾器之間的映射關(guān)系,并且分配給每一虛擬通道唯一的標(biāo)識,用于標(biāo)識每一虛擬通道。過濾器30內(nèi)設(shè)有一個(gè)緩沖器35,用于存儲過濾器30所接收的傳輸流包。過濾器30接收傳輸流包后,不會(huì)通知虛擬通道31、32、33、34對其進(jìn)行處理,而是在緩沖器35存儲的數(shù)據(jù)量超出閾值時(shí),才會(huì)通知過濾器31、32、33、34進(jìn)行處理。虛擬通道31、32、33、34將處理后的數(shù)據(jù)發(fā)送至播放模塊21或錄制模塊22。
過濾器40、50的結(jié)構(gòu)與工作原理與過濾器30,均具有緩沖器45、55,且驅(qū)動(dòng)模塊60可以在過濾器40、50上建立多條虛擬通道,如在過濾器40上建立虛擬通道41、42、43,在過濾器50上建立虛擬通道51、52等。下面結(jié)合圖3、圖4及圖5說明虛擬通道的建立、工作以及關(guān)閉過程。參見圖3,傳輸流控制器23首先判斷是否接收到由播放模塊21或錄制模塊22發(fā)送的指令,該指令是接收具有指定標(biāo)識碼的傳輸流包,即執(zhí)行步驟SI。傳輸流控制器23接收的傳輸流包的標(biāo)識碼可以是任意值。接著,驅(qū)動(dòng)模塊60的過濾器選取模塊61執(zhí)行步驟S2,判斷是否有正在工作的過濾器已經(jīng)接收的傳輸流包的標(biāo)識碼與所接收的指令要求接收的傳輸流包的標(biāo)識碼相同。假設(shè)此時(shí)過濾器30處于工作狀態(tài),在其上僅建立一條虛擬通道31,虛擬通道31接收的傳輸流包的標(biāo)識碼為PIDl。此時(shí),過濾器選取模塊61判斷過濾器30的虛擬通道31接收的傳輸流包與新接收指令要求接收的傳輸流包的標(biāo)識碼相同,因此執(zhí)行步驟S3,在過濾器30上建立一條新的虛擬通道,如虛擬通道32。虛擬通道管理模塊62對新建立的虛擬通道32進(jìn)行管理,包括建立虛擬通道32與過濾器30的映射關(guān)系,即虛擬通道32對應(yīng)于過濾器30,也就是執(zhí)行步驟S7。同時(shí),虛擬通道管理模塊62還分配虛擬通道32的唯一的標(biāo)識,用于標(biāo)識虛擬通道32。最后,虛擬通道管理模塊62執(zhí)行步驟S8,將虛擬通道32的標(biāo)識返回至播放模塊21或錄制模塊22。假設(shè)過濾器30的虛擬通道31已經(jīng)接收的傳輸包的標(biāo)識碼是PID2,而不是PID1,且沒有其他的過濾器處于工作狀態(tài)。在這種情況下,在步驟S2中,過濾器選取模塊61判斷沒有正在工作的過濾器已經(jīng)接收的傳輸流包的標(biāo)識碼與新接收的指令所需要接收的傳輸流包標(biāo)識碼相同,執(zhí)行步驟S4,選取一個(gè)空閑的過濾器,如過濾器40,并激活過濾器40,在過濾器40上建立一條新的虛擬通道,如虛擬通道41,即執(zhí)行步驟S5。然后,虛擬通道管理模塊62建立虛擬通道41與過濾器40的映射關(guān)系,賦予虛擬通道41唯一的標(biāo)識,即執(zhí)行步驟S6。最后,將虛擬通道41的標(biāo)識碼返回至播放模塊21或錄制模塊22,播放模塊21或錄制模塊22將從虛擬通道41中獲取數(shù)據(jù)。這樣,只要播放模塊21要求接收的傳輸流包的標(biāo)識碼與錄制模塊22要求接收的傳輸流包的標(biāo)識碼相同,這些傳輸流包可以由同一過濾器接收,再由不同的虛擬通道分別處理。由于不同的虛擬通道之間相互獨(dú)立工作,因此播放模塊21從虛擬通道接收的數(shù)據(jù)與錄制模塊從虛擬通道所接收的數(shù)據(jù)不會(huì)相互影響,這樣能夠節(jié)省過濾器的數(shù)量。例如,播放模塊21與錄制模塊22均需要接收標(biāo)識碼為PIDl的傳輸流包,并且均向傳輸流控制器23發(fā)送指令,傳輸流控制器23將在過濾器30上建立兩條虛擬通道31、32,虛擬通道31用于向播放模塊21發(fā)送數(shù)據(jù),虛擬通道32用于向錄制模塊22發(fā)送數(shù)據(jù)。然后,傳輸流控制器23將虛擬通道31的標(biāo)識發(fā)送給播放模塊21,將虛擬通道32的標(biāo)識發(fā)送至錄制模塊22。過濾器接收到傳輸流包后,將傳輸流包存儲在自身緩沖器中。例如,過濾器30接收的傳輸流包均存儲在過濾器30的緩沖器35內(nèi)。參見圖4,傳輸流控制器接收到傳輸流包后,判斷傳輸流包的標(biāo)識碼,并查看有沒有處于工作狀態(tài)的過濾器需要接收該標(biāo)識碼的傳輸流包,若有,將傳輸流包發(fā)送至相應(yīng)的過濾器中,過濾器將接收的傳輸流包存儲在緩沖器內(nèi),即執(zhí)行步驟SI I。當(dāng)然,若傳輸流控制器沒有發(fā)現(xiàn)有過濾器需要接收該標(biāo)識碼的傳輸流包,則將該傳輸流包丟掉。 然后,過濾器執(zhí)行步驟S12,判斷自身的緩沖器35所存儲的數(shù)據(jù)量是否大于閾值,若沒有大于閾值,繼續(xù)等待,否則執(zhí)行步驟S13,逐一地通知虛擬通道31、32對數(shù)據(jù)進(jìn)行處理,每一虛擬通道對數(shù)據(jù)進(jìn)行處理,并將處理后的數(shù)據(jù)發(fā)送至播放模塊或錄制模塊,也就是復(fù)制到播放模塊21或錄制模塊22內(nèi)部的緩沖區(qū),即執(zhí)行步驟S14。在步驟S15中,過濾器30判斷是否還有沒有被通知的虛擬通道,若有,則繼續(xù)通知未被通知的虛擬通道。若所有虛擬通道均被通知完畢,過濾器則執(zhí)行步驟S16,清除過濾后的數(shù)據(jù)。播放模塊21或錄制模塊22接收到發(fā)送來的數(shù)據(jù)后,進(jìn)行播放或者錄制處理。如果停止播放或錄制,會(huì)向傳輸流控制器23發(fā)出關(guān)閉虛擬通道的指令。例如,播放模塊21向傳輸流控制器23發(fā)出關(guān)閉虛擬通道31的指令。參見圖5,傳輸流控制器23判斷是否接收到關(guān)閉虛擬通道的指令,即執(zhí)行步驟S21,若接收到指令,由虛擬通道關(guān)閉模塊63執(zhí)行步驟S22,取消過濾器30與虛擬通道31的映射關(guān)系,然后執(zhí)行步驟S23,判斷過濾器30是否還有未取消映射關(guān)系的虛擬通道。若過濾器30已經(jīng)沒有其他建立了映射關(guān)系的虛擬通道,則執(zhí)行步驟S24,關(guān)閉過濾器30,過濾器30進(jìn)入空閑狀態(tài),即過濾器30上沒有虛擬通道。若步驟S23中,過濾器關(guān)閉模塊63判斷過濾器30上還有未取消映射關(guān)系的虛擬通道32,則不關(guān)閉過濾器。由上述的方案可見,播放模塊21與錄制模塊22所需的傳輸流包可以在同一傳輸流控制器23上進(jìn)行數(shù)據(jù)處理,傳輸流控制器23內(nèi)的同一個(gè)過濾器的不同虛擬通道可以分別向播放模塊21與錄制模塊22發(fā)送數(shù)據(jù),使得播放模塊21和錄制模塊22接收的數(shù)據(jù)相互不影響,確保播放與錄制工作的獨(dú)立進(jìn)行。由于數(shù)字電視的播放錄制裝置僅設(shè)置一個(gè)傳輸流控制器,節(jié)省了一套硬件設(shè)備,從而降低數(shù)字電視播放錄制裝置的生產(chǎn)成本,也減少所需要的功率,減小電能的消耗。當(dāng)然,上述實(shí)施例僅是本發(fā)明較佳的實(shí)施方式,實(shí)際應(yīng)用時(shí),還可以有更多的改變,例如,對建立在每一過濾器上的虛擬通道的數(shù)量進(jìn)行限制,限制每一過濾器建立的虛擬通道的數(shù)量最大值為四條;或者,選取不同的過濾器對具有相同標(biāo)識碼的傳輸流包進(jìn)行過濾,這樣的改變也能實(shí)現(xiàn)本發(fā)明的目的。最后需要強(qiáng)調(diào)的是,本發(fā)明不限于上述實(shí)施方式,如過濾器數(shù)量的改變、每一過濾器上建立虛擬通道數(shù)量的改變等變化也應(yīng)該包括在本發(fā)明權(quán)利 要求的保護(hù)范圍內(nèi)。
權(quán)利要求
1.數(shù)字電視播放錄制方法,包括 播放模塊或錄制模塊向傳輸流控制器發(fā)送接收具有指定標(biāo)識碼的傳輸流包的指令; 其特征在于 所述傳輸流控制器建立過濾器的虛擬通道,同時(shí)建立所述過濾器與所述虛擬通道的映射關(guān)系,賦予每一所述虛擬通道唯一的標(biāo)識,將所述虛擬通道的標(biāo)識發(fā)送至所述播放模塊或錄制模塊; 所述傳輸流控制器根據(jù)所接收的傳輸流包的標(biāo)識碼將所述傳輸流包發(fā)送至能夠接收所述傳輸流包的過濾器中,所述過濾器對應(yīng)的虛擬通道分別對所述傳輸流包進(jìn)行處理,并將處理后的數(shù)據(jù)發(fā)送至所述播放模塊或所述錄制模塊。
2.根據(jù)權(quán)利要求I所述的數(shù)字電視播放錄制方法,其特征在于 所述傳輸流控制器建立在一個(gè)過濾器上的虛擬通道的數(shù)量為二條以上。
3.根據(jù)權(quán)利要求I或2所述的數(shù)字電視播放錄制方法,其特征在于 建立所述虛擬通道的步驟為所述傳輸流控制器接收所述指令后,判斷是否有處于工作狀態(tài)的過濾器已經(jīng)接收的傳輸流包的標(biāo)識碼與所述指令中所需接收的傳輸流包的標(biāo)識碼相同,如有,建立處于工作狀態(tài)的所述過濾器的一條新的虛擬通道;如沒有,激活一個(gè)新的過濾器,并建立新激活的所述過濾器的虛擬通道。
4.根據(jù)權(quán)利要求I或2所述的數(shù)字電視播放錄制方法,其特征在于 所述傳輸流控制器向所述播放模塊或所述錄制模塊發(fā)送數(shù)據(jù)后,在所述播放模塊或所述錄制模塊停止播放或停止錄制后,所述播放模塊或所述錄制模塊向所述傳輸流控制器發(fā)送關(guān)閉虛擬通道的指令; 所述傳輸流控制器取消所需關(guān)閉的虛擬通道與其對應(yīng)的過濾器的映射關(guān)系,并判斷是否需要關(guān)閉所述過濾器。
5.根據(jù)權(quán)利要求4所述的數(shù)字電視播放錄制方法,其特征在于 所述傳輸流控制器判斷是否需要關(guān)閉所述過濾器的步驟是查看所需關(guān)閉的過濾器是否存在未取消映射關(guān)系的虛擬通道,如不存在,則關(guān)閉所述過濾器;如存在,則不關(guān)閉所述過濾器。
6.根據(jù)權(quán)利要求I或2所述的數(shù)字電視播放錄制方法,其特征在于 所述過濾器具有緩沖器,所述傳輸流控制器將接收的傳輸流包存儲在能夠接收所述傳輸流包的過濾器的所述緩沖器中; 所述過濾器判斷自身的所述緩沖器存儲的數(shù)據(jù)量大于閾值時(shí),通知其對應(yīng)的所有虛擬通道。
7.數(shù)字電視播放錄制裝置,包括 播放模塊、錄制模塊及向所述播放模塊或錄制模塊發(fā)送數(shù)據(jù)的傳輸流控制器,所述傳輸流控制器具有一個(gè)以上的過濾器; 其特征在于 所述傳輸流控制器包括驅(qū)動(dòng)模塊,用于在播放模塊或錄制模塊向所述傳輸流控制器發(fā)送接收具有指定標(biāo)識碼的傳輸流包的指令后,建立所述過濾器的虛擬通道,并建立所述過濾器與所述虛擬通道的映射關(guān)系,賦予每一所述虛擬通道唯一的標(biāo)識,將所述虛擬通道的標(biāo)識發(fā)送至所述播放模塊或錄制模塊,并根據(jù)所接收的傳輸流包的標(biāo)識碼將所述傳輸流控制器所接收的傳輸流包發(fā)送至能夠接收所述傳輸流包的過濾器中; 所述虛擬通道用于對所述過濾器所接收的傳輸流包進(jìn)行處理,并將處理后的數(shù)據(jù)發(fā)送至所述播放模塊或所述錄制模塊。
8.根據(jù)權(quán)利要求7所述的數(shù)字電視播放錄制裝置,其特征在于 建立在同一個(gè)過濾器上的所述虛擬通道的數(shù)量為二條以上。
9.根據(jù)權(quán)利要求7或8所述的數(shù)字電視播放錄制裝置,其特征在于 所述驅(qū)動(dòng)模塊還包括過濾器選取模塊,用于在所述傳輸流控制器接收所述指令后,判斷是否有處于工作狀態(tài)的過濾器已經(jīng)接收的傳輸流包的標(biāo)識碼與所述指令中所需接收的傳輸流包的標(biāo)識碼相同,如有,選取處于工作狀態(tài)的所述過濾器并建立該過濾器的一條新的虛擬通道;如沒有,選取并激活一個(gè)新的過濾器,建立新激活的所述過濾器的虛擬通道。
10.根據(jù)權(quán)利要求7或8所述的數(shù)字電視播放錄制裝置,其特征在于 所述驅(qū)動(dòng)模塊還包括過濾器關(guān)閉模塊,用于在所述播放模塊或所述錄制模塊向所述傳輸流控制器發(fā)送關(guān)閉所述虛擬通道的指令后,取消所需關(guān)閉的虛擬通道與對應(yīng)的過濾器的映射關(guān)系,并在所述過濾器不存在未取消映射關(guān)系的虛擬通道時(shí),關(guān)閉所述過濾器。
全文摘要
本發(fā)明提供一種數(shù)字電視播放錄制方法及裝置,該方法包括播放模塊或錄制模塊向傳輸流控制器發(fā)送接收具有指定標(biāo)識碼的傳輸流包的指令,傳輸流控制器建立過濾器的虛擬通道,同時(shí)建立過濾器與虛擬通道的映射關(guān)系,傳輸流控制器將傳輸流包發(fā)送過濾器,虛擬通道將過濾后的數(shù)據(jù)發(fā)送至播放模塊或錄制模塊。該裝置包括播放模塊、錄制模塊及傳輸流控制器,傳輸流控制器具有過濾器及驅(qū)動(dòng)模塊,用于建立過濾器的虛擬通道,并建立過濾器與虛擬通道的映射關(guān)系,將傳輸流包發(fā)送至能夠接收該傳輸流包的過濾器,過濾器用于對傳輸流包進(jìn)行過濾并由虛擬通道將數(shù)據(jù)發(fā)送至播放模塊或錄制模塊。本發(fā)明能減少播放錄制裝置的硬件資源,降低其生產(chǎn)成本。
文檔編號H04N21/433GK102801945SQ20121028279
公開日2012年11月28日 申請日期2012年8月9日 優(yōu)先權(quán)日2012年8月9日
發(fā)明者王晴 申請人:珠海全志科技股份有限公司