專利名稱:用于控制數(shù)字視頻比特流逆向播放的裝置和方法
技術(shù)領(lǐng)域:
本發(fā)明涉及MPEG視頻播放器,并且更確切地說,涉及控制用于MPEG視頻流逆向播放的緩沖器的裝置和方法。
背景技術(shù):
通常,配置MPEG視頻播放器以能夠執(zhí)行正常播放和逆向播放操作,其中,由諸如數(shù)字視頻光盤(DVD)或數(shù)字視頻記錄器(DVR)這樣的數(shù)字視頻數(shù)據(jù)存儲介質(zhì)提供已壓縮的視頻比特流。DVR包括硬盤驅(qū)動器和大容量存儲器。
依照國際標(biāo)準(zhǔn)化組織(ISO)制定的MPEG標(biāo)準(zhǔn),MPEG視頻比特流由許多分成幀內(nèi)編碼幀(I幀)、預(yù)測編碼幀(P幀)、雙向預(yù)測編碼幀(B幀)的幀組組成。I幀是獨立編碼的,并且在所述三個幀類型中編碼效率最低。P幀比I幀編碼效率高,并且與先前編碼的I幀或P幀相關(guān)地進(jìn)行編碼。B幀在所述三個幀類型中編碼效率最高,并且與前一個及下一個I或P幀相關(guān)地進(jìn)行編碼。
MPEG系統(tǒng)中的視頻比特流包括多于一個的畫面組(GOP),每個GOP包括許多畫面(或幀)。依照從已編碼的I幀到與這些I幀相關(guān)的P或B幀的再現(xiàn)順序?qū)@些畫面組進(jìn)行訪問。
MPEG視頻播放器中的逆向播放的典型方法包括與正常MPEG編碼的視頻比特流的再現(xiàn)順序相反地對比特流進(jìn)行解碼。在逆向播放中,最希望在與正常輸出順序相反的方向上再現(xiàn)比特流。但是,除非不將I幀作為相關(guān)幀(P或B)的參考幀再現(xiàn),全部再現(xiàn)P或B幀有可行性限制。
在1994年9月29日提交的日本專利申請第06-262030號(日本出版號第08-102913號)中提出了用于MPEG視頻比特流的逆向播放技術(shù)的一個例子。該日本申請建議以與編碼順序相反的順序解碼并播放已編碼的視頻比特流。
參考圖1,傳統(tǒng)的MPEG播放器10包括位于其輸入側(cè)的切換電路2和4以及數(shù)據(jù)存儲器6。當(dāng)切換電路2和4連接在端子A上時,將輸入數(shù)據(jù)IN連接到視頻解碼器8上。當(dāng)切換電路2和4連接在端子B上時,將輸入數(shù)據(jù)IN寫入到數(shù)據(jù)存儲器6并從數(shù)據(jù)存儲器6中讀出。在逆向播放模式中,視頻解碼器8解碼每一幀,并利用數(shù)據(jù)存儲器6和幀存儲器20,輸出逆向播放視頻數(shù)據(jù)OUT。以比特流順序的相反方向輸出該數(shù)據(jù)OUT。以正向輸入并且反向播放每一組的畫面。
更具體地說,當(dāng)將I畫面輸入到MPEG播放器10時,將切換電路2和4切換到端子A,并且關(guān)閉切換電路18。因此,視頻解碼器8對I畫面解碼,并且,接下來,將來自視頻解碼器8的再現(xiàn)的I畫面數(shù)據(jù)寫入到幀存儲器20。當(dāng)以與I畫面的情況相同的切換電路2、4及18的連接狀態(tài)輸入P畫面時,P畫面視頻解碼器8將P畫面解碼。接下來,將由視頻解碼器8解碼的差值圖像數(shù)據(jù)和與P畫面相關(guān)的運(yùn)動矢量數(shù)據(jù)施加到加法器12。由運(yùn)動補(bǔ)償電路14提供該運(yùn)動矢量數(shù)據(jù)。這樣,幀存儲器20接收到P畫面的預(yù)測圖像數(shù)據(jù)和再現(xiàn)圖像數(shù)據(jù)以存儲。由運(yùn)動補(bǔ)償電路14得到該預(yù)測圖像數(shù)據(jù),使用該運(yùn)動補(bǔ)償電路14,通過將一個幀選擇數(shù)據(jù)施加到幀存儲器20,得到當(dāng)前輸入的P畫面前一幀的再現(xiàn)的P畫面數(shù)據(jù)或再現(xiàn)的I畫面數(shù)據(jù)(比如,畫面組“GOPs”中的第一個P畫面)。在加法器12,將P畫面的再現(xiàn)圖像數(shù)據(jù)加到已解碼的差值圖像數(shù)據(jù)。
當(dāng)輸入B畫面時,將切換電路2和4連接到它們的端子B以將每一GOP中的B畫面?zhèn)魉偷綌?shù)據(jù)存儲器6。
因此,MPEG播放器10采用處于視頻解碼器8前端的數(shù)據(jù)存儲器6用于執(zhí)行逆向播放操作。將I畫面和P畫面寫入到幀存儲器20或者從幀存儲器20讀出,而B畫面以先進(jìn)后出(FILO)方式寫入到數(shù)據(jù)存儲器6或者從數(shù)據(jù)存儲器6取回。從數(shù)據(jù)存儲器6讀出的B畫面被解碼,并且進(jìn)入到關(guān)于I畫面或者P畫面的運(yùn)動補(bǔ)償過程中,并且用作與從幀存儲器20讀出的已解碼的B畫面一致的參考幀。完成對B畫面的運(yùn)動補(bǔ)償過程之后,該畫面在它們的相應(yīng)GOPs中按順序逆向再現(xiàn)。
但是,在傳統(tǒng)的MPEG播放器10中,只能對于具有相同畫面數(shù)的畫面組執(zhí)行逆向播放。如果存在無規(guī)律的畫面數(shù),則在逆向播放期間,有關(guān)先前畫面組的信息是不匹配的。
進(jìn)一步地說,在傳統(tǒng)的MPEG播放系統(tǒng)中,將用作參考幀的I畫面和P畫面以原始數(shù)據(jù)(YUV)的形式存儲在幀存儲器20中,而將B畫面以壓縮的形式存儲。從數(shù)據(jù)存儲器6讀出適當(dāng)數(shù)量的畫面到參考幀,先前GOP的畫面重新寫入到數(shù)據(jù)存儲器6的讀出位置。在逆向播放模式期間,當(dāng)在幀緩沖器中從上到下向下地讀出當(dāng)前畫面組時,以先進(jìn)后出(FILO)的順序從下到上向上地讀出下一畫面組。但是,如果畫面組的畫面數(shù)量彼此不同,不可能以相同方式實施逆向播放操作。并且,由于對于一個參考幀要讀出兩個畫面,因此當(dāng)畫面組的結(jié)構(gòu)不同并且具有連續(xù)的參考畫面時,也不可能實施逆向播放操作。
因此,需要有一種能夠逆向播放由具有無規(guī)律畫面數(shù)和/或類型的畫面組組成的視頻比特流的MPEG播放系統(tǒng)。
發(fā)明內(nèi)容
提供了一種用于控制視頻比特流的逆向播放的裝置,包括畫面劃分器,用于將視頻比特流分為幀內(nèi)編碼畫面、預(yù)測編碼畫面和雙向預(yù)測編碼畫面,該視頻比特流具有多個畫面組;第一幀緩沖器,用于存儲雙向預(yù)測編碼畫面;視頻解碼器,用于對預(yù)測編碼畫面解碼;幀存儲器,用于存儲從所述視頻解碼器輸出的已解碼的預(yù)測編碼畫面;幀內(nèi)編碼器,用于將已解碼的預(yù)測編碼畫面編碼為幀內(nèi)編碼畫面格式;第二幀緩沖器,用于存儲幀內(nèi)編碼畫面和已編碼的幀內(nèi)編碼畫面;以及緩沖控制器,用于根據(jù)有關(guān)存儲在第一和第二幀緩沖器的畫面的指示信息,將存儲在第一和第二幀緩沖器的畫面輸出到視頻解碼器;其中,在逆向播放操作期間,將當(dāng)前播放的畫面組從第一和第二幀緩沖器以及幀存儲器讀出,并且,隨后對其解碼,同時在正常播放方向上接收當(dāng)前播放的畫面組的先前畫面組,并且,隨后對其解碼。
視頻解碼器根據(jù)指示信息以子組為單位處理存儲在第一和第二幀緩沖器的畫面,每個子組包括一個與該指示信息相關(guān)的參考畫面。
在一個實施例中,其中,將第一和第二幀緩沖器配置為與畫面組的最大畫面數(shù)相符。
在另一實施例中,當(dāng)畫面組的畫面數(shù)為18時,將第一和第二幀緩沖器,以及幀存儲器分別配置為18、5以及5單元。
作為優(yōu)選的,將已解碼的預(yù)測編碼畫面編碼為與畫面組的第一個幀內(nèi)編碼畫面具有相同的比特率。緩沖控制器處理1倍逆向播放操作。
還提供了一種在包括幀存儲器和視頻解碼器的MPEG系統(tǒng)中,控制第一和第二緩沖器用于數(shù)字視頻比特流的逆向播放操作的方法,包括以下步驟將具有多個畫面組的數(shù)字視頻比特流分為幀內(nèi)編碼畫面、預(yù)測編碼畫面和雙向預(yù)測編碼畫面;對預(yù)測編碼畫面解碼;將雙向預(yù)測編碼畫面和已解碼的預(yù)測編碼畫面存儲到第一幀緩沖器和幀存儲器中;將已解碼的預(yù)測編碼畫面編碼為幀內(nèi)編碼畫面格式;存儲幀內(nèi)編碼畫面和已編碼的幀內(nèi)編碼畫面;以及根據(jù)有關(guān)存儲在第一和第二幀緩沖器中的畫面的指示信息,將已存儲在第一和第二幀緩沖器的畫面輸出到視頻解碼器,其中,在逆向播放操作期間,從第一和第二幀緩沖器以及幀存儲器讀出當(dāng)前播放的畫面組,并隨后對其解碼,同時在正常播放方向上接收當(dāng)前播放的畫面組的先前的畫面組,并隨后對其解碼。
根據(jù)指示信息,以子組為單位處理存儲在第一和第二幀緩沖器的畫面,每個子組包括與該指示信息相關(guān)的參考畫面。
將已解碼的預(yù)測編碼畫面編碼為與畫面組的第一個幀內(nèi)編碼畫面具有相同的比特率。
附圖演示了本發(fā)明的示范性實施例,與說明書一起,起到了解釋了本發(fā)明的原理的作用。附圖中圖1是用于視頻流的逆向播放的傳統(tǒng)的MPEG播放器的方框圖;圖2是根據(jù)本發(fā)明的MPEG視頻播放系統(tǒng)的方框圖;圖3是根據(jù)本發(fā)明一個示例的MPEG播放器的方框圖;圖4演示了用于輸入和逆向播放的視頻流的結(jié)構(gòu);圖5A和5B演示了根據(jù)本發(fā)明的實施例,在輸入視頻流的逆向播放期間使用幀緩沖器和幀存儲器的結(jié)構(gòu);圖6演示了根據(jù)本發(fā)明的另一實施例,在輸入視頻流的逆向播放期間使用幀緩沖器和幀存儲器的結(jié)構(gòu);圖7演示了根據(jù)本發(fā)明的實施例,在逆向播放期間根據(jù)對已分組的子畫面解碼的順序使用幀緩沖器的結(jié)構(gòu)。
具體實施例方式
下面將參考附圖更詳細(xì)地描述本發(fā)明的優(yōu)選實施例。然而,本發(fā)明可以用不同的形式實施,并且不應(yīng)將本發(fā)明解釋為局限在這里所給出的實施例。而應(yīng)當(dāng)這樣解釋,給出這些實施例使得公開徹底且完全,并且將把本發(fā)明的范圍完全傳達(dá)給本領(lǐng)域的普通技術(shù)人員。在整篇說明書中,以相同的標(biāo)記表示相同的元件。
圖2是依照本發(fā)明的實施例的MPEG系統(tǒng)的方框圖。參考圖2,在MPEG系統(tǒng)30中,MPEG視頻數(shù)據(jù)存儲介質(zhì)40將已壓縮的視頻比特流提供到MPEG播放器100。MPEG播放器100還原該壓縮視頻比特流,并隨后輸出到顯示單元50。如果逆向播放功能鍵被激活,MPEG播放器100根據(jù)逆向播放順序再現(xiàn)當(dāng)前播放的視頻比特流為逆向圖像輸出數(shù)據(jù),并隨后將它們發(fā)送到顯示單元50。
圖3示出了用于圖2所示的逆向播放操作的MPEG播放器100的方框圖。參考圖3,MPEG播放器100包括B幀緩沖器150、I幀緩沖器160、緩沖控制器170、視頻解碼器120和I幀編碼器140。畫面劃分器110和幀存儲器130也包括在MPEG播放器100中。
畫面劃分器110輸出從輸入視頻比特流中提取的I、B和P畫面。將I畫面輸入到I幀緩沖器160和I幀編碼器140,而將B畫面輸入到B幀緩沖器150。將P畫面?zhèn)魉偷揭曨l解碼器120。
B幀緩沖器150存儲由畫面劃分器110提供的B畫面。I幀緩沖器160存儲由畫面劃分器110提供的I畫面和由P畫面轉(zhuǎn)換成的I畫面。這里,以壓縮形式存儲B和P畫面。
視頻解碼器120,例如MPEG解碼器,對用于播放的輸入視頻比特流解碼,并隨后將已解碼的比特流傳送到幀存儲器130。在根據(jù)本發(fā)明的逆向播放模式期間,視頻解碼器120解碼P畫面,并將已解碼的P畫面?zhèn)魉偷綆鎯ζ?30。MPEG解碼器對本領(lǐng)域技術(shù)人員來說是眾所周知的。
幀存儲器130依次將由視頻解碼器120提供的已解碼的視頻比特流傳送到顯示單元50。在逆向播放模式中,將由視頻解碼器120提供的用于逆向播放的視頻比特流存儲在幀存儲器130中,然后將其依次傳送到顯示單元50。在此期間,將已解碼的P畫面從幀存儲器130施加到I幀編碼器140,用于逆向播放。
I幀編碼器140對由幀存儲器130提供的已解碼的P畫面進(jìn)行編碼。I幀編碼器140具有一個比特率判定器142,用于根據(jù)已解碼的P畫面確定對應(yīng)于I畫面的大小信息的比特率。根據(jù)所確定的比特率將已解碼的P畫面編碼為I畫面類型,并隨后將已編碼的結(jié)果輸出到I幀緩沖器160。在相同的畫面組中,以對應(yīng)于首部I畫面的大小信息的目標(biāo)比特率對P畫面進(jìn)行編碼。根據(jù)首部I畫面的大小來確定輸入到I幀編碼器140的畫面的目標(biāo)比特率的原因是由于在畫面組中出現(xiàn)顯著的圖像變化的可能性較低,以及由于畫面組中的畫面在復(fù)雜度上相似。換句話說,由于將P畫面重新編碼為I畫面是將相似的畫面編碼為I畫面形式,所以通過利用位于其畫面組首部的I畫面的大小信息并且不需要額外的過程或估計步驟,有可能獲得一個有效的目標(biāo)比特率。
緩沖控制器170產(chǎn)生指示信息信號POINT以使得能夠以逆向播放的順序?qū)⒎謩e存儲在B幀緩沖器150和I幀緩沖器160的B畫面和I畫面從其中輸出到視頻解碼器120。指示信息信號POINT用作指明逆向播放順序的信息,借助該信息,每個畫面組以子組重新進(jìn)行排列,每個子組包括一個參考畫面,對子組的參考畫面的逆向播放序列進(jìn)行管理以對畫面的數(shù)目和類型互相不同的畫面組有效地實施逆向播放模式。因此,根據(jù)指示信息,將I畫面或B畫面依次提供給視頻解碼器,然后,該視頻解碼器輸出要提供給幀存儲器的已解碼的I畫面或B畫面。
在MPEG播放器100中,如果將先前畫面組安排在幀存儲器中,則將輸入視頻流以I、B和P畫面的類型引入其中。I畫面不經(jīng)過視頻解碼器120而被存儲在I幀緩沖器160中。P畫面依次通過視頻解碼器120、幀存儲器130、I幀編碼器140之后被存儲到I幀緩沖器160中。B畫面直接由畫面劃分器110存儲在B幀緩沖器150中。
對于正在播放的畫面組而言,將畫面存儲在B幀緩沖器150和I幀存儲器130中。因此,對于當(dāng)前播放畫面組,從B幀緩沖器150、I幀緩沖器160、幀存儲器130讀出畫面,隨后對其解碼,并通過緩沖控制器170對其逆向播放。
另外,為了實現(xiàn)平滑的1倍(×1)逆向播放,正好在當(dāng)前正被播放的畫面組之前的畫面組必須做好逆向播放的準(zhǔn)備。因此,在對當(dāng)前播放的畫面組執(zhí)行逆向播放過程中,需要對前一畫面組解碼。那意味著要求幀緩沖器能夠存儲畫面組中最大數(shù)目的畫面,借助該緩沖器,通過以與存儲在其中的畫面順序相反的順序播放畫面來實現(xiàn)1倍的逆向播放。這里,控制幀緩沖器以節(jié)省幀緩沖器的存儲空間。視頻解碼器將幀緩沖器中準(zhǔn)備逆向播放的畫面以與其相反的順序讀出,再用前一畫面組提供的新畫面填滿已讀出畫面的幀緩沖器的位置。
圖4演示了由圖5中示出的數(shù)字視頻數(shù)據(jù)存儲介質(zhì)提供的輸入視頻比特流和逆向播放圖像輸出數(shù)據(jù)的結(jié)構(gòu)。每個畫面組(GOP)有許多畫面。例如,在DVD視頻盤的每個GOP中最多有18個畫面。
參考圖4,輸入視頻比特流和逆向播放圖像輸出數(shù)據(jù)均由兩個畫面組GOP1和GOP2組成。將畫面組以預(yù)定的畫面周期M分成多個子畫面組SUB1~SUB12,每個畫面組由6個子畫面組組成。這里,畫面周期M為3,由一個I畫面或一個P畫面,以及兩個B畫面形成每個子畫面組。
如圖4所示,輸入視頻比特流按照傳送順序進(jìn)入到MPEG播放器100。當(dāng)激活逆向播放功能鍵時,將逆向圖像輸出數(shù)據(jù)輸入到顯示單元。MPEG播放器100對當(dāng)前引入的畫面組GOP2解碼并且以逆向播放順序逆向播放該GOP2,同時對比GOP2早輸入的畫面組GOP1(先前畫面組)解碼。
如果在MPEG視頻比特流中的畫面組中存在無規(guī)律的結(jié)構(gòu),也就是說,畫面組中存在不同的畫面數(shù)或不同的畫面類型,若不根據(jù)結(jié)構(gòu)變化動態(tài)地并且自適應(yīng)地控制幀緩沖器,則不能實現(xiàn)平滑的逆向播放。
圖5A和5B演示了一種以動態(tài)模式控制幀緩沖器的方法。示出了在根據(jù)本發(fā)明一個實施例的MPEG播放器中的逆向播放模式期間,對I幀緩沖器、B幀緩沖器、幀存儲器進(jìn)行的寫入和讀取的結(jié)構(gòu)??蓪⒈緦嵤├龖?yīng)用在畫面組具有相同畫面數(shù)和規(guī)則畫面種類的情況下。圖5中的輸入視頻比特流由兩個畫面組組成,每個畫面組由18個畫面形成。
如果一個畫面組存儲在B幀緩沖器150和I幀緩沖器160中,準(zhǔn)備開始逆向播放操作。在逆向播放操作中,同時對兩個畫面組解碼,因此,對存儲在幀緩沖器150和160以及幀存儲器130中的用于當(dāng)前播放視頻的逆向播放的畫面組之一以與輸入相反的順序進(jìn)行解碼。將另一個畫面組安排在前進(jìn)方向上,其由諸如DVD介質(zhì)或者硬盤的存儲介質(zhì)提供。同時對兩個畫面組解碼的原因是,為前一畫面組準(zhǔn)備逆向播放操作,預(yù)先從視頻比特流的存儲介質(zhì)輸入該前一畫面組,同時從幀緩沖器和幀存儲器讀出當(dāng)前播放的畫面組并對其解碼。
在對于逆向播放模式有效地控制幀緩沖器中,將從用于逆向播放的視頻比特流的存儲介質(zhì)輸入的具有正向方向的幀以從下到上的向上方向存儲在B和I幀緩沖器中。當(dāng)將一個畫面組存儲于其中時,逆向播放操作開始,并且,播放順序與存儲順序相反。由于緩沖控制器170的指示信息控制I幀緩沖器160和B幀緩沖器150,即使對于具有無規(guī)律的畫面數(shù)和畫面種類的畫面組,仍然可以實現(xiàn)逆向播放操作。
I幀緩沖器160、B幀緩沖器150、幀存儲器130與相應(yīng)的畫面組的大小有關(guān)。如圖5所示,與用于逆向播放模式的解碼和顯示操作相結(jié)合的寫入和讀取畫面的過程,與由視頻存儲介質(zhì)提供的視頻比特流和逆向播放模式期間將被顯示的視頻比特流的結(jié)構(gòu)有關(guān)。圖5A和5B所示的結(jié)構(gòu)包括5個幀存儲器、5個I幀緩沖器和13個B幀緩沖器。
I幀緩沖器160和B幀緩沖器150是按照畫面的最大數(shù)量構(gòu)成的。在本實施例中,幀存儲器130與5個幀緩沖器相關(guān),提供其中一個進(jìn)一步用于逆向播放操作。
如果在第二畫面組的最后一幀P35正被播放時激活逆向播放功能鍵,以逆向播放順序從幀緩沖器150和160以及幀存儲器130中讀出當(dāng)前正被播放的第二畫面組的幀,并且對其解碼。同時,將第一畫面組被存儲在幀緩沖器150和160以及幀存儲器130中,以便使其緊接著第二畫面組進(jìn)入逆向播放模式。因此,完成第二畫面組的逆向播放后,從幀存儲器130讀出第一畫面組,并且安排在第一畫面組之前的畫面組以進(jìn)行逆向播放。
在向/從幀存儲器130和幀緩沖器150以及160寫入/讀取畫面組的操作中,同時對當(dāng)前播放的畫面組和先前畫面組解碼。從幀存儲器130和幀緩沖器150及160讀出當(dāng)前播放的畫面組并隨后對其解碼,從外部存儲介質(zhì)接收先前畫面組以用于后來的逆向播放操作。在本實施例中,假設(shè)幀頻為每秒30幀,并且一個畫面組由18個畫面組成。并且,如上所述,MPEG播放器100包括5個幀存儲器、13個B幀緩沖器以及5個I幀緩沖器。在圖5中,指示向上和向下方向的箭頭表示視頻解碼器120用于逆向播放操作而讀取畫面的順序。
參考圖5B,將當(dāng)前播放畫面組中的I和B畫面存儲在幀存儲器130、B幀緩沖器150以及I幀緩沖器160中。讀出畫面后,填充新畫面到幀存儲器和幀緩沖器的空白空間,并且,幀緩沖器150和160可以FILO方式寫入和讀出。將當(dāng)前播放畫面組的I畫面I20、I23、I26以及I29存儲在I幀緩沖器160中,而將當(dāng)前播放畫面組的B畫面B18、B19、B21、B22、B24、B25、B27、B28、B30、B31、B33以及B34依次存儲在B幀緩沖器150中。
當(dāng)前播放畫面是P35時,如果激活逆向播放功能鍵,幀存儲器130存儲P35和作為P35的參考畫面的P32。并且,對先前畫面組的第一參考畫面I2解碼,然后將其存儲在幀存儲器130中。在此期間,當(dāng)B34被解碼并顯示時,B幀緩沖器150存儲與I2同組的B0和B1,并且,幀存儲器130存儲已解碼的B33。當(dāng)B畫面B33正被顯示時,在從I幀緩沖器160讀出I畫面I29并對其解碼之后,將I畫面I29存儲在幀存儲器130中。接著,對先前畫面組的第二參考畫面P5解碼,并且將其存儲在I幀緩沖器160中。
當(dāng)P畫面P32正被顯示時,從B幀緩沖器150讀出B31,對其解碼,并隨后將其存儲在幀存儲器130中。從幀存儲器130讀出P5并且將其編碼為I畫面I5并將其存儲在I幀緩沖器160中。B幀緩沖器150依次存儲與I畫面I5同組的B3和B4。當(dāng)P畫面P30正被顯示時,從I幀緩沖器160讀出I26,對其解碼,并隨后將其存儲在幀存儲器130中。在此期間,對先前畫面組的P8被解碼并將其存儲在幀存儲器130中。結(jié)果,將I29、B30和B31分組成單個的子畫面組。
當(dāng)I畫面I29正被顯示時,從幀存儲器130讀出P畫面P8,并將其編碼為I畫面I8并且將其存儲在I幀緩沖器160中。在從B幀緩沖器150讀出B畫面B28并對其編碼之后,將B畫面B28存儲在幀存儲器130中。當(dāng)B28正被顯示時,幀存儲器130存儲B28和I26,而B幀緩沖器150存儲與I8同組的B6和B7。當(dāng)B畫面B27正被顯示時,對先前畫面組的P11和I23解碼并將其存儲在幀存儲器130中。
當(dāng)I畫面I26正被顯示時,對B25解碼并將其存儲在幀存儲器130中,同時將P11解碼為I畫面I11并將其存儲在I幀緩沖器160中。當(dāng)B畫面B25正被顯示時,對B24解碼并將其存儲在幀存儲器130中。B幀緩沖器150存儲與I11同組的B9和B10。接下來,當(dāng)B畫面B24正被顯示時,從I幀緩沖器160讀出I20并對其解碼,同時對先前畫面組的P14解碼并將其存儲在幀存儲器130中。
當(dāng)I23正被顯示時,對B22解碼并將其存儲在幀存儲器130中,同時將P14轉(zhuǎn)換為I畫面以將其存儲在I幀緩沖器160中。當(dāng)B22正被顯示時,對B21解碼并將其存儲在幀存儲器130中,同時將先前畫面組的B12和B13存儲在B幀緩沖器150中。當(dāng)B21正被顯示時,對先前畫面組的P17解碼并將其存儲在幀存儲器130中以為B18和B19的逆向播放作準(zhǔn)備。
當(dāng)I20正被顯示時,對B19解碼并將其存儲在幀存儲器130中。當(dāng)B19正被顯示時,對B18解碼,并且將B15和B16存儲在B幀緩沖器150中。當(dāng)B16正被顯示時,對先前畫面組的I14解碼并將其存儲在幀存儲器130中以用于當(dāng)前播放的畫面組的逆向播放,為先前畫面組的逆向播放作準(zhǔn)備。此時,安排先于當(dāng)前畫面組兩個畫面組時段的畫面組用于逆向播放。換句話說,對第二先前畫面組的第一參考畫面I(-16)解碼并將其存儲在幀存儲器130中,同時從I幀緩沖器160讀出I14并對其解碼以將其存儲在幀存儲器130中,以安排先前畫面組B15和B16的逆向播放。
如上所述,根據(jù)本發(fā)明實施例的逆向操作模式提供了在逆向播放當(dāng)前畫面組時安排前一畫面組用于后續(xù)的逆向播放操作的同步功能。
例如,參考圖5A,在先前畫面組的逆向播放期間,當(dāng)P17正被顯示時,對B16解碼同時對第二先前畫面組的I畫面I(-16)解碼并將其存儲在I幀緩沖器160中。直接從幀存儲器130輸出并隨后顯示P畫面P17。當(dāng)B16正被顯示時,對B15解碼并將其存儲在幀存儲器130中,同時將屬于第二先前畫面組的開頭的參考畫面B(-18)和B(-17)存儲在B幀緩沖器150中。并且,當(dāng)B15正被顯示時,對B15解碼,同時對第二先前畫面組的下一參考畫面B(-13)和先前畫面組的I11解碼并將其存儲在幀存儲器130中。
當(dāng)I畫面正被顯示時,將P(-13)解碼為I畫面以將其存儲在I幀緩沖器160中,同時對B13解碼并將其存儲在幀存儲器130中。當(dāng)B13正被顯示時,從B幀緩沖器150讀出B12并對其解碼,同時將第二先前畫面組的B(-15)和B(-14)存儲在B幀緩沖器150中。當(dāng)B12正被顯示時,從幀存儲器130讀出B12并且從I幀緩沖器160讀出I8并對其解碼,同時對第二先前畫面組的P(-12)解碼并將其存儲在幀存儲器130中。
當(dāng)P畫面P11正被顯示時,從幀存儲器130輸出I11,同時從B幀緩沖器150讀出B10,對其解碼并將其存儲在幀存儲器130中。在此期間,將P(-10)讀出并將其解碼為I畫面以將其存儲在I幀緩沖器160中。當(dāng)B10正被顯示時,從B幀緩沖器150讀出B9并對其解碼,同時將第二先前畫面組的B(-12)和B(-11)存儲在B幀緩沖器150中。接下來,當(dāng)B9正被顯示時,從幀存儲器130讀出B9并且對從I幀緩沖器160讀取的I5解碼并將其存儲在幀存儲器130中,同時對第二先前畫面組的P(-7)解碼并將其存儲在幀存儲器130中。
當(dāng)P畫面P8正被顯示時,從幀存儲器130讀出I8,同時從B幀緩沖器150讀出B7并對其解碼以將其存儲在幀存儲器130中。第二先前畫面組的P(-7)被編碼為I畫面并隨后存儲在幀存儲器130中。當(dāng)B7正被顯示時,從B幀緩沖器150讀出B6并對其解碼以將其存儲在幀存儲器130中,同時將第二先前畫面組的B(-9)和B(-8)存儲在B幀緩沖器150中。接下來,當(dāng)B6正被顯示時,從I幀緩沖器160讀出先前畫面組的I2并對其解碼以將其存儲在幀存儲器130中,同時對第二先前畫面組的P(-4)解碼并將其存儲在幀存儲器130中。
當(dāng)P5正被顯示時,從B幀緩沖器150讀出B4并對其解碼以將其存儲在幀存儲器130中,同時從幀存儲器130讀出的P(-4)被編碼為I畫面并存儲在I幀緩沖器160中。當(dāng)B4正被顯示時,對從B幀緩沖器150讀出的B3解碼并將其存儲在幀存儲器130中,同時將第二先前畫面組的B(-6)和B(-5)存儲在B幀緩沖器150中。并且,當(dāng)B3正被顯示時,從幀存儲器130讀出B3,同時將第二先前畫面組的P(-1)解碼并將其存儲在幀存儲器130中。
當(dāng)I2正被顯示時,從幀存儲器130讀出I2,同時從B幀緩沖器150讀出B1并對其解碼以將其存儲在幀存儲器130中。當(dāng)B1正被顯示時,從幀存儲器130讀出B1,同時從B幀緩沖器150讀出B0并對其解碼以將其存儲在幀存儲器130中。在此期間,B幀緩沖器150存儲第二先前畫面組的B(-3)和B(-2)。這樣,完成了第三先前畫面組的逆向播放。
參考圖6,輸入視頻比特流包括具有不同畫面數(shù)和種類的第一到第三畫面組GOP1-GOP3。第一畫面組GOP1有6個畫面,第二畫面組GOP2有4個畫面,并且第三畫面組GOP3有12個畫面。進(jìn)一步的說,遍及組GOP1-GOP3的畫面的種類為無規(guī)律的形式。
當(dāng)激活播放模式逆向播放功能鍵時,畫面劃分器110將輸入視頻比特流分類為B畫面、P畫面和I畫面。將B畫面存儲在B幀緩沖器150中,將I畫面和從P畫面編碼得到的I畫面存儲在I幀緩沖器160中。從幀緩沖器150和160以及幀存儲器130讀出當(dāng)前播放的畫面組GOP3,對其解碼,并隨后以逆向播放模式再現(xiàn),同時在其隨后的逆向播放之前對先前畫面組解碼。在此期間,MPEG播放器100進(jìn)行逆向播放操作,并且,當(dāng)將畫面存儲在幀緩沖器150和160時,通過緩沖控制器170管理子畫面組的順序,該子畫面由參考畫面(比如單個I畫面),B畫面,或只是參考畫面組成。
例如,當(dāng)?shù)谌嬅娼MGOP3的B20正被播放時,如果有逆向播放功能鍵的輸入,將先前參考畫面P18被編碼為I18,以準(zhǔn)備B20和B19的逆向播放操作,與P18、B19和B10形成一個子畫面組。類似的,對P15解碼,并且將其分入一個子畫面組以實施B16和B17的逆向播放操作。由于緩沖控制器170管理已分組的子畫面的逆向播放順序,所以對畫面數(shù)目和種類不同的畫面組的逆向播放操作得以執(zhí)行。
如上所述,MPEG播放器從幀存儲器讀取當(dāng)前正被播放的畫面組的畫面,并且響應(yīng)激活的逆向播放功能鍵而對其解碼,同時,讀取先前畫面組的畫面并對其解碼然后存儲在幀緩沖器中,用于準(zhǔn)備逆向播放操作的連續(xù)的過程。將已分類的I和B畫面分別存儲在I幀緩沖器和B幀緩沖器中,同時P畫面被視頻解碼器解碼并被存儲在幀存儲器中。隨后,I幀編碼器將P畫面轉(zhuǎn)換為I畫面,并且P畫面隨后被存儲在I幀緩沖器中。這里,將存儲在幀緩沖器的畫面同參考畫面分組以通過緩沖控制器與用于隨后的逆向播放操作的指示信息相關(guān)。
接著,由視頻解碼器讀出I和B畫面并對其解碼,并且,將其同它們相應(yīng)的畫面分為一組,并將其存儲在幀存儲器中。結(jié)果,將存儲在幀存儲器中的畫面作為在逆向播放操作中使用的數(shù)據(jù)輸出。
圖7演示了根據(jù)本發(fā)明,在逆向播放期間參照對分組子畫面進(jìn)行解碼的順序使用幀緩沖器的結(jié)構(gòu)。
參考圖7,逆向播放可以開始第一緩沖器狀態(tài)(a)。按照逆向播放順序,雖然B畫面B20是第一個將被顯示的畫面,而由于B22為雙向預(yù)測編碼畫面,應(yīng)對P畫面P23和P20解碼。換句話說,首先對轉(zhuǎn)換后的畫面I23解碼,接著對I20解碼。在圖7中的幀緩沖器中的箭頭表示了解碼順序。
將用作解碼順序上的參考畫面的I畫面與在下一I畫面之后的B畫面分成一組。如圖7所示,與I畫面I14相隨的B畫面為與B17相鄰的B16和B15。
為了無誤地處理具有無規(guī)律畫面數(shù)和種類的畫面組,畫面的解碼序列的連接由圖1示出的緩沖控制器安排。緩沖控制器170通過管理相應(yīng)畫面之間的子畫面組的參考畫面的解碼順序,使得對具有無規(guī)律畫面數(shù)和畫面種類的畫面組執(zhí)行逆向播放操作成為可能。
進(jìn)一步參考圖7,在第二緩沖器狀態(tài)(b)下,通過幀緩沖器150和160的連續(xù)解碼操作如下所述。
在逆向播放模式開始時,MPEG播放器100讀出當(dāng)前正被播放的畫面組的第一個畫面。在本實施例中,并且用于演示,假設(shè)I14為將被存儲在幀緩沖器150和160中的第一個畫面,其同與下一參考畫面相鄰的B畫面B16和B15分為一組,并且,緩沖控制器將解碼順序安排為I14→B16→B15。由于B12和B13將與先前畫面組的最后一個參考畫面分組,現(xiàn)在仍未將B12和B13分組。將下一個B畫面P17轉(zhuǎn)換為I17,并隨后將其存儲在幀緩沖器150和160中,并且與B19和B18分成一組。在此期間,緩沖控制器170將解碼順序安排為I17→B19→B18→I14→B16→B15。將其它相鄰的畫面以與圖7中示出的相同方式存儲和排列。
通過這種控制緩沖器的方法,由于即使將新的畫面存儲在幀緩沖器150和160的特定位置,緩沖控制器170仍能夠?qū)⑴c解碼順序相關(guān)的指示信息與該畫面配合起來,因此,不考慮畫面組中的這些具有這些無規(guī)律畫面數(shù)和畫面種類,逆向播放操作也能夠得以實現(xiàn)。
此外,即使如果參考畫面(非B畫面)在下一參考畫面之后再次出現(xiàn),當(dāng)前參考畫面也不與其相應(yīng)的B畫面分組,而是單獨存儲在緩沖器中,并且與下次被解碼的畫面相關(guān)。
雖然已結(jié)合附圖中繪制的本發(fā)明的實施例對本發(fā)明進(jìn)行了描述,但不限于此。對本領(lǐng)域技術(shù)人員來說,顯然,在不背離本發(fā)明的范圍和精神的情況下可以對其進(jìn)行各種替代,修改和改變。
相關(guān)申請的交叉引用本美國非臨時專利申請根據(jù)35U.S.C§119要求2003年6月11日提交的韓國專利申請2003-0037677的優(yōu)先權(quán),其全文通過引用合并于此。
權(quán)利要求
1.一種用于控制視頻比特流的逆向播放的裝置,包括畫面劃分器,用于將視頻比特流分為幀內(nèi)編碼畫面、預(yù)測編碼畫面,以及雙向預(yù)測編碼畫面,所述視頻比特流具有多個畫面組;第一幀緩沖器,用于存儲所述雙向預(yù)測編碼畫面;視頻解碼器,用于對所述預(yù)測編碼畫面解碼;幀存儲器,用于存儲從視頻解碼器輸出的已解碼的預(yù)測編碼畫面;幀內(nèi)編碼器,用于將所述已解碼的預(yù)測編碼畫面編碼為幀內(nèi)編碼畫面格式;第二幀緩沖器,用于存儲所述幀內(nèi)編碼畫面和所述已編碼的幀內(nèi)編碼畫面;以及緩沖控制器,用于根據(jù)有關(guān)存儲在第一和第二幀緩沖器的畫面的指示信息,將存儲在所述第一和第二幀緩沖器的畫面輸出到所述視頻解碼器,其中,在逆向播放操作期間,從所述第一和第二幀緩沖器以及所述幀存儲器讀出當(dāng)前播放的畫面組并且隨后對其解碼,同時在正常播放方向上接收所述當(dāng)前播放的畫面組的先前畫面組,并隨后對其解碼。
2.如權(quán)利要求1所述的裝置,其中,所述視頻解碼器相應(yīng)于所述指示信息以子組為單位處理存儲在所述第一和第二幀緩沖器中的畫面,每個子組包括與所述指示信息相關(guān)的參考畫面。
3.如權(quán)利要求1所述的裝置,其中,將所述第一和第二幀緩沖器配置為與畫面組的最大畫面數(shù)目相符。
4.如權(quán)利要求3所述的裝置,其中,當(dāng)畫面組的畫面數(shù)是18時,將所述第一和第二幀緩沖器、以及所述幀存儲器分別配置為18、5和5單元。
5.如權(quán)利要求1所述的裝置,其中,將所述已解碼的預(yù)測編碼畫面被編碼為與所述畫面組的第一個幀內(nèi)編碼畫面具有相同比特率。
6.如權(quán)利要求1所述的裝置,其中,所述緩沖控制器處理1倍逆向播放操作。
7.一種控制包括幀存儲器和視頻解碼器的MPEG系統(tǒng)中控制用于數(shù)字視頻比特流的逆向播放操作的第一和第二緩沖器的方法,包括以下步驟將具有多個畫面組的數(shù)字視頻比特流分為幀內(nèi)編碼畫面、預(yù)測編碼畫面和雙向預(yù)測編碼畫面;對所述預(yù)測編碼畫面解碼;將所述雙向預(yù)測編碼畫面和所述已解碼的預(yù)測編碼畫面存儲到所述第一幀緩沖器和所述幀存儲器中;將已解碼的預(yù)測編碼畫面編碼為幀內(nèi)編碼畫面格式;存儲所述幀內(nèi)編碼畫面和所述已編碼的幀內(nèi)編碼畫面;以及根據(jù)有關(guān)存儲在所述第一和第二幀緩沖器的畫面的指示信息,將已存儲在所述第一和第二幀緩沖器的畫面輸出到所述視頻解碼器,其中,在逆向播放操作期間,從所述第一和第二幀緩沖器以及所述幀存儲器讀出當(dāng)前播放的畫面組,并隨后對其解碼,同時在正常播放方向上接收所述當(dāng)前播放的畫面組的先前畫面組,并隨后對其解碼。
8.如權(quán)利要求7所述的方法,其中,相應(yīng)于所述指示信息,對存儲在所述第一和第二幀緩沖器的畫面以子組為單位進(jìn)行處理,每個子組包括與所述指示信息相關(guān)的參考畫面。
9.如權(quán)利要求7所述的方法,其中,將所述已解碼的預(yù)測編碼畫面被編碼為與所述畫面組的第一個幀內(nèi)編碼畫面具有相同的比特率。
10.一種用于控制視頻比特流的逆向播放的裝置,包括用于將視頻比特流分為幀內(nèi)編碼畫面、預(yù)測編碼畫面和雙向預(yù)測編碼畫面的裝置;用于存儲所述雙向預(yù)測編碼畫面的裝置;用于對所述預(yù)測編碼畫面解碼的裝置;用于將所述已解碼的預(yù)測編碼畫面編碼為所述幀內(nèi)編碼畫面格式的裝置;用于存儲所述已解碼的預(yù)測編碼畫面、所述幀內(nèi)編碼畫面、和所述已編碼的幀內(nèi)編碼畫面的裝置;用于將指示信息與所述已存儲的畫面相關(guān)聯(lián)的裝置;以及用于當(dāng)在正常播放方向上接收先前畫面組并對其解碼時,逆向播放當(dāng)前播放的畫面組的裝置。
11.如權(quán)利要求10所述的裝置,其中,將所述已解碼的預(yù)測編碼畫面編碼為與所述畫面組的第一個幀內(nèi)編碼畫面具有相同的比特率。
12.如權(quán)利要求10所述的裝置,還包括用于處理1倍逆向播放操作的裝置。
全文摘要
一種控制數(shù)字視頻(MPEG)播放器進(jìn)行逆向播放的裝置和方法。該MPEG播放器包括用于存儲通過視頻解碼器由P畫面編碼得到的I畫面的I幀緩沖器、用于存儲B畫面的B幀緩沖器,以及用于將P畫面解碼為I畫面的I幀編碼器。在所述MPEG播放器中,對當(dāng)前正被播放的畫面組解碼以用于逆向播放,并且,對先前畫面組解碼用于逆向播放的準(zhǔn)備。無論畫面組中的畫面數(shù)目和種類如何,都能夠通過小容量的幀存儲器實現(xiàn)平滑的1倍(×1)逆向播放。
文檔編號H04N7/24GK1574943SQ20041007149
公開日2005年2月2日 申請日期2004年6月11日 優(yōu)先權(quán)日2003年6月11日
發(fā)明者盧庚憲, 鄭世雄, 樸宰弘, 林慶默 申請人:三星電子株式會社