專利名稱:存儲運動圖象專家組(mpeg)壓縮視音頻數(shù)據(jù)的方法和設備的制作方法
技術領域:
本發(fā)明涉及一種用于把音頻和視頻信息記錄到硬盤驅(qū)動器上的系統(tǒng)和方法,并特別涉及一種在從硬盤讀出音頻和視頻數(shù)據(jù)時掩蓋軟錯誤的設備和方法,具體地,涉及存儲運動圖象專家組(MPEG)壓縮視音頻數(shù)據(jù)的方法和設備。
近來,幾種錄象產(chǎn)品已經(jīng)進入了消費市場,這些產(chǎn)品允許電視觀眾使用硬盤驅(qū)動器而不是錄象磁帶來記錄他們喜愛的節(jié)目。這些系統(tǒng)包括可從Replay Networks(重放網(wǎng)絡)獲得的Replay TV system(重放電視系統(tǒng))和可從TiVo,Inc.(TiVo公司)獲得的TiVo Personal TVService(TiVo個人電視服務)。這些系統(tǒng)允許觀眾記錄14到30小時的電視節(jié)目,這些電視節(jié)目隨后能夠以任意順序觀看。另外,這些播放器允許記錄和暫停實況電視轉(zhuǎn)播,這樣觀眾可在開始時實時觀看節(jié)目并在暫停過后繼續(xù)觀看記錄的節(jié)目。在授予Takagi等人的題為TELEVISION RECEIVER,RECORDING AND REPRODUCTIONDEVICE,DATA RECORDING METHOD AND DATA REPRODUCINGMETHOD(電視接收機、記錄和再現(xiàn)設備、數(shù)據(jù)記錄法和數(shù)據(jù)再現(xiàn)法)的美國專利No.5,999,691中描述了這樣一種系統(tǒng)。
這些系統(tǒng)操作如下接收模擬或壓縮的數(shù)字電視信號;使用諸如運動圖象專家組(MPEG)規(guī)定的編碼標準壓縮模擬信號;并把壓縮的數(shù)字視頻和音頻數(shù)據(jù)存儲到硬盤驅(qū)動器上。
這些系統(tǒng)中使用的磁盤驅(qū)動器往往比諸如傳統(tǒng)的個人計算機系統(tǒng)中使用的類似磁盤驅(qū)動器貴。這是因為數(shù)字電視錄象機不容許磁盤軟錯誤。磁盤軟錯誤是在第一次讀出數(shù)據(jù)時發(fā)生但在再次讀出相同數(shù)據(jù)時不發(fā)生的錯誤。出現(xiàn)這些錯誤的原因可能是磁頭和數(shù)據(jù)磁道之間未對準,或者是由于磁盤驅(qū)動器中的磁頭的磁性能臨時發(fā)生變化。
在傳統(tǒng)的計算機磁盤驅(qū)動器中,這些錯誤在磁盤控制器中處理??刂破髟谧x取數(shù)據(jù)段時通過把檢查和、循環(huán)冗余校驗(CRC)或糾錯碼應用于檢索的數(shù)據(jù)來確定數(shù)據(jù)是否已被正確讀出。如果此處理指示數(shù)據(jù)有錯誤,則控制器重試讀操作。也就是說,它使磁盤驅(qū)動器重新讀取已從其讀出差錯段的磁道。在很多時候,第二次或第三次從磁盤中讀出數(shù)據(jù)時不會發(fā)生錯誤。在這些情況下,最初的錯誤被歸類為軟錯誤。如果重試操作不能恢復數(shù)據(jù),則該錯誤被歸類為硬錯誤。
在一些磁盤驅(qū)動系統(tǒng)中,第一次和第二次讀出數(shù)據(jù)之間包含了一個中間寫步驟,在這個寫步驟中,磁頭位于磁盤的未用部分或磁盤中含有未知數(shù)據(jù)的部分上,并且被啟動寫入少量數(shù)據(jù)。這個操作抵消了在被延長的數(shù)據(jù)讀操作期間可能出現(xiàn)的磁頭磁性能的臨時變化。大多數(shù)磁盤驅(qū)動器包括用作備用磁道的未用部分。這些磁道代替磁盤主要部分中的不良磁道。由于在軟錯誤之后執(zhí)行的寫操作期間寫入的數(shù)據(jù)并不重要,所以該操作可在備用段之一或者甚至可在磁盤的一個已知不良段上執(zhí)行。另外,所有的磁盤驅(qū)動器都包括含有已知信息的磁道頭。磁盤控制器可把已知數(shù)據(jù)重寫到磁道頭中,而不是把隨機信息寫入備用或不良磁道。
盡管磁盤驅(qū)動器通??梢詮能涘e誤完全恢復數(shù)據(jù),但無疑不能從硬錯誤恢復數(shù)據(jù)。一般地,磁盤驅(qū)動器通過把出現(xiàn)硬錯誤的段標記為不良磁盤段來處理這類錯誤。該段則不用于隨后的寫和讀操作并且在該段中的任何數(shù)據(jù)都會丟失。
視盤錄象機,具有磁盤軟錯誤所帶來的問題,涉及第一和第二讀操作之間的磁盤等待時間。舉例來說,如果磁盤以每分鐘3600轉(zhuǎn)(RPM)旋轉(zhuǎn),則第一磁盤讀操作和重試讀操作之間的旋轉(zhuǎn)等待時間約為16毫秒。這個時間量等于用于顯示隔行掃描視頻信號的一個視頻場或逐行掃描視頻信號的一個視頻幀的時間量。因此,如果磁盤驅(qū)動器在發(fā)生軟錯誤時執(zhí)行一個或多個重試操作,則輸入數(shù)據(jù)流事實上被延遲了至少一場或一幀的間隔。在輸入數(shù)據(jù)流中,根據(jù)MPEG標準壓縮的數(shù)據(jù)甚至不容許細微的延遲。在MPEG標準中,每個圖象都已定義了它要被解碼和顯示的次數(shù)。如果軟錯誤延遲了從磁盤進行的數(shù)據(jù)恢復操作,則解碼器不能及時處理數(shù)據(jù)來滿足這些定時要求。
傳統(tǒng)的基于磁盤的錄象系統(tǒng)通過忽略磁盤軟錯誤來解決這個問題。無論出現(xiàn)的磁盤錯誤是軟錯誤還是硬錯誤,損壞的數(shù)據(jù)都傳送到解碼器上,并且系統(tǒng)不再重試磁盤的讀操作。當解碼器識別出數(shù)據(jù)已損壞時,它通過使用傳統(tǒng)的漏碼補償電路至少可以部分掩蓋錯誤,該漏碼補償電路重復前一場或幀來補償視頻流中的錯誤并且抑制音頻信號來補償音頻數(shù)據(jù)流中的錯誤。如果解碼器未識別出已被破壞的數(shù)據(jù),則它著手將其解碼,從而可能引起另外的音頻和視頻失真。
另外,為了彌補磁盤軟錯誤補償?shù)牟蛔?,傳統(tǒng)的電視記錄系統(tǒng)使用的磁盤驅(qū)動器可設計為盡可能地減少軟錯誤。不利地是,這樣會增加基于磁盤的視頻系統(tǒng)的成本。磁盤驅(qū)動器中的軟錯誤的頻率往往隨著驅(qū)動器使用時間的增加而增加。因而使再現(xiàn)的電視節(jié)目的質(zhì)量下降。
本發(fā)明實現(xiàn)在使用具有軟錯誤重試能力的傳統(tǒng)磁盤驅(qū)動器的基于磁盤的錄象系統(tǒng)中。該系統(tǒng)通過以節(jié)目基本流(program elementarystream)(PES)包的格式來格式化并記錄數(shù)字壓縮的視頻和音頻數(shù)據(jù)來盡可能減小由軟錯誤重試造成的破壞。當這些包被恢復時,音頻和視頻數(shù)據(jù)被存儲在獨立的緩沖器中。音頻緩沖器的大小滿足不破壞而進行軟錯誤重試。在視頻數(shù)據(jù)流中出現(xiàn)的軟錯誤通過使用傳統(tǒng)的視頻漏碼補償法處理。
根據(jù)本發(fā)明的一個方案,該系統(tǒng)繼續(xù)處理在軟錯誤之后恢復的視頻數(shù)據(jù)流,直到并不用作另一個圖象的參考的下一個圖象被解碼為止。解碼器則充滿來自緩沖器的此圖象的數(shù)據(jù)并且按順序開始解碼下一個圖象。這個操作允許系統(tǒng)從重試操作期間發(fā)生的視頻信號的任何延遲恢復并且允許視頻數(shù)據(jù)流與音頻數(shù)據(jù)流再次同步。
圖1所示為包括本發(fā)明一個實施例的基于磁盤的電視記錄和顯示系統(tǒng)的框圖。
圖2a至2f所示為用于描述本發(fā)明操作的圖1的電視接收機中所示的視頻和音頻緩沖器的數(shù)據(jù)圖。
圖3是用于描述在出現(xiàn)磁盤錯誤時的磁盤記錄系統(tǒng)的操作流程圖。
圖4是用于描述圖1所示系統(tǒng)如何處理視頻錯誤的流程圖。
為了簡便起見,本發(fā)明僅依據(jù)基于幀的MPEG視頻解碼系統(tǒng)來描述。但也可考慮本發(fā)明與基于場的系統(tǒng)一起使用。
MPEG標準定義了一種復合的編碼處理,通過該處理可以消除視頻和音頻信號中的時間和空間冗余,從而達到高壓縮率。視頻壓縮技術中的一個關鍵因素是通過運動補償編碼來消除時間冗余。MPEG信號是以三種不同的幀格式I-幀、P-幀和B幀混合的形式編碼。I-幀僅僅使用其幀本身的數(shù)據(jù)進行編碼,而P和B幀是預測編碼。P-幀是根據(jù)之前編碼的I-幀或P-幀中的數(shù)據(jù)預測編碼的,并且B-幀使用來自之前編碼的I-幀和P-幀或者來自接收的前兩個P-幀的數(shù)據(jù)進行雙向編碼。因此,I-幀僅僅使用所記錄的I-幀中的數(shù)據(jù)就可以恢復,而P和B幀則需要來自之前解碼的幀中的數(shù)據(jù)來完全解碼。B-幀不用于編碼其它任何幀。在僅使用I和P幀的系統(tǒng)中,一些P-幀不用于解碼其它任何幀。
當視頻信號根據(jù)MPEG標準編碼時,為了盡可能減小任何I-幀中錯誤的影響,I-幀只以周期性的間隔出現(xiàn)。由于隨后的P和B幀根據(jù)I幀中的數(shù)據(jù)而定,所以I幀中的錯誤延伸到了隨后的P和B幀。
在壓縮電視信號時,視頻和音頻信息被分開并且被單獨編碼。編碼的視頻I、B和P幀根據(jù)MPEG標準編碼并且隨后被格式化為可變長視頻節(jié)目基本流(PES)包。類似地,音頻信息被編碼并格式化為可變長音頻PES包。一般地,一個PES包包括一個存取單元,一個編碼圖象(即場或幀)或一個編碼音頻幀。視頻和音頻PES包隨后被格式化為傳輸包,每個傳輸包具有一個包頭和一個固定長度的數(shù)據(jù)字段。在大多數(shù)的現(xiàn)有數(shù)字視頻記錄系統(tǒng)中,正是這些傳輸包記錄在了記錄介質(zhì)上。電視信號被記錄為具有混合的音頻、視頻和數(shù)據(jù)傳輸包的單個數(shù)據(jù)流。
因此,在軟錯誤發(fā)生并被忽略時,音頻和視頻信息均丟失,如果丟失的視頻信息量達到了整個幀,則可使用傳統(tǒng)的視頻漏碼補償技術將其處理,例如,在本應顯示該丟失幀的時間重復之前存儲的幀。這些技術不會破壞視頻流,特別是在僅僅重復一或兩幀的時候。因此,觀眾容易忽略由視頻漏碼補償技術引起的失真。但是,用于從音頻錯誤進行恢復的漏碼補償方案會具有非常大的破壞性。舉例來說,如果在音頻節(jié)目的高音部分發(fā)生漏碼,則現(xiàn)有的漏碼補償技術在此間隔期間抑制音頻會引起音頻電平的快速下降。這類錯誤難以忽略。
通過以PES包的格式分別記錄音頻和視頻數(shù)據(jù),本發(fā)明減輕了由于軟錯誤或軟錯誤的重試所引起的破壞。當從磁盤恢復PES包時,PES包存儲在單獨的緩沖器中。音頻緩沖器中的編碼數(shù)據(jù)所表示的時間量比視頻緩沖器中的編碼數(shù)據(jù)所表示的時間量要大。根據(jù)本發(fā)明,它的尺寸可包容多個軟錯誤,以使音頻信號可以無破壞地恢復。本發(fā)明一個典型實施例的視頻緩沖器所確定的尺寸可以處理通過響應一個軟錯誤而發(fā)生的較少量的重試操作。如果重試操作延遲的視頻信息足以使視頻和音頻信息不再同步,則本發(fā)明的一個實施例通過去除隨后的P或R幀而使視頻流返回至與音頻流同步。因此,使用基于本發(fā)明的系統(tǒng)的觀眾感覺到的是偶爾有重復幀的基本上未中斷的音頻信號和視頻信號。感覺到的視頻信號的破壞比傳統(tǒng)的基于磁盤的視頻記錄系統(tǒng)要少,同時基于本發(fā)明的系統(tǒng)還使用了不貴的磁盤驅(qū)動器。
圖1是本發(fā)明一個實施例的電視接收機的框圖。該接收機包括天線110,它接收廣播模擬和數(shù)字視頻信號或數(shù)字衛(wèi)星電視信號,并把這些信號應用到調(diào)諧器112。當調(diào)諧器112接收模擬信號時,它把獨立的基帶模擬視頻信號和模擬音頻信號分別提供給視頻信號處理器114和音頻信號處理器116。這些處理器把接收的信號轉(zhuǎn)換為適于通過電視接收機再現(xiàn)的視頻和音頻信號。這些信號提供給了隨后將描述的開關156的第一視頻和音頻輸入端。
由處理器114和116提供的模擬視頻和音頻信號還在模數(shù)轉(zhuǎn)換器(ADC)118和120中數(shù)字化。ADC118和120把視頻和音頻信號存儲到與MPEG編碼器126連接的緩沖存儲器122和124中。MPEG編碼器126壓縮視頻和音頻信號并將壓縮信號格式化為PES包。由此產(chǎn)生的PES包寫入緩沖存儲器136中。在讀寫控制電路144的控制下,存儲器136把PES包存儲到磁盤驅(qū)動器138中。
當調(diào)諧器112接收數(shù)字電視信號時,它把信號應用到用于從數(shù)字電視信號恢復傳輸包流的數(shù)字解調(diào)器130。這些包應用于傳輸解碼器132,在本發(fā)明的典型實施例中,該解碼器132把傳輸包重新格式化為PES包。PES包應用到存儲器134和緩沖存儲器136以寫入到磁盤驅(qū)動器138上。在處理器146的控制下,通過響應讀/寫控制電路144,視頻和音頻PES包從磁盤驅(qū)動器138中恢復。恢復的音頻PES包存儲到緩沖存儲器140中,而恢復的視頻包存儲到緩沖存儲器142中。來自緩沖存儲器140和142的音頻和視頻PES包應用到多路復用器148的兩個數(shù)據(jù)輸入端口。多路復用器148的另兩個數(shù)據(jù)輸入端口被連接用于接收由傳輸解碼器132從實時廣播恢復且存儲到緩沖存儲器134中的相應的音頻和視頻PES包。
讀/寫控制電路144監(jiān)控緩沖器140和142的滿度,以控制從磁盤驅(qū)動器138的數(shù)據(jù)的讀出。每個緩沖器有一個存儲滿度指示符和兩個停止點、一個高水位和一個低水位。當緩沖器中的數(shù)據(jù)量大于或等于高水位時,電路144停止該緩沖器從磁盤驅(qū)動器138讀出數(shù)據(jù)。當其中一個緩沖存儲器的數(shù)據(jù)量低于低水位時,控制器144防止MPEG解碼器從緩沖器讀出數(shù)據(jù)。磁盤的傳輸速度足以使緩沖器被填充的速度遠大于MPEG解碼器150清空緩沖器中數(shù)據(jù)的速度。
響應處理器146提供的控制信號MXC,多路復用器148把來自存儲器134的PES包或來自存儲器140和142的PES包提供給MPEG解碼器150。MPEG解碼器150把數(shù)字視頻和音頻信號提供給相應的數(shù)模轉(zhuǎn)換器(DAC)152和154。
DAC152和154提供的模擬音頻和視頻信號應用到開關156的兩個數(shù)據(jù)輸入端口。如上所述,開關156的另兩個數(shù)據(jù)輸入端口被連接以接收處理器114和116提供的實時解碼的模擬視頻和音頻信號。開關156響應處理器146提供的信號以把解碼的MPEG音頻和視頻信號或處理器116和114提供的音頻和視頻信號應用到相應的音頻和視頻再現(xiàn)電路160和158。電路160可包括諸如音頻放大、均衡和音調(diào)控制電路。電路160提供的輸出音頻信號通過揚聲器系統(tǒng)164再現(xiàn)。視頻電路158包括諸如彩色和色調(diào)處理電路以及亮度和黑電平電路。電路158提供的視頻信號產(chǎn)生圖象以在顯示設備162上顯示。
在操作中,本發(fā)明的典型實施例在緩沖存儲器136接收PES包時將它們存儲到磁盤驅(qū)動器138中。這些包隨后從磁盤驅(qū)動器讀入音頻緩沖器140和視頻緩沖器142。在本發(fā)明的典型實施例中,音頻緩沖器256千字節(jié)的緩沖器,它包含諸如10秒的壓縮音頻數(shù)據(jù)。典型的視頻緩沖器142是一個3兆字節(jié)的存儲器,它包含諸如三幀的壓縮視頻數(shù)據(jù)。
由于磁盤驅(qū)動器是用于個人計算機系統(tǒng)的相同類型的傳統(tǒng)單元,所以當發(fā)生軟錯誤時,它重試前面的讀操作。在這段時間中,MPEG解碼器150接收來自音頻和視頻緩沖器140和142的信息,但是,沒有信息從磁盤驅(qū)動器138存儲到緩沖器中,直到重試操作成功為止。
在本發(fā)明的所有實施例中,音頻緩沖器140要足夠大,以便即使在發(fā)生軟錯誤時也能夠繼續(xù)把音頻信息提供給MEPG解碼器150。因此,當發(fā)生軟錯誤時,觀眾將不會意識到電視信號的音頻部分的中斷。
MPEG解碼器150使內(nèi)部時鐘信號與輸入數(shù)據(jù)流同步。這個時鐘信號確定視頻幀何時發(fā)送到視頻電路158以進行顯示并且確定相伴的音頻信號何時發(fā)送到音頻信號處理電路160。由于在本發(fā)明中音頻數(shù)據(jù)流沒有中斷,所以MPEG解碼器150可被改進以用于優(yōu)先檢索用于同步來自音頻PES包或來自音頻比特流的時鐘信號的定時信息。
在本發(fā)明的第一實施例中,只要一檢測到軟錯誤,處理器146就禁止視頻緩沖器142把數(shù)據(jù)提供給MPEG解碼器150。處理器146則把信號傳送給解碼器150以重復當前正在顯示的幀,直到磁盤驅(qū)動器138已經(jīng)從軟錯誤恢復為止。每次出現(xiàn)軟錯誤時,由于停止視頻包的解碼同時繼續(xù)解碼音頻包,所以本發(fā)明的這個實施例失去了音頻和視頻包之間的同步。為了使節(jié)目的視頻和音頻部分再次同步,處理器146通過讀寫控制電路144控制視頻緩沖器142以去除沒有用作其它任何幀的參考幀的一個或多個隨后的B幀或P幀。此數(shù)據(jù)的丟失使節(jié)目的視頻部分處于音頻節(jié)目之前,從而使視頻緩沖器再次與音頻緩沖器同步。
通常,磁盤驅(qū)動器能夠以遠大于MPEG解碼器150使用數(shù)據(jù)的速率把磁盤中的數(shù)據(jù)讀入緩沖器140和142中。相應地,在發(fā)生軟磁盤錯誤之后,如果緩沖器接近它們的低水位,則系統(tǒng)迅速把數(shù)據(jù)從磁盤傳送到緩沖器中以使緩沖器返回至它們的高水位。
根據(jù)本發(fā)明的第二實施例,視頻緩沖器142包括的存儲量足以存儲不止一個圖象幀(例如,三幀)。當發(fā)生軟錯誤時,重試操作恢復丟失的數(shù)據(jù)并將其存儲到緩沖器142中。由于緩沖器包括的存儲量即使在軟錯誤恢復期間也足以繼續(xù)提供視頻信息,因此視頻信號在發(fā)生軟錯誤時沒有中斷。但是,如果在緩沖器中的所有可用數(shù)據(jù)都被讀出后繼續(xù)有軟錯誤,則節(jié)目的視頻部分可能會失去與音頻節(jié)目的同步。緩沖器則如上所述被再次同步。
在本發(fā)明的第三實施例中,在從磁盤驅(qū)動器提供數(shù)據(jù)時的延遲引起視頻緩沖器142的下溢。當發(fā)生下溢時,MPEG解碼器150啟動其漏碼補償算法以顯示當前的視頻圖象,直到可再次從視頻緩沖器142中獲得有效數(shù)據(jù)為止。舉例來說,如果在視頻緩沖器142正在向MPEG解碼器150提供I-幀數(shù)據(jù)時發(fā)生下溢,則MPEG解碼器150可將當前的圖象顯示幾幀的間隔,直到下一個I-幀可用來解碼為止。如上所述,處理器146通過有選擇地去除B和或P幀而再次使音頻和視頻數(shù)據(jù)流同步。
圖2a至2f是視頻緩沖器的圖,它們示出了在出現(xiàn)軟錯誤時的本發(fā)明典型實施例的操作。圖2a和2b表示在出現(xiàn)軟錯誤之前的音頻緩沖器140和視頻緩沖器142。盡管它們所示為線性緩沖器,但在本發(fā)明的典型實施例中,緩沖器140和142是具有循環(huán)讀和寫指針的循環(huán)緩沖器。在圖2a至2f中,緩沖器從右到左填充。舉例來說,在圖2a中,寫指針210比讀指針212提前ΔT音頻的時間量。時間ΔT音頻表示用于表示從緩沖器中的編碼數(shù)據(jù)產(chǎn)生的解碼音頻信號的時間量。這是一個不需要再把數(shù)據(jù)寫入音頻緩沖器140就可以從音頻緩沖器讀出數(shù)據(jù)的時間量。如上所述,在本發(fā)明的典型實施例中,ΔT音頻約為十秒。以相同的方式,視頻緩沖器142包括以時間量ΔT視頻分開的寫指針220和讀指針222。在本發(fā)明的典型實施例中,ΔT視頻約為三幀的間隔。
在沒有硬磁盤錯誤時,時間量ΔT音頻和ΔT視頻將基本保持為常數(shù),只會因為MPEG編碼數(shù)據(jù)的壓縮效率而變化。
圖2c和2d表示就在磁盤驅(qū)動器138中的軟錯誤的重試之后的音頻緩沖器140和視頻緩沖器142。在這個重試間隔期間,沒有新數(shù)據(jù)寫入音頻緩沖器140或視頻緩沖器142,但是數(shù)據(jù)通過MPEG解碼器150已經(jīng)從這些緩沖器中讀出。因此,圖2c和2d所示緩沖器的時間量ΔT音頻和ΔT視頻相對于圖2a和2b中所示的時間量來說是減少的。盡管圖2d所示為重試操作之后的視頻緩沖器142的正時間ΔT視頻,但應當考慮重試操作可能會引起視頻緩沖器142的下溢。當讀指針低于為該緩沖器定義的低水位時發(fā)生下溢。另外,當讀指針與寫指針地址相同而使ΔT視頻為零時,也會發(fā)生下溢。如上所述,當發(fā)生下溢時,MPEG解碼器150執(zhí)行其漏碼補償算法以使當前幀被連續(xù)顯示,直到讀/寫控制器144存儲到緩沖器142中的數(shù)據(jù)足以使ΔT視頻大于零為止。
作為另一個可選方案,在發(fā)生軟錯誤時,解碼器150可繼續(xù)顯示數(shù)據(jù),直到其到達當前幀的結(jié)尾為止,并且接著重復當前幀,直到重試操作成功為止。如果使用這種方法,則視頻信息會失去與音頻信息的同步,因為視頻信息被重復而音頻信息卻在不間斷播放。
根據(jù)本發(fā)明的這個典型實施例,在完成軟錯誤恢復之后,視頻解碼繼續(xù)使用緩沖器142中的數(shù)據(jù),如果編碼數(shù)據(jù)流包括B-幀,則直到出現(xiàn)下一個B-幀為止,或者如果編碼數(shù)據(jù)流不包括B-幀,則直到下一個P-幀出現(xiàn)為止。在下一個P或B幀的時間,MPEG解碼器150充滿來自緩沖器142的P或B幀數(shù)據(jù),并且立即開始解碼刪除幀之后的下一幀。這個步驟使得視頻流相對提前于音頻流。這個處理重復隨后的P或B幀,直到視頻和音頻PES包再次同步為止。
圖3和4是表示在出現(xiàn)磁盤錯誤時的圖1所示系統(tǒng)的操作流程圖。例如,圖3所示的處理是在處理器146中通過響應由磁盤驅(qū)動器138通知的磁盤錯誤而發(fā)生的中斷處理。而圖4所示的處理是管理MPEG解碼器150的穩(wěn)態(tài)處理的一部分。
在圖3中,當在步驟310發(fā)生磁盤錯誤時,在步驟312,典型的中斷處理確定錯誤是軟錯誤還是硬錯誤。如果該錯誤是硬錯誤,也就是說差錯數(shù)據(jù)不能恢復,則在步驟320,處理器使磁盤驅(qū)動器138把差錯段標記為不良段,并且在步驟322標記緩沖存儲器140和142中的數(shù)據(jù)為來自刪除幀的數(shù)據(jù)。存儲器中的這個指示使得MPEG解碼器在數(shù)據(jù)從音頻和視頻緩沖器捕獲時啟動音頻和視頻漏碼補償算法。但是,如果在步驟312確定磁盤錯誤是軟錯誤,則處理從步驟312轉(zhuǎn)移到步驟314,在該步驟確定視頻數(shù)據(jù)流是否仍然與音頻流同步。舉例來說,這個步驟可以接收來自解碼器150的信號以表示視頻漏碼補償操作已經(jīng)啟動。另外,處理器146可從相應的音頻和視頻PES包的包頭讀出解碼時間戳,其中音頻和視頻PES包是從緩沖存儲器140和142提供給MPEG解碼器150的。如果在幾個包傳輸?shù)臅r間之間有一個平均固定位移,則音頻和視頻數(shù)據(jù)流不同步。如果在步驟314兩個數(shù)據(jù)流仍然同步,則視頻軟錯誤通過緩沖器中的數(shù)據(jù)處理并且中斷在步驟318結(jié)束。
但是,如果在步驟314視頻數(shù)據(jù)流不再與音頻流同步,則控制轉(zhuǎn)換到步驟316,在該步驟把一個變量FRAME_SYNC設置為表示視頻數(shù)據(jù)流滯后于音頻數(shù)據(jù)流的若干圖象幀間隔的值。在步驟316和步驟322之后,圖3的處理在步驟318結(jié)束。
由于音頻緩沖器140具有的存儲量足以通過磁盤軟錯誤重試進行恢復,所以在MPEG解碼算法的音頻部分中不需要特殊的處理。圖4表示與本發(fā)明實施例一起使用的視頻解碼算法的改進。在本發(fā)明的這個實施例中,編碼的視頻信號包括I-幀、P-幀和B-幀。在本發(fā)明的這個典型實施例中,在步驟410,當MPEG解碼器150正在解碼B-幀時,它在步驟412檢驗變量FRAME_SYNC是否大于零,如果是,則解碼器刪去B-幀并且立即開始解碼該B-幀之后的下一幀。而且在步驟414,變量FRAME_SYNC減小。在步驟410,如果B-幀沒有被解碼或者如果在步驟412變量FRAME_SYNC小于或等于零或者在步驟414之后,改進的處理在步驟416結(jié)束。
如上所述,如果編碼的視頻流不包括B-幀,則圖4所示的算法可使用P-幀來代替B-幀。在這種情況下,如果一個P-幀不用于解碼其它任何P-幀,則只有將其刪除。
盡管本發(fā)明是根據(jù)典型實施例描述的,但可以考慮在所附權利要求的范圍內(nèi)按照上面的描述來實施本發(fā)明。
權利要求
1.一種用于存儲存儲運動圖象專家組(MPEG)壓縮視音頻數(shù)據(jù)的方法,該方法存儲已經(jīng)根據(jù)運動圖象專家組(MPEG)所規(guī)定的標準壓縮的視頻和音頻數(shù)據(jù),該方法包括步驟把視頻和音頻數(shù)據(jù)格式化為相應的節(jié)目基本流(PES)包把視頻和音頻PES包記錄到磁盤上;從磁盤檢索視頻和音頻PES包;把檢索的視頻和音頻PES包存儲到相應的視頻和音頻緩沖器中;并且把解碼的音頻和視頻PES包從相應的音頻和視頻緩沖器提供到MPEG解碼器。
2.根據(jù)權利要求1的方法,其中把音頻和視頻PES包存儲到相應的音頻和視頻緩沖器中的步驟包括步驟存儲表示足量音頻信息的音頻PES包,以便于在由于磁盤上的軟錯誤而沒有數(shù)據(jù)存儲到緩沖器的間隔期間也可以向MPEG解碼器提供數(shù)據(jù)。
3.根據(jù)權利要求2的方法,其中MPEG解碼器包括內(nèi)部時鐘信號并且該方法還包括使該內(nèi)部時鐘信號與音頻緩沖器提供的音頻PES包同步的步驟。
4.根據(jù)權利要求2的方法,還包括步驟監(jiān)控磁盤的軟錯誤;當出現(xiàn)軟錯誤時,使MPEG解碼器重復顯示當前幀;以及在發(fā)生軟錯誤后,執(zhí)行步驟確定提供給MPEG解碼器的音頻和視頻PES包是否在時間上同步;如果這些包不同步,則監(jiān)控緩沖器所存數(shù)據(jù)中的不用于解碼其它任何圖象的編碼圖象,并且去除對應于不用于解碼其它任何圖象的編碼圖象的視頻PES包,直到音頻和視頻PES包在時間上同步。
5.存儲運動圖象專家組(MPEG)壓縮視音頻數(shù)據(jù)設備,該設備用于存儲已經(jīng)根據(jù)運動圖象專家組(MPEG)所規(guī)定的標準壓縮的視頻和音頻數(shù)據(jù),該設備包括傳輸解碼器,接收包括格式化為傳輸包的壓縮音頻和視頻數(shù)據(jù)的比特流并且把壓縮的音頻和視頻數(shù)據(jù)再次格式化為相應的節(jié)目基本流(PES)包;磁盤驅(qū)動器,音頻和視頻PES包記錄在該磁盤驅(qū)動器上;音頻緩沖存儲器,用于檢索和存儲來自磁盤的音頻PES包;視頻緩沖存儲器,用于檢索和存儲來自磁盤的視頻PES包;MPEG解碼器,被連接以接收來自相應的音頻和視頻緩沖存儲器的音頻和視頻PES包。
6.根據(jù)權利要求5的設備,其中音頻緩沖存儲器具有的存儲量足以向MPEG解碼器提供由于磁盤上的軟錯誤而沒有數(shù)據(jù)存儲到緩沖器中的時間量的音頻數(shù)據(jù)。
7.根據(jù)權利要求6的設備,其中音頻緩沖存儲器具有的存儲量足以包含表示約10秒的音頻輸出的編碼音頻數(shù)據(jù)。
8.根據(jù)權利要求6的設備,其中磁盤提供表示已經(jīng)發(fā)生軟錯誤的信號;MPEG解碼器通過響應來自磁盤的軟錯誤信號而重復顯示當前幀;并且該設備還包括處理器,連接到音頻和視頻緩沖器以確定提供給MPEG解碼器的音頻和視頻PES包是否在時間上同步,其中,如果這些包不同步,則處理器監(jiān)控緩沖器所存數(shù)據(jù)中的不用于解碼其它任何圖象的編碼圖象,并且去除對應于不用于解碼其它任何圖象的圖象的視頻PES包,直到音頻和視頻PES包在時間上同步。
9.根據(jù)權利要求6的設備,其中視頻緩沖器包括的存儲量足以向MPEG解碼器提供由于磁盤上的軟錯誤而沒有數(shù)據(jù)存儲到緩沖器中的時間量的視頻數(shù)據(jù);并且該設備還包括處理器,連接到音頻和視頻緩沖器以確定提供給MPEG解碼器的音頻和視頻PES包是否在時間上同步,其中,如果這些包不同步,則處理器監(jiān)控緩沖器所存數(shù)據(jù)中的不用于解碼其它任何圖象的編碼圖象,并且去除對應于不用于解碼其它任何圖象的編碼圖象的視頻PES包,直到音頻和視頻PES包在時間上同步。
10.根據(jù)權利要求9的設備,其中視頻緩沖器包括的存儲量足以存儲表示三幀視頻信息的編碼數(shù)據(jù)。
全文摘要
視頻數(shù)據(jù)存儲系統(tǒng)把MPEG數(shù)據(jù)存儲到硬盤驅(qū)動器上。傳輸解碼器接收包括格式化為傳輸包的壓縮音頻和視頻數(shù)據(jù)并把壓縮的音頻和視頻數(shù)據(jù)再次格式化為節(jié)目基本流(PES)包。系統(tǒng)把音頻和視頻PES包存儲到磁盤上。該系統(tǒng)還包括獨立的音頻和視頻緩沖存儲器,存儲從磁盤驅(qū)動器讀出的音頻和視頻PES包。MPEG解碼器單獨存取相應的音頻和視頻緩沖存儲器的音頻和視頻數(shù)據(jù)。音頻緩沖器具有的存儲量足以向MPEG解碼器提供表示十秒鐘解碼的音頻信號的音頻數(shù)據(jù)。
文檔編號H04N5/76GK1321044SQ0110974
公開日2001年11月7日 申請日期2001年3月29日 優(yōu)先權日2000年3月31日
發(fā)明者拉里·菲利普斯, 里克·康諾弗, 庫爾特·達斯廷 申請人:松下電器產(chǎn)業(yè)株式會社