專利名稱:對所存儲的視頻數(shù)據(jù)的優(yōu)化的制作方法
技術(shù)領(lǐng)域:
本發(fā)明的領(lǐng)域廣泛地說是涉及視頻數(shù)據(jù)的數(shù)字?jǐn)?shù)據(jù)壓縮,并且更具體地說是涉及以一種選擇性的方式對視頻數(shù)據(jù)中的連續(xù)幀進(jìn)行編碼,以提供增強(qiáng)的數(shù)據(jù)壓縮。
在一個由運(yùn)動畫面專家組(MPEG)于1991年11月公布并的標(biāo)準(zhǔn)中(標(biāo)識為ISO-IEC/JTC1/SC2/WG12),原始圖像數(shù)據(jù)幀的序列被分別劃分為連續(xù)的各組(稱為GOP(畫面組)),并且編碼后的GOP由獨(dú)立幀I、預(yù)測幀P和雙向預(yù)測幀B組成,例如以如下的形式組成GOPI,B,B,P,B,B,P,B,B,P,B,B,P,B,B。
第一個P幀是從前面的I幀導(dǎo)出的,而剩余的P幀則是從最近的前一個P幀導(dǎo)出的。I幀和P幀是參考幀。因?yàn)槊恳粋€B幀都是從其兩側(cè)最接近的參考幀導(dǎo)出的,所以在導(dǎo)出在前的B幀之前,必須首先導(dǎo)出相關(guān)的P幀。
由于使用了幀差分編碼,所以在每個GOP開始處需要高清晰度的獨(dú)立幀I,以便避免產(chǎn)生累加誤差。量化的目的在于控制用于表示幀間變化的比特?cái)?shù)。幀的對應(yīng)的部分通過運(yùn)動向量來表達(dá),運(yùn)動向量表示參考幀中的塊可能定位在正被導(dǎo)出的幀的什么位置上。由于差別通常是由運(yùn)動產(chǎn)生的,并且很可能P幀之間的運(yùn)動多于P幀和B幀之間的運(yùn)動,所以與從位于其兩側(cè)的P幀導(dǎo)出一個B幀相比,從一個P幀導(dǎo)出一個P幀需要更多的比特?cái)?shù)。
在典型的MPEG系統(tǒng)中,需要有利用大量比特的參考幀的三幀間隔,以便于充分地表達(dá)運(yùn)動信息。然而,如果只有很小運(yùn)動的或者沒有運(yùn)動,則專用于表示這些幀的比特?cái)?shù)就過多了。
使用硬盤的錄像機(jī)變得越來越流行。可以預(yù)期將來的PVR(個人錄像機(jī))將具有數(shù)百吉字節(jié)(一個吉字節(jié)表示109字節(jié))的存儲容量,借此用戶可以儲存許多小時的視頻內(nèi)容(一個120吉字節(jié)的盤目前可以存儲達(dá)到60小時的廣播質(zhì)量的視頻,并且當(dāng)使用更高壓縮比時可以存儲更多小時)。用戶通常希望存儲日益龐大的視頻內(nèi)容或數(shù)據(jù),但是即使視頻內(nèi)容不再需要時用戶通常也不會刪除它們。在本領(lǐng)域中需要開發(fā)一種用于存儲設(shè)備的離線優(yōu)化方案,該存儲設(shè)備例如是PVR,但并不局限于此。為了對僅具有較少的存儲器量的解碼器進(jìn)行廣播,對MPEG(或多或少地)進(jìn)行了優(yōu)化。一個視頻節(jié)目可以在沒有歷史信息的情況下從每一個I幀開始。通過使用類似于MPEG-4或者DivX的較高的壓縮比將一個視頻數(shù)據(jù)流轉(zhuǎn)換成尺寸較小的文件,從而可以降低文件的尺寸。然而,這些文件格式不使用所存儲文件中的公共部分,而且質(zhì)量也會因轉(zhuǎn)碼而降低。由于大量的視頻數(shù)據(jù)或信息可以被存儲在硬盤上,并有可能幾乎瞬間地在那里訪問到這種信息,因此考慮到現(xiàn)在可以在硬盤上獲得定量的數(shù)字化數(shù)據(jù)以實(shí)現(xiàn)對原始視頻數(shù)據(jù)的高精度再現(xiàn),因此就不再需要將視頻數(shù)據(jù)作為線性媒體對待。
將參照圖對本發(fā)明的不同實(shí)施例進(jìn)行說明,其中,類似的項(xiàng)目使用同樣的附圖標(biāo)記來表示,其中
圖1是一個框圖,其示出了三個所記錄的MPEG文件,所述MPEG文件表示被劃分為連續(xù)的畫面組(GOP)的壓縮的視頻數(shù)據(jù);圖2a是一個示意框圖,其示出了本發(fā)明的一個實(shí)施例;圖2b是一個示意框圖,其示出了本發(fā)明的另一個實(shí)施例;圖2c是一個示意框圖,其示出了本發(fā)明的又一個實(shí)施例;圖3是一個示意框圖,其示出了本發(fā)明的一個實(shí)施例;圖4是一個示意框圖,其示出了本發(fā)明的另一個實(shí)施例,其包含一個帶有抽象層的虛擬文件系統(tǒng);圖5是與圖4示出的本發(fā)明的實(shí)施例有關(guān)的讀請求的序列圖;圖6是本發(fā)明一個實(shí)施例的流程圖;圖7是一個框圖,其示出了一個可以指向另一個GOP的參考以及一個用來使原始GOP適應(yīng)本發(fā)明的另一個實(shí)施例的差分碼;并且圖8是一個示意框圖,其示出了本發(fā)明的又一個實(shí)施例,其中示出了將一個GOP轉(zhuǎn)換為另一種表示。
本發(fā)明是一種提供離線優(yōu)化方案的方法,以用于降低存儲在錄像機(jī)的硬盤上的視頻數(shù)據(jù)的數(shù)字文件的尺寸,所述錄像機(jī)例如是個人錄像機(jī)(PVR),但并不局限于此。在本發(fā)明的一個實(shí)施例中,在將視頻數(shù)字?jǐn)?shù)據(jù)文件記錄在錄像機(jī)的硬盤上之后,搜索先前被壓縮(也就是通過MPEG-1、MPEG-2、MPEG-4或者DivX標(biāo)準(zhǔn)壓縮)的記錄的畫面組(GOP)以便標(biāo)識冗余的或完全相同的幀/GOP。對于每一個被重復(fù)一或多次的GOP,其被標(biāo)識該GOP或幀的公共塊的參考標(biāo)志所替代。并不是所有的GOP都需要參考,如果一個完整的塊是相同的,那么只需要一個帶有長度指示符的參考。第一次出現(xiàn)的公共GOP留在原地,而隨后的冗余或重復(fù)的對應(yīng)幀或者GOP被對應(yīng)于該幀或GOP的參考標(biāo)志所標(biāo)識。之后,當(dāng)從硬盤中重放視頻時,通過冗余幀的對應(yīng)的參考標(biāo)志而從一個表中檢索所述冗余幀,該表使所述參考標(biāo)志和它們對應(yīng)的幀或GOP交叉相關(guān)。
下面將詳細(xì)描述本發(fā)明的不同實(shí)施例。應(yīng)該注意,對于本發(fā)明來說,GOP被定義為一組或一定數(shù)量的能夠各被獨(dú)立播放的畫面。在本發(fā)明的一個實(shí)施例中,其方法或思想是首先使用PVR在線地記錄視頻數(shù)據(jù),然后離線地順序搜索所存儲的視頻數(shù)據(jù)或節(jié)目以找到完全相同的幀。接下來,指針參考(觸發(fā)器)被用于標(biāo)識重復(fù)的部分。在一個典型的PVR上,最近記錄的全部視頻文件以及來自其它記錄的視頻文件是可訪問的,因此允許產(chǎn)生對于其它視頻部分的參考。因?yàn)橐曨l數(shù)據(jù)是本地存儲的,所以完全遵從已有的MPEG/視頻編碼標(biāo)準(zhǔn)不是那么重要。如前所示,MPEG視頻包含I、P和B幀,由此視頻不能從一個隨機(jī)的位置開始,而只能從一個I幀開始。因此,在本發(fā)明中,一個GOP被定義為一組可以作為獨(dú)立單元播放的畫面。
如果一個電視節(jié)目包含觸發(fā)器并且硬盤上已經(jīng)存在觸發(fā)器部分,那么視頻片斷甚至不需要被記錄。
一些例子■當(dāng)一個比如足球的體育事件正在被記錄時,其非??赡馨胤???梢圆捎靡粋€離線優(yōu)化來降低總的文件尺寸。
■在肥皂劇的情況下(比如GTST,Bold & Beautiful等等),如果一個用戶每天記錄同樣的節(jié)目,并且沒有直接刪除冗余的開場曲,則離線優(yōu)化就可以被用來減少冗余。
■如果商業(yè)廣告被記錄,則非常有可能這些廣告之前已經(jīng)被記錄過了,并且因此是多余的,它們可以通過當(dāng)前的離線優(yōu)化而被減少。
通過介紹本發(fā)明的離線優(yōu)化方案,文件尺寸可以被優(yōu)化,而不依賴于由廣播商發(fā)送的觸發(fā)器。如果PVR采用了虛擬文件系統(tǒng)和一個抽象層,則PVR上的視頻播放器60(參見圖5)單元不需要知道文件中的參考(它將“看到”一個普通的MPEG文件)。在用于第一記錄的當(dāng)前離線優(yōu)化處理的過程中,假設(shè)發(fā)現(xiàn)該第一記錄包含一個重復(fù)部分GOP5,其可以被一個對于GOP3的參考替代。GOP5被對于GOP3的參考(19)替代,或者作為選擇,這兩個GOP也可以被一個對于公共塊的參考替代。應(yīng)該注意,當(dāng)GOP具有相同數(shù)量的幀時,便于使用對于另一個GOP的參考來替代GOP,而當(dāng)GOP具有不同數(shù)量的幀時則需要適配方案。
在本發(fā)明的另一個實(shí)施例中,為了加快在幀/GOP中的搜索,每個幀通過一個標(biāo)識符或指紋來表示。例如最簡單的標(biāo)識符是一個平均顏色系數(shù)、一個CRC碼或者音頻指紋。作為選擇,如果PVR具有因特網(wǎng)連接,則可以訪問一臺已經(jīng)計(jì)算了流行節(jié)目中的公共塊的因特網(wǎng)服務(wù)器。以這種方式,可以獲得在計(jì)算GOP的標(biāo)識符所需的CPU/盤周期數(shù)量方面的下降。離線優(yōu)化方案可以作為PVR中比文件記錄處理的優(yōu)先級低的處理來實(shí)現(xiàn),并且因此只有在具有足夠用于優(yōu)化的CPU/盤周期時才會被激活。
參照圖1,其是一個示意框圖,其示出了三個分別被標(biāo)記為“第一記錄、第二記錄和第三記錄”的所記錄的MPEG文件2、4和6。在下面的示例中,假設(shè)個人錄像機(jī)(PVR)被用于記錄圖示的視頻數(shù)據(jù)或者GOP。然而,本發(fā)明不局限于個人錄像機(jī),也可以用于相關(guān)的其它錄像機(jī)。在記錄處理完成后,通過使用本發(fā)明的不同實(shí)施例,可以通過刪除冗余的畫面組(或GOP)來減少所記錄的視頻數(shù)據(jù)文件的尺寸。也要注意到,電影中包含具有臨近音軌(或多個音軌)的畫面數(shù)據(jù)。假設(shè)音頻也被編碼在GOP中或者作為與GOP分開的磁道而存在于盤上。
在用戶記錄完各種視頻數(shù)據(jù)之后,通過離線地使用本發(fā)明可以減小視頻數(shù)據(jù)文件的尺寸。在圖2a示出的本發(fā)明的第一個實(shí)施例中,假設(shè)確定了第一記錄2的GOP5和GOP3完全相同。例如,表示GOP5的視頻數(shù)據(jù)被諸如19的簡單的參考標(biāo)志所替代,其與一個指針相關(guān)聯(lián),也就是指向GOP3的指針參考19。之后,在本例中,當(dāng)?shù)谝挥涗?被重放時,在GOP4被重放之后,一個指針參考19被檢測到,于是GOP3被再次重放,之后剩余的對應(yīng)于GOP6和GOP7的視頻數(shù)據(jù)被重放。
參照圖2b,在本發(fā)明的另一個實(shí)施例中,通過去除包含GOP3和GOP5的公共塊而減小第一記錄2的尺寸,之后分別為第一記錄2中的對應(yīng)于GOP3和GOP5的適當(dāng)?shù)拈_始位置分配用于指向公共塊GOP3的指針20和21,如圖中所示。應(yīng)該注意,所述公共塊或GOP可以被放置在一個表中以用于快速檢索,其中指定的參考指針指向包含相關(guān)GOP的表中的對應(yīng)位置。以這種方式,對硬盤上可用的記錄空間的優(yōu)化在本例中對于用戶是透明的,其中對視頻數(shù)據(jù)的重放看起來將是正常的。
參考圖2c,假設(shè)在盤空間優(yōu)化步驟的過程中,確定除了GOP5和GOP3完全相同之外,GOP6也和GOP3完全相同。在本發(fā)明的這個實(shí)施例中,指針參考22示出GOP5和GOP3完全相同,其中GOP3被重復(fù)以獲得GOP5,并且另一個參考標(biāo)識“兩個GOP,播放一次”意味著在對于GOP5重放了GOP3之后,GOP3還被作為GOP6重放,之后播放GOP7,以完成第一記錄2的重放。
圖3中示出了本發(fā)明的另一個實(shí)施例,其中分別示出了一個第一、第二和第三記錄2、4和6的示例,對于所述記錄,分別在記錄2、4和6的節(jié)目之間檢測到公共塊或公共GOP。參考指針23及其相關(guān)的編碼表明對于第一記錄2,在GOP3之后,GOP4和GOP5必須被播放,隨后是GOP6和GOP7。對于第二記錄4,指針參考24表明對于GOP11和跟著的GOP12,完全相同的塊GOP4和GOP5被分別重放以便完成對第二記錄4的重放。對于第三記錄6,參考指針25表明在播放GOP15之后,接下來播放GOP4和GOP5以分別替代GOP16和GOP17,之后播放GOP18和GOP19。同樣,視頻數(shù)據(jù)或GOP的冗余塊可以被放置在一個表中以用于檢索,其中相關(guān)聯(lián)的指針參考指向該表。
本發(fā)明的另一個實(shí)施例在圖4中示出,其中一個虛擬文件文件系統(tǒng)被與PVR一起使用。假設(shè)視頻記錄40包含代表將要被重放的視頻數(shù)據(jù)的GOP1到GOP6。參考指針26到31分別將GOP1到6導(dǎo)向一個抽象層42。抽象層42被編程來將讀取或者GOP重定向到相關(guān)硬盤的另一個位置,并且在必要時進(jìn)行適配。如圖所示,在重放期間,只有GOP1、GOP2、GOP5和GOP6被分別通過指針33和35、32和36、37以及38從硬盤44讀取出來。一個轉(zhuǎn)換表46也被存儲在硬盤44上。抽象層42包含一個用于“普通讀取塊48”的已編程區(qū)域48。抽象層42還包括一個用于利用可能的適配而從硬盤44上不同的位置讀取塊或GOP的程序區(qū)域50。同樣如圖所示,抽象層42從轉(zhuǎn)換表46獲得表明不應(yīng)從盤上讀取GOP3而應(yīng)該再次讀取GOP1的信息。長度參數(shù)表明GOP4也應(yīng)該被GOP2替代。如果一組順序的GOP可以被另一組GOP替代,則該長度參數(shù)被用于產(chǎn)生一個排序參考參數(shù)(sort referenceparameter)。
如圖4所示,在本發(fā)明的另一個實(shí)施例中,PVR配備了一個虛擬文件系統(tǒng)。在該虛擬文件系統(tǒng)中,一個抽象層42被編程以便適于從記錄40重定向讀取,該記錄40包括分別通過信號線26到31連接至抽象層42的畫面組GOP1到GOP6。在本例中,在重放視頻節(jié)目時,視頻播放器讀取GOP1到6,但是只有GOP1、GOP2、GOP5和GOP6被從硬盤44讀取。GOP1和GOP2或者被讀取兩次,或者它們能夠被高速緩存。應(yīng)該注意,抽象層42包含一個部分48,以便普通讀取分別通過信號線35到38連接到抽象層42的各塊GOP1、GOP2、GOP5和GOP6。還要注意到,如前面指出的那樣,抽象層42的部分50包含一個用于從相關(guān)盤上的不同位置處讀取各塊的區(qū)域,其中對讀取作了可能的適配。在本例中,如圖所示,塊GOP1和GOP2被讀取兩次,第二次分別通過信號線32和33被讀取到抽象層區(qū)域50。此外,硬盤44包含一個轉(zhuǎn)換表46,它被讀入到抽象層42上的一個轉(zhuǎn)換表區(qū)域52中。在本例中,GOP3以一個等于2的長度指向GOP1。參照圖5,如前所述,所述讀取是在視頻播放器60、文件抽象層42和適配塊讀取50以及存儲設(shè)備44之間進(jìn)行的。對于被替代的塊,也許需要某種形式的適配,也就是說,對于通過抽象層42和信號線32、33讀取的塊,有可能必須對時間戳、塊的持續(xù)時間、音頻和/或分辨率進(jìn)行適配。在塊50中,GOP1和GOP2被轉(zhuǎn)換(信號線32和33),這樣視頻播放器接收數(shù)據(jù)時就像從盤上讀取GOP3和GOP4一樣。圖4中的塊44表示一個隨機(jī)存儲設(shè)備,類似于用于存儲數(shù)據(jù)的硬盤。
由于可以被存儲在大硬盤上的塊或者GOP的數(shù)量非常大,因此如果所存儲的GOP被隨機(jī)地進(jìn)行比較,那么比較這些塊所需的時間/CPU(中央處理器單元)周期將會過多。因此,在本發(fā)明的另一個實(shí)施例中,由所述優(yōu)化處理來估計(jì)哪些塊與其它塊相似的幾率較高。如此標(biāo)識出來的塊被首先搜索。所述估計(jì)是通過檢測哪些塊是基于某種相似性(例如標(biāo)題、類型)來進(jìn)行的,并且進(jìn)一步基于從優(yōu)化類似的文件/標(biāo)題得到的先前的知識。
在如圖6的流程圖所示的本發(fā)明的另一個實(shí)施例中,將對用來作出所述優(yōu)化處理的估計(jì)的編程步驟進(jìn)行描述。第一步驟70是要檢查自從上一次優(yōu)化完成以來哪些視頻標(biāo)題是新的。下一個步驟71是要檢查因特網(wǎng)連接是否可用。如果該連接可用,那么在步驟77中產(chǎn)生一個從相關(guān)的因特網(wǎng)服務(wù)器獲得一個相似性表的請求,接下來的步驟78用于將該表適配為本地設(shè)備使用的格式,在本示例中,該本地設(shè)備是視頻播放器。接著在步驟72中,該表被用于更新一個被保存在硬盤上的本地參考表,這是通過添加新的標(biāo)題和GOP索引圖,正如同在下面表1的示例中描述的那樣。如果沒有可用的因特網(wǎng)連接,那么將直接從步驟71進(jìn)入更新步驟72。接下來,在步驟73中,對于哪些新標(biāo)題包含重復(fù)GOP的幾率較高執(zhí)行第一估計(jì),藉此這些標(biāo)題被放置在一個將被掃描的標(biāo)題列表(掃描列表)中。之后,在步驟74中,對每個標(biāo)題執(zhí)行掃描以找到重復(fù)的GOP,藉此在掃描了一個標(biāo)題并更新了GOP參考之后,從前述的掃描列表中刪除該標(biāo)題。之后,在步驟79中,確定是否還有標(biāo)題需要掃描,如果是,則前述掃描步驟74被立即重復(fù)。如果沒有,下一步驟80將在各MPEG標(biāo)題中掃描GOP。之后在步驟75中,對于哪些標(biāo)題具有相似塊的幾率較高進(jìn)行估計(jì),并且接著將所標(biāo)識的塊放置到一個掃描列表中。之后,在步驟81中,對該掃描列表的頭兩個標(biāo)題進(jìn)行掃描,以找到重復(fù)的塊或GOP。之后,在步驟82中,確定是否有更多的標(biāo)題需要被掃描,如果是,則對于新的掃描重復(fù)前述估計(jì)步驟75。接著,在步驟82中進(jìn)行進(jìn)一步的檢查,以便確定在硬盤上是否有任何新的視頻標(biāo)題尚未經(jīng)過關(guān)于它們是否是重復(fù)的估計(jì)處理,如果檢測到有,則通過返回步驟70重復(fù)該處理。如果已沒有標(biāo)題需要被掃描,則退出初步的優(yōu)化處理或在步驟76中止。
在本發(fā)明的另一個實(shí)施例中,之前描述的用于優(yōu)化處理的估計(jì)例程允許產(chǎn)生將在下面示出的、諸如表1和表2的參考表。更具體來說,表1示出3個記錄的節(jié)目以及它們相關(guān)的標(biāo)題、所涉及的類型以及關(guān)于表2的GOP標(biāo)識參考,表2包括一個被每個標(biāo)題所使用的GOP列表。所述優(yōu)化處理做出關(guān)于哪些記錄包含相似性(即相似的GOP)的概率較高的估計(jì)。接著,將通過對很可能具有相似性的記錄進(jìn)行處理來開始優(yōu)化處理。在上面給出的優(yōu)化處理所需的步驟的示例中,所述處理通常是從在第一記錄中尋找相似的塊而開始的。所述概率值可以基于在先前的優(yōu)化過程中所收集的數(shù)據(jù),即在先前搜索一個記錄以找到相似塊的過程中所收集的數(shù)據(jù),其中檢測到經(jīng)重新處理的新的相似塊的幾率較低。如果這樣,與某個類型相關(guān)的記錄或者從一個公共廣播頻道(也就是有很多商業(yè)廣告)記錄的記錄包含重復(fù)GOP的概率更高。
表1GOP參考表
表2假設(shè)在對圖1中的第一記錄2的各優(yōu)化步驟期間,確定GOP5和GOP3完全相同,并且GOP6和GOP4完全相同。在本發(fā)明的另一個實(shí)施一個例中,與這些重復(fù)GOP相關(guān)的參考包含一個對要重復(fù)的公共塊數(shù)量的計(jì)數(shù)器,以及一個這些塊需要被播放的次數(shù)的重復(fù)因子。因此,如表3所示,GOP5和GOP6不需要指向硬盤上的一個物理扇區(qū)的指針。如表3所示,GOP5具有和GOP3一樣的標(biāo)識符,并且GOP6具有和GOP4一樣的標(biāo)識符。例如,轉(zhuǎn)換表4示出GOP5與GOP3相對應(yīng),并且GOP6與GOP4相對應(yīng)。其中還表明這些塊對必須被播放兩次,也就是播放兩個GOP的長度。
表3轉(zhuǎn)換表
表4通過使用基于畫面組(GOP)或完整的幀呈現(xiàn)的參考來減少之前存儲的視頻數(shù)據(jù)或信息的尺寸,可以將如前所述的本發(fā)明的方法擴(kuò)展到利用存在于硬盤上的其它部分來替代GOP或幀的部分,和/或在特技播放模式中使用其它GOP。也有可能通過使用增量碼(delta code)來借助于差異標(biāo)記描述基本上但不絕對完全相同的GOP。然而,這樣的擴(kuò)展必須在可獲得的處理能力、復(fù)雜度和該優(yōu)化方法的總體效率方面進(jìn)行折衷。
在所給出的示例中,利用指紋或crc來標(biāo)識相似的塊,然而由于GOP之間的匹配是用精確匹配(GOP號相等)來標(biāo)識的,因此所給出的示例是簡化的。由于數(shù)字視頻可以使用不同的編碼參數(shù)進(jìn)行編碼,以及數(shù)字視頻甚至還可能來自模擬源并且是在存在大氣干擾的情況下記錄的,所以有可能CRC碼不精確,因此所述匹配也可以基于不必100%精確的指紋。所述指紋可以基于音頻、平均顏色系數(shù)和例如MPEG內(nèi)部的平均運(yùn)動向量,或者基于GOP中的第一個I幀的平均。
參照圖7,在本發(fā)明的另一個實(shí)施例中,GOP5是通過使用一個經(jīng)由指針箭頭62指向GOP3的參考和一個經(jīng)由指針箭頭63指向DiffGOP3,5的參考來重建的。Diff GOP3,5包含一個將GOP3轉(zhuǎn)換為GOP5的替代物的差分碼,與以其它方式獲得的替代物相比,其更加類似于原始的GOP5。然而,這樣使用雙索引只有在用于Diff GOP3,5的代碼比原始代碼小很多時(更小的盤空間和存儲器區(qū)域)才是可行的。本發(fā)明的該實(shí)施例的一個擴(kuò)展在圖8中示出,其中使用了一個差分碼,并且在本實(shí)施例中,GOP5是通過利用GOP3和Diff GOP3,5作為起始點(diǎn)來重建的。如箭頭64所示,第一塊61被直接拷貝到塊616中的GOP5。在本例中,使用Diff GOP3,5中的代碼將剩下的六個塊(即分別來自GOP3的610到615)轉(zhuǎn)換成塊617到622,由此在本例中從DiffGOP3,5中直接拷貝塊623和624(箭頭65)。
雖然在前面示出并說明了本發(fā)明的各種實(shí)施例,但所述實(shí)施例并不限于此。本領(lǐng)域技術(shù)人員可以對這些實(shí)施例作出某些修改,這些修改將被所附權(quán)利要求書的精神和范圍所覆蓋。例如,雖然前面描述的本方法說明了PVR的文件尺寸是如何通過估計(jì)存儲在相關(guān)硬盤上的視頻文件中的冗余來減小的,但是本方法卻不限于此。例如,本方法可以與其它也可以隨機(jī)訪問的介質(zhì)一起使用,例如用戶具有多個彼此連接的存儲設(shè)備,從而所述存儲設(shè)備之間的總文件尺寸可以通過使用本發(fā)明而降低。
權(quán)利要求
1.一種用于減小被先前記錄的視頻數(shù)據(jù)或信息占據(jù)的存儲設(shè)備上的存儲空間數(shù)量的優(yōu)化方法,所述方法包括如下步驟將所述存儲設(shè)備上的一個視頻記錄劃分成多個畫面組(GOP),每一個畫面組具有預(yù)定長度或數(shù)量的幀,因而一個GOP被定義為一個可以被單獨(dú)地在一個視頻播放器上播放的數(shù)據(jù)塊;從所述多個GOP中識別出重復(fù)的GOP;分別為所述多個GOP中的每個相同的GOP分配一個唯一的參考標(biāo)志,其被所述多個GOP中的隨后一個或更多GOP重復(fù);保留所述多個重復(fù)GOP中的第一次出現(xiàn)的各GOP;以及用所述多個GOP中的隨后重復(fù)的每一個GOP的各自的參考標(biāo)志來替代所述多個GOP中的隨后重復(fù)的每一個GOP。
2.如權(quán)利要求1所述的方法,其中,用于所述多個GOP中的公共的重復(fù)GOP的每一個參考標(biāo)志是一個指針參考,該指針參考指向所述第一次出現(xiàn)的重復(fù)的GOP。
3.如權(quán)利要求1所述的方法,進(jìn)一步包括如下步驟將所述多個GOP中第一次出現(xiàn)的重復(fù)GOP移動到所述存儲設(shè)備上的對應(yīng)的專用存儲位置;以及對每一個唯一的參考標(biāo)志進(jìn)行編碼,以便用一個或更多指針來表示所述參考標(biāo)志,每個所述指針從所述多個GOP中的第一個和隨后重復(fù)的GOP在所述視頻記錄中的出現(xiàn)點(diǎn)指向與其相關(guān)的第一次出現(xiàn)的GOP。
4.如權(quán)利要求1所述的方法,其中所述多個GOP的每一個GOP可以彼此具有相同或不同數(shù)量的幀。
5.如權(quán)利要求1所述的方法,進(jìn)一步包括如下步驟對所述存儲設(shè)備上的每一個獨(dú)立的視頻記錄重復(fù)所述劃分、識別、分配、保留和替代步驟。
6.如權(quán)利要求1所述的方法,進(jìn)一步包括對所述存儲設(shè)備上的多個視頻記錄執(zhí)行如下步驟對所述存儲設(shè)備上的所述多個視頻記錄進(jìn)行定位;對所述多個視頻記錄中的每一個執(zhí)行所述劃分步驟;對所述多個視頻記錄中的每一個執(zhí)行所述識別步驟;在所有的所述多個視頻記錄之間確定所述多個GOP中的公共的重復(fù)GOP;響應(yīng)于所述確定步驟,對所述多個GOP中的公共的重復(fù)GOP執(zhí)行所述分配步驟;將所述多個GOP中的公共的重復(fù)GOP的第一次出現(xiàn)的GOP移動到所述存儲設(shè)備上的對應(yīng)的專用存儲位置上;以及對所述多個視頻記錄中的每一個唯一的參考標(biāo)志進(jìn)行編碼,以便用對應(yīng)的指針來表示所述參考標(biāo)志,每個所述指針從對應(yīng)的重復(fù)GOP在每個視頻記錄中的出現(xiàn)點(diǎn)指向一個相關(guān)的第一次出現(xiàn)的GOP。
7.如權(quán)利要求1所述的方法,進(jìn)一步包括如下步驟建立一個標(biāo)識所述視頻記錄的表,并在所述表中列出該記錄的每一個單獨(dú)的GOP、每一個GOP的標(biāo)識符、每一個GOP的幀長度以及每一個GOP在所述存儲設(shè)備上的物理扇區(qū),其中所述多個GOP中的不重復(fù)的GOP和第一次出現(xiàn)的重復(fù)GOP占用所述存儲設(shè)備上的一個物理扇區(qū),并且所述多個GOP中的隨后的重復(fù)GOP不占用所述存儲設(shè)備上的物理扇區(qū),這是由于它們的標(biāo)識與它們的對應(yīng)的第一次出現(xiàn)的完全相同GOP完全相同;以及利用所述表來對該相關(guān)視頻記錄的所述多個GOP中的連續(xù)GOP進(jìn)行定位并將其輸出到一個視頻播放器。
8.如權(quán)利要求1所述的方法,進(jìn)一步包括對所述存儲設(shè)備上的多個視頻記錄執(zhí)行如下步驟對所述存儲設(shè)備上的所述多個視頻記錄進(jìn)行定位;對所述多個視頻記錄中的每一個執(zhí)行所述劃分步驟;對所述多個視頻記錄中的每一個執(zhí)行所述識別步驟;在所有的所述多個視頻記錄之間確定所述多個GOP中的公共的重復(fù)GOP;響應(yīng)于所述確定步驟,對所述多個GOP中的公共的重復(fù)GOP執(zhí)行所述分配步驟;將所述多個GOP中的公共的重復(fù)GOP的第一次出現(xiàn)的GOP移動到所述存儲設(shè)備上的對應(yīng)的專用存儲位置上;建立一個標(biāo)識所述多個視頻記錄的表,并在所述表中列出每個記錄的每一個單獨(dú)的GOP、每一個GOP的標(biāo)識符、每一個GOP的幀長度以及每一個GOP在所述存儲設(shè)備上的物理扇區(qū),其中所述多個GOP中的不重復(fù)的GOP和第一次出現(xiàn)的重復(fù)GOP占用所述存儲設(shè)備上的一個物理扇區(qū),并且所述多個GOP中的隨后的重復(fù)GOP不占用所述存儲設(shè)備上的物理扇區(qū),這是由于它們的標(biāo)識與它們的對應(yīng)的第一次出現(xiàn)的完全相同的GOP完全相同;以及利用所述表來對所述相關(guān)視頻記錄的所述多個GOP中的連續(xù)GOP進(jìn)行定位并將其輸出到一個視頻播放器。
9.如權(quán)利要求8所述的方法,進(jìn)一步包括在所述定位步驟之后立即執(zhí)行如下步驟檢查在上次執(zhí)行一個優(yōu)化處理以節(jié)省記錄空間的日期之后、所述多個視頻記錄中的哪些視頻標(biāo)題是新的;估計(jì)所述多個視頻記錄中的哪些具有新標(biāo)題的記錄包括重復(fù)GOP的概率高;以及僅對所述多個視頻記錄中的那些被標(biāo)識為具有新的標(biāo)題并且包括重復(fù)GOP的概率高的記錄作進(jìn)一步處理。
10.如權(quán)利要求9所述的方法,進(jìn)一步包括所述估計(jì)步驟進(jìn)一步包括估計(jì)所述多個視頻記錄中的哪些不具有新標(biāo)題的記錄包括重復(fù)GOP的概率高;以及所述處理步驟進(jìn)一步包括對所述多個視頻記錄中的被估計(jì)為包括重復(fù)GOP的概率高的所有記錄進(jìn)行處理。
11.如權(quán)利要求1所述的方法,進(jìn)一步包括如下步驟為所述存儲設(shè)備提供一個包括一個抽象層的虛擬文件系統(tǒng)。
12.如權(quán)利要求7所述的方法,進(jìn)一步包括如下步驟為所述存儲設(shè)備提供一個包括一個抽象層的虛擬文件系統(tǒng)。
13.如權(quán)利要求10所述的方法,進(jìn)一步包括如下步驟為所述存儲設(shè)備提供一個包括一個抽象層的虛擬文件系統(tǒng)。
14.如權(quán)利要求1所述的方法,其中所述存儲設(shè)備是一個包括一個硬盤的錄像機(jī)。
15.如權(quán)利要求7所述的方法,其中所述存儲設(shè)備是一個包括一個硬盤的錄像機(jī)。
16.如權(quán)利要求9所述的方法,進(jìn)一步包括如下步驟通過一個因特網(wǎng)/網(wǎng)絡(luò)連接從一個通過該網(wǎng)絡(luò)連接的設(shè)備上檢索優(yōu)化信息,從而減小計(jì)算GOP的相似性概率和/或標(biāo)識符所需的CPU周期數(shù)。
17.如權(quán)利要求1所述的方法,進(jìn)一步包括如下步驟利用一個Diff GOP將所述多個GOP中的所選擇的重復(fù)GOP轉(zhuǎn)換成一個更類似于一個參考GOP的經(jīng)改變的GOP。
全文摘要
一種用于減小在存儲設(shè)備上被先前記錄的視頻節(jié)目占據(jù)的存儲空間數(shù)量的優(yōu)化方法,該方法包括將每個視頻記錄劃分為多個畫面組(GOP);識別所述多個GOP中的重復(fù)的GOP;分配一個唯一的參考標(biāo)志以標(biāo)識所述GOP中的可能重復(fù)的GOP;將第一次出現(xiàn)的重復(fù)GOP保留在該存儲設(shè)備上;以及在該存儲設(shè)備上使用所述多個GOP中的隨后重復(fù)的每一個GOP的各自的參考標(biāo)志來替代所述多個GOP中的隨后重復(fù)的每一個GOP。
文檔編號H04N7/50GK1826805SQ200480021093
公開日2006年8月30日 申請日期2004年7月21日 優(yōu)先權(quán)日2003年7月24日
發(fā)明者P·J·德昂豪維 申請人:皇家飛利浦電子股份有限公司