專利名稱::圖像編碼記錄裝置及其圖像編碼記錄方法
技術(shù)領(lǐng)域:
:本發(fā)明涉及一種對圖像數(shù)據(jù)進行編碼并記錄的圖像編碼記錄裝置,特別涉及一種采用H.264圖像編碼方式對圖像數(shù)據(jù)進行編碼后記錄到記錄介質(zhì)中的圖像編碼記錄裝置。
背景技術(shù):
:隨著數(shù)字圖像技術(shù)的發(fā)展,為了處理增大的數(shù)據(jù)量,壓縮數(shù)據(jù)的技術(shù)被使用在數(shù)字圖像數(shù)據(jù)中并發(fā)展起來,發(fā)展成為突出圖像數(shù)據(jù)特性的專門針對圖像數(shù)據(jù)的壓縮技術(shù)。隨著計算機信息處理能力的提高,能夠進行壓縮技術(shù)中的復(fù)雜運算,圖像數(shù)據(jù)的壓縮率得到大幅度的提高。例如,衛(wèi)星、地面波數(shù)字高清晰度電視廣播中采用的壓縮技術(shù)是被稱為MPEG2的方式。作為MPEG2之后的圖像壓縮技術(shù)而標準化的H.264標準是實現(xiàn)MPEG2的2倍左右壓縮率的標準。在以正交變換和運動補償為基礎(chǔ)的混合圖像編碼這點上,H.264圖像編碼方式和以往的MPEG編碼方式一樣。但是,在H.264圖像編碼方式中,編碼的各個構(gòu)成部分的編碼手段的自由度高,在這些累積效果下實現(xiàn)了高編碼效率。圖1是實現(xiàn)H.264圖像編碼的裝置的功能塊圖。如圖1所示,H.264圖像編碼裝置包括模擬/數(shù)字(A/D,Analog/Digital)轉(zhuǎn)換部11、圖像排序緩存12、宏塊分割部13、差分處理部14、正交變換部15、量化部16、熵編碼部17、累積緩存18、逆量化部19、逆正交變換部20、加法處理部21、幀存儲器22、幀內(nèi)預(yù)測部23、幀間預(yù)測部24、預(yù)測選擇部25和比率控制部26。輸入到H.264圖像編碼裝置中的視頻信號通過A/D轉(zhuǎn)換部11從模擬信號轉(zhuǎn)換為由亮度信號Y和色差信號Cb、Cr構(gòu)成的數(shù)字視頻信號。如圖2所示,該視頻信號的各個幀通過圖像排序緩存12,從輸入的(或所顯示的)圖片順序排序成編碼的圖片順序。編碼的圖片順序由圖片組(GOP,GroupOfPicture)結(jié)構(gòu)決定,其中,所述GOP結(jié)構(gòu)由編碼的圖片類型I、P、B組成。編碼圖片類型中的I圖片是指,不使用參考圖片而只使用編碼對象圖片來進行幀內(nèi)預(yù)測(也稱為“Intra預(yù)測”)編碼的圖片。P圖片是指,參考已經(jīng)處理完的1張圖片來進行幀間預(yù)測(也稱為“Inter預(yù)測”)編碼的圖片。B圖片是指同時參考已經(jīng)處理完的2張以上圖片來進行幀間預(yù)測編碼的圖片。當(dāng)由連續(xù)的圖片(包含幀和場的1個編碼單位)組成的運動圖像的各個圖片為4∶2∶0格式的圖片時,如圖3所示,由1個亮度信號(Y信號31)和2個色差信號(Cb信號32、Cr信號33)構(gòu)成。色差信號的圖像大小在縱橫方向上都是亮度信號的1/2。而且,運動圖像的各個圖片被分割為稱為宏塊的塊,并以宏塊為單位進行編碼。如圖4所示,宏塊由1個Y信號塊41和在空間上與Y信號塊一致的Cb信號塊42及Cr信號塊43構(gòu)成,其中,所述1個Y信號塊41為16×16象素,所述Cb信號塊42和Cr信號塊43均為8×8象素(例如,參見ITU-TRecommendationH.264)。輸入的各個圖片通過宏塊分割部13被分割成輸入宏塊,該輸入宏塊輸入到差分處理部14。差分處理部14對輸入宏塊的各個象素實施與在幀內(nèi)預(yù)測部23或幀間預(yù)測部24中生成的預(yù)測宏塊中在空間上對應(yīng)的各個象素之間的差分處理,并輸出差分宏塊。差分宏塊輸入到正交變換部15,并頻率變換為多個正交變換塊。正交變換塊的大小在以往的MPEG方式中為8×8象素,但在H.264方式中4×4象素為基本大小。如圖5所示,正交變換部15將差分宏塊分割成24個4×4象素塊(從51-0到51-15,從52-0到52-3,從53-0到53-3),并對各個象素塊進行正交變換。量化部16按照來自比率控制部26的量化參數(shù)對各個正交變換塊中的變換系數(shù)進行量化。量化的正交變換系數(shù)輸入到熵編碼部17進行編碼(coding)。熵編碼部17對量化的正交變換系數(shù)和后述的由預(yù)測選擇部25選擇的預(yù)測信息進行編碼,并提供給累積緩存18。累積緩存18將累積的碼作為流輸出。量化的正交變換系數(shù)提供到熵編碼部17的同時,輸入到逆量化部19。逆量化部19按照來自比率控制部26的量化參數(shù)對量化的正交變換系數(shù)進行逆量化。從而,恢復(fù)正交變換塊?;謴?fù)的正交變換塊通過逆正交變換部20恢復(fù)成差分宏塊?;謴?fù)的差分宏塊和預(yù)測宏塊一起輸入到加法處理部21。加法處理部21對恢復(fù)的差分宏塊和預(yù)測宏塊的各個象素實施加法處理,并生成再生宏塊。為了進一步將該再生宏塊用于預(yù)測處理,將其累積到幀存儲器22中。所述在逆量化部19、逆正交變換部20和加法處理部21中所進行的一系列處理稱為本地解碼。該本地解碼需要具有與解碼側(cè)一樣的生成再生宏塊的能力。所述預(yù)測宏塊的預(yù)測方法有幀內(nèi)預(yù)測和幀間預(yù)測兩種方法。幀內(nèi)預(yù)測是使用幀內(nèi)已編碼完的象素來預(yù)測宏塊中的象素的方法。在H.264中作為進行預(yù)測的單位,準備有兩種塊大小(4×4塊和16×16塊)。幀間預(yù)測是使用已編碼完的圖片中的象素來預(yù)測宏塊中的象素的方法,幀間預(yù)測的類型有P類型和B類型。其中,已編碼完的圖片中的象素從幀存儲器22中讀出,而當(dāng)前要編碼的對象宏塊是從宏塊分割部13輸出的宏塊。具體而言,幀間預(yù)測通過運動估計和運動補償完成。運動估計是從已編碼完的圖片(參考圖片)中檢測出和對象宏塊內(nèi)容相似的部分,并計算此時的運動矢量。運動補償是由所述算出的運動矢量和參考圖片生成預(yù)測塊。在H.264的運動估計中,存在多個計算運動矢量的塊大小,可以從中選擇和已編碼完的參考圖片誤差最小的塊大小。預(yù)測選擇部25將幀內(nèi)預(yù)測部23和幀間預(yù)測部24所預(yù)測的預(yù)測圖像(預(yù)測宏塊)與原圖像宏塊比較,選擇這些宏塊間的誤差較小的預(yù)測宏塊。所選擇的預(yù)測類型(預(yù)測宏塊)輸出到差分處理部14和加法處理部21。而且,所選擇的預(yù)測方式(在幀內(nèi)預(yù)測、幀間預(yù)測中所選擇的預(yù)測類型、運動矢量和參考圖片編號)等預(yù)測信息提供到熵編碼部17。另外,在H.264中采用基于上下文的自適應(yīng)二進制算術(shù)編碼方式(CABAC,Context-basedAdaptiveBinaryArithmeticCoding)作為熵編碼,這和以往的可變長編碼相比提高了壓縮率。CABAC中的處理主要分成將多進制數(shù)據(jù)變換為二進制數(shù)據(jù)的處理,和,對二進制數(shù)據(jù)計算上下文并進行算術(shù)編碼的處理。在計算上下文并進行算術(shù)編碼的處理中,對每個需要壓縮的碼,根據(jù)當(dāng)前的編碼對象和周圍情況來提取切換的上下文。然后,對每個提取的上下文變更二進制化的符號0和1的發(fā)生概率,并且根據(jù)算術(shù)編碼后的值更新發(fā)生概率表。因此,難以進行并行處理和投機處理,為了提高處理速度,需要提高CABAC處理本身的操作(時鐘)速度。這里,H.264的CABAC中,在采用4∶2∶0格式、bit_depth為8比特時,宏塊的最大編碼量被限定為3200比特。因此,當(dāng)宏塊的編碼量超過3200比特時,需要更改該宏塊的編碼條件并進行再編碼,且將宏塊的編碼量控制在3200比特以下。但是,由于CABAC的編碼量隨上下文的更改、發(fā)生概率表的更新而變化,所以在實際編碼之前不能準確地知道CABAC的編碼量。因此,是否需要再次編碼要看其宏塊在CABAC處理后的編碼量來判斷。于是,提出了監(jiān)視算術(shù)編碼部的輸入輸出數(shù)據(jù),當(dāng)宏塊的編碼量可能要超出3200比特時,切換為非壓縮的數(shù)字圖像數(shù)據(jù)即幀內(nèi)宏塊脈沖編碼調(diào)制(I_PCM,IntraMacroblockPulseCodingModulation)數(shù)據(jù)的方法(例如,參見日本特開2004-135251號公報)。該方法在完成算術(shù)編碼之前估計發(fā)生編碼量,從而可以避免可能會超出3200比特的宏塊的產(chǎn)生,所以可以不執(zhí)行再編碼。然而,根據(jù)將可能要超出3200比特的宏塊切換為I_PCM宏塊的現(xiàn)有技術(shù),雖然可以避免對宏塊的再編碼,但由于該宏塊替換成I_PCM宏塊,所以參考該宏塊進行編碼的塊或宏塊有可能受到影響。在運動圖像編碼中,多是通過錯開各個處理流程的開始時間來對多個宏塊進行并行(流水線)處理。例如,如圖6和圖7所示,在熵編碼部的處理流程中,存在宏塊MB1替換為I_PCM宏塊的情況。在該情況下,在時間上后續(xù)于宏塊MB1的宏塊MB2,參考替換成I_PCM宏塊之前的解碼宏塊MB1來執(zhí)行幀內(nèi)預(yù)測和幀間預(yù)測。例如,如圖8所示,在H.264圖像編碼中的幀內(nèi)預(yù)測中,為了預(yù)測對象塊(或者宏塊)的象素值(用白色○表示的象素的值),要參考其周圍的已編碼完的塊(或者宏塊)的邊界象素值(用黑色●表示的象素的值)。這里,例如,存在位于對象塊(或者宏塊MB2)的左邊的A塊(或者宏塊MB1)被置換為I_PCM宏塊的情況。在該情況下,已編碼完的塊(或者宏塊)的邊界象素值變化時,對象塊(或者宏塊MB2)的象素值也變化,所以需要對該對象塊(或者宏塊MB2)進行再編碼(再預(yù)測)。如圖9所示,在H.264圖像編碼中的幀間預(yù)測中,在計算對象宏塊MB2的運動矢量時,將位于其周圍(左方、上方、右上方)的宏塊(或者塊)的運動矢量(mvA、mvB、mvC)的中間值作為該對象宏塊的預(yù)測運動矢量。然后,通過對對象宏塊的預(yù)測運動矢量和對象宏塊的實際運動矢量之間的差分進行編碼的方式壓縮信息。此時,如果周圍的宏塊(例如,處于左邊的宏塊MB1)被置換成I_PCM宏塊,則運動矢量變?yōu)椤盁o”,預(yù)測運動矢量變化,所以需要再次計算運動矢量并進行再編碼。這樣,在H.264編碼中進行并行(流水線)處理時,如果宏塊在熵編碼部置換成I_PCM數(shù)據(jù),則該宏塊的周圍宏塊會受到影響。因此,需要暫時中斷編碼處理并進行再編碼,如果不這樣處理,則必須再編碼的宏塊的范圍會越來越擴大。進而,在CABAC的實際算術(shù)編碼處理中,有時根據(jù)應(yīng)壓縮的二進制數(shù)據(jù)和上下文會處理大量的數(shù)據(jù)。為了應(yīng)對這種情況,最好是按最大估計數(shù)據(jù)量,使算術(shù)編碼電路高速工作,但這樣會增大功耗。因此,在CABAC中,一般采用的方法是,利用根據(jù)編碼的圖像數(shù)據(jù)而處理量大大變化的特性,以CABAC的平均處理量來安裝電路,并使二進制化處理和算術(shù)編碼處理的電路非同步地工作,從而控制時鐘數(shù)目。然而,如果以CABAC的平均處理速度來實施算術(shù)編碼,則在二進制化處理和算術(shù)編碼處理之間會產(chǎn)生數(shù)據(jù)的延遲,出現(xiàn)幾幀的二進制數(shù)據(jù)在等待算術(shù)編碼的狀態(tài)下累積的情況。在這樣的幾幀之間產(chǎn)生違反標準的問題,當(dāng)需要再編碼時,最壞的情況是需要將累積的二進制數(shù)據(jù)全部丟棄后再次進行編碼。圖10是在CABAC處理中的二進制化處理和算術(shù)編碼處理之間產(chǎn)生6幀的延遲的情況示意圖。各個圖片中所添的字母表示圖片的種類。即,I表示進行幀內(nèi)的預(yù)測編碼的圖片,P表示在一個方向的幀間進行預(yù)測編碼的圖片,B表示在兩個方向的幀間進行預(yù)測的圖片。P23之前已完成CABAC處理,B21、B22、P26、B24、B25、P29這6幀已經(jīng)完成二進制化處理,處于等待算術(shù)編碼的狀態(tài)。此時,假設(shè)在算術(shù)編碼后的P23中檢測出超出3200比特的宏塊,則需要將因延遲而累積的6幀和P23共7幀全部丟棄后進行再編碼。這樣,如果一個宏塊置換成I_PCM宏塊,則加上上述CABAC中的數(shù)據(jù)延遲引起的問題,影響會波及到參考置換成I_PCM的宏塊的塊、宏塊,甚至到圖片(幀),并需要進行再編碼。特別是當(dāng)I圖片和P圖片中的宏塊置換成I_PCM宏塊時,其影響范圍廣,最壞的情況需要對幾個幀全部進行再編碼。如上所述,如果一旦發(fā)生違反標準問題,則根據(jù)編碼處理的結(jié)構(gòu)需要再編碼。而且,有時為了進行再編碼還必須將等待算術(shù)編碼處理的二進制數(shù)據(jù)全部丟棄,從圖像存儲器中再次讀出引起違反標準的圖片之后的所有數(shù)據(jù),并進行再編碼。特別在建立CABAC輸入的編碼數(shù)據(jù)的預(yù)測編碼處理和CABAC處理中,需要進行實時再編碼(即,同時實施普通的編碼和再編碼)。由此,出現(xiàn)很多問題,例如,處理量變成2倍,從而增大功耗,用于回溯處理的控制和電路也變得復(fù)雜。另外,需要進行實時再編碼的情況不僅是在產(chǎn)生像宏塊的最大編碼量超過3200比特的這種違反標準的情況。例如,編碼圖片緩存(CPBCodedPictureBuffer)發(fā)生下溢(underflow)或溢出(overflow)情況等,發(fā)生違反緩存界限的情況也同樣需要進行實時再編碼。
發(fā)明內(nèi)容為了解決上述問題,本發(fā)明的目的是提供一種圖像編碼記錄裝置,可以解決實時再編碼引起的處理負荷問題以及用于回溯處理的復(fù)雜控制和電路的問題。為了實現(xiàn)上述目的,本發(fā)明中的圖像編碼記錄裝置是對圖像數(shù)據(jù)進行編碼并記錄的圖像編碼記錄裝置,該裝置包括編碼單元,用于對圖像數(shù)據(jù)進行編碼;記錄單元,用于對所述編碼單元所編碼的編碼數(shù)據(jù)進行記錄;再編碼控制單元,用于使所述編碼單元對記錄在所述記錄單元中的所述編碼數(shù)據(jù)中不滿足規(guī)定條件的數(shù)據(jù)按照滿足所述規(guī)定條件的方式進行再編碼;使所述記錄單元按照能夠連續(xù)再生再編碼后的再編碼數(shù)據(jù)和未再編碼的非再編碼數(shù)據(jù)的方式記錄所述再編碼數(shù)據(jù)。從而,由于不需要同時實施普通的編碼和再編碼,所以可以解決由實時再編碼引起的處理負荷問題和用于回溯處理的復(fù)雜控制和電路的問題。這里,所述再編碼控制單元還可以具有判定單元,用于判定所述編碼數(shù)據(jù)是否滿足所述規(guī)定的條件;違規(guī)信息提取單元,用于在判定出所述編碼數(shù)據(jù)不滿足所述規(guī)定條件時,從所述記錄單元提取與該違規(guī)有關(guān)的信息即違規(guī)信息;解碼單元,用于根據(jù)所述違規(guī)信息,對記錄在所述記錄單元中的所述編碼數(shù)據(jù)中需要再編碼的數(shù)據(jù)進行解碼;控制單元,用于根據(jù)所述違規(guī)信息,使所述編碼單元對所述解碼單元所解碼的數(shù)據(jù)按照滿足所述規(guī)定條件的方式進行再編碼,并使所述記錄單元對再編碼后的再編碼數(shù)據(jù)進行記錄。從而,可以事先累積不滿足標準的時間點的編碼數(shù)據(jù)的記錄位置和違規(guī)信息,在編碼結(jié)束后,能夠根據(jù)該記錄位置和違規(guī)信息進行再編碼。此外,所述再編碼控制單元還可以具有判定單元,用于判定所述編碼數(shù)據(jù)是否滿足所述規(guī)定的條件;違規(guī)信息提取單元,用于在判定出所述編碼數(shù)據(jù)不滿足所述規(guī)定條件時,從所述編碼單元和所述記錄單元提取與該違規(guī)有關(guān)的信息即違規(guī)信息;違規(guī)信息記錄單元,用于記錄并保存所述違規(guī)信息提取單元所提取的違規(guī)信息;解碼單元,根據(jù)所述違規(guī)信息記錄單元所記錄保存的違規(guī)信息,對記錄在所述記錄單元中的所述編碼數(shù)據(jù)中需要再編碼的數(shù)據(jù)進行解碼;控制單元,根據(jù)所述違規(guī)信息記錄單元所記錄保存的違規(guī)信息,使所述編碼單元對所述解碼單元所解碼的數(shù)據(jù)按照滿足所述規(guī)定條件的方式進行再編碼,并使所述記錄單元對再編碼后的再編碼數(shù)據(jù)進行記錄。從而,可以事先累積不滿足標準的時間點的編碼數(shù)據(jù)的記錄位置和違規(guī)信息,在編碼結(jié)束后,能夠根據(jù)該記錄位置和違規(guī)信息進行再編碼。同時,所述違規(guī)信息提取單元可以提取包括所述編碼數(shù)據(jù)記錄在所述記錄單元中的位置信息、表示不滿足規(guī)定條件的違規(guī)內(nèi)容和不滿足所述規(guī)定條件時的編碼信息的違規(guī)信息。從而,由于違規(guī)內(nèi)容等被提取出來,所以可以按照違規(guī)內(nèi)容進行再編碼。此外,所述再編碼控制單元在所述違規(guī)內(nèi)容表示超出宏塊的最大編碼量時,可以將量化值設(shè)為較大的值后,使所述編碼單元進行再編碼。由此,由于再編碼后的宏塊的編碼量變小,所以能夠避免發(fā)生超出宏塊的最大編碼量的問題。此外,所述再編碼控制單元在所述違規(guī)內(nèi)容表示緩存的溢出時,可以將量化值設(shè)為較大的值后,使所述編碼單元進行再編碼;在所述違規(guī)內(nèi)容表示緩存的下溢時,可以將量化值設(shè)為較小的值后,使所述編碼單元進行再編碼。由此,由于在發(fā)生緩存的溢出時再編碼后的數(shù)據(jù)大小變小,在發(fā)生緩存的下溢時再編碼后的數(shù)據(jù)大小變大,所以能夠避免發(fā)生違反緩存界限的問題。此外,所述再編碼控制單元可以使所述記錄單元將所述再編碼數(shù)據(jù)作為藍光光盤Blue-rayDisk的虛擬編輯功能即VirtualPlaylist的BridgeClip文件記錄。從而,由于可以將再編碼數(shù)據(jù)作為BridgeClip文件與非再編碼數(shù)據(jù)連接,所以能夠?qū)崿F(xiàn)連續(xù)的再生。此外,所述再編碼控制單元在判定出所述編碼數(shù)據(jù)不滿足所述規(guī)定條件時,可以將發(fā)生違規(guī)的流的下一個獨立的圖片組中的起始圖片即I圖片更改為即時解碼刷新IDR圖片后,使所述編碼單元對所述獨立的圖片組進行編碼。從而,由于可以避免發(fā)生所述獨立的圖片組受到再編碼數(shù)據(jù)的影響的問題,所以能夠?qū)崿F(xiàn)連續(xù)的再生。此外,所述再編碼控制單元可以在一系列編碼記錄操作停止或結(jié)束的時刻,使所述編碼單元進行編碼。從而,由于在一系列的編碼記錄操作停止或結(jié)束之前不實施再編碼,所以不會對用戶使用上帶來不方便。再有,本發(fā)明不僅可以作為上述圖像編碼裝置來實現(xiàn),還可以作為以上述圖像編碼裝置所具有的特征性單元為步驟的圖像編碼記錄方法來實現(xiàn),或者作為包含上述圖像編碼裝置所具有的特征性單元的集成電路來實現(xiàn)。如上所述,通過本發(fā)明的圖像編碼裝置,由于不需要同時實施普通的編碼和再編碼,所以能夠解決因?qū)崟r再編碼引起的處理負荷問題和用于回溯處理的復(fù)雜控制和電路的問題。而且,由于可以將再編碼數(shù)據(jù)作為Blue-rayDisk的虛擬編輯功能即VirtualPlaylist的BridgeClip文件與非再編碼數(shù)據(jù)連接,所以能夠?qū)崿F(xiàn)連續(xù)的再生。圖1是示出現(xiàn)有技術(shù)中圖像編碼裝置的功能性結(jié)構(gòu)例的功能塊圖;圖2是圖片的顯示順序和編碼順序的示意圖;圖3是4∶2∶0格式的一個圖片的視頻信號的說明圖;圖4是4∶2∶0格式的一個宏塊的視頻信號的說明圖;圖5是4∶2∶0格式的一個宏塊的正交變換塊的說明圖;圖6是包含幀內(nèi)預(yù)測的編碼的并行處理的示意圖;圖7是包含幀間預(yù)測的編碼的并行處理的示意圖;圖8是幀內(nèi)預(yù)測中與周圍塊之間的關(guān)系說明圖;圖9是幀間預(yù)測中與周圍宏塊之間的關(guān)系說明圖;圖10是對再編碼的圖片的說明圖;圖11是本發(fā)明實施方式中圖像編碼記錄裝置的整體結(jié)構(gòu)框圖;圖12是本發(fā)明實施方式中圖像編碼記錄裝置的中心結(jié)構(gòu)部分的框圖;圖13是本發(fā)明實施方式中圖像編碼記錄裝置的外觀圖;圖14是用于說明BD-RE中所記錄的信息的圖;圖15是需要再編碼的編碼違規(guī)內(nèi)容和避免違規(guī)的控制的示例圖;圖16是BD-RE中的目錄文件的結(jié)構(gòu)示例圖;圖17說明為了連續(xù)地連接再編碼后的流并播放,利用VirtualPlaylist的BridgeClip功能的例;圖18是連接再編碼后的流的方法的一實例說明圖;圖19是連接再編碼后的流的方法的另一實例說明圖;圖20是連接再編碼后的流的方法的另一實例說明圖;圖21是連接再編碼后的流的方法的另一實例說明圖;圖22是連接再編碼后的流時產(chǎn)生的問題說明圖;圖23是說明解決連接再編碼后的流時所產(chǎn)生問題的方法的圖;圖24是示出本發(fā)明實施方式中圖像編碼記錄裝置的工作流程圖。具體實施例方式下面參照本發(fā)明的實施方式。圖11是本發(fā)明實施方式中的圖像編碼記錄裝置的結(jié)構(gòu)框圖。該圖像編碼記錄裝置是對圖像數(shù)據(jù)進行編碼并記錄的裝置,采用在預(yù)測編碼部100的基礎(chǔ)上增加再編碼控制部110、記錄部120和熵解碼部130的結(jié)構(gòu)。預(yù)測編碼部100是本發(fā)明中的編碼單元的一個例子,包括A/D(Analog/Digital)轉(zhuǎn)換部11、圖像排序緩存12、宏塊分割部13、差分處理部14、正交變換部15、量化部16、熵編碼部17、逆量化部19、逆正交變換部20、加法處理部21、幀存儲器22、幀內(nèi)預(yù)測部23、幀間預(yù)測部24、預(yù)測選擇部25和比率控制部26。預(yù)測編碼部100的結(jié)構(gòu)和在上述
背景技術(shù):
中描述的H.264的圖像編碼裝置的結(jié)構(gòu)大致相同,所以下面以再編碼控制部110、記錄部120和熵解碼部130的結(jié)構(gòu)為中心進行描述。再編碼控制部110是本發(fā)明中再編碼控制單元的一個例子。再編碼控制部110使所述預(yù)測編碼部100對記錄在所述記錄部120的編碼數(shù)據(jù)中未滿足規(guī)定條件的數(shù)據(jù)按照滿足所述規(guī)定條件的方式進行再編碼,并且,使所述記錄部120按照能夠連續(xù)再生再編碼后的再編碼數(shù)據(jù)與未再編碼的非再編碼數(shù)據(jù)的方式記錄所述再編碼數(shù)據(jù)。記錄部120是本發(fā)明中記錄單元的一個例子,是將預(yù)測編碼部100所編碼的編碼數(shù)據(jù)記錄到記錄介質(zhì)等中的處理部。熵解碼部130是本發(fā)明中解碼單元的一個例子,是根據(jù)后述的違規(guī)信息,對記錄在記錄部120中的編碼數(shù)據(jù)中需要再編碼的數(shù)據(jù)進行解碼的處理部。圖12是再編碼控制部110的具體結(jié)構(gòu)示意圖。如圖12所示,再編碼控制部110具有判定部111、違規(guī)信息提取部112和控制部113。下面,對再編碼控制部110的結(jié)構(gòu)進行描述的同時,對預(yù)測編碼部100、記錄部120和熵解碼部130也一同進行描述。判定部111是本發(fā)明中判定單元的一個例子,是用于判定編碼數(shù)據(jù)是否滿足規(guī)定條件的處理部。具體而言,對于從預(yù)測編碼部100的熵編碼部17(CABAC編碼部)輸出的編碼流,判定每一個宏塊的編碼量是否超出3200比特。而且,比率控制部26判定在相當(dāng)于視頻緩沖校驗機(VBV,VideoBufferVerifier)的編碼圖片緩存(CPB,CodedPictureBuffer)中編碼流是否滿足緩存界限,也就是說,判定緩存是否溢出(Overflow)或者下溢(underflow)。如果發(fā)生Overflow或者underflow,則由于緩存破壞導(dǎo)致圖片的解碼失敗,無法實現(xiàn)連續(xù)的圖像再生。此時的圖像將成為跳躍(skip)、凍結(jié)(freeze)或停止處理等狀態(tài)。本圖像編碼記錄裝置將不滿足標準的編碼流也暫時記錄到記錄部120中。也就是說,即使宏塊的編碼量超出3200比特,也將該宏塊記錄到記錄部120中。并且,對于為CPB緩存的緩存容量的基準型號(model)所規(guī)定的上限和下限,對超出該上限和下限的流的比特量事先設(shè)置可充分容許的余量(margin),從而在基準緩存型號中,即使在相當(dāng)于Overflow或者underflow的情況下,也將流輸出到記錄部120。判定部111判定出不滿足標準或者緩存界限時,對來自熵編碼部17的流或者比率控制部16的緩存狀態(tài),將它們的違規(guī)信息提供給違規(guī)信息提取部112。違規(guī)信息提取部112是本發(fā)明中違規(guī)信息提取單元的一個例子。當(dāng)判定出編碼數(shù)據(jù)不滿足規(guī)定條件時,違規(guī)信息提取部112從記錄部120中提取與該違規(guī)有關(guān)的信息即違規(guī)信息。具體而言,由判定部111提供違規(guī)信息時,提取該編碼流記錄在記錄部120中的位置信息。此時的位置信息根據(jù)記錄介質(zhì)、文件格式、應(yīng)用等不同而不同。這里,假設(shè)應(yīng)用下一代記錄介質(zhì)可擦寫藍光光盤(BD-RE,Blue-rayDiskRewritable),并對該情況進行描述。在該情況下,提取記錄違規(guī)編碼流的數(shù)據(jù)的時間信息(例如,違規(guī)流以包記錄時的時間標記)。并且,提取該包相關(guān)聯(lián)的數(shù)據(jù)單元(例如,對該包有參考或被參考關(guān)系且再生所需要的一個整體的數(shù)據(jù)單元)的起始包的位置信息。例如,在向BD-RE寫入編碼流時,使用源包。源包是在188字節(jié)的傳輸流(TS,TransportStream)包上加入4字節(jié)的時間標記的192字節(jié)的固定長度的包,被依次記錄到BD-RE盤中。當(dāng)宏塊的最大編碼量超出3200比特時,由于該宏塊為400字節(jié)以上,所以占2個包以上的記錄區(qū)域。違規(guī)信息提取部112提取這些違規(guī)的流的包的時間標記。另外,違規(guī)信息提取部112提取包含違規(guī)流的包的圖片相關(guān)聯(lián)的一系列圖片的集合(例如,相當(dāng)于MPEG-2的GOP的獨立圖片組)中起始包的位置信息。這里所說的“相關(guān)聯(lián)”是指“有參考或被參考關(guān)系”。在H.264編碼中,即時解碼刷新(IDR,InstantaneousDecodingRefresh)圖片或幀內(nèi)圖片(intrapicture)為一系列相關(guān)聯(lián)圖片組的起始圖片,并提取該起始包的位置信息。為了提取起始包的位置信息,要事先建立被稱為TU_map的表。TU_map是編碼流的獨立圖片組的起始包的位置信息(例如,時間單元編號)和編碼流的源包編號(SPN,sourcepacketnumber可以從編碼流·文件的起始的字節(jié)數(shù)目獲得。)的對應(yīng)關(guān)系表。這和用于MPEG-2的被稱為EP_map表一樣,該EP_map表中建立有GOP數(shù)據(jù)起始的顯示時間標記(PTS,presentationTimeStamp隱藏在TS中的用于A/V同步的時間標記)值與包含GOP起始的包編號的對應(yīng)關(guān)系。違規(guī)信息提取部112將判定部111提供的違規(guī)信息提供給控制部113。并且,該違規(guī)流以包的形式記錄到記錄部120中時,提取該包的時間標記和包含該包的編碼流的獨立圖片組的起始位置信息,并將其提供給控制部113。對于發(fā)生Overflow或Underflow這種違反緩存界限的情況,也和發(fā)生違反宏塊的最大編碼量標準的情況一樣,違規(guī)信息提取部112提取發(fā)生Overflow或Underflow時的包的時間標記以及包含該包的編碼流的獨立圖片組的起始位置信息,并將其和違反緩存界限的違規(guī)信息一起提供給控制部113??刂撇?13是本發(fā)明中的控制單元的一個例子??刂撇?13根據(jù)違規(guī)信息,使預(yù)測編碼部100對熵解碼部130所解碼的數(shù)據(jù)按照能夠滿足規(guī)定條件的方式進行再編碼,并使記錄部120對再編碼后的再編碼數(shù)據(jù)進行記錄。具體而言,從違規(guī)信息提取部112獲得違規(guī)信息的同時,從預(yù)測編碼部100獲得發(fā)生違規(guī)時編碼控制有關(guān)的信息。從而,在規(guī)定時間,例如在一系列的編碼記錄操作停止或結(jié)束的時刻,指示熵解碼部130從記錄部120讀出違規(guī)的流和包含它的相關(guān)聯(lián)(有參考或被參考關(guān)系)的流并對其進行解碼,同時將為避免違規(guī)而設(shè)置的再編碼信息提供給預(yù)測編碼部100。然后,預(yù)測編碼部100基于再編碼信息進行再編碼時,進行用于將該再編碼后的流重新寫入記錄部120中的控制。其中,從預(yù)測編碼部100獲得的編碼控制相關(guān)的信息是指,在預(yù)測編碼部100的比率控制部26和熵編碼部17中所獲得的信息,具體而言,是發(fā)生違規(guī)時的量化信息、產(chǎn)生編碼量、CPB緩存的空閑容量、編碼圖片類型、編碼宏塊類型以及與此時的編碼模式等編碼或編碼量的控制有關(guān)的信息??刂撇?13以這些與編碼控制有關(guān)的信息和違規(guī)信息為基礎(chǔ),設(shè)置能夠避免違規(guī)的再編碼信息。如前所述,記錄部120也是用于記錄并保存由違規(guī)信息提取部112所提取的違規(guī)信息的處理部。下面,在有的情況下,將用于記錄并保存違規(guī)信息的記錄部120叫作“違規(guī)信息記錄單元”。代替記錄部120,還可以用本圖像編碼記錄裝置中的存儲緩沖器(memorybuffer)來記錄并保存違規(guī)信息。此時,本圖像編碼記錄裝置中的存儲緩沖器相當(dāng)于“違規(guī)信息記錄單元”。圖13是本發(fā)明實施方式中的圖像編碼記錄裝置的外觀圖。這里,舉例能夠?qū)D-RE300進行讀寫的錄像/播放器200。圖像編碼記錄裝置并不局限于錄像/播放器200,還可以是能夠?qū)PEG運動圖像記錄并播放的數(shù)碼攝像機、帶相機的手機、硬盤錄像機、PDA、個人電腦等。記錄介質(zhì)并不局限于BD-RE300,還可以是光盤、磁盤、閃存器等。圖14是記錄在BD-RE300中的信息的說明圖。這里概念性地示出了在BD-RE300上的區(qū)域301中記錄有遵守標準的流,在區(qū)域302中記錄有違反標準的流,在區(qū)域303中記錄有再編碼流,在區(qū)域304中記錄有違規(guī)信息的情況。圖15是再編碼信息的一個示例圖。如圖15所示,再編碼信息是對每個違規(guī)內(nèi)容(例如違規(guī)代碼)對應(yīng)地給出用于避免該違規(guī)的控制信息的信息。也就是說,是根據(jù)發(fā)生違規(guī)時的編碼圖片類型(I圖片、P圖片或B圖片)和編碼宏塊類型(幀內(nèi)宏塊或幀間宏塊),以圖片(幀)或宏塊為單位進行編碼控制并再編碼的編碼信息。例如,違規(guī)代碼00是表示超過MB(宏塊)最大編碼量(3200比特)的違規(guī)代碼。發(fā)生該違規(guī)時,將編碼該宏塊時的量化值(QPQuantizationParameter量化參數(shù))設(shè)置為較大的量化值,從而大大降低所產(chǎn)生的編碼量。而且,伴隨量化值的設(shè)置,設(shè)置包含該違規(guī)宏塊的相關(guān)聯(lián)圖片(幀)或者包含這些圖片(幀)的獨立圖片(幀)組的初始量化值。該初始量化值設(shè)置為滿足規(guī)定目標編碼量的最佳值。對于CPB緩存發(fā)生Overflow或Underflow的情況,也同樣地設(shè)置發(fā)生違規(guī)的圖片的量化值。具體而言,發(fā)生Overflow時,將QP設(shè)置為較大的值,發(fā)生Underflow時,將QP設(shè)置為較小的值。而且,伴隨量化值的設(shè)置,設(shè)置包含這些圖片(幀)的獨立圖片(幀)組的初始量化值。該初始量化值設(shè)置為滿足規(guī)定目標編碼量的最佳值。圖16是BD-RE中的目錄文件的結(jié)構(gòu)示例圖。圖16中,在PLAYLIST目錄中存放有Playlist文件,在CLIPINF目錄中存放有Clipinformation文件,在STREAM目錄中存放有ClipAV流文件。記錄在BD-RE目錄中的編碼流被稱為ClipAV流文件,存放在圖16的STREAM目錄中的擴展名為“xxts”的文件相當(dāng)于該ClipAV流文件(在此,擴展名根據(jù)AV流而不同)。此外,用于管理該ClipAV流文件的數(shù)據(jù)庫被稱為ClipInformaiton文件,存放在圖16的CLIPINF目錄中的擴展名為“clpi”的文件相當(dāng)于該ClipInformaiton文件。ClipAV流文件和ClipInformaiton文件一一對應(yīng)。在ClipInformaiton文件中存放有上述TU_map等。通過組合TU_map和時間信息的時間標記,可以對ClipAV流文件的任意位置進行存取。在ClipInformaiton文件中寫入編碼的基準時刻的不連續(xù)點、對ClipAV流文件的隨機存取和特殊播放等所需的信息。上述ClipAV流文件和ClipInformaiton文件這兩個文件被稱為Clip,在對該Clip進行存取、編輯時的播放控制中所使用的文件是存放在PLAYLIST目錄中的PlayList文件。PlayList文件是記錄了播放的視頻數(shù)據(jù)的區(qū)間(IN點、OUT點)的文件。在PlayList文件中有實際播放列表(RealPlayList)(擴展名為“rpls”)和虛擬播放列表(VirtualPlayList)(擴展名為“vpls”)這兩種。RealPlayList在對節(jié)目、場景進行錄像時自動生成。在錄像之后生成的RealPlayList中記述有1個指定了錄像的開始點(in點)和結(jié)束點(out點)的PlayItem。而VirtualPlayList是在對已完成錄像的多個Clip中對感興趣的場景或相同Clip中時間上分開的視頻進行接連等虛擬編輯時生成。PlayList由1個或多個PlayItem組成,PlayItem指定播放對象Clip的播放開始點(in點)和播放結(jié)束點(out點)。圖16中示出在RealPlayList文件中#1和#2兩個PlayItem分別對播放開始點(in點)和播放結(jié)束點(out點)不同的clip文件進行存取的例子。下面,假設(shè)將流記錄到BD-RE中的情況,說明利用上述VirtualPlayList的橋剪輯(BridgeClip)功能,對違規(guī)的流進行再編碼并連接成與正常的流連續(xù)的流的方法。圖17是為了連續(xù)地連接并播放再編碼的流而利用VirtualPlayList的BridgeClip功能的說明圖。這里,假設(shè)對發(fā)生1處違反標準或違反緩存界限時的ClipAV流進行錄像的情況,并對其進行描述。在該情況下,對ClipAV流的RealPlayList本來由1個PlayItem組成。再編碼控制部110在發(fā)生違反標準或違反緩存界限時獲得與此時的編碼控制有關(guān)的信息。與之同時,從此時的包的時間標記和TU_map表中獲得發(fā)生違規(guī)的流記錄在記錄部120時的時間信息和位置信息。然后,基于發(fā)生違規(guī)的流的包有關(guān)的時間信息和位置信息,以發(fā)生違規(guī)的包的圖片為分界,將時間上比包含違規(guī)流的圖片在前的流分割為PlayList1,將在后的流分割為PlayList2。此時,將PlayList1的PlayItem#1的開始點設(shè)為IN1,結(jié)束點設(shè)為OUT1。并且,將PlayList2的PlayItem#2的開始點設(shè)為IN2,結(jié)束點設(shè)為OUT2。但是,在此時,對于本來的錄像Clip(參見圖17中ClipAV流文件的細水平箭頭D1)沒有任何改變。此時,本發(fā)明的特征在于,利用VirtualPlayList的BridgeClip編輯功能將為避免違規(guī)而再編碼的流和剩下的正常流(非再編碼流)連續(xù)地連接。也就是說,將為避免違規(guī)而再編碼的新Clip(圖17的ClipA3)作為BridgeClip,連接PlayItem#1中除去該再編碼的Clip部分的Clip部分(圖17的ClipA1)和PlayItem#2中除去該再編碼的Clip部分的的Clip部分(圖17的ClipA2)。因此,作為VirtualPlayList文件,將PlayItem#1的開始點設(shè)為IN1,結(jié)束點設(shè)為OUT1’,并且,將PlayItem#2的開始點設(shè)為IN2’,結(jié)束點設(shè)為OUT2。此時,用BridgeClip連接的開始點和OUT1’一樣,設(shè)為IN2bc。如圖17的ClipAV流文件的粗箭頭所示,按照ClipA1、ClipA3、ClipA2的順序播放,從而可以作為避免違規(guī)的流而連續(xù)地播放。下面,描述為避免違規(guī)而再編碼的Clip部分的生成方法。首先,假設(shè)編碼流的圖片的集合(相當(dāng)于GOP)的開始圖片以IDR圖片編碼。在此,如果使用IDR圖片,則在之后的圖片組中所包含的圖片不能越過IDR圖片來參考。圖18是本發(fā)明中再編碼的第一例的說明圖。圖18(a)示出了再編碼前的編碼流(ClipA),并示出了在該流上存在違反標準的情況。圖18(b)示出了將ClipA分割成再編碼部分(ClipA3)和除去該部分的非再編碼部分(ClipA1和ClipA2)的狀態(tài)。但是,不是真正(Real)地分割ClipA,只是虛擬(Virtual)地分割。圖18(c)對再編碼部分和非再編碼部分的Clip用編碼圖片單位示出了具體的流的排列。其中,圖中的I表示I圖片,P表示P圖片,B表示B圖片,之后的數(shù)字表示編碼順序。圖18中示出了,因為在編碼流的B圖片的一部分發(fā)生了違規(guī),所以需要再編碼的情況。為了對B圖片進行再編碼,需要在時間上相鄰的前方和后方的P圖片或I圖片作為參考圖片。圖18(c)中,因為在B55這一B圖片的一部分存在違規(guī),所以需要P54圖片和P57圖片。因此,對P54~B56進行解碼,并根據(jù)再編碼信息對B55和B56圖片進行再編碼。圖19中示出了,因為在編碼流的P圖片的一部分發(fā)生了違規(guī),所以需要再編碼的情況。為了對P圖片進行再編碼,需要在時間上后方的P圖片或I圖片作為參考圖片。圖19(c)中,因為在P54這一P圖片的一部分存在違規(guī),所以需要I51圖片。如果P54通過再編碼而變化時,之后的P圖片和B圖片會受到影響。因此,對I51~B62進行解碼,并根據(jù)再編碼信息對P54~B62圖片進行再編碼。圖20示出了,因為在編碼流的I圖片的一部分發(fā)生違規(guī),所以需要再編碼的情況。I圖片是不帶著參考圖片而只使用編碼對象圖片進行幀內(nèi)預(yù)測編碼的圖片。如果再編碼I圖片,則之后的圖片(到下一個I圖片之前)都會受到影響。因此,如圖20(c)所示,如果在I51的I圖片的一部分存在違規(guī),則對I51~B62進行解碼,并根據(jù)再編碼信息對I51~B62圖片進行再編碼。圖21示出了,因為產(chǎn)生Overflow或Underflow,所以需要再編碼的情況。這里,示出了在P57發(fā)生Overflow或Underflow的情況。此時,為了避免發(fā)生緩存破壞,對相當(dāng)于包含P57的GOP部分進行解碼,并根據(jù)再編碼信息對I51~B62圖片進行再編碼。在進行再編碼時存在一個問題。在再編碼中,將編碼流的圖片的集合(相當(dāng)于GOP)的開始圖片設(shè)為IDR圖片。然而,在I圖片的一部分發(fā)生違規(guī)時,如圖22所示,如果在包含違規(guī)圖片的GOP部分中對I圖片和P圖片進行再編碼,則下一個GOP區(qū)間的最初的B圖片(圖中B64和B65)會受到影響。從而,此時以GOP單位無法很好地劃分Clip。因此,如圖23所示,在編碼流發(fā)生違規(guī)時,將發(fā)生違規(guī)的流的下一個GOP的起始圖片即I圖片更改為IDR圖片后,對該GOP進行編碼,或?qū)⒃揋OP作為以GOP單位封閉參考關(guān)系的ClosedGOP來進行編碼。圖24是示出本發(fā)明實施方式中圖像編碼記錄裝置的操作流程圖。下面利用圖24的流程圖說明發(fā)生編碼違規(guī)時的再編碼有關(guān)的操作。輸入到預(yù)測編碼部100的視頻信息被壓縮,并以CABAC進行熵編碼(步驟S101)。所編碼的數(shù)據(jù)(編碼流)被分割成規(guī)定的記錄傳輸單位,例如包單位(步驟S102)。包用時鐘計數(shù)器進行計數(shù),在包的頭部附上時間信息(例如時間標記)。還有,計算時間信息和從錄像開始之后的編碼數(shù)據(jù)的字節(jié)量,并根據(jù)獨立的圖片組(例如,相當(dāng)于GOP)的起始包的位置信息生成能夠隨機存取編碼流的位置信息(例如,TU_map)(步驟S103)。所錄像的一個連續(xù)數(shù)據(jù)用PlayList文件管理(步驟S104)。PlayList文件與實際的編碼流文件(由ClipAV流文件和保存有TU_map等的ClipInformation文件組成的Clip文件)建立關(guān)系,并記錄到記錄部120中(步驟S105)。而另一方面,再編碼控制部110的判定部111從預(yù)測編碼部100的熵編碼部17和比率控制部26獲得信息,同時判定預(yù)測編碼部100輸出的編碼流是否發(fā)生編碼違規(guī),例如,宏塊的編碼量是否超出宏塊的最大編碼量3200bit,或者是否滿足CPB緩存的界限(步驟S106)。如果判定出發(fā)生編碼違規(guī)(步驟S106為YES),則提取編碼違規(guī)的違規(guī)內(nèi)容(例如,超出宏塊最大編碼量,緩存的Underflow或Overflow等)和此時的編碼信息(此時的圖片、宏塊、量化值、緩存的空閑容量等與編碼有關(guān)的信息)(步驟S107)。如果判定出沒有發(fā)生編碼違規(guī)(步驟S106為No),則執(zhí)行步驟S109。如果判定出發(fā)生編碼違規(guī)(步驟S106為YES),則提取違規(guī)信息(步驟S108)。在違規(guī)信息中包含其違規(guī)內(nèi)容和編碼信息,還包含編碼違規(guī)時的數(shù)據(jù)(編碼流)寫入記錄部120中的位置信息。違規(guī)信息被用于在下一個步驟S109的判定之后,將再編碼的數(shù)據(jù)寫入記錄部120時建立PlayList的過程中(步驟S117)。并且,違規(guī)信息臨時保存在記錄裝置的存儲緩沖器或者記錄部120中(步驟S108)。在步驟S108中提取違規(guī)信息后,以編碼(錄像)結(jié)束為界判定是否還有增加的違規(guī)(步驟S109)。這里,判定出錄像在繼續(xù)或編碼在繼續(xù)時(步驟S109為No),返回步驟S101,判定出錄像結(jié)束或編碼結(jié)束時(步驟S109為Yes),判斷是否存在臨時保存的違規(guī)信息(步驟S110)。于是,如果不存在違規(guī)信息(步驟S110為No),則結(jié)束一系列的操作。而如果存在違規(guī)信息時(步驟S110為Yes),則基于該違規(guī)信息,從記錄部120中讀出編碼違規(guī)的流和與該流相關(guān)聯(lián)的一系列流(步驟S111)。并且,將違規(guī)信息發(fā)送給控制部113,并設(shè)置用于避免編碼違規(guī)的再編碼信息(步驟S113)。再編碼信息根據(jù)編碼違規(guī)內(nèi)容而不同,并同時基于所保存的發(fā)生違規(guī)時的編碼控制信息而設(shè)置。在步驟S111中從記錄部120讀出的流由熵解碼部130進行解碼(步驟S112)。熵解碼后的壓縮數(shù)據(jù)發(fā)送到預(yù)測編碼部100,并基于步驟S113中所獲得的再編碼信息,由預(yù)測編碼部100進行再編碼(步驟S114)。如步驟S102和步驟S103同樣地,對再編碼的數(shù)據(jù)進行打包(步驟S115),并附上時間信息的同時生成位置信息(步驟S116)。再有,在步驟S116中,為了使插入再編碼流后成為在時間上與非再編碼流Clip連續(xù)的ClipAV流,從步驟S113的再編碼信息中獲取用于設(shè)置流的位置信息的開始IN點和結(jié)束OUT點的信息。獲取再編碼流的時間信息和位置信息(步驟S116),并且從記錄部120中獲取非再編碼流的Clip的位置信息(步驟S111)。然后,作為VirtualPlayList文件,虛擬地將再編碼流的Clip當(dāng)作BridgeClip插入到非再編碼流的Clip之間,并按照能夠連續(xù)播放的方式建立PlayList(步驟S117)。完成所述打包后,附上時間信息的再編碼流和將該再編碼流當(dāng)作BridgeClip生成的PlayList文件記錄到記錄部120中(步驟S118)。綜上所述,通過本發(fā)明實施方式中的圖像編碼記錄裝置,由于不需要同時實施普通的編碼和再編碼,所以能夠解決實時再編碼引起的處理負荷問題以及對回溯處理需要復(fù)雜控制和電路的問題。另外,由于可以將再編碼數(shù)據(jù)作為Blue-rayDisk的虛擬編輯功能即VirtualPlayList的BridgeClip文件連接到非再編碼數(shù)據(jù),所以能夠?qū)崿F(xiàn)連續(xù)的播放。再有,這里舉BD-RE為例進行了說明,但記錄介質(zhì)的種類并不限于BD-RE。例如,使用硬盤、半導(dǎo)體存儲器、BD之外的光盤,也可以以同樣的方法應(yīng)用本發(fā)明。也就是說,暫時將編碼流連同違規(guī)的流一起記錄之后,對違規(guī)流進行再編碼使其成為正常的流,并將該正常的流連接到非再編碼流即可。此時,事先保存違規(guī)的信息、違規(guī)時的編碼信息和記錄違規(guī)流的位置信息,但這些信息可以保存在用于記錄流的介質(zhì)中,也可以保存在編碼記錄裝置的臨時性存儲器中。采用BD-RE的情況下,還可以保存在記錄PlayList文件和Clipinformation文件等的區(qū)域即統(tǒng)一(gathered)文件區(qū)域。另外,根據(jù)情況的不同,有可能出現(xiàn)不能對記錄在記錄介質(zhì)的編碼流進行解碼的特殊情況。此時,由于無法實現(xiàn)再編碼本身,所以在判定出不能解碼后,將包含發(fā)生違規(guī)的流的GOP部分的流生成為虛設(shè)的Clip文件。例如,可以以將最后解碼的圖片重復(fù)播放GOP部分的方式進行編碼,或者事先準備灰色的虛設(shè)的編碼圖片數(shù)據(jù)。從而,即使在不能對記錄在記錄介質(zhì)中的編碼流進行解碼時,也能夠避免視頻的混亂。本發(fā)明適用于下述需要解決實時再編碼引起的處理負荷問題以及用于回溯處理的復(fù)雜控制和電路的問題的設(shè)備,例如,數(shù)碼攝像機、帶相機的手機、BD和DVD的錄像/播放器、硬盤錄像機、PDA、個人電腦等。權(quán)利要求1.一種圖像編碼記錄裝置,用于對圖像數(shù)據(jù)進行編碼并記錄,其特征在于,該裝置包括編碼單元,用于對圖像數(shù)據(jù)進行編碼;記錄單元,用于對所述編碼單元所編碼的編碼數(shù)據(jù)進行記錄;再編碼控制單元,用于使所述編碼單元對記錄在所述記錄單元中的所述編碼數(shù)據(jù)中不滿足規(guī)定條件的數(shù)據(jù)按照滿足所述規(guī)定條件的方式進行再編碼;使所述記錄單元按照能夠連續(xù)再生再編碼后的再編碼數(shù)據(jù)和未再編碼的非再編碼數(shù)據(jù)的方式記錄所述再編碼數(shù)據(jù)。2.根據(jù)權(quán)利要求1所述的圖像編碼記錄裝置,其特征在于,所述再編碼控制單元包括判定單元,用于判定所述編碼數(shù)據(jù)是否滿足所述規(guī)定條件;違規(guī)信息提取單元,用于在判定出所述編碼數(shù)據(jù)不滿足所述規(guī)定條件時,從所述記錄單元提取與該違規(guī)有關(guān)的信息即違規(guī)信息;解碼單元,用于根據(jù)所述違規(guī)信息,對記錄在所述記錄單元中的所述編碼數(shù)據(jù)中需要再編碼的數(shù)據(jù)進行解碼;控制單元,用于根據(jù)所述違規(guī)信息,使所述編碼單元對所述解碼單元所解碼的數(shù)據(jù)按照滿足所述規(guī)定條件的方式進行再編碼,并使所述記錄單元對再編碼后的再編碼數(shù)據(jù)進行記錄。3.根據(jù)權(quán)利要求1所述的圖像編碼記錄裝置,其特征在于,所述再編碼控制單元包括判定單元,用于判定所述編碼數(shù)據(jù)是否滿足所述規(guī)定條件;違規(guī)信息提取單元,用于在判定出所述編碼數(shù)據(jù)不滿足所述規(guī)定條件時,從所述編碼單元和所述記錄單元提取與該違規(guī)有關(guān)的信息即違規(guī)信息;違規(guī)信息記錄單元,用于記錄并保存所述違規(guī)信息提取單元所提取的違規(guī)信息;解碼單元,根據(jù)所述違規(guī)信息記錄單元所記錄保存的違規(guī)信息,對記錄在所述記錄單元中的所述編碼數(shù)據(jù)中需要再編碼的數(shù)據(jù)進行解碼;控制單元,根據(jù)所述違規(guī)信息記錄單元所記錄保存的違規(guī)信息,使所述編碼單元對所述解碼單元所解碼的數(shù)據(jù)按照滿足所述規(guī)定條件的方式進行再編碼,并使所述記錄單元對再編碼后的再編碼數(shù)據(jù)進行記錄。4.根據(jù)權(quán)利要求2所述的圖像編碼記錄裝置,其特征在于,所述違規(guī)信息提取單元用于提取包括所述編碼數(shù)據(jù)記錄在所述記錄單元中的位置信息、表示不滿足規(guī)定條件的違規(guī)內(nèi)容和不滿足所述規(guī)定條件時的編碼信息的違規(guī)信息。5.根據(jù)權(quán)利要求4所述的圖像編碼記錄裝置,其特征在于,所述再編碼控制單元用于在所述違規(guī)內(nèi)容表示超出宏塊的最大編碼量時,將量化值設(shè)為較大的值后,使所述編碼單元進行再編碼。6.根據(jù)權(quán)利要求4所述的圖像編碼記錄裝置,其特征在于,所述再編碼控制單元用于在所述違規(guī)內(nèi)容表示緩存的溢出時,將量化值設(shè)為較大的值后,使所述編碼單元進行再編碼;在所述違規(guī)內(nèi)容表示緩存的下溢時,將量化值設(shè)為較小的值后,使所述編碼單元進行再編碼。7.根據(jù)權(quán)利要求1所述的圖像編碼記錄裝置,其特征在于,所述再編碼控制單元用于使所述記錄單元將所述再編碼數(shù)據(jù)作為藍光光盤Blue-rayDisk的虛擬編輯功能即虛擬播放列表VirtualPlaylist的橋剪輯BridgeClip文件記錄。8.根據(jù)權(quán)利要求1所述的圖像編碼記錄裝置,其特征在于,所述再編碼控制單元用于在判定出所述編碼數(shù)據(jù)不滿足所述規(guī)定條件時,將發(fā)生違規(guī)的流的下一個獨立的圖片組中的起始圖片即I圖片更改為即時解碼刷新IDR圖片后,使所述編碼單元對所述獨立的圖片組進行編碼。9.根據(jù)權(quán)利要求1所述的圖像編碼記錄裝置,其特征在于,所述再編碼控制單元用于在一系列編碼記錄操作停止或結(jié)束的時刻,使所述編碼單元進行編碼。10.一種圖像編碼記錄方法,用于對圖像數(shù)據(jù)進行編碼并記錄,其特征在于,該方法包括編碼步驟,對圖像數(shù)據(jù)進行編碼;記錄步驟,對所述編碼步驟中所編碼的編碼數(shù)據(jù)進行記錄;再編碼步驟,對所述記錄步驟中所記錄的所述編碼數(shù)據(jù)中不滿足規(guī)定條件的數(shù)據(jù)按照滿足所述規(guī)定條件的方式進行再編碼;記錄步驟,按照能夠連續(xù)再生所述再編碼步驟中所再編碼的再編碼數(shù)據(jù)和未再編碼的非再編碼數(shù)據(jù)的方式,記錄所述再編碼數(shù)據(jù)。11.一種集成電路,用于對圖像數(shù)據(jù)進行編碼并記錄的圖像編碼記錄裝置,其特征在于,該電路包括編碼單元,用于對圖像數(shù)據(jù)進行編碼;記錄單元,用于對所述編碼單元所編碼的編碼數(shù)據(jù)進行記錄;再編碼控制單元,用于使所述編碼單元對記錄在所述記錄單元中的所述編碼數(shù)據(jù)中不滿足規(guī)定條件的數(shù)據(jù)按照滿足所述規(guī)定條件的方式進行再編碼;使所述記錄單元按照能夠連續(xù)再生再編碼后的再編碼數(shù)據(jù)和未再編碼的非再編碼數(shù)據(jù)的方式記錄所述再編碼數(shù)據(jù)。全文摘要本發(fā)明提供一種圖像編碼記錄裝置,能夠解決實時再編碼引起的處理負荷問題以及用于回溯處理的復(fù)雜控制和電路的問題。本發(fā)明中的圖像編碼記錄裝置是對圖像數(shù)據(jù)進行編碼并記錄的圖像編碼記錄裝置,該裝置包括編碼單元,用于對圖像數(shù)據(jù)進行編碼;記錄單元,用于對所述編碼單元所編碼的編碼數(shù)據(jù)進行記錄;再編碼控制單元,用于使所述編碼單元對記錄在所述記錄單元中的所述編碼數(shù)據(jù)中不滿足規(guī)定條件的數(shù)據(jù)按照滿足所述規(guī)定條件的方式進行再編碼;使所述記錄單元按照能夠連續(xù)再生再編碼后的再編碼數(shù)據(jù)和未再編碼的非再編碼數(shù)據(jù)的方式記錄所述再編碼數(shù)據(jù)。文檔編號H04N5/926GK101087408SQ20071010863公開日2007年12月12日申請日期2007年6月7日優(yōu)先權(quán)日2006年6月9日發(fā)明者西鄉(xiāng)賀津雄,荒川博申請人:松下電器產(chǎn)業(yè)株式會社