專利名稱:圖像解碼裝置及圖像解碼方法
技術領域:
本發(fā)明涉及將編碼圖像數(shù)據(jù)而得到的編碼流解碼的圖像解碼裝置及圖像解碼方 法,特別涉及并行地執(zhí)行解碼的圖像解碼裝置及圖像解碼方法。
背景技術:
將活動圖像編碼的圖像編碼裝置將構成活動圖像的各圖片劃分為宏塊,按照宏塊 進行編碼。并且,圖像編碼裝置生成表示編碼后的活動圖像的編碼流。圖28是表示被編碼的圖片的結構的圖。圖片被劃分為由16X16像素構成的宏塊而編碼。這里,由包含在該圖片中的多個 宏塊構成片,由多個片構成圖片。此外,將具有一個由從圖片的左端到右端沿水平方向排列 的多個宏塊構成的列的構成單位稱作宏塊行(MB行)。圖29是表示編碼流的結構的圖。編碼流被階層化,如圖29(a)所示,包括頭、以及以編碼順序排列的多個圖片而構 成。另外,在上述頭中,包含有例如為了將由多個圖片構成的序列解碼而參照的序列參數(shù)集 (SPS)。此外,該被編碼的圖片如圖29 (b)所示,包括頭和多個片而構成,片如圖29 (C)所示, 包括頭和多個宏塊(MB)而構成。另外,在處于圖29(b)所示的圖片的開頭的頭中,包含有 例如為了將該圖片解碼而參照的圖片參數(shù)集(PPS)。圖30是表示以往的圖像解碼裝置的結構的圖。圖像解碼裝置300具備存儲器310及解碼引擎320。存儲器310具備具有用來存 儲編碼流的區(qū)域的流緩沖器311、以及具有用來存儲從解碼引擎320輸出的解碼圖像數(shù)據(jù) 的區(qū)域的幀存儲器312。圖像解碼裝置300如果從開頭側依次獲得包含在編碼流中的宏塊 或圖片等的編碼圖像數(shù)據(jù),則將該編碼圖像數(shù)據(jù)保存到流緩沖器311中。解碼引擎320從該流緩沖器311以解碼順序將編碼圖像數(shù)據(jù)依次讀出并解碼,將 通過該解碼生成的解碼圖像數(shù)據(jù)保存到幀存儲器312中。此外,解碼引擎320在解碼時,一 邊參照已經(jīng)保存在幀存儲器312中的解碼圖像數(shù)據(jù),一邊將編碼圖像數(shù)據(jù)解碼。并且,將保存在幀存儲器312中的解碼圖像數(shù)據(jù)以顯示順序輸出到顯示裝置中并 顯不。圖31是表示以往的解碼引擎320的結構的圖。解碼引擎320具備熵解碼部321、逆變換部322、加法器323、解塊過濾器324、運動 補償部325、加權預測部326、畫面內(nèi)預測部327、以及開關328。熵解碼部321將編碼圖像數(shù)據(jù)進行熵解碼,生成表示量化值的量化數(shù)據(jù),輸出給 逆變換部322。逆變換部322通過對該量化數(shù)據(jù)進行逆量化及逆正交變換等,將該量化數(shù)據(jù)變換 為差分圖像數(shù)據(jù)。加法器323通過將從逆變換部322輸出的差分圖像數(shù)據(jù)與從加權預測部326或畫 面內(nèi)預測部327經(jīng)由開關328輸出的預測圖像數(shù)據(jù)相加而生成解碼圖像數(shù)據(jù)。
解塊過濾器324將包含在由加法器生成的解碼圖像數(shù)據(jù)中的編碼失真除去,將除 去了編碼畸變的解碼圖像數(shù)據(jù)保存到幀存儲器312中。運動補償部325通過將保存在幀存儲器312中的解碼圖像數(shù)據(jù)讀出并進行運動補 償而生成預測圖像數(shù)據(jù),將該預測圖像數(shù)據(jù)輸出給加權預測部326。加權預測部326對從運動補償部325輸出的預測圖像數(shù)據(jù)加權,輸出給開關328。畫面內(nèi)預測部327進行畫面內(nèi)預測。即,畫面內(nèi)預測部327通過利用由加法器323 生成的解碼圖像數(shù)據(jù)進行畫面內(nèi)預測而生成預測圖像數(shù)據(jù),輸出給開關328。開關328在通過畫面內(nèi)預測生成了從逆變換部322輸出的差分圖像數(shù)據(jù)的情況 下,將從畫面內(nèi)預測部327輸出的預測圖像數(shù)據(jù)輸出給加法器323。此外,開關328在通過 畫面間預測生成了從逆變換部322輸出的差分圖像數(shù)據(jù)的情況下,將從加權預測部326輸 出的預測圖像數(shù)據(jù)輸出給加法器323。另外,近年來,圖像的高精細化及高幀率化不斷發(fā)展。S卩,目前雖然正進行HD (高 清High Definition)的圖像的編碼及解碼,但進行比該圖像更高的精細化及高幀率化。具 體而言,研究了所謂的4k2k析像度的活動圖像的實用化。圖32是用來說明HD及4k2k的說明圖。HD的編碼流通過地面數(shù)字廣播或BS數(shù)字廣播等分發(fā),將析像度“ 1920 X 1080像 素”的圖片以30幀/秒的幀率解碼并顯示。4k2k的編碼流計劃從2011年起以高度BS數(shù) 字廣播試驗性地分發(fā),將析像度“3840X2160像素”的圖片以60幀/秒的幀率解碼并顯示。g卩,在4k2k中,與HD相比,在縱向及橫向上分別具有2倍的析像度,并且具有2倍 的幀率。進而,正在研究在縱向及橫向上分別高析像度化到4k2k的2倍的8k4k的圖像 (7680X4320像素)的編碼及解碼。如果這樣的圖像的高精細化及高幀率不斷發(fā)展,則圖像解碼裝置的解碼引擎的處 理負荷變得龐大。例如,圖30所示的圖像解碼裝置300的解碼引擎320在將4k2k的編碼 流解碼的情況下,需要在現(xiàn)實上很困難的1GHz以上的動作頻率。所以,研究了解碼的并行處理。圖33是表示以往的執(zhí)行解碼并行處理的圖像解碼裝置的結構的一例的模塊圖。圖像解碼裝置400具備存儲器310及解碼器420。解碼器420具備N個(例如N =4)具有與圖30及圖31所示的解碼引擎320同樣的功能的解碼引擎421。N個解碼引擎 421 (第1解碼引擎421 第N解碼引擎421)分別從保存在流緩沖器311中的編碼流中提 取自己應處理的部分,將該提取出的部分解碼而輸出給幀存儲器312。圖34A及圖34B是用來說明解碼的并行處理的一例的說明圖。例如,圖像解碼裝置400獲得由4個區(qū)域編碼流構成的編碼流,保存到流緩沖器 311中。這些4個區(qū)域編碼流分別是獨立的流,如圖34A所示,是表示將一個畫面4等分中 的一個區(qū)域的活動圖像的流。圖像解碼裝置400的4個解碼引擎421 (例如N = 4)分別將 自己應處理的區(qū)域編碼流從流緩沖器311提取并解碼,在對應于該區(qū)域編碼流的區(qū)域顯示 活動圖像?;蛘?,圖像解碼裝置400獲得包括由4個片構成的圖片的編碼流,保存到流緩沖器 311中。4個片如圖34B所示,通過將圖片沿縱向4等分而生成。圖像解碼裝置400的4個解碼引擎421 (例如N = 4)分別從流緩沖器311中提取自己應處理的片并解碼,在對應于 該片的區(qū)域顯示活動圖像。但是,如圖34A所示,將一個編碼流作為4個區(qū)域編碼流生成并將它們解碼需要對 活動圖像的編碼方法加以制約。即,需要系統(tǒng)整體的變更,其負擔很龐大。此外,如圖34B所示,將一個圖片4等分、將劃分后的各部分作為片編碼并解碼也 需要對活動圖像的編碼方法加以制約。具體而言,在作為活動圖像的編碼及解碼的規(guī)格的MPEG_2(活動圖像專家組一 2 =Moving Picture Experts Group phase2)中,在MB行的邊界,片必定被分離。此外,在 H. 264/AVC中,設定在圖片中的片的大小及位置是任意的,也有在一個圖片中僅設定一個片 的情況。因而,如圖34B所示,唯一地設定片的位置及大小需要數(shù)字廣播系統(tǒng)的運用規(guī)格等 系統(tǒng)整體的變更,其負擔較龐大。所以,還研究了不對這樣的運用規(guī)格加以制約或變更、將表示按照該規(guī)格編碼的 活動圖像的編碼流并行解碼的圖像解碼裝置。例如,專利文獻1及專利文獻2的圖像解碼裝置將通過MPEG-2生成的編碼流的圖 片按片分離,并行地執(zhí)行各片的解碼處理。此外,專利文獻3的圖像解碼裝置將通過H. 264/AVC生成的編碼流的圖片按照MB 行分離,并行地執(zhí)行各MB行的解碼處理。圖35是用來說明專利文獻3的圖像解碼裝置的解碼處理的說明圖。圖像解碼裝置的第1解碼引擎將處于圖片中的第0行的MB行解碼,第2個解碼引 擎將處于圖片中的第1行的MB行解碼,第3個解碼引擎將處于圖片中的第2行的MB行解碼。此外,各解碼引擎從MB行的左端向右端將宏塊依次解碼。這里,在宏塊的解碼中, 在解碼對象的宏塊、與從該解碼對象的宏塊觀察為左、左上、上、及右上的宏塊之間有依賴 關系。即,各解碼引擎在將宏塊解碼時,需要通過從該解碼對象的宏塊觀察為左、左上、上、 及右上的宏塊的解碼得到的信息。因而,各解碼引擎在這些宏塊的解碼結束后,開始該解碼 對象的宏塊的解碼。另外,各解碼引擎在左、左上、上及右上的宏塊中的某個不存在的情況 下,在其以外的宏塊的解碼結束后,開始該解碼對象宏塊的解碼。即,圖像解碼裝置并行地 進行處于跳馬的位置的宏塊的解碼。專利文獻4的圖像解碼裝置如果獲得通過H. 264/AVC生成的編碼流,則在該編碼 流的MB行的邊界插入行頭,并行地執(zhí)行各MB行的解碼處理。該圖像解碼裝置的解碼引擎 分別將行頭作為標記,從編碼流中提取自己應處理的MB行,執(zhí)行該MB行的解碼。專利文獻1 日本特開平6-225278號公報專利文獻2 日本特開平8-130745號公報專利文獻3 日本特開2006-129284號公報專利文獻4 美國專利第7305036號說明書但是,在上述專利文獻1 4的圖像解碼裝置中,有不能適當?shù)貓?zhí)行解碼的并行處 理的問題、及裝置的結構變得復雜的問題。S卩,在上述專利文獻1及專利文獻2的圖像解碼裝置中,由于將圖片按片劃分而并 行地執(zhí)行多個片的解碼,所以對于如H. 264/AVC的編碼流那樣片的大小及位置任意地設定
7的編碼流,不能適當?shù)貓?zhí)行解碼的并行處理。換言之,在裝備于圖像解碼裝置中的多個解碼 引擎的各自中發(fā)生負荷的不均勻等,不能執(zhí)行有效地利用并行處理的解碼。例如,在一個圖 片由一個片構成的情況下,不能將該圖片劃分,而必須是一個解碼引擎執(zhí)行該圖片整體的解碼。此外,在上述專利文獻3及專利文獻4的圖像解碼裝置中,有將包含在H. 264/AVC 的圖片中的片劃分的情況。在此情況下,需要在解碼引擎的各自中具備用來將劃分后的片 的一部分適當?shù)刈R別為片的功能,圖像解碼裝置的結構變得復雜。
發(fā)明內(nèi)容
所以,本發(fā)明是鑒于這樣的問題而做出的,目的是提供一種以簡單的結構適當?shù)?執(zhí)行解碼的并行處理的圖像解碼裝置及圖像解碼方法。為了達到上述目的,有關本發(fā)明的一個方式的圖像解碼裝置,是將編碼圖像數(shù)據(jù) 而得到的編碼流解碼的圖像解碼裝置,具備獲得部,獲得編碼流;流劃分部,按照包含在 由獲得部獲得的編碼流中的編碼圖片,將該編碼圖片劃分為多個構成單位,通過將上述多 個構成單位分別分配到作為生成對象的N個(N是2以上的整數(shù))的劃分流中的某一個劃 分流的一部分,生成N個劃分流;N個解碼部,將由上述流劃分部生成的N個劃分流的各個 并行地解碼;上述流劃分部在生成上述N個劃分流時,當將包含在上述編碼圖片中的片劃 分為多個片部分而分配到多個劃分流時,按照上述劃分流,將上述片部分群重新構成為新 的片,以使該片部分群被上述N個解碼部的某個識別為片,上述片部分群是由對該劃分流 分配的至少一個片部分構成的;當上述多個片部分中的、在上述編碼流中連續(xù)的至少兩個 片部分具有包含在上述編碼流中的規(guī)定的代碼字帶來的依賴關系時,通過在上述多個劃分 流中的至少一個劃分流中設定代碼字以使上述依賴關系成為對應于各劃分流中的片部分 的前后關系的新的依賴關系,將上述片部分群重新構成為新的片。由此,編碼圖片被劃分為例如多個宏塊行等構成單位,多個宏塊行分別被作為劃 分流的一部分分配到N個解碼部而解碼,所以能夠使N個解碼部進行的解碼處理的負擔變 得均等,能夠適當?shù)貓?zhí)行解碼的并行處理。例如,如果是H. 264/AVC的編碼圖片由一個片構 成的情況,也由于該編碼圖片被劃分為多個宏塊行,所以能夠使該一個片的解碼不是由一 個解碼部負擔、而是由N個解碼部均等地負擔。這里,如果將編碼圖片劃分為多個宏塊行,則有跨越多個宏塊行的片被劃分為多 個片部分、這些片部分被分配到相互不同的劃分流的情況。即,在一個劃分流中不包含編碼 圖片的片的整體,而包含由作為該片的片斷的片部分集合一個以上而構成的片部分群。因此,在這樣的片部分群中,相對于編碼圖片被劃分之前,宏塊行單位下的前后關 系變化。因而,在連續(xù)的多個宏塊行具有規(guī)定的代碼字帶來的依賴關系的情況下,該依賴關 系不再保持,在此狀態(tài)下解碼部不能將劃分流解碼。所以,在本發(fā)明中,按照在這樣的片部分群內(nèi)連續(xù)的宏塊行的新的前后關系,在劃 分流中設定代碼字。由此,片部分群被重新構成為新的片,所以將包括該片部分群的劃分流 解碼的解碼部不需要用來識別該片部分群的特別的處理,而能夠將片部分群簡單地識別為 新的片。即,在本發(fā)明中,由于不需要在N個解碼部中分別設置進行特別的處理的功能及結 構,所以能夠使圖像解碼裝置的整體結構變得簡單。
8
此外,優(yōu)選的是,上述編碼圖片是按照規(guī)定的像素數(shù)的塊編碼的圖片;上述規(guī)定的 代碼字是表示在包含于上述編碼圖片中的片內(nèi)連續(xù)的規(guī)定種類的塊的個數(shù)的第1代碼字; 上述流劃分部通過包含在上述編碼流中的第1代碼字表示在上述編碼流中跨越連續(xù)的至 少兩個片部分而連續(xù)的塊的個數(shù),從而當上述至少兩個片部分具有依賴關系時,通過將修 正為使其表示各片部分的塊的個數(shù)的上述第1代碼字設定在分別分配了上述至少兩個連 續(xù)的片部分的至少兩個劃分流中,將上述片部分群重新構成為新的片。由此,即使是在編碼流中包含第1代碼字的情況,由于將第1代碼字修正以使其在 各個劃分流中表示適當?shù)闹?,所以將該劃分流解碼的解碼部也能夠不進行特別的處理而將 第1代碼字適當?shù)亟獯a。此外,優(yōu)選的是,上述流劃分部還在各劃分流中,在對應于設定的多個第1代碼字 的多個塊在該劃分流內(nèi)連續(xù)時,通過將上述多個第1代碼字變換為表示上述多個第1代碼 字分別表示的個數(shù)的總和的一個代碼字,將上述片部分群重新構成為新的片。由此,即使是在編碼流中包含第1代碼字、并且在重新構成之前在劃分流內(nèi)第1代 碼字連續(xù)的情況,由于將第1代碼字修正以使其在各個劃分流中表示適當?shù)闹?,所以將?劃分流解碼的解碼部也能夠不進行特別的處理而將第1代碼字適當?shù)亟獯a。此外,優(yōu)選的是,上述編碼圖片是按照規(guī)定的像素數(shù)的塊編碼的圖片;上述規(guī)定的 代碼字是表示包含在上述編碼圖片中的片內(nèi)的塊間的編碼系數(shù)的變化量的第2代碼字;上 述流劃分部通過包含在上述編碼流中的第2代碼字表示在編碼流中跨越連續(xù)的兩個片部 分的塊間的變化量,從而當上述兩個片部分具有依賴關系時,計算基于上述劃分流中的塊 的新的前后關系的編碼系數(shù)的變化量,將基于計算出的變化量的代碼字設定在分別被分配 了上述兩個片部分的兩個劃分流的一個中,將上述片部分群重新構成為新的片。由此,即使是在編碼流中包含第2代碼字的情況,也按照在各個劃分流中基于第2 代碼字計算適當?shù)闹档姆绞?,將代碼字設定在劃分流中。因而,將該劃分流解碼的解碼部能 夠不進行特別的處理而根據(jù)第2代碼字將編碼系數(shù)解碼。此外,也可以是,上述流劃分部將修正為計算出的變化量的上述第2代碼字設定 在上述劃分流中。由此,即使是在編碼流中包含第2代碼字的情況,也按照在各個劃分流中基于第2 代碼字計算適當?shù)闹档姆绞?,將?代碼字修正。因而,將該劃分流解碼的解碼部能夠不進 行特別的處理而根據(jù)第2代碼字將編碼系數(shù)解碼。此外,也可以是,上述流劃分部將表示計算出的變化量的新的代碼字和上述第2 代碼字設定在上述劃分流中。由此,即使是在編碼流中包含第2代碼字的情況,也按照在各個劃分流中基于第2 代碼字計算適當?shù)闹档姆绞剑趧澐至髦胁迦胄碌拇a字。因而,將該劃分流解碼的解碼部 能夠不進行特別的處理而根據(jù)第2代碼字將編碼系數(shù)解碼。此外,也可以是,上述流劃分部使用包含在上述編碼流中的第2代碼字將各塊的 編碼系數(shù)復原,利用復原后的編碼系數(shù),計算基于各劃分流中的塊的新的前后關系的編碼 系數(shù)的變化量。由此,能夠通過簡單的方法計算基于各劃分流中的塊的新的前后關系的編碼系數(shù) 的變化量。
9
此外,也可以是,上述流劃分部按照上述劃分流將包含在該劃分流以外的劃分流 中的第2代碼字所表示的變化量累積,利用累積的變化量,計算基于各劃分流中的塊的新 的前后關系的編碼系數(shù)的變化量。此外,優(yōu)選的是,上述流劃分部在將第2代碼字所表示的變化量累積時,在片邊界 上將累積的變化量復位為0。由此,能夠不將各塊的編碼系數(shù)復原、而計算基于各劃分流中的塊的新的前后關 系的編碼系數(shù)的變化量,所以能夠使流劃分部的結構變得簡單。另外,本發(fā)明不僅能夠作為這樣的圖像解碼裝置實現(xiàn),還能夠作為其方法、程序、 保存該程序的存儲媒體、集成電路來實現(xiàn)。發(fā)明效果本發(fā)明的圖像解碼裝置起到能夠以簡單的結構適當?shù)貓?zhí)行解碼的并行處理的作 用效果。
圖1是是表示本發(fā)明的實施方式1的圖像解碼裝置的結構的模塊圖。圖2A是表示本發(fā)明的實施方式1的圖片沒有由MBAFF構成的情況下的解碼的順 序的圖。圖2B是表示本發(fā)明的實施方式1的圖片由MBAFF構成的情況下的解碼的順序的 圖。圖3是用來說明本發(fā)明的實施方式1的片頭的插入處理的說明圖。圖4是用來說明本發(fā)明的實施方式1的MB地址信息的更新處理的說明圖。圖5是用來說明本發(fā)明的實施方式1的片末端處理的說明圖。圖6是表示本發(fā)明的實施方式1的圖像解碼裝置的整體的動作的流程圖。圖7是表示本發(fā)明的實施方式1的流劃分部的結構的模塊圖。圖8是用來說明本發(fā)明的實施方式1的片頭插入部及片數(shù)據(jù)處理部的動作的說明 圖。圖9是表示本發(fā)明的實施方式1的片頭插入部的結構的模塊圖。圖10是表示對本發(fā)明的實施方式1的劃分流緩沖器的第1區(qū)域 第4區(qū)域分配 的MB行及片頭的圖。圖11A是表示本發(fā)明的實施方式1的設定片末端信息的位置的圖。圖11B是表示本發(fā)明的實施方式1的設定片末端信息的位置的圖。圖12是表示本發(fā)明的實施方式1的劃分點檢測部的動作的流程圖。圖13A是用來說明本發(fā)明的實施方式1的MB跳過運行信息的修正處理的說明圖。圖13B是用來說明本發(fā)明的實施方式1的MB跳過運行信息的修正處理的說明圖。圖14是表示本發(fā)明的實施方式1的跳過運行修正部的結構的模塊圖。圖15是表示本發(fā)明的實施方式1的跳過運行修正部的MB跳過運行信息的修正動 作的流程圖。圖16A是用來說明本發(fā)明的實施方式1的QP變化量的修正處理的說明圖。圖16B是用來說明本發(fā)明的實施方式1的QP變化量的修正處理的說明圖。
圖17是用來說明本發(fā)明的實施方式1的QP變化量的累積的說明圖。圖18是表示本發(fā)明的實施方式1的QP德爾塔修正部的QP變化量的修正處理的 流程圖。圖19A是用來說明本發(fā)明的實施方式1的高析像度解碼的說明圖。圖19B是用來說明本發(fā)明的實施方式1的高速解碼的說明圖。圖19C是用來說明本發(fā)明的實施方式1的多通道解碼的說明圖。圖20是表示本發(fā)明的實施方式2的圖像解碼裝置的結構的模塊圖。圖21是表示本發(fā)明的實施方式2的流劃分部的結構的模塊圖。圖22是用來說明本發(fā)明的實施方式2的MB跳過運行信息的修正處理及QP變化 量的插入處理的說明圖。圖23是表示本發(fā)明的實施方式2的跳過運行修正部的結構的模塊圖。圖24是表示本發(fā)明的實施方式2的跳過運行修正部的MB跳過運行信息的修正動 作的流程圖。圖25是表示本發(fā)明的實施方式2的QP德爾塔插入部的累積QP變化量的插入處
理的流程圖。圖26是表示有關本發(fā)明的實施方式的圖像解碼裝置的應用例的圖。圖27是表示有關本發(fā)明的實施方式的圖像解碼裝置的最小結構的模塊圖。圖28是表示被編碼的圖片的結構的圖。圖29是表示編碼流的結構的圖。圖30是表示以往的圖像解碼裝置的結構的圖。圖31是表示以往的解碼引擎的結構的圖。圖32是用來說明HD及4k2k的說明圖。圖33是表示以往執(zhí)行解碼并行處理的圖像解碼裝置的結構的模塊圖。圖34A是用來說明以往的解碼并行處理的一例的說明圖。圖34B是用來說明以往的解碼并行處理的一例的說明圖。圖35是用來說明以往的圖像解碼裝置的解碼處理的說明圖。
具體實施例方式以下,參照附圖對本發(fā)明的實施方式的圖像解碼裝置進行說明。(實施方式1)圖1是是表示本發(fā)明的實施方式1的圖像解碼裝置的結構的模塊圖。本實施方式的圖像解碼裝置100是以簡單的結構適當?shù)剡M行解碼的并行處理的 裝置,具備解碼器110和存儲器150。存儲器150具有用來存儲輸入到解碼器110中的數(shù)據(jù)、由解碼器110中間生成的 數(shù)據(jù)、以及由解碼器110最終生成并輸出的數(shù)據(jù)的區(qū)域。具體而言,存儲器150具備流緩沖器151、劃分流緩沖器152、以及幀存儲器153。在流緩沖器151中,保存有由圖像編碼裝置生成并發(fā)送的編碼流。即,在本實施方 式中,該流緩沖器151構成為獲得編碼流的獲得部。在劃分流緩沖器152中,作為上述中間 生成的數(shù)據(jù)而保存有由解碼器110生成的N個劃分流。在幀存儲器153中,作為上述最終
11生成并輸出的數(shù)據(jù)而保存有由N個解碼引擎(解碼部)120生成的N個劃分解碼圖像數(shù)據(jù)。 另外,解碼圖像數(shù)據(jù)保存在幀存儲器153中,讀入到顯示裝置中,作為活動圖像顯示。解碼器110通過將保存在存儲器150的流緩沖器151中的編碼流讀出并解碼而生 成解碼圖像數(shù)據(jù),將該解碼圖像數(shù)據(jù)保存在存儲器150的幀存儲器153中。此外,該解碼器 110具備流劃分部130、以及N個解碼引擎(第1解碼引擎 第N解碼引擎)120。另外,本實施方式的解碼引擎120具有能夠以兩個通道量解碼HD的圖像 (1920X1088像素,60i)的處理能力。流劃分部130獲得后述的模式信息,根據(jù)該模式信息將編碼流劃分為N個劃分流 (第1劃分流 第N劃分流)。即,本實施方式的流劃分部130按照包含在編碼流中的編碼 的圖片,將該圖片劃分為多個MB行。并且,流劃分部130通過將這些多個MB行分別分配到 作為生成對象的N個劃分流中的某一個劃分流的一部分,生成N個劃分流。另外,MB行是具有一個由從圖片的左端到右端沿水平方向排列的多個宏塊構成的 列的構成單位。此外,流劃分部130在圖片不由MBAFF(宏塊自適應幀場)構成的情況下, 將圖片劃分為多個MB行,但在圖片由MBAFF構成的情況下,將兩個MB行作為一個構成單 位(以下稱作MB行對)處理,將圖片劃分為多個MB行對。換言之,流劃分部130在圖片由 MBAFF構成的情況下,將圖片劃分為多個MB行,將屬于MB行對的兩個MB行分別分配到同一 劃分流的一部分。以下,以圖片不由MBAFF構成為前提說明本發(fā)明,但在本發(fā)明中,在圖片 不由MBAFF構成的情況、以及圖片由MBAFF構成的情況下需要不同的處理時,每次對MBAFF 說明特有的處理。此外,在不需要對MBAFF進行該特有的處理等的情況下,在以下的說明 中,通過將MB行替換為MB行對,能夠將該說明替換為圖片由MBAFF構成的情況下的本發(fā)明 的說明。流劃分部130在將圖片劃分為多個MB行時,如果在編碼流中的MB行緊前、或者屬 于該MB行的兩個宏塊之間有頭,則使該頭附屬于該MB行,分配到劃分流的一部分。通過這樣的流劃分部130進行的按照MB行的劃分,包含在圖片中的、跨多個MB行 配置的片被劃分。此外,流劃分部130在劃分為N個劃分流時,預先將跨越N個劃分流的各 個劃分流的、宏塊間的可變長度解碼處理中的依賴關系除去。N個解碼引擎120分別將自己應處理的劃分流從劃分流緩沖器152讀出,通過將 讀出的劃分流并行解碼而生成N個劃分解碼圖像數(shù)據(jù)。例如,第1解碼引擎120將第1劃 分流從劃分流緩沖器152讀出,第2解碼引擎120將第2劃分流從劃分流緩沖器152讀出, 第3解碼引擎120將第3劃分流從劃分流緩沖器152讀出,第4解碼引擎120將第4劃分 流從劃分流緩沖器152讀出。并且,第1解碼引擎120 第4解碼引擎120分別將第1劃 分流 第4劃分流并行地解碼。此外,N個解碼引擎120在將劃分流解碼時,參照已經(jīng)保存在幀存儲器153中的解 碼圖像數(shù)據(jù),根據(jù)需要進行運動補償而將劃分流解碼。進而,N個解碼引擎120分別在將包含在劃分流中的通過畫面內(nèi)預測編碼的宏塊 解碼時,從將處于該解碼對象宏塊的左上、上及右上的宏塊解碼的解碼引擎120獲得這些 解碼的宏塊的信息作為相鄰MB信息。獲得了該相鄰MB信息的解碼引擎120使用該相鄰MB 信息將解碼對象宏塊解碼。此外,解碼引擎120在例如進行解塊過濾處理或運動矢量預測 處理的情況下,也與上述相同,獲得處于處理對象的宏塊的左上、上及右上的已解碼的宏塊的信息作為相鄰MB信息,進行上述處理。另外,在本實施方式中,為了使說明變得簡單,以下設N為N = 4而進行說明。此 外,在本實施方式中,如果從解碼對象的宏塊觀察左、左上、上及右上的宏塊的解碼結束,則 N(N = 4)個解碼引擎120分別使用這些相鄰MB信息,開始該解碼對象的宏塊的解碼。結 果,第1解碼引擎120 第4解碼引擎120分別將在各MB行中沿水平方向處于相互不同的 位置的宏塊并行地解碼。圖2A是表示圖片沒有由MBAFF構成的情況下的解碼的順序的圖。在圖片沒有由MBAFF構成的情況下,第1解碼引擎120將第OMB行解碼,第2解碼 引擎120將第1MB行解碼,第3解碼引擎120將第2MB行解碼,第4解碼引擎120將第3MB 行解碼。另外,第k(k是0以上的整數(shù))MB行表示從圖片的上端開始處于第k個的MB行, 例如第OMB行是從圖片的上端開始處于第0個的MB行。這里,當開始圖片的解碼時,首先第1解碼引擎120開始第OMB行的解碼。接著, 如果處于第OMB行的左端的兩個宏塊的解碼完成,則第2解碼引擎120開始第1MB行的左 端的宏塊的解碼。并且,如果處于第1MB行的左端的兩個宏塊的解碼完成,則第3解碼引擎 120開始第2MB行的左端的宏塊的解碼。同樣,如果處于第2MB行的左端的兩個宏塊的解碼 完成,則第4解碼引擎120開始第3MB行的左端的宏塊的解碼。因而,第(k+l)MB行與第kMB行相比延遲了兩個宏塊的量,從左端的宏塊解碼到右 端的宏塊。圖2B是表示圖片由MBAFF構成的情況下的解碼的順序的圖。在圖片由MBAFF構成的情況下,MB行對如上述那樣是具有兩個由從圖片的左端到 右端沿水平方向排列的多個宏塊構成的列(MB行)的構成單位。MB行按照處于上下的兩 個宏塊(宏塊對)適應性地進行幀/場編碼。另外,在宏塊對中,首先將上方的宏塊解碼, 接著將下方的宏塊解碼。在此情況下,也與圖片不由MBAFF構成的情況同樣,第1解碼引擎 120將第OMB行對解碼,第2解碼引擎120將第1MB行對解碼,第3解碼引擎120將第2MB 行對解碼,第4解碼引擎120將第3MB行對解碼。另外,第k(k是0以上的整數(shù))MB行對表 示從圖片的上端起處于第k個的由兩個MB行構成的構成單位,例如,第OMB行是從圖片的 上端起處于第0個的由兩個MB行構成的構成單位。這里,當開始圖片的解碼時,首先,第1解碼引擎120開始第OMB行對的解碼。接 著,如果處于第OMB行對的左端的兩個宏塊對的解碼完成,則第2解碼引擎120開始第1MB 行對的左上端的宏塊的解碼。接著,如果處于第1MB行對的左端的兩個宏塊對的解碼完成, 則第3解碼引擎120開始第2MB行對的左上端的宏塊的解碼。同樣,如果處于第2MB行對 的左端的兩個宏塊對的解碼完成,則第4解碼引擎120開始第3MB行對的左上端的宏塊的 解碼。因而,第(k+1)MB行對與第kMB行對相比延遲了兩個宏塊對的量,從左端的宏塊對 解碼到右端的宏塊對。另夕卜,在圖片沒有由MBAFF構成的情況、以及圖片由MBAFF構成的情況下,只要分 別使第(k+l)MB行或第(k+1)MB行對與第kM行或第kMB行對相比至少延遲兩個宏塊量或 兩個宏塊對的量解碼就可以。即,也可以延遲3個宏塊量或3個宏塊對的量以上進行解碼。 例如,在第(k+l)MB行或第(k+l)MB行對與第kM行或第kMB行對相比相比延遲了兩個宏塊
13量或兩個宏塊對的量解碼的情況下,能夠使圖片的解碼花費的時間最短,在延遲了 3個宏 塊的量或3個宏塊對的量以上解碼的情況下,對應于該延遲的量,圖片的解碼花費的時間 變長。這樣的本實施方式的圖像解碼裝置100的特征是,將通過流劃分部130的劃分生 成的、由片的一個或多個部分(片部分)構成的片部分群重新構成為一個新的片。片的重 新構成包括片頭的插入處理、片末端處理、MB地址信息的更新處理、跳過運行修正處理、以 及QP德爾塔設定處理。此外,QP德爾塔設定處理包括QP德爾塔修正處理及QP德爾塔插 入處理。另外,在本實施方式中,對QP德爾塔設定處理是QP德爾塔修正處理的情況進行說 明。圖3是用來說明片頭的插入處理的說明圖。例如,流劃分部130將圖3(a)所示的圖片pi劃分。圖片pi由片A、片B及片C構成,并且由MB行L1 L12構成。片A跨MB行L1 L7而配置,具有片頭ha、以及從該片頭ha連續(xù)配置的多個宏 塊mba。片B跨MB行L7 L8而配置,具有片頭hb、以及從該片頭hb連續(xù)配置的多個宏塊 mbb。片C跨MB行L9 L12而配置,具有片頭he、以及從該片頭he連續(xù)配置的多個宏塊 mbc。另外,在片頭中,包括具有該片頭的片的解碼所需要的輔助信息。流劃分部130如圖3(b)所示,將上述圖片pi按照MB行劃分。并且,流劃分部130 將MB行L1 L12分別從開頭起依次分配到第1劃分流 第4劃分流的某一個劃分流的一 部分。例如,流劃分部130將MB行L1分配到第1劃分流的一部分,將MB行L2分配到第2 劃分流的一部分,將MB行L3分配到第3劃分流的一部分,將MB行L4分配到第4劃分流的 一部分。并且,流劃分部130如果向第4劃分流的MB行的分配結束,則重復進行向第1劃 分流的MB行的分配。即,流劃分部130將MB行L5分配到第1劃分流的一部分,將MB行L6 分配到第2劃分流的一部分,將MB行L7分配到第3劃分流的一部分,將MB行L8分配到第 4劃分流的一部分。結果,第1劃分流包括連續(xù)的MB行LI、L5、L9,第2劃分流包括連續(xù)的MB行L2、 L6、L10,第3劃分流包括連續(xù)的MB行L3、L7、L11,第4劃分流包括連續(xù)的MB行L4、L8、L12。另外,MB行L1 L6、由MB行L7的開頭側的6個宏塊構成的集合、由MB行L7的 末端側的10個宏塊構成的集合、以及MB行L8 L12分別是構成片A C的一部分的片部 分。并且,在第1劃分流中,由作為片A的片部分的MB行LI、L5構成片部分群(第1劃分 流的片A)。此外,在第2劃分流中,由作為片B的片部分的MB行L2、L6構成片部分群(第 2劃分流中的片B)。這里,僅通過單純將MB行分配到劃分流,有時不能使解碼引擎120適當?shù)刈R別包 含在劃分流中的片。例如,在第1劃分流中,如上所述包括連續(xù)的MB行L1、L5、L9。在此情況下,MB行 L1、L5應被識別為片A,MB行L9應被識別為片C。為此,需要在第1劃分流中在應成為片A 的開頭的MB行L1的開頭配置片A的片頭ha,需要在第1劃分流中在應成為片C的開頭的 MB行L9的開頭配置片C的片頭he。在圖3所示的例子中,由于片頭ha、he分別被預先配 設在MB行LI、L9的開頭,所以流劃分部130只要將MB行LI、L5、L9與片頭ha、he 一起分 配到第1劃分流就可以。
另一方面,在第2劃分流中,如上述那樣包含有連續(xù)的MB行L2、L6、LlO0在此情 況下,MB行L2、L6應被識別為片A,MB行LlO應被識別為片C。為此,需要在第2劃分流中 在應成為片A的開頭的MB行L2的開頭配置片A的片頭ha,需要在第2劃分流中在應成為 片C的開頭的MB行LlO的開頭配置片C的片頭he。所以,本實施方式的流劃分部130在將MB行分配到劃分流的一部分時,通過根據(jù) 需要復制片頭ha、hb、he從而復制片頭ha'、hb'、hc',將它們插入到劃分流中。例如,流劃分部130通過復制片頭ha而生成3個復制片頭ha',將該復制片頭 ha'插入到緊靠MB行L2、L3、L4之前。進而,流劃分部130通過復制片頭hb而生成一個復 制片頭hb',將該復制片頭hb'插入到緊靠MB行L8之前。進而,流劃分部130通過復制 片頭he而生成3個復制片頭he‘,將該復制片頭he'插入到緊靠MB行L10、L11、L12之
、r -結果,在第2劃分流中,在緊靠作為片A的開頭的MB行L2之前,配置作為片A的 片頭ha的復制的復制片頭ha',在緊靠作為片的開頭的MB行LlO之前,配置作為片C的片 頭he的復制的復制片頭he'。由此,第2解碼引擎120能夠根據(jù)復制片頭ha'、hc'而得 到在第2劃分流的片A及片C各自的解碼中需要的參數(shù)。接著,對MB地址信息的更新處理進行說明。流劃分部130在如上述那樣將復制片頭插入到劃分流中時,根據(jù)插入的位置更新 包含在復制片頭中的MB地址信息。S卩,在構成包含在編碼流中的圖片的各片的片頭中,包含有用來確定該片的開頭 宏塊在上述圖片內(nèi)的地址的MB地址信息“firSt_mb_in_Slice”。因而,在通過復制這樣的 片頭來生成的復制片頭中,最初包含有與復制源的片頭的MB地址信息相同的MB地址信息。 結果,如果將這樣的復制片頭在圖片內(nèi)插入到與復制源的片頭不同的位置,則由該復制片 頭的MB地址信息確定的地址指示錯誤的地址。即,通過復制片頭的MB地址信息確定的地 址不指示在劃分流中具有該復制片頭的片的開頭宏塊在上述圖片內(nèi)的地址,而指示具有復 制源的片頭的片的開頭宏塊的地址。例如,在圖片pi的片A的片頭ha中,包含有表示該片A的開頭宏塊(MB行Ll的 開頭宏塊)在圖片Pl內(nèi)的地址的MB地址信息。在通過復制這樣的片頭ha而生成的復制 片頭ha'中,最初包含有用來確定MB行Ll的開頭宏塊在圖片pi內(nèi)的地址的MB地址信息。 結果,如果將這樣的復制片頭ha'插入到緊靠MB行L2之前,則由該復制片頭ha'的MB地 址信息確定的地址沒有指示在第2劃分流中具有該復制片頭ha'的片A的開頭宏塊(MB行 L2的開頭宏塊)在圖片pi內(nèi)的地址,而指示MB行Ll的開頭宏塊的地址。所以,本實施方式的流劃分部130更新如上述那樣包含在復制片頭中的MB地址信 肩、ο圖4是用來說明MB地址信息的更新處理的說明圖。流劃分部130首先從包含在編碼流中的SPS(序列參數(shù)集)中獲得作為與圖片的 水平方向的宏塊的數(shù)量關聯(lián)的信息的“pic_Width_in_mbS_minuSl”。進而,流劃分部130使用包含在復制源的片頭中的MB地址信息“first_mb_in_ slice”,計算具有該復制源的片頭的片的開頭宏塊的地址。接著,流劃分部130基于計算出的開頭宏塊的地址,計算表示該開頭宏塊在圖片
15內(nèi)處于第幾行的MB行中的值“mbposv”。另外,值“mbposv”是0以上的整數(shù)。并且,流劃分部130在緊前插入了復制片頭的MB行從配置有復制源的片頭的MB 行觀察離開了 n 行時,通過“first_mb_in_slice[n] ” = ( “mbposv”+n) X ( "pic_width_ in_mbs_minusl”+l)計算復制片頭的MB地址信息。另外,在圖片由MBAFF(宏塊自適應幀場)構成的情況下,流劃分部130通過 "first_mb_in_slice[n] “ = ( "mbposv,,/2+n) X ( "pic_width_in_mbs_minusl“+1)計算 復制片頭的MB地址信息。流劃分部130將最初包含在復制片頭中的MB地址信息更新為如上述那樣計算出 的MB地址信息。由此,由復制片頭的MB地址信息確定的地址正確地指示在劃分流中具有 該復制片頭的片的開頭宏塊在圖片內(nèi)的地址。接著,對片末端處理進行說明。在構成包含在編碼流中的圖片的各片的末端,設定有表示是該片的末端的片末端 信息。因而,如圖3所示,在單純將圖片劃分為多個MB行、該多個MB行分別被分配到第1 劃分流 第4劃分流的某一個的一部分的情況下,有時不能使解碼引擎120適當?shù)刈R別包 含在劃分流中的片的末端。所以,本實施方式的流劃分部130與片頭插入處理同樣也執(zhí)行片末端處理。圖5是用來說明片末端處理的說明圖。 例如,如圖5 (a)所示,包含在編碼流的圖片pi中的片C包含有片頭hc、MB行L9 L12、以及片末端信息ec。流劃分部130將圖片pi按照MB行劃分。結果,如圖5(b) 圖5(e)所示,MB行 L9被與片頭he —起分配到第1劃分流,MB行L10被分配到第2劃分流,MB行11被分配到 第3劃分流,MB行L12被分配到第4劃分流。進而,流劃分部130通過上述片頭的插入處理,復制片頭he而生成3個復制片頭 he',將這些3個復制片頭he'分別插入到緊靠第2劃分流 第4劃分流的MB行L10、L11、 L12之前。此外,流劃分部130通過上述MB地址信息的更新處理,根據(jù)插入的復制片頭he ‘ 的位置,將包含在該復制片頭he'中的MB地址信息更新。這里,流劃分部130作為片末端處理而生成表示第1劃分流中的片C (MB行L9)的 末端、第2劃分流中的片C(MB行L10)的末端、第3劃分流中的片C(MB行L11)的末端、以 及第4劃分流中的片C(MB行L12)的末端的片末端信息ec'。并且,流劃分部130將該生 成的片末端信息ec'設定在緊靠第1劃分流 第4劃分流的MB行L9、L10、L11、L12之后。 另外,流劃分部130在將編碼流按照MB行劃分時,將原本包含在該編碼流中的片末端信息 ec丟棄。此外,如果片末端信息ec和片末端信息ec是相同的信息,則最終MB行L12被與 片末端信息ec' (ec) 一起分配該第4劃分流。由此,解碼引擎120能夠適當?shù)刈R別包含在劃分流中的片的末端。圖6是表示本實施方式的圖像解碼裝置100的整體的動作的流程圖。首先,圖像解碼裝置100獲得編碼流(步驟S10),從該編碼流中確定作為處理對象 的被編碼的圖片(步驟S12)。進而,圖像解碼裝置100通過將處理對象的圖片劃分而提取 一個MB行(步驟S14)。另外,如果在緊靠MB行之前或屬于該MB行的兩個宏塊間有片頭, 則將該MB行與該片頭一起提取。
16
接著,圖像解碼裝置100在將通過步驟S14的劃分而提取的一個MB行分配到作為 生成對象的第1 第N劃分流的某個之前,判斷是否需要進行片重新構成處理(是否需要 在緊靠該MB行之前插入片頭,是否需要在緊靠已經(jīng)分配的MB行之后設定片末端信息,是否 需要修正MB跳過運行信息,以及是否需要設定QP變化量)(步驟S16)。圖像解碼裝置100在步驟S16中判斷為需要進行片重新構成處理時(步驟S16的 是),執(zhí)行片重新構成處理(步驟S18)。即,圖像解碼裝置100執(zhí)行上述片頭的插入處理、 片末端處理、跳過運行修正處理及QP德爾塔設定處理的至少其一。此外,圖像解碼裝置100 在執(zhí)行片頭的插入處理時,也執(zhí)行MB地址信息的更新處理。接著,圖像解碼裝置100將該MB行分配到作為生成對象的第1 第N劃分流的某 個(步驟S20)。通過反復進行該步驟S20,對第1 第N劃分流分別依次分配MB行,生成 第1 第N劃分流。圖像解碼裝置100將分別分配到第1 第N劃分流的MB行并行地解碼(步驟 S22)。另外,在對第1 第N劃分流中的某個劃分流沒有分配MB行的情況下,圖像解碼裝 置100將除了該沒有被分配MB行的劃分流以外的剩余的劃分流解碼。著,圖像解碼裝置100判斷是否分配了包含在圖片中的所有的MB行(步驟 S24),當判斷為沒有分配時(步驟S24的否),重復執(zhí)行從步驟S14起的處理。另一方面,圖 像解碼裝置100在判斷已分配了所有的MB行時(步驟S24的是),再判斷是否已將包含在 編碼流中的所有的圖片劃分(步驟S26)。這里,圖像解碼裝置100在判斷沒有將所有的圖 片劃分時(步驟S26的否),重復執(zhí)行從步驟S12起的處理,當判斷為已將所有的圖片劃分 時(步驟S26的是),結束解碼處理。另外,圖6的流程圖所示的處理動作是本發(fā)明的圖像解碼裝置100的處理動作的 一例,本發(fā)明并不限定于該流程圖所示的處理動作。例如,在圖6的流程圖中,圖像解碼裝置100的流劃分部130在步驟S18的片重新 構成處理中進行片頭的插入處理,但也可以不進行片頭的插入處理,而將復制片頭直接交 給需要片頭的解碼引擎120。此外,在圖6的流程圖中,流劃分部130在步驟S18的片重新 構成處理中進行MB地址信息的更新處理,但也可以不進行該更新處理。在此情況下,例如 解碼引擎120將包含在劃分流中的復制片頭的MB地址信息更新。此外,在圖6的流程圖中, 流劃分部130在步驟S18的片重新構成處理中進行片末端處理,但也可以不在該片重新構 成處理中進行。在此情況下,例如也可以在步驟S20中將MB行分配到第1 第N劃分流的 某個之后、且將下個新的MB行從流劃分部130分配到該某個劃分流之前,對已經(jīng)分配的MB 行進行片末端處理。這里,對流劃分部130的結構及動作詳細地說明。圖7是表示流劃分部130的結構的模塊圖。流劃分部130具備開始代碼檢測部131、EPB除去部132a、EPB插入部132b、片頭 插入部133、以及片數(shù)據(jù)處理部134a、134b。開始代碼檢測部131從流緩沖器151讀出編碼流,按照NAL單元檢測開始代碼。EPB除去部132a將EPB (模仿防止字節(jié))從編碼流中除去,將除去了 EPB的編碼流 輸出給片數(shù)據(jù)處理部134a、134b。進而,EPB除去部132a獲得包含在編碼流中的SPS (序列 參數(shù)集)及PPS(圖片參數(shù)集)等比片更靠上層的信息,將該信息輸出給EPB插入部132b,以使其將該信息分別插入到4個劃分流中。EPB插入部132b在通過將編碼流劃分而生成的劃分流中插入由EPB除去部132a 除去的EPB。片頭插入部133執(zhí)行上述片頭的插入處理及MB地址信息的更新處理。另外,片頭 插入部133以規(guī)定的定時,將表示是否進行片頭的插入處理的片頭處理內(nèi)容通知Ml發(fā)送給 片數(shù)據(jù)處理部134a、134b,當從片數(shù)據(jù)處理部134a、134b接受到末端處理完成通知M2時,執(zhí) 行片頭的插入處理。并且,片頭插入部133通過片頭的插入處理,將處于MB行緊前的片頭 和更新了 MB地址信息后的復制片頭輸出給EPB插入部132b。片數(shù)據(jù)處理部134a、134b通過將除去了 EPB之后的編碼流劃分而生成4個劃分 流,將該4個劃分流輸出。另外,在從片數(shù)據(jù)處理部134a、134b輸出的劃分流中,不包含處于 上述MB行緊前或其中的片頭及復制片頭。這里,片數(shù)據(jù)處理部134a執(zhí)行對應于CAVLD (內(nèi) WiSlS Rl^-IxSI 54 :Context-Adaptive Variable Length Decoding)白勺^h ,it CAVLC(內(nèi)容適應可變長度編碼Context-Adaptive Variable Length Coding)生成的編 碼流劃分為4個劃分流。此外,片數(shù)據(jù)處理部134b執(zhí)行對應于CABAD (內(nèi)容適應二進制運 算解碼Context-Adaptive Binary Arithmetic Decoding)的處理,將通過 CABAC (內(nèi)容適 應二進制運算編碼Context-Adaptive BinaryArithmetic Coding)生成的編碼流劃分為4 個劃分流。片數(shù)據(jù)處理部134a具備片數(shù)據(jù)層解碼部135a、宏塊層解碼部136a、跳過運行修正 部137a、QP德爾塔修正部138a及劃分點檢測部139a。片數(shù)據(jù)層解碼部135a將包含在編碼流中的片數(shù)據(jù)層的編碼數(shù)據(jù)可變長度解碼。 宏塊層解碼部136a將包含在編碼流中的宏塊層的的編碼數(shù)據(jù)可變長度解碼。通過這樣的、 片數(shù)據(jù)層解碼部135a及宏塊層解碼部136a的可變長度解碼,將相鄰的宏塊間的依賴關系 除去。另外,片數(shù)據(jù)層解碼部135a及宏塊層解碼部136a也可以僅將依賴于與處理對象的 宏塊相鄰的宏塊的信息(具體而言是CAVLC的nC (非零系數(shù)non-zero coefficient)等) 解碼。跳過運行修正部137a將由片數(shù)據(jù)層解碼部135a解碼后的MB跳過運行信息“mb_ skip_rUn”修正,將修正后的MB跳過運行信息再次編碼,將編碼后的MB跳過運行信息輸出。 即,跳過運行修正部137a當MB跳過運行信息表示在編碼流中跨越連續(xù)的至少兩個片部分 而連續(xù)的塊的個數(shù)時,將該連續(xù)的塊的個數(shù)劃分,將修正為表示各片部分的塊的個數(shù)的MB 跳過運行信息設定在分別被分配了至少兩個連續(xù)的片部分的劃分流中。進而,跳過運行修 正部137a在各劃分流中對應于設定的多個MB跳過運行信息的多個塊在該劃分流內(nèi)連續(xù) 時,將多個MB跳過運行信息變換為表示該多個MB跳過運行信息分別表示的個數(shù)的總和的 一個MB跳過運行信息。這里,MB跳過運行信息是在包含于編碼圖片中的片內(nèi)指定種類的塊連續(xù)的情況下 表示連續(xù)的該塊的個數(shù)的第1代碼字的一例。具體而言,MB跳過運行信息表示連續(xù)被跳過 的宏塊的數(shù)量。例如,在編碼流的片之中,在連續(xù)被跳過的宏塊的集合跨越多個MB行存在的情況 下,由片數(shù)據(jù)層解碼部135a解碼后的MB跳過運行信息表示包含在該集合中的被連續(xù)跳過 的宏塊的數(shù)量。在這樣的情況下,如果將圖片按照MB行劃分、將這些MB行分配到不同的劃分流,則在各個劃分流中被連續(xù)跳過的宏塊的數(shù)量變化。即,MB跳過運行信息帶來的MB行 間的依賴關系混亂了。所以,跳過運行修正部137a按照包括上述集合的一部分的每個MB行,確定構成包 含在該MB行中的上述一部分的、被連續(xù)跳過的宏塊的數(shù)量。并且,跳過運行修正部137a按 照MB行,修正MB跳過運行信息,以使由MB跳過運行信息表示的數(shù)量相對于該MB行成為被 確定的數(shù)量。QP德爾塔修正部138a按照每個宏塊,將由宏塊層解碼部136a解碼的、該宏塊的 QP變化量“mb_qp_delta”修正,將修正后的QP變化量再次編碼,將編碼后的QP變化量輸 出。即,QP德爾塔修正部138a在QP變化量表示跨越兩個MB行的塊間的變化量的情況下, 計算基于各劃分流中的塊的新的前后關系的編碼系數(shù)的變化量。并且,QP德爾塔修正部 138a對計算出的變化量修正QP變化量。另外,QP變化量是表示在編碼圖片中包含的片內(nèi)連續(xù)的塊間的編碼系數(shù)的變化量 的第2代碼字的一例。具體而言,QP變化量包含在宏塊(對象宏塊)中,表示該對象宏塊 的QP值與位于該對象宏塊緊前的宏塊的QP值的差分值。S卩,如果將圖片按照MB行劃分,并將MB行分別分配到多個劃分流的某個,則夾著 MB行的邊界相互連續(xù)的宏塊分別被分配到不同的劃分流。結果,將包括該相互連續(xù)的一個 宏塊(對象宏塊)的劃分流作為解碼的對象的解碼引擎120不能根據(jù)對象宏塊的QP變化 量導出該對象宏塊的QP值。即,QP變化量帶來的MB行間的依賴關系混亂了。所以,QP德爾塔修正部138a按照宏塊,基于劃分流中的新的宏塊的前后關系重新 計算該宏塊(對象宏塊)的QP變化量。劃分點檢測部139a將編碼流劃分為4個劃分流。即,劃分點檢測部139a將圖片 劃分為多個MB行,將MB行分別分配到4個劃分流的某個。另外,劃分點檢測部139a在緊 靠MB行之前或屬于該MB行的兩個宏塊間有片頭的情況下,不進行該片頭的分配,而僅將MB 行分配到劃分流。此外,劃分點檢測部139a在劃分流的各自中包含從跳過運行修正部137a 獲得的MB跳過運行信息、以及從QP德爾塔修正部138a獲得的QP變化量。進而,劃分點檢測部139a檢測劃分流的片的末端,如果從片頭插入部133接受到 片頭處理內(nèi)容通知M1,則根據(jù)該片頭處理內(nèi)容通知Ml表示的內(nèi)容,執(zhí)行上述片末端處理。 此外,如果片末端處理完成,則劃分點檢測部139a對片頭插入部133發(fā)送末端處理完成通 知M2。片數(shù)據(jù)處理部134b具備片數(shù)據(jù)層解碼部135b、宏塊層解碼部136b、QP德爾塔修 正部138b及劃分點檢測部139b。片數(shù)據(jù)層解碼部135b將包含在編碼流中的片數(shù)據(jù)層的編碼數(shù)據(jù)可變長度解碼 (算術解碼)。宏塊層解碼部136b將包含在編碼流中的宏塊層的編碼數(shù)據(jù)可變長度解碼 (算術解碼)。通過這樣的、片數(shù)據(jù)層解碼部135b及宏塊層解碼部136b的可變長度解碼, 將相鄰的宏塊間的依賴關系除去。QP德爾塔修正部138b與上述QP德爾塔修正部138a同樣,按照宏塊,將由宏塊層 解碼部136b解碼的、該宏塊的QP變化量“mb_qp_delta”修正,將修正后的QP變化量再次 編碼,將編碼后的QP變化量輸出。劃分點檢測部139b與劃分點檢測部139a同樣,將編碼流劃分為4個劃分流。此
19時,劃分點檢測部139b在劃分流的各自中包含從QP德爾塔修正部138b獲得的QP變化量。 進而,劃分點檢測部139b檢測劃分流的片的末端,如果從片頭插入部133接受到片頭處理 內(nèi)容通知M1,則根據(jù)該片頭處理內(nèi)容通知Ml表示的內(nèi)容,執(zhí)行上述片末端處理。此外,如果 片末端處理完成,則劃分點檢測部139b對片頭插入部133發(fā)送末端處理完成通知M2。這里,對片頭插入部133及片數(shù)據(jù)處理部134a、134b詳細地說明。另外,當說明對 片數(shù)據(jù)處理部134a、134b共通的功能及處理動作時,不將它們區(qū)別而總稱作片數(shù)據(jù)處理部 134。首先,對片頭插入部133插入片頭的定時、以及片數(shù)據(jù)處理部134插入片末端信息 的定時進行說明。圖8是用來說明片頭插入部133及片數(shù)據(jù)處理部134的動作的說明圖。片數(shù)據(jù)處理部134將包括片A及片B的圖片按照MB行劃分,經(jīng)由EPB插入部132b 從開頭側的MB行將各MB行依次保存到包含于劃分流緩沖器152中的4個區(qū)域(第1區(qū)域 dfl 第4區(qū)域df4)中。此時,片數(shù)據(jù)處理部134a每當1MB行的保存時,將MB行的保存目 的地以第1區(qū)域dfl、第2區(qū)域df2、第3區(qū)域df3、第4區(qū)域df4、第1區(qū)域dfl的順序反復 變更。例如,片數(shù)據(jù)處理部134如圖8 (a)所示,將片A的MB行Lal保存到劃分流緩沖器 152的第1區(qū)域dfl中,將片A的下個MB行La2保存到劃分流緩沖器152的第2區(qū)域df2 中,將片A的下個MB行La3保存到劃分流緩沖器152的第3區(qū)域df3中。進而,片數(shù)據(jù)處 理部134a將片A的下個片B的MB行Lbl保存到劃分流緩沖器152的第4區(qū)域df4中。結果,在劃分流緩沖器152的4個第1區(qū)域dfl 第4區(qū)域df4的各自中保存MB 行,劃分流緩沖器152成為片B的下個MB行再次被保存到第1區(qū)域dfl中之前的狀態(tài)。另外,片數(shù)據(jù)處理部134在將MB行La3保存到第3區(qū)域df3中時,如果在編碼流中 在MB行La3之后有片末端信息ea,也不保存該片末端信息ea,而僅將MB行La3保存到第3 區(qū)域df3中。并且,片數(shù)據(jù)處理部134其后在將屬于新的片的MB行保存到第3區(qū)域df3中 時,將對應于該片末端信息ea的片末端信息ea'保存到第3區(qū)域df3中。此外,在片數(shù)據(jù) 處理部134將MB行Lbl保存到第4區(qū)域df4中時,也事前通過片頭插入部133將片B的片 頭hb保存到第4區(qū)域df4中。此外,在圖片中,在比片A的MB行Lal靠前,存在該片A的 另一 MB行。因而,在第1區(qū)域dfl、第2區(qū)域df2及第3區(qū)域df3的MB行Lal、La2、La3之 前,沒有插入片A的復制片頭。此外,片數(shù)據(jù)處理部134的劃分點檢測部139a、139b每當輸出宏塊時判斷是否輸 出了 1MB行的所有的宏塊。結果,劃分點檢測部139a、139b如果判斷為已輸出了所有的宏 塊,則檢測MB行的邊界(MB行的末端)。并且,劃分點檢測部139a、139b每當檢測MB行的 邊界時,將宏塊的輸出處理中斷,將檢測到了 MB行的邊界的情況通知給片頭插入部133。因而,MB行的最后的宏塊被保存在劃分流緩沖器152中,當劃分流緩沖器152成 為上述那樣的圖8(a)所示的狀態(tài)時,片頭插入部133也從片數(shù)據(jù)處理部134的劃分點檢測 部139a、139b接受檢測到了 MB行的邊界的通知。接受到MB行的邊界檢測的通知的片頭插入部133如圖8(b)所示,將片頭處理內(nèi) 容通知Ml發(fā)送給片數(shù)據(jù)處理部134。該片頭處理內(nèi)容通知Ml是在從片數(shù)據(jù)處理部134向 劃分流緩沖器152保存下個MB行之前、對該片數(shù)據(jù)處理部134通知是否計劃將片頭輸出到
20劃分流緩沖器152中并保存的信息,表示“輸出”或“不輸出”。即,表示“輸出”的片頭處理 內(nèi)容通知Ml是對片數(shù)據(jù)處理部134提示片末端處理的通知。例如,片頭插入部133在從片數(shù)據(jù)處理部134向劃分流緩沖器152保存下個MB行 Lb2之前,判斷是否要將復制片頭hb'輸出并保存到劃分流緩沖器152中。此時,片頭插入 部133將表示“輸出”的片頭處理內(nèi)容通知Ml輸出給片數(shù)據(jù)處理部134。片數(shù)據(jù)處理部134如果獲得片頭處理內(nèi)容通知M1,則只要該片頭處理內(nèi)容通知Ml 表示“輸出”,就生成片末端信息而保存到劃分流緩沖器152中之后,將末端處理完成通知 M2輸出給片頭插入部133。另一方面,片數(shù)據(jù)處理部134如果片頭處理內(nèi)容通知Ml表示 “不輸出”,則不將片末端信息保存到劃分流緩沖器152中,而將末端處理完成通知M2輸出 給片頭插入部133。例如,片數(shù)據(jù)處理部134如果獲得表示“輸出”的片頭處理內(nèi)容通知M1,則如圖 8(c)所示,生成片末端信息ea',保存到劃分流緩沖器152的第1區(qū)域dfl中。如果該保 存完成,則片數(shù)據(jù)處理部134將末端處理完成通知M2輸出給片頭插入部133。片頭插入部133如果從片數(shù)據(jù)處理部134獲得末端處理完成通知M2,則在之前輸 出的片頭處理內(nèi)容通知Ml表示“輸出”的情況下,經(jīng)由EPB插入部132b將片頭輸出并保存 到劃分流緩沖器152中,然后,將片頭處理完成通知M3輸出給片數(shù)據(jù)處理部134。另一方 面,在之前輸出的片頭處理內(nèi)容通知Ml表示“不輸出”的情況下,片頭插入部133不將片頭 保存到劃分流緩沖器152中,而將片頭處理完成通知M3輸出給片數(shù)據(jù)處理部134。例如,片頭插入部133在之前輸出的片頭處理內(nèi)容通知Ml表示“輸出”的情況下, 如果從片數(shù)據(jù)處理部134獲得末端處理完成通知M2,則如圖8 (d)所示,生成復制片頭hb ‘ 并保存到劃分流緩沖器152的第1區(qū)域dfl中。然后,片頭插入部133將片頭處理完成通 知M3輸出給片數(shù)據(jù)處理部134。片數(shù)據(jù)處理部134的劃分點檢測部139a、139b如果從片頭插入部133接受到片頭 處理完成通知M3,則重新開始中斷的宏塊的輸出處理,輸出下個MB行并保存到劃分流緩沖 器152中。例如,片數(shù)據(jù)處理部134如圖8 (d)所示,將下個MB行Lb2輸出并保存到劃分流緩 沖器152的第1區(qū)域dfl中。通過這樣的片頭插入部133及片數(shù)據(jù)處理部134的處理,在劃分流緩沖器152的 各區(qū)域中,能夠以片末端信息、片頭、下個MB行的順序,將這些數(shù)據(jù)寫入到適當?shù)腗B行的邊 界中。圖9是表示片頭插入部133的結構的模塊圖。另外,在利用圖9說明關于劃分點檢測部139a、139b共通的功能及處理動作時,不 將它們區(qū)別而統(tǒng)稱作劃分點檢測部139。片頭插入部133具備NAL類型判斷部133a、頭插入計數(shù)器133b、頭地址更新部 133c及頭緩沖器133d。NAL類型判斷部133a每當獲得編碼流的NAL單元時,判斷該NAL單元的類型是否 是片。并且,NAL類型判斷部133a在判斷是片時,將該NAL單元的類型是片的情況通知給 頭緩沖器133d及頭插入計數(shù)器133b。頭緩沖器133d如果接受到來自NAL類型判斷部133a的通知,則只要在對應于該通知的NAL單元中包含有片頭,就從該NAL單元取出片頭并存儲。進而,頭緩沖器133d如 果在后面的NAL單元中包含有新的片頭,則將已經(jīng)存儲的片頭替換為該新的片頭。S卩,頭緩 沖器133d總是保持著最新的片頭。頭插入計數(shù)器133b為了確定生成并插入復制片頭的定時,計數(shù)編碼流中的MB行 的邊界(末端)被劃分點檢測部139檢測到的數(shù)量。具體而言,頭插入計數(shù)器133b計數(shù) 0 4(解碼引擎120的總數(shù))的值。頭插入計數(shù)器133b如果接受到來自NAL類型判斷部 133a的通知,則只要在對應于該通知的NAL單元中包含有片頭,則將計數(shù)值復位為0。進而, 頭插入計數(shù)器133b當檢測到MB行的邊界(MB行的末端)時,將計數(shù)值計數(shù)增加1。并且, 頭插入計數(shù)器133b在計數(shù)值達到4之后再檢測到MB行的邊界時,不進行計數(shù)增加,而將計 數(shù)值維持為4。這樣,頭插入計數(shù)器133b在檢測到MB行的邊界時,更新或保持計數(shù)值,如果在NAL 單元中包含有片頭,則將計數(shù)值復位為0。此外,頭插入計數(shù)器133b在檢測到MB行的邊界時,根據(jù)通過該檢測而更新的計數(shù) 值(包括由于MB行邊界之后的片頭而復位的計數(shù)值=0),將表示“輸出”或“不輸出”的片 頭處理內(nèi)容通知Ml輸出給劃分點檢測部139。具體而言,頭插入計數(shù)器133b當剛檢測到 MB行的邊界之后的計數(shù)值是0 3時,輸出表示“輸出”的片頭處理內(nèi)容通知M1,當該計數(shù) 值是4時,輸出表示“不輸出”的片頭處理內(nèi)容通知Ml。此外,頭插入計數(shù)器133b并不限于 檢測到MB行的邊界時,在計數(shù)值成為0時,也輸出表示“輸出”的片頭處理內(nèi)容通知Ml。進而,頭插入計數(shù)器133b在將片頭處理內(nèi)容通知Ml輸出給劃分點檢測部139之 后,如果從劃分點檢測部139接受到末端處理完成通知M2,則在該輸出的片頭處理內(nèi)容通 知Ml表示“輸出”的情況下,從該頭緩沖器133d輸出保存在頭緩沖器133d中的片頭。然 后,頭插入計數(shù)器133b將片頭處理完成通知M3輸出給劃分點檢測部139。另外,在從頭緩 沖器133d輸出片頭時,片頭插入部133根據(jù)由包含在該片頭中的MB地址信息所表示的值, 選擇作為劃分流緩沖器152的保存目的地的區(qū)域。并且,片頭插入部133將片頭保存到該 選擇的作為保存目的地的區(qū)域中。另一方面,頭插入計數(shù)器133b在該輸出的片頭處理內(nèi)容 通知Ml表示“不輸出”的情況下,不將保存在頭緩沖器133d中的片頭從頭緩沖器133d輸 出,而維持保存的狀態(tài)。然后,與上述同樣,頭插入計數(shù)器133b將片頭處理完成通知M3輸 出給劃分點檢測部139。頭地址更新部133c根據(jù)剛檢測到MB行的邊界之后的計數(shù)值(包括由于緊靠MB 行邊界之后的片頭而復位的計數(shù)值=0),將保存在頭緩沖器133d中的片頭的MB地址信息 “first_mb_in_slice” 更新。例如,頭地址更新部133c在計數(shù)值η = 0時,不將MB地址信息更新,在 計數(shù)值η乒0時,將MB地址信息更新為(“mbposv”+n) X ( "pic_width_inmbs_ minus 1 "+l)。另外,在圖片由MBAFF構成的情況下,頭地址更新部133c將MB地址信息通過 ("mbposv'V2+n) X ( "pic_width_in_mbs_minusl“+1) Mf 。圖10是表示對劃分流緩沖器152的第1區(qū)域df 1 第4區(qū)域df4分配的MB行及 片頭的圖。例如,流劃分部130將保存在流緩沖器151中的編碼流的片A C以片A、片B、片 C的順序讀出。
在此情況下,首先片頭插入部133的頭緩沖器133d從片A的開頭取出片頭ha并 存儲。此時,頭插入計數(shù)器133b將計數(shù)值復位為0。因而,頭緩沖器133d由于計數(shù)值是0, 所以通過將存儲的片頭ha輸出,將該片頭ha保存到劃分流緩沖器152的第1區(qū)域df 1中。如果從頭緩沖器133d輸出片頭ha,則片數(shù)據(jù)處理部134通過將編碼流中接在片 A的片頭ha之后的第1MB行輸出,將該第1MB行保存到劃分流緩沖器152的第1區(qū)域dfl 中。結果,在第1區(qū)域dfl中,以片頭ha、屬于片A的第1MB行的順序保存這些數(shù)據(jù)。如果將第1MB行從片數(shù)據(jù)處理部134輸出,則上述頭插入計數(shù)器133b將計數(shù)值計 數(shù)增加到1。因而,頭插入計數(shù)器133b由于在第1MB行的末端計數(shù)值是1,所以通過將存儲 的片頭ha作為復制片頭ha'輸出,將該復制片頭ha'保存到劃分流緩沖器152的第2區(qū) 域df2中。另外,復制片頭ha'的MB地址信息由頭地址更新部133c更新。如果將復制片頭ha'從頭緩沖器133d輸出,則片數(shù)據(jù)處理部134通過將在編碼流 中接著第1MB行的第2MB行輸出,將該第2MB行保存到劃分流緩沖器152的第2區(qū)域df2 中。這里,第2MB行包含有屬于片A的多個宏塊、片B的片頭hb、以及屬于片B的多個 宏塊。所以,片數(shù)據(jù)處理部134的劃分點檢測部139首先將屬于包含在第2MB行中的片A 的所有的宏塊保存到第2區(qū)域df2中。如果該保存結束,則劃分點檢測部139將宏塊的輸 出處理暫時中斷,待機直到從片頭插入部133接受到片頭處理內(nèi)容通知Ml。此時,片頭插 入部133由于檢測到片B的片頭hb,所以將計數(shù)值復位為0,將表示“輸出”的片頭處理內(nèi) 容通知Ml發(fā)送給劃分點檢測部139。接受到該片頭處理內(nèi)容通知Ml的劃分點檢測部139 對第2區(qū)域df2的片A的末端進行片末端處理,將末端處理完成通知M2發(fā)送給片頭插入部 133。接受到該末端處理完成通知M2的片頭插入部133將片B的片頭hb保存到第2區(qū)域 df2中,將片頭處理完成通知M3發(fā)送給劃分點檢測部139。接受到該片頭處理完成通知M3 的劃分點檢測部139重新開始中斷的輸出處理,將屬于包含在第2MB行中的下個片B的多 個宏塊保存到第2區(qū)域df2中。結果,在第2區(qū)域df2中,接著復制片頭ha',以構成屬于片A的第2MB行的一部 分的多個宏塊、片頭hb、構成屬于片B的第2MB行的一部分的多個宏塊的順序保存這些數(shù)據(jù)。如果從片數(shù)據(jù)處理部134輸出第2MB行,則片頭插入部133的頭緩沖器133d從編 碼流中接著該第2MB行的片C的開頭讀出片頭he并存儲。此時,頭插入計數(shù)器133b將計 數(shù)值復位為0。因而,頭緩沖器133d由于在第2MB行的末端計數(shù)值是0,所以通過將存儲的 片頭he輸出,將該片頭he保存到劃分流緩沖器152的第3區(qū)域df3中。如果將片頭he從頭緩沖器133d輸出,則片數(shù)據(jù)處理部134通過將編碼流中接著 片C的片頭he的第3MB行輸出,將該第3MB行保存到劃分流緩沖器152的第3區(qū)域df3中。 結果,在第3區(qū)域df3中,以片頭he、屬于片C的第3MB行的順序保存這些數(shù)據(jù)。如果將第3MB行從片數(shù)據(jù)處理部134輸出,則上述頭插入計數(shù)器133b將計數(shù)值計 數(shù)增加到1。因而,頭緩沖器133d由于在第3MB行的末端計數(shù)值是1,所以通過將存儲的片 頭he作為復制片頭he ‘輸出,將該復制片頭he ‘保存到劃分流緩沖器152的第4區(qū)域df4 中。另外,復制片頭he'的MB地址信息由頭地址更新部133c更新。通過重復這樣的處理,將數(shù)據(jù)依次保存到劃分流緩沖器152的第1區(qū)域dfl 第
234df4中。結果,在這些第1區(qū)域dfl 第4區(qū)域df4中分別保存第1劃分流 第4劃分流。圖IlA及圖IlB是表示設定片末端信息的位置的圖。例如,如圖IlA所示,圖片包括片A和片B,接在片A之后的片B的開頭的宏塊處 于MB行的左端。在這樣的情況下,片數(shù)據(jù)處理部134的劃分點檢測部139在從片頭插入部 133輸出片B的片頭hb之前,在從該片B的的開頭MB行起處于4MB行前的、片A的MB行的 末端,設定片A的片末端信息ea'。進而,片數(shù)據(jù)處理部134的劃分點檢測部139在從片頭 插入部133輸出片B的復制片頭hb ‘之前,在從該片B的開頭MB行起處于3MB行前的片A 的MB行的末端設定片A的片末端信息ea'。這樣,在片的開頭的宏塊處于MB行的左端的情況下,在處于該MB行的1 4MB行 前的各MB行的末端設定片末端信息ea'。此外,如圖1IB所示,圖片包括片A和片B,接在片A之后的片B的開頭的宏塊處于 MB行的左端以外。在這樣的情況下,片數(shù)據(jù)處理部134的劃分點檢測部139在從片頭插入 部133輸出片B的復制片頭hb'之前,在處于從包括該片B的片頭hb的MB行起3MB行前 的、片A的MB行的末端,設定片A的片末端信息ea'。這樣,在片的開頭的宏塊處于MB行的左端以外的情況下,在該MB行中的片的邊 界、以及處于該MB行的1 3MB行前的各MB行的末端設定片末端信息ea'。這里,對劃分點檢測部139的動作詳細地說明。圖12是表示劃分點檢測部139的動作的流程圖。首先,劃分點檢測部139從編碼流的開頭側確定應作為處理對象的數(shù)據(jù)(例如宏 塊)并輸出,保存到劃分流緩沖器152中。這里,劃分點檢測部139管理著輸出的宏塊的地址(MB地址值)。即,如果輸出的 宏塊是包含在編碼流中的片的開頭宏塊,則劃分點檢測部139將輸出的宏塊的MB地址值更 新為由包含在該片的片頭中的MB地址信息表示的值。并且,劃分點檢測部139每當輸出接 著該開頭宏塊的宏塊時,將該MB地址值增加。另外,MB地址值是0以上的整數(shù)。并且,劃分點檢測部139在步驟SlOO中輸出宏塊時,根據(jù)該宏塊的MB地址值,選 擇劃分流緩沖器152內(nèi)的作為保存目的地的區(qū)域,將宏塊保存到該作為保存目的地的區(qū)域 中。具體而言,在對包含在劃分流緩沖器152中的4個區(qū)域分配第1 第4的號碼的情況 下,劃分點檢測部139選擇第m= ((MB地址值/W)%N+1)個區(qū)域,在該第m個區(qū)域中保存 宏塊。另外,W用W =“pic_width_in_mbs_minusl”+l表示,表示圖片的水平方向的宏塊 數(shù)。此外,N是解碼引擎120的總數(shù)(N = 4),%表示用(MB地址值/W)除以N時的余數(shù)。接著,劃分點檢測部139判斷在步驟SlOO中輸出的宏塊是否是MB行的末端(邊 界),即宏塊的輸出處理是否達到了 MB行的末端(步驟S102)。具體而言,劃分點檢測部 139判斷在步驟SlOO中輸出的宏塊的MB地址值是否是(W的倍數(shù)-1)。當MB地址值=(W 的倍數(shù)-1)時,輸出處理達到MB行的末端,當MB地址值興(W的倍數(shù)-1)時,輸出處理沒有 達到MB行的末端。劃分點檢測部139如果判斷為沒有達到末端(步驟S102的否),則判斷在編碼流 中是否有接著要作為處理對象的數(shù)據(jù),即是否應結束輸出處理(步驟S114)。另一方面,劃 分點檢測部139如果判斷為達到了末端(MB行的邊界),即如果檢測到MB行的邊界(步驟S102的是),則將檢測到MB行的邊界的情況通知給片頭插入部133并將輸出處理中斷,然 后判斷是否從片頭插入部133接受到了片頭處理內(nèi)容通知Ml (步驟S104)。劃分點檢測部139如果判斷為沒有接受到片頭處理內(nèi)容通知Ml (步驟S104的 否),則待機直到接受到片頭處理內(nèi)容通知Ml。另一方面,劃分點檢測部139如果判斷為接受到片頭處理內(nèi)容通知Ml (步驟S104 的是),則判斷該片頭處理內(nèi)容通知Ml是否表示“輸出”(步驟S106)。這里,劃分點檢測部139如果判斷為表示“輸出”(步驟S106的是),則執(zhí)行片末 端處理(步驟S108)。即,劃分點檢測部139在將編碼流用CABAD解碼的情況,在“end_0f_ SliCe_flag”中設定“1”作為片末端信息。此外,劃分點檢測部139在將編碼流用CAVLD解 碼的情況下,賦予“rbsp_s 1 ice_trai 1 ing_bits”作為片末端信息。劃分點檢測部139在步驟S106中判斷為不表示“輸出,,之后(步驟S106的否), 或者在步驟S108中執(zhí)行片末端處理之后,對片頭插入部133發(fā)送末端處理完成通知M2(步 驟S110)。然后,劃分點檢測部139判斷是否從片頭插入部133接受到了片頭處理完成通知 M3 (步驟Sl 12)。這里,劃分點檢測部139如果判斷為沒有接受到片頭處理完成通知M3 (步 驟S112的否),則待機直到接受到片頭處理完成通知M3。另一方面,劃分點檢測部139在 步驟Sl 12中判斷為接受到了片頭處理完成通知M3時(步驟Sl 12的是),判斷在編碼流中 是否有接著要作為處理對象的數(shù)據(jù)、即是否應結束輸出處理(步驟S114)。這里,劃分點檢測部139在判斷為應結束時(步驟S114的是),結束處理,在判斷 為不是應結束時(步驟S114的否),再次輸出應作為下個處理對象的數(shù)據(jù)而保存到劃分流 緩沖器152中(步驟S100)。接著,對跳過運行修正部137a的動作的詳細情況進行說明。跳過運行修正部137a如上述那樣修正作為MB跳過運行信息的“mb_skip_rim”。 MB跳過運行信息是在編碼方法中使用CAVLC的情況下包含在編碼流中的代碼字,表示連續(xù) 的跳過宏塊的個數(shù)(以下也稱作“長度”)。此外,在以下的記載中,所謂MB跳過運行信息 的長度,是指MB跳過運行信息表示的、連續(xù)的跳過宏塊的個數(shù)。圖13A及圖13B是用來說明MB跳過運行信息的修正處理的說明圖。 在圖13A所示的圖片中,在MB行L2的末尾存在5個、在MB行L3的開頭存在3個、 在MB行L5的末尾存在兩個、在MB行L6的開頭存在4個連續(xù)的跳過宏塊。因而,在包括這 樣的圖片的編碼流中,將表示跨越MB行L2 L3連續(xù)的跳過宏塊的個數(shù)的長度8 (5+3 = 8) 的MB跳過運行信息編碼,將表示跨越MB行L5 L6連續(xù)的跳過宏塊的個數(shù)的長度6 (2+4 =6)的MB跳過運行信息編碼。但是,在這樣的情況下,如果將圖片按照MB行劃分、將這些MB行分配到不同的劃 分流,則在各個劃分流中,連續(xù)被跳過的宏塊的數(shù)量變化。即,表示跨越多個MB行連續(xù)的跳 過宏塊的個數(shù)的MB跳過運行信息帶來的、該多個MB行間的依賴關系混亂了。S卩,包含在第1劃分流中的MB行是Ll及L5,在MB行L5的末尾存在連續(xù)的兩個 跳過宏塊。此外,包含在第2劃分流中的MB行是L2及L6,MB行存在跨越L2到L6連續(xù)的 9個跳過宏塊。此外,包含在第3劃分流中的MB行是L3及L7,MB行在L3的開頭存在連續(xù) 的3個跳過宏塊。此外,包含在第4劃分流中的MB行是L4及L8,不存在跳過宏塊。以上,相對于原本包含在編碼流中的MB跳過運行信息是長度8和6,需要對第1劃分流輸出長度2的MB跳過運行信息、對第2劃分流輸出長度9的MB跳過運行信息、對第3 劃分流輸出長度3的MB跳過運行信息。即,根據(jù)表示跨越多個MB行連續(xù)的跳過宏塊的個 數(shù)的MB跳過運行信息,在該多個MB行相互具有依賴關系的情況下,需要修正MB跳過運行 信息,以使該依賴關系成為對應于各劃分流中的MB行的前后關系的新的依賴關系。所以,跳過運行修正部137a首先在與由片數(shù)據(jù)層解碼部135a解碼的MB跳過運行 信息對應的跳過宏塊的集合跨越多個MB行存在的情況下,在MB行邊界將MB跳過運行信息 劃分。這里,所在在MB行邊界將MB跳過運行信息劃分,是指將跨越多個MB行連續(xù)的多個 跳過宏塊的個數(shù)劃分、生成分別表示各MB行的跳過宏塊的個數(shù)的多個MB跳過運行信息。S卩,在圖13A所示的圖片的情況下,跳過運行修正部137a將對應于跨越MB行L2 L3存在的8個跳過宏塊的集合的MB跳過運行信息劃分為對應于包含在MB行L2中的5個 跳過宏塊的集合的MB跳過運行信息、以及對應于包含在MB行L3中的3個跳過宏塊的集合 的MB跳過運行信息。同樣,跳過運行修正部137a將對應于跨越MB行L5 L6存在的6個 跳過宏塊的集合的MB跳過運行信息劃分為對應于包含在MB行L5中的2個跳過宏塊的集 合的MB跳過運行信息、以及對應于包含在MB行L6中的4個跳過宏塊的集合的MB跳過運 行信息。接著,跳過運行修正部137a將劃分后的MB跳過運行信息中的、對應于在各劃分流 中連續(xù)的跳過宏塊的集合的多個MB跳過運行信息重新結合。這里,所謂多個MB跳過運行 信息的重新結合,是指將多個MB跳過運行信息變換為表示該多個MB跳過運行信息分別表 示的個數(shù)的總和的一個MB跳過運行信息。在圖13A所示的圖片的情況下,與劃分后的MB跳過運行信息對應的跳過宏塊的集 合中的、包含在MB行L2中的長度5的跳過宏塊的集合以及包含在MB行L6中的長度4的 跳過宏塊的集合在第2劃分流內(nèi)連續(xù)。因此,跳過運行修正部137a將分別對應于這些兩個 跳過宏塊的集合的兩個MB跳過運行信息結合,變換為長度9的MB跳過運行信息。最后,跳過運行修正部137a將這樣得到的MB跳過運行信息再次編碼,將編碼后的 MB跳過運行信息輸出。如以上說明,跳過運行修正部137a在將輸入的MB跳過運行信息在MB行邊界劃分 后,通過根據(jù)需要重新結合,能夠對各劃分流輸出適當長度的MB跳過運行信息。另外,這里跳過運行修正部137a不使在各劃分流中連續(xù)的MB跳過運行信息為劃 分的原狀、而根據(jù)需要重新結合,是因為在H. 264/AVC規(guī)格中不允許連續(xù)存在多個MB跳過 運行信息。即,在H. 264/AVC規(guī)格中,由于不允許使用多個MB跳過運行信息表現(xiàn)連續(xù)的跳 過宏塊的個數(shù),所以跳過運行修正部137a將該多個MB跳過運行信息結合。這樣,通過跳過 運行修正部137a以依據(jù)H. 264/AVC規(guī)格的形式將MB跳過運行信息修正,以依據(jù)H. 264/AVC 規(guī)格的形式生成各劃分流。結果,后段的解碼引擎120能夠不需要特別的處理而將劃分流 解碼。此外,在圖13B所示的圖片中,在MB行L2的末尾存在5個連續(xù)的跳過宏塊,在MB 行L6的開頭存在3個連續(xù)的跳過宏塊。因而,在包括這樣的圖片的編碼流中,在MB行L2 中編碼有長度5的MB跳過運行信息,在MB行L6中編碼有長度3的MB跳過運行信息。在該圖片的情況下,由于不存在表示跨越多個MB行連續(xù)的跳過宏塊的個數(shù)的MB 跳過運行信息,所以跳過運行修正部137a不需要在MB行邊界將MB跳過運行信息劃分。但
26是,在將該圖片按照MB行劃分、將這些MB行分配到不同的劃分流的情況下,在第2劃分流 中連續(xù)存在長度5的MB跳過運行信息和長度3的MB跳過運行信息。因而,如該例那樣,在不存在表示跨越多個MB行連續(xù)的跳過宏塊的個數(shù)的MB跳過 運行信息的情況下,跳過運行修正部137a也進行將在各劃分流中表示一個連續(xù)的跳過宏 塊的個數(shù)的多個MB跳過運行信息重新結合的處理。即,跳過運行修正部137a在第2劃分 流中,將長度5的MB跳過運行信息與長度3的MB跳過運行信息結合,變換為長度8的MB 跳過運行信息。跳過運行修正部137a將這樣得到的MB跳過運行信息再次編碼,將編碼后的MB跳 過運行信息輸出。圖14是表示跳過運行修正部137a的結構的模塊圖。跳過運行修正部137a具備跳過運行提取部160、跳過運行劃分部161、跳過運行累 積·保持部162、加法部163、以及跳過運行編碼部164。運行提取部160從由片數(shù)據(jù)層解碼部輸出的流中,檢測及提取MB跳過運行信息。 將提取出的MB跳過運行信息對跳過運行劃分部161輸出,將除此以外的信息原樣對劃分點 檢測部139a輸出。跳過運行劃分部161根據(jù)MB跳過運行信息的長度和MB跳過運行信息所存在的宏 塊的位置信息,判斷被輸入的MB跳過運行信息是否表示跨越多個MB行連續(xù)的跳過宏塊的 個數(shù)。這里,在判斷為表示跨越多個MB行連續(xù)的跳過宏塊的個數(shù)的情況下,跳過運行劃分 部161將MB行邊界作為劃分點,將MB跳過運行信息劃分。將劃分后的MB跳過運行信息中 的、表示跨越MB行邊界后的跳過運行宏塊的個數(shù)的MB跳過運行信息輸出給加法部163,將 表示沒有越過MB行邊界的跳過宏塊的個數(shù)的MB跳過運行信息輸出給跳過運行累積 保持 部 162。另外,也有MB跳過運行信息表示跨越3個以上的MB行連續(xù)的跳過宏塊的個數(shù)的 情況。在此情況下,由于在連續(xù)的跳過宏塊之間存在兩個以上的MB行邊界,所以跳過運行 劃分部161將各個MB行邊界作為劃分點而進行反復劃分。此時,將劃分后的MB跳過運行 信息中的、表示越過了最后的MB行邊界后的跳過宏塊的個數(shù)的MB跳過運行信息輸出給加 法部163,將除此以外的MB跳過宏塊信息輸出給跳過運行累積·保持部162。跳過運行累積·保持部162接受從跳過運行劃分部161輸出的被劃分的MB跳過 運行信息,按照劃分流保持其值作為先行MB跳過運行信息。S卩,跳過運行累積 保持部162 在接受到包含于第1劃分流中的MB跳過運行信息的情況下作為第1劃分流的先行MB跳過 運行信息保持。此外,跳過運行累積 保持部162在接受到包含于第2劃分流中的MB跳過 運行信息的情況下,作為第2劃分流的先行MB跳過運行信息保持。此外,跳過運行累積 保 持部162在接受到包含于第3劃分流中的MB跳過運行信息的情況下,作為第3劃分流的先 行MB跳過運行信息保持。此外,跳過運行累積 保持部162在接受到包含于第4劃分流中 的MB跳過運行信息的情況下,作為第4劃分流的先行MB跳過運行信息保持。此時,在已經(jīng)在跳過運行累積 保持部162中保持有先行MB跳過運行信息的情況 下,跳過運行累積·保持部162將從跳過運行劃分部161接受到的MB跳過運行信息累積, 按照劃分流保持該值作為新的MB跳過運行信息。即,跳過運行累積 保持部162按照劃分 流,將從跳過運行劃分部161接受到的MB跳過運行信息加到保持的先行MB跳過運行信息上。加法部163從跳過運行劃分部161接受MB跳過運行信息,并且將對應于包含有該 MB跳過運行信息的劃分流的、保持在跳過運行累積·保持部162中的先行MB跳過運行信 息讀出。并且,加法部163將從跳過運行劃分部161接受到的MB跳過運行信息的值、與從 跳過運行累積 保持部162讀出的先行MB跳過運行信息的值相加,將其結果作為修正后的 MB跳過運行信息,輸出給跳過運行編碼部164。通過該處理進行MB跳過運行信息的重新結
I=I ο跳過運行編碼部164通過將從加法部163輸出的修正后的MB跳過運行信息重新 編碼而輸出給劃分點檢測部139a,將修正后的MB跳過運行信息再次埋入到流中。圖15是表示跳過運行修正部137a的MB跳過運行信息的修正動作的流程圖。首先,跳過運行修正部137a判斷處理中的流是否到達了片末端(步驟S200)。這 是因為,由于MB跳過運行信息不表示跨越片邊界連續(xù)的跳過宏塊的個數(shù),所以當?shù)竭_了片 末端時,需要將保持在跳過運行修正部137a的內(nèi)部中的先行MB跳過運行信息全部輸出。這 里,如果判斷為到達了片末端(步驟S200的是),則前進到步驟S224的處理。處理的詳細 情況在后面敘述。另一方面,如果判斷為沒有到達片末端(步驟S200的否),則跳過運行修正部 137a檢查是否已獲得了 MB跳過運行信息“mb_skip_rim” (步驟S202)。這里,在還沒有獲 得MB跳過運行信息的情況下(步驟S202的否),跳過運行修正部137a回到處理的最初,再 次繼續(xù)讀取流。另一方面,在獲得了 MB跳過運行信息的情況下(步驟S202的是),跳過運行修正 部137a根據(jù)包含有該MB跳過運行信息的宏塊的地址信息計算圖片內(nèi)的宏塊的位置(步驟 S204)。這里,跳過運行修正部137a確定由所獲得的MB跳過運行信息表示的連續(xù)的跳過宏 塊中的、開頭的跳過宏塊的位置。跳過運行修正部137a如果在步驟S204中計算出宏塊的位置,則通過根據(jù)該宏塊 的位置信息和MB跳過運行信息的長度,檢查連續(xù)的跳過宏塊是否到達MB行邊界,判斷是否 需要將所獲得的MB跳過運行信息劃分(步驟S206)。更具體地講,在將開頭的跳過宏塊的水平位置及垂直位置分別表現(xiàn)為“mbposh”、 “mbposv”、將圖片的水平方向的總宏塊數(shù)表現(xiàn)為“PicWidthlnMbs”的情況下,當“mb_skip_ run彡PicWidthlnMbs-mbposh”成立時,跳過運行修正部137a判斷連續(xù)的跳過宏塊到達MB 行邊界即可。另外,這里表示了以MB行為單位將流劃分的結構,但在以其他劃分單位將流劃分 的情況下也同樣,只要跳過運行修正部137a根據(jù)宏塊的位置信息和MB跳過運行信息的長 度判斷連續(xù)的跳過宏塊是否到達劃分邊界。在判斷為連續(xù)的跳過宏塊到達MB行邊界的情況下(步驟S206的是),跳過運行修 正部137a為了將MB跳過運行信息劃分而前進到步驟S216。詳細情況在后面所述。在判斷為連續(xù)的跳過宏塊沒有到達MB行邊界的情況下(步驟S206的否),跳過運 行修正部137a判斷該MB跳過運行信息是否位于MB行的開頭(步驟S208)。S卩,跳過運行 修正部137a對于該MB跳過運行信息,判斷是否需要與先行MB跳過運行信息的結合。在判斷為該MB跳過運行信息位于MB行的開頭的情況下(步驟S208的是),跳過運行修正部137a通過對MB跳過運行信息“mb_skip_rUn”加上先行MB跳過運行信息“prev_ mb_skip_run",進行MB跳過運行信息的重新結合(步驟S210)。另外,該MB跳過運行信息 的重新結合處理需要對每個劃分流獨立地進行。即,先行MB跳過運行信息按照每個劃分流 保持在跳過運行修正部137a中,加上與包含有該MB跳過運行信息的MB行對應的、先行MB 跳過運行信息。在步驟S208中判斷為該MB跳過運行信息不位于MB行的開頭的情況下(步驟S208 的否),或者在步驟S210中執(zhí)行了 MB跳過運行信息的結合之后,跳過運行修正部137a進行 MB跳過運行信息的重新編碼處理(步驟S212)。這是為了使劃分流成為依據(jù)H. 264/AVC規(guī) 格的形式。然后,跳過運行修正部137a將重新編碼后的MB跳過運行信息輸出給劃分點檢測 部139a,結束處理(步驟S214)。此外,在步驟S206中判斷為連續(xù)的跳過宏塊到達了 MB行邊界的情況下(步驟 S206的是),跳過運行修正部137a將MB行邊界作為劃分點,將對應的MB跳過運行信息劃 分為前半部和后半部(步驟S216)。另外,在連續(xù)的跳過宏塊到達了 MB行邊界但沒有跨越 MB行邊界的情況下,后半部也可以是0。進而,跳過運行修正部137a將劃分后的MB跳過運行信息中的前半部作為先行MB 跳過運行信息“prev_mb_skip_run”保持在內(nèi)部。此時,在保持于跳過運行修正部137a中 的先行MB跳過運行信息已經(jīng)存在的情況下,跳過運行修正部137a將新產(chǎn)生的MB跳過運行 信息的前半部的長度加上已保持的先行MB跳過運行信息的長度并保持(步驟S218)。另 外,如上所述,將先行MB跳過運行信息作為與包含其自身的MB行對應的劃分流的先行跳過 運行信息,按照劃分流獨立地保持。接著,跳過運行修正部137a在將劃分后的MB跳過運行信息中的后半部設定為新 的MB跳過運行信息之后(步驟S220),判斷該長度是否是0 (步驟S222)。在步驟S222中判斷新的MB跳過運行信息的長度是0的情況下(步驟S222的是), 跳過運行修正部137a認為不再有要處理的MB跳過運行信息,結束處理。在步驟S222中判斷為新的MB跳過運行信息的長度不是0的情況下(步驟S222 的是),跳過運行修正部137a認為還存在要處理的MB跳過運行信息,回到步驟S204,再次 進行MB跳過運行信息的劃分 重新結合及輸出處理。通過這樣跳過運行修正部137a反復 進行MB跳過運行信息的劃分·重新結合,對于跨越3MB行以上的MB跳過運行信息也正確 地進行劃分·重新結合處理。另一方面,在步驟S200中判斷為是片末端的情況下(步驟S200的是),為了將 保持在跳過運行修正部137a中的先行MB跳過運行信息輸出,而將先行MB跳過運行信息 "prev_mb_skip_run"原樣替換為MB跳過運行信息“mb_Skip_run” (步驟S224)。然后,前 進到步驟S212的處理,跳過運行修正部137a將替換后的MB跳過運行信息重新編碼后,輸 出給劃分點檢測部139a并結束處理(步驟S212 S214)。另外,對所有的劃分流進行該先 行MB跳過運行信息的輸出。以上說明的處理由跳過運行修正部137a反復進行,直到流的結束。這樣,在跳過 運行修正部137a中,適當?shù)剡M行MB跳過運行信息的劃分·重新結合。接著,對QP德爾塔修正部138a、138b的動作詳細地說明。另外,在以后的說明中,
29在說明對QP德爾塔修正部138a、138b共通的功能及處理動作時,不將它們區(qū)別而總稱作QP 德爾塔修正部138。QP德爾塔修正部138按照宏塊來修正作為原則存在的QP變化量“mb_qp_delta”。 所謂QP變化量,是為了將作為宏塊的量化參數(shù)的QP值解碼而包含在編碼流中的代碼字,表 示對象宏塊與在其之前處理的宏塊的QP值的差分值。QP值的解碼通過下式(1)進行。QPy= ((QPY.PEEV+mb_qp_delta+52+2*QpBd0ffsetY) % (52+QpBd0ffsetY)) -QpBdOff setY ......(1)這里,QPy表示處理對象宏塊的亮度的QP值,QPy.peev表示之前的宏塊的亮度的QP 值。另外,QpBdOffsetY是由構成圖片的像素的位深度決定的值,在一般使用的8位深度的 情況下,是QpBdOffsetY = 0。在此情況下,上述式(1)可以如下式(2)這樣改寫。QPy = (QPY PEEV+mb_qp_delta+52) % 52......(2)由式⑵可知,在像素的位深度是8的情況下,QP值使用QP變化量“mb_qp_delta” 解碼,以成為0 51的范圍。另外,“mb_qp_delta”是能夠取-26 +25的范圍的值。作為量化參數(shù)的QP值的解碼在處理順序上連續(xù)的宏塊間有依賴關系,但在中途 有片的邊界的情況下,在那里依賴關系被消除。即,作為量化參數(shù)的QP值在片的開頭通過 片QP值初始化。在片的開頭的宏塊中,編碼有該宏塊的QP值與片QP值的差分值作為QP 變化量。圖16A及圖16B是用來說明QP變化量的修正處理的說明圖。如果著眼于圖16A所示的圖片中的宏塊C,則本來在其之前進行處理的宏塊是宏 塊B。因而,在宏塊C中,編碼有宏塊B的QP值與宏塊C的QP值的差分值作為QP變化量。但是,如果這樣的圖片被按照MB行劃分,而這些MB行被分配到不同的劃分流,則 在各個劃分流中,MB行邊界處的宏塊的前后關系變化。S卩,在流劃分后,在包含有宏塊C的第2劃分流中,位于宏塊C緊前的宏塊為宏塊 A。因而,在此狀態(tài)下解碼引擎120將第2劃分流解碼的情況下,對于宏塊A的QP值,反映 了作為宏塊B的QP值與宏塊C的QP值的差分值的QP變化量,不能將宏塊C的QP值正確 地解碼。即,表示跨越兩個MB行的宏塊間的變化量的QP變化量帶來的該MB行間的依賴關 系混亂了。所以,QP德爾塔修正部138進行QP變化量的修正,以校正因將流劃分而產(chǎn)生的宏 塊的前后關系的變化。即,在由于表示跨越兩個MB行的宏塊間的變化量的QP變化量而這 兩個MB行具有依賴關系的情況下,修正QP變化量,以使該依賴關系成為對應于各劃分流中 的MB行的前后關系的新的依賴關系。作為QP變化量的修正方法,可以考慮在對所有的宏塊進行QP值的解碼(QP值的 復原)后、基于流劃分后的新的宏塊的前后關系重新計算QP變化量的方法。但是,在該方 法中,需要QP值解碼和QP變化量計算的兩個處理,QP德爾塔修正部138中的處理量變大。所以,在本實施方式中,QP德爾塔修正部138通過按照每個劃分流來累積沒有對 對象劃分流分配的宏塊的QP變化量,由此不將QP值解碼而直接導出修正后的QP變化量。這里,利用附圖對通過QP變化量累積進行的修正QP變化量的導出進行說明。圖 17是用來說明QP變化量的累積的說明圖。
在圖中,橫軸表示QP值,QPl QP4表示連續(xù)的宏塊中的QP值。此外,在圖中表 示了表示各自的QP值的差分值的“mb_qp_delta”。添加在“mb_qp_delta”的末尾的兩位的 數(shù)字的高位側表示對應于先行的宏塊的QP值的號碼,低位側表示對應于后續(xù)的宏塊的QP 值的號碼。例如,“mb_qp_delta12”表示QPl與QP2的差分值。此外,如圖所示,“mb_qp_ delta”表示作為QP值的最小值的0和作為最大值的51連續(xù)相連的軸上的QP值的差分值。在通常的QP值的解碼處理中,可以根據(jù)QPl和“mb_qp_delta12”,使用式⑵求出 QP2。此夕卜,同樣可以根據(jù)QP2和“mb_qp_delta23”求出QP3。此外,可以根據(jù)QP3和“mb_ qp_delta34” 求出 QP4。這里,如圖所示,“mb_qp_deltal2”、“mb_qp_delta23”、“mb_qp_delta34”所表示的 QP變化量的合計等于表示QPl與QP4的差分值的“mb_qp_delta14”。即,可知為了求出不 相鄰的宏塊間的QP變化量,只要將其之間的所有的QP變化量“mb_qp_delta”累積就可以。另外,累積按照下式(3)進行。acc_mb_qp_delta = (acc_mb_qp_de 1 ta+mb_qp_de 1 ta+52) % 52......(3)這里,“acc_mb_qp_delta”表示累積的“mb_qp_delta”。這樣,通過以符合式(2) 的形式累積“mb_qp_delta”,在圖17所示的作為QP值的最小值的0和作為最大值的51連 續(xù)相連的軸上,能夠求出QP變化量的合計。作為具體的例子,對圖16A所示的圖片中的宏塊C的QP變化量的修正處理進行說 明。如上所述,在流劃分后的第2劃分流中,由于位于宏塊C緊前的宏塊是宏塊A,所以在宏 塊C中,需要包括宏塊A的QP值與宏塊C的QP值的差分值作為QP變化量。所以,QP德爾塔修正部138將包含在MB行L3 L5中的所有的宏塊的QP變化量 和宏塊C的QP變化量累積。通過這樣將處于宏塊A與宏塊C之間的所有的宏塊的QP變化 量累積,能夠求出作為宏塊A的QP值與宏塊C的QP值的差分值的修正QP變化量。另外,這里求出的QP變化量因為通過式(3)導出,所以為表示0 51的范圍的值。 由于本來的QP變化量“mb_qp_delta”是取-26 +25的范圍的值,所以QP德爾塔修正部 138通過下式(4)修正,以使QP變化量“mb_qp_delta”成為-26 +25的范圍。在 acc_mb_qp_delta > 25 的情況下mb_qp_delta = acc_mb_qp_delta_52在 acc_mb_qp_delta 彡 25 的情況下mb_qp_delta = acc_mb_qp_delta...... (4)另外,由式⑷表示的處理既可以在如這里所示那樣在對QP變化量“mb_qp_ delta”的累積對象的所有的宏塊累積后、最后僅通過1次進行,也可以對累積對象的所有 的宏塊按每一個宏塊進行。此外,這里著眼于宏塊C進行了說明,但對所有的MB行的開頭的宏塊也進行同樣 的處理。例如,對于宏塊C的下方向上相鄰的宏塊,通過累積MB行L4 L6的所有的宏塊 的QP變化量,對該宏塊進行反映,由此導出修正后的QP變化量。這些處理按照每個劃分流 獨立地進行。最后,QP德爾塔修正部138將這樣得到的修正QP變化量再次編碼,將編碼后的修 正QP變化量對劃分點檢測部139輸出。另外,QP德爾塔修正部138a以CAVLC方式進行編 碼,QP德爾塔修正部138b以CABAC方式進行編碼。如以上說明,QP德爾塔修正部138通過將輸入的QP變化量修正以使其符合劃分
31流中的宏塊的前后關系,能夠對各劃分流設定適當?shù)腝P變化量。結果,后段的解碼引擎120 能夠不需要特別的處理而將劃分流解碼。此外,在圖16B中,表示在MB行L4和L5的邊界將片劃分的情況的例子。在該例 中,MB行Ll L4包含在片A中,MB行L5 L8包含在片B中。此時,在第2劃分流中,與圖16A同樣,宏塊A和宏塊C連續(xù),但包含各個宏塊的片 不同,在宏塊A與宏塊C之間不再有依賴關系。在第2劃分流中,由于宏塊C為片B的開頭 的宏塊,所以宏塊C的QP變化量需要表示宏塊C的QP值與片B的片QP值的差分值。S卩,QP德爾塔修正部138通過對包含在宏塊A到宏塊C之間的宏塊中的、包含在 片B中的宏塊進行QP變化量的累積,能夠求出與片B的片QP值的差分值。但是,實際上片 是否被劃分,在片B的開頭到達之前不能判斷。所以,QP德爾塔修正部138對包含在宏塊A到宏塊C之間的所有宏塊進行QP變 化量的累積,并且在片B的開頭的宏塊的處理開始時,將累積QP變化量“acc_mb_qp_delta” 復位為0。通過這樣,能夠僅對包含在片B中的宏塊進行QP變化量的累積,能夠正確地求出 宏塊C的修正QP變化量。將這樣得到的修正QP變化量再次編碼,將編碼后的修正QP變化量對劃分點檢測 部139輸出。圖18是表示QP德爾塔修正部138的QP變化量的修正處理的流程圖。如果開始宏塊的處理,則首先,QP德爾塔修正部138根據(jù)處理對象宏塊的地址信 息,計算圖片內(nèi)的宏塊的位置(步驟S300)。接著,QP德爾塔修正部138判斷處理對象宏塊是否是片的開頭(步驟S302)。在判斷處理對象宏塊是片的開頭的情況下(步驟S302的是),將對應于所有的劃 分流的累積QP變化量“aCC_mb_qp_delta”復位為0 (步驟S304)。通過該處理,在中途片被 劃分的情況下,能夠正確地導出與片QP值的QP變化量。另外,這里根據(jù)是否是片的開頭的 宏塊來決定是否將累積QP變化量復位,但只要能夠在片的開頭將累積QP變化量復位就可 以,所以也可以是在片頭到來的時刻將累積QP變化量復位的結構。在步驟S302中判斷為處理對象宏塊不是片的開頭的情況下(步驟S302的否), 或者在步驟S304中進行了累積QP變化量的復位后,QP德爾塔修正部138根據(jù)在步驟S300 中求出的宏塊的位置信息,判斷處理對象宏塊的劃分流的輸出目的地(步驟S306)。在步驟S306中判斷處理對象宏塊的輸出目的地是第1劃分流的情況下,QP德爾 塔修正部138對對應于第2、第3、第4劃分流的累積QP變化量,將處理對象宏塊的QP變化 量按照式(3)累積(步驟S308)。此外,在步驟S306中判斷處理對象宏塊的輸出目的地是第2劃分流的情況下,QP 德爾塔修正部138對對應于第1、第3、第4劃分流的累積QP變化量,將處理對象宏塊的QP 變化量按照式(3)累積(步驟S310)。此外,在步驟S306中判斷處理對象宏塊的輸出目的地是第3劃分流的情況下,QP 德爾塔修正部138對對應于第1、第2、第4劃分流的累積QP變化量,將處理對象宏塊的QP 變化量按照式(3)累積(步驟S312)。此外,在步驟S306中判斷處理對象宏塊的輸出目的地是第4劃分流的情況下,QP 德爾塔修正部138對對應于第1、第2、第3劃分流的累積QP變化量,將處理對象宏塊的QP變化量按照式(3)累積(步驟S314)。這樣,在步驟S308 步驟S314中,進行對應于作為處理對象宏塊的輸出目的地的 劃分流以外的劃分流的QP變化量的累積。這意味著在各劃分流中,進行包含在沒有分配到 對象的劃分流的3MB行中的宏塊的QP變化量的累積。通過這樣的處理,QP德爾塔修正部 138能夠將相對于沒有分配到對象的劃分流的3MB行在前后的宏塊的QP值的差分值正確地 校正。在步驟S308、步驟S310、步驟S312、步驟S314中進行QP變化量的累積之后,QP德 爾塔修正部138根據(jù)在步驟S300中求出的宏塊的位置信息,確定處理對象宏塊是否位于MB 行的開頭(步驟S316)。另外,這里表示了以MB行為單位劃分流的結構,但在以其他劃分單 位劃分流的情況下也同樣,QP德爾塔修正部138只要根據(jù)宏塊的位置信息判斷處理對象宏 塊是否位于劃分單位的開頭就可以。在判斷為處理對象宏塊位于MB行的開頭的情況下(步驟S316的是),QP德爾塔 修正部138對于與包含有處理對象宏塊的劃分流對應的累積QP變化量,將處理對象宏塊的 QP變化量按照式(3)累積。接著,QP德爾塔修正部138將得到的累積QP變化量按照式(4) 修正以使其成為-26 +25的范圍后,替換為處理對象宏塊的QP變化量。進而,QP德爾塔 修正部138將對應于包含有處理對象宏塊的劃分流的累積QP變化量復位為0(步驟S318)。 這樣,在步驟S318中,通過將累積的QP變化量反映到MB行開頭的宏塊的QP變化量中,進 行QP變化量的修正。在判斷為處理對象宏塊沒有位于MB行的開頭的情況下(步驟S316的否),或者在 步驟S318中進行了處理對象宏塊的QP變化量的修正之后,QP德爾塔修正部138進行處理 對象宏塊的QP變化量的重新編碼處理(步驟S320)。這是為了使劃分流成為依據(jù)H. 264/ AVC規(guī)格的形式。然后,QP德爾塔修正部138將重新編碼后的QP變化量輸出給劃分點檢測部139, 結束處理(步驟S322)。以上,QP德爾塔修正部138在對MB行的開頭宏塊進行QP變化量的修正之后,對 于MB行的開頭以外的宏塊原樣進行QP變化量的重新編碼_輸出處理。這樣,在本實施方式的圖像解碼裝置100中,將編碼的圖片劃分為多個MB行(構 成單位),將多個MB行分別作為劃分流的一部分分配到N個解碼引擎120并解碼,所以能夠 使N個解碼引擎120的解碼處理的負擔變得均勻,能夠適當?shù)貓?zhí)行解碼的并行處理。例如, 即使是H. 264/AVC的編碼圖片由一個片構成的情況,也將該編碼圖片劃分為多個MB行,所 以能夠使這一個片的解碼不是由一個解碼引擎120負擔而是由N個解碼引擎120均等地負 擔。這里,如果將編碼圖片劃分為多個MB行,則有時跨越多個MB行的片被劃分為多個 片部分(例如圖3所示的各MB行Ll L6、及MB行L7中的開頭6個宏塊的集合等),這些 片部分由被分配到相互不同的劃分流。即,在一個劃分流中沒有包含編碼圖片的片的整體, 而包含由作為該片的片斷的片部分集合一個以上而構成的片部分群(例如包含在圖3所示 的第2劃分流中的MB行L2、L6)。此外,在這樣的片部分群(MB行L2、L6)中有時沒有包含 表示其開頭的片頭、及表示其末端的片末端信息。進而,有由于包含在編碼流中的規(guī)定的代碼字而多個MB行具有依賴關系的情
33況。例如,在H. 264/AVC中,有通過MB跳過運行信息“mb_skip_run”、或QP變化量“mb_qp_ delta”而多個MB行相互具有依賴關系的情況。如果將這樣的編碼流劃分為多個MB行而分 配到相互不同的劃分流,則不能正確地保持MB行間的依賴關系。所以,在本實施方式中,流劃分部130將該片部分群重新構成為新的片。結果,將 包括該片部分群的劃分流解碼的解碼引擎120不需要用來識別該片部分群而適當?shù)亟獯a 的特別的處理,能夠將片部分群作為新的片簡單地識別并適當?shù)亟獯a。即,在本實施方式 中,由于不需要設置對N個解碼引擎120分別進行特別的處理的功能及結構,所以能夠使圖 像解碼裝置100的整體結構變得簡單。此外,在本實施方式的圖像解碼裝置中,與上述專利文獻3的圖像解碼裝置相比 能夠實現(xiàn)解碼處理的高速化。具體而言,在上述專利文獻3的圖像解碼裝置中,不進行編碼 流的可變長度解碼及解塊過濾處理的并行化。即,在上述專利文獻3的圖像解碼裝置中,不 將編碼流適當?shù)貏澐?,換言之,將劃分編碼流而生成的數(shù)據(jù)沒有構成為能夠由以往的解碼 引擎解碼的流。另一方面,在本實施方式的圖像解碼裝置100中,由于將編碼流適當?shù)貏澐?為多個劃分流,所以解碼引擎120分別如圖33所示的解碼引擎421那樣,能夠并行地執(zhí)行 可變長度解碼及解塊過濾處理。結果,在本實施方式的圖像解碼裝置中,能夠實現(xiàn)解碼處理 的高速化。此外,在本實施方式中,與上述專利文獻4的圖像解碼裝置相比,具有能夠沿用以 往的解碼引擎的優(yōu)點。具體而言,在上述專利文獻4的圖像解碼裝置中,不將編碼流劃分而 在編碼流中在MB行的邊界中插入有行頭。因而,上述專利文獻4的圖像解碼裝置的多個解 碼引擎必須以行頭為標記而從編碼流中提取自己要處理的MB行。此時,如果保存有處理對 象的MB行的位置已經(jīng)確定,則這些解碼引擎為了提取處理對象的MB行而需要對編碼流不 連續(xù)地訪問,如果該位置沒有確定,則需要從開頭訪問編碼流,將不是處理對象的MB行跳 讀。另一方面,在本實施方式的圖像解碼裝置100中,由于將編碼流適當?shù)貏澐譃槎鄠€劃分 流,所以解碼引擎120分別如圖33所示的解碼引擎421那樣,能夠將劃分流作為通常的編 碼流處理并解碼。這樣,在本實施方式的圖像解碼裝置中,能夠沿用以往的解碼引擎,能夠 起到在上述專利文獻4的圖像解碼裝置中不能得到的效果。此外,這樣的本實施方式的圖像解碼裝置100根據(jù)輸入到流劃分部130中的上述 模式信息,執(zhí)行高析像度解碼、高速解碼、以及多通道解碼中的某個。圖19A是用來說明高析像度解碼的說明圖。圖19B是用來說明高速解碼的說明圖。 圖19C是用來說明多通道解碼的說明圖。圖像解碼裝置100的流劃分部130如圖19A所示,如果獲得指示高析像度解碼的 執(zhí)行的模式,則將4k2k的編碼流如上述那樣劃分為4個劃分流,使各解碼引擎120將4個 劃分流分別解碼。例如,4個解碼引擎120分別具有能夠將HD的圖像(1920X1088像素,60i)解碼 兩個通道量的處理能力,所以圖像解碼裝置100能夠實時地處理4k2k的圖像(3840X2160 像素,60p)。此外,圖像解碼裝置100的流劃分部130如圖19B所示,如果獲得指示高速解碼的 執(zhí)行的模式信息,則將HD的編碼流如上述那樣劃分為4個劃分流,使各解碼引擎120將4 個劃分流分別解碼。
例如,4個解碼引擎120分別具有能夠將HD的圖像(1920X1088像素,60i)解碼 兩個通道量的處理能力,所以圖像解碼裝置100能夠將HD的圖像以8倍速(4X2)處理。此外,圖像解碼裝置100的流劃分部130如圖19C所示,如果獲得指示多通道解碼 的執(zhí)行的模式信息,則不將多個HD的編碼流劃分,而使各解碼引擎120將該多個編碼流分 別解碼。另外,在該多通道解碼的情況下,流劃分部130不進行SPS、PPS及片等的各種NAL 單元的復制及插入,而僅進行編碼流(通道)向劃分流緩沖器152的各區(qū)域的分配。例如,4個解碼引擎120分別具有將HD的圖像(1920X 1088像素,60i)解碼兩個 通道量的處理能力,所以圖像解碼裝置100能夠將最大8通道、即8個HD的編碼流同時解 碼。此外,在將最大通道數(shù)以下的通道(編碼流)解碼的情況下,能夠降低解碼引擎120的 時鐘頻率而實現(xiàn)消耗電力的降低。例如,在將4個通道解碼的情況下,使第1解碼引擎120 和第2解碼引起120分別執(zhí)行兩個通道的解碼,使其余的第3解碼引擎120和第4解碼引擎 120停止?;蛘撸褂玫?解碼引擎120 第4解碼引擎120,將它們的時鐘頻率設為1/2.這樣,本實施方式的圖像解碼裝置100由于能夠根據(jù)模式信息將解碼處理切換為 高析像度解碼、高速解碼和多通道解碼的任一個,所以能夠提高用戶的使用方便性。另外, 圖像解碼裝置100的高析像度解碼及高速解碼分別是將編碼流劃分為4個劃分流而將它們 并行解碼的處理,是相同的處理。即,在高析像度解碼和高速解碼中,只有解碼對象的編碼 流的析像度 幀率(4k2k或HD)不同。因而,圖像解碼裝置100根據(jù)模式信息,將解碼處理 切換為高析像度解碼或高速解碼、多通道解碼,再根據(jù)編碼流的析像度 幀率將解碼處理切 換為高析像度解碼和高速解碼。(實施方式2)接著,對本發(fā)明的實施方式2詳細地說明。實施方式1的圖像解碼裝置100通過將MB跳過運行信息及QP變化量修正,將在 劃分前的編碼流中連續(xù)的MB行間的依賴關系修正為對應于各劃分流中的MB行的前后關系 的依賴關系。這里,有時在編碼流中包括不包含QP變化量的宏塊。不包含QP變化量的宏塊相 當于沒有量化的宏塊。具體而言,H. 264/AVC規(guī)格中的、不包含QP變化量的宏塊例如是(1) 跳過宏塊、(2)非壓縮的宏塊(I_PCM)、或者(3)內(nèi)部預測的預測模式不是“Intra16X16”、 并且“COded_blOCk_pattern”是0 (非0系數(shù)一個都不包括)的宏塊。在這樣的不包含QP變化量的宏塊存在于MB行的開頭的情況下,實施方式1的圖 像解碼裝置100由于不存在作為修正對象的QP變化量,所以不能修正QP變化量。所以,實施方式2的圖像解碼裝置200的一個特征是,在從MB行的開頭包含有不 包含QP變化量的宏塊的編碼流生成多個劃分流時,將QP變化量插入到包含該宏塊的劃分 流中。由此,圖像解碼裝置200能夠適當?shù)卦O定基于各劃分流中的新的前后關系的QP變化 量。這里,在劃分流中插入了 QP變化量的情況下,由于在MB行間存在QP變化量,所以 不能使用一個MB跳過運行信息表示跨越MB行連續(xù)的跳過宏塊的個數(shù)。所以,實施方式2 的圖像解碼裝置200的另一個特征是,不進行MB跳過運行信息的重新結合處理。以下,利用附圖對本實施方式的圖像解碼裝置200進行說明。圖20是表示本發(fā)明的實施方式2的圖像解碼裝置的結構的模塊圖。另外,在圖20中,對于與圖1同樣的結構要素賦予相同的標號而省略說明。如圖20所示,圖像解碼裝置200具備解碼器210和存儲器150。解碼器210與解碼器110同樣,通過將保存在存儲器150的流緩沖器151中的編碼 流讀出并解碼而生成解碼圖像數(shù)據(jù),將該解碼圖像數(shù)據(jù)保存到存儲器150的幀存儲器153 中。此外,該解碼器210具備流劃分部230、以及N個解碼引擎(第1解碼引擎 第N解碼 引擎)220。流劃分部230除了 MB跳過運行信息的修正處理及Qp變化量的修正處理以外,執(zhí) 行與流劃分部130同樣的處理。流劃分部230的詳細情況使用圖21在后面敘述。N個解碼引擎220相當于將N個劃分流分別并行解碼的N個解碼部。N個解碼引 擎220除了使用由流劃分部230插入到劃分流中的累積QP變化量計算QP值這一點以外, 執(zhí)行與N個解碼引擎120同樣的處理。接著,對流劃分部230的結構及動作詳細地說明。圖21是表示流劃分部230的結構的模塊圖。流劃分部230在代替跳過運行修正部137a及QP德爾塔修正部138a、138b而具備 跳過運行修正部237a及QP德爾塔插入部238a、238b這一點與圖7所示的流劃分部130不同。跳過運行修正部237a與跳過運行修正部137a同樣,在MB跳過運行信息表示跨越 對相互不同的劃分流分配的至少兩個MB行而連續(xù)的宏塊的個數(shù)的情況下,將MB跳過運行 信息劃分,以使其表示各MB行的塊的個數(shù)。但是,跳過運行修正部237a與跳過運行修正部137a不同,在各劃分流中,不將多 個MB跳過運行信息結合為一個MB跳過運行信息。QP德爾塔插入部238a、238b與QP德爾塔修正部138a、138b同樣,在QP變化量表 示跨越兩個MB行的宏塊間的變化量的情況下,計算基于各劃分流中的宏塊的新的前后關 系的QP變化量。但是,QP德爾塔插入部238a、238b將計算出的QP變化量作為新的QP變化量輸出 給劃分點檢測部139。由此,在各劃分流中,插入(設定)新的QP變化量。即,QP德爾塔插 入部238a、238b不修正包含在各宏塊中的QP變化量。劃分點檢測部139a在劃分流的各自中包含從跳過運行修正部237a獲得的MB跳 過運行信息、以及從QP德爾塔插入部238a獲得的累積QP變化量。劃分點檢測部139b在劃分流的各自中包含從QP德爾塔插入部238b獲得的累積 QP變化量。接著,以與跳過運行修正部137a及QP德爾塔修正部138a、138b的動作不同的點 為中心,對跳過運行修正部237a及QP德爾塔插入部238a、238b的動作詳細地說明。另外,在以后的說明中,當說明關于QP德爾塔插入部238a、238b共通的功能及處 理動作時,不將它們區(qū)別而總稱作QP德爾塔插入部238。圖22是用來說明MB跳過運行信息的修正處理及QP變化量的插入處理的說明圖。在圖22所示的圖片中,在MB行L2的末尾存在5個、在MB行L3的開頭存在3個、 在MB行L5的末尾存在兩個、在MB行L6的開頭存在4個連續(xù)的跳過宏塊。此外,如上所述,在跳過宏塊中不包含QP變化量。因而,在宏塊C中,編碼有宏塊
36B的QP值與宏塊C的QP值的差分值作為QP變化量。但是,如果將這樣的圖片按照MB行劃分、將這些MB行分配到不同的劃分流,則在 各自的劃分流中,MB行邊界上的宏塊的前后關系變化。S卩,在流劃分后,在包含宏塊C的第2劃分流中,位于宏塊C緊前的、包含QP變化 量的宏塊為宏塊A。因而,在此狀態(tài)下解碼引擎220將第2劃分流解碼的情況下,對于宏塊 A的QP值,反映了作為宏塊B的QP值與宏塊C的QP值的差分值的QP變化量,不能將宏塊 C的QP值正確地解碼。所以,QP德爾塔插入部238將用來向MB行插入的新的QP變化量輸出給劃分點檢 測部139,以校正通過將流劃分而發(fā)生的宏塊的前后關系的變化。即,QP德爾塔插入部238 通過QP變化量表示跨越兩個MB行的塊間的QP值的差分值,由此在這兩個MB行具有依賴 關系的情況下,將用來插入到MB行的開頭中的新的QP變化量輸出給劃分點檢測部139,以 使其將該依賴關系割斷。另外,在本實施方式中,在MB行的開頭插入了 QP變化量,但并不一定需要在MB行 的開頭插入QP變化量。例如,也可以在MB行的開頭的宏塊內(nèi)等的其他地方中插入QP變化量。作為用來插入到MB行的開頭中的QP變化量的計算方法,與實施方式1同樣,可以 考慮通過對所有的宏塊復原QP值而計算QP變化量的方法、以及通過將沒有分配到對象劃 分流的宏塊的QP變化量累積而計算QP變化量的方法。在本實施方式中,對后者的計算方 法進行說明。QP德爾塔插入部238計算將包含在MB行L3 L5中的、包括QP變化量的所有的 宏塊的QP變化量累積的累積QP變化量。并且,QP德爾塔插入部238將計算出的累積QP 變化量再次編碼,將編碼后的累積QP變化量作為新的QP變化量輸出給劃分點檢測部130。 結果,如圖22所示,累積QP變化量被插入到MB行L6的開頭。S卩,在第2劃分流中,設定累 積QP變化量、以及原本包含在宏塊C中的QP變化量。另外,累積QP變化量的詳細的計算 方法與實施方式1是同樣的,所以省略說明。另外,這里著眼于MB行L6而進行了說明,但QP德爾塔插入部238對于其他行,也 為了將累積QP變化量插入到MB行的開頭而將編碼后的累積QP變化量輸出給劃分點檢測 部139。例如,QP德爾塔插入部238作為用來插入到MB行L7的開頭中的累積QP變化量, 計算將包含在MB行L4 L6中的、包括QP變化量的所有的宏塊的QP變化量累積后的累積 QP變化量。并且,QP德爾塔插入部238將計算出的累積QP變化量編碼,將編碼后的累積QP 變化量輸出給劃分點檢測部139。這些處理按照每個劃分流獨立地進行。這樣,在本實施方式中,由于累積QP變化量被插入在MB行的開頭,所以跳過宏塊 沒有跨越MB行連續(xù)。即,跳過運行修正部237a與實施方式1的跳過運行修正部137a不同, 不進行MB跳過運行信息的結合處理。例如,在圖22所示的圖片的情況下,跳過運行修正部237a與跳過運行修正部137a 同樣,將對應于跨越MB行L2 L3存在的8個跳過宏塊的MB跳過運行信息劃分為對應于 包含在MB行L2中的5個跳過宏塊的MB跳過運行信息、以及對應于包含在MB行L3中的3 個跳過宏塊的MB跳過運行信息。同樣,跳過運行修正部237a將對應于跨域MB行L5 L6 存在的6個跳過宏塊的MB跳過運行信息劃分為對應于包含在MB行L5中的兩個跳過宏塊中的4個跳過宏塊的MB跳過運行信息。這里,在包含于MB行L2中的5個連續(xù)的跳過宏塊、與包含在MB行L6中的4個連 續(xù)的跳過宏塊之間,如上述那樣插入累積QP變化量作為新的QP變化量。所以,跳過運行修 正部237a不將對應于包含在MB行L2中的5個連續(xù)的跳過宏塊的MB跳過運行信息、與對 應于包含在MB行L6中的4個連續(xù)的跳過宏塊的MB跳過運行信息重新結合。另外,跳過運行修正部237a與跳過運行修正部137a同樣,將這樣得到的MB跳過 運行信息再次編碼,將編碼后的MB跳過運行信息輸出。圖23是表示跳過運行修正部237a的結構的模塊圖。另外,在圖23中,對于與圖 14同樣的結構要素賦予相同的標號而省略詳細的說明。跳過運行修正部237a具備跳過運行提取部160、跳過運行劃分部161、以及跳過運 行編碼部164。即,跳過運行修正部237a與從實施方式1的跳過運行修正部137a除去了跳 過運行累積·保持部162和加法部163的結構是同樣的。另外,跳過運行劃分部161將劃 分后的MB跳過運行信息輸出給跳過運行編碼部164。圖24是表示跳過運行修正部237a的MB跳過運行信息的修正動作的流程圖。另 外,在圖24中,對于進行與圖15同樣的處理的步驟賦予相同的標號而省略說明。首先,跳過運行修正部237a檢查是否已獲得了 MB跳過運行信息“mb_skip_ rim”(步驟S202)。即,跳過運行修正部237a不判別處理的流是否到達了片末端。這是因 為,如后所述,跳過運行修正部237a在內(nèi)部中沒有保持先行MB跳過運行信息,所以不需要 到達了片末端時的先行MB跳過運行信息的輸出處理。這里,在還沒有獲得MB跳過運行信息的情況下(步驟S202的否),跳過運行修正 部237a回到處理的最初而再次繼續(xù)讀取流。另一方面,在獲得了 MB跳過運行信息的情況下(步驟S202的是),跳過運行修正 部237a與實施方式1同樣,根據(jù)包含有該MB跳過運行信息的宏塊的地址信息,計算圖片內(nèi) 的宏塊的位置(步驟S204)。接著,跳過運行修正部237a與實施方式1同樣,判斷是否需要將所獲得的MB跳過 運行信息劃分(步驟S206)。這里,在判斷為連續(xù)的跳過宏塊到達MB行邊界的情況下(步驟S206的是),跳過 運行修正部237a為了將MB跳過運行信息劃分而前進到步驟S216。詳細情況在后面敘述。另一方面,在判斷為連續(xù)的跳過宏塊沒有到達MB行邊界的情況下(步驟S206的 否),跳過運行修正部237a進行MB跳過運行信息的重新編碼處理(步驟S212)。這里,不 執(zhí)行圖15所示的步驟S208及步驟S210的處理是因為,本實施方式的跳過運行修正部237a 不將MB跳過運行信息重新結合。然后,跳過運行修正部237a將重新編碼后的MB跳過運行信息輸出給劃分點檢測 部139a,結束處理(步驟S214)。此外,在步驟S206中判斷為連續(xù)的跳過宏塊到達MB行邊界的情況下(步驟S206 的是),跳過運行修正部237a與實施方式1同樣,將MB行邊界作為劃分點,將該MB跳過運 行信息劃分為前半部和后半部(步驟S216)。進而,跳過運行修正部237a將劃分后的MB跳過運行信息中的前半部作為MB跳過 運行信息重新編碼(步驟S250)。然后,跳過運行修正部237a將重新編碼后的MB跳過運行
38信息輸出給劃分點檢測部139a(步驟S252)。即,在本實施方式中,由于不需要將MB跳過運 行信息重新結合,所以不像實施方式1那樣將先行MB跳過運行信息保持在內(nèi)部中。接著,跳過運行修正部237a與實施方式1同樣,將劃分后的MB跳過運行信息中的 后半部設定為新的MB跳過運行信息之后(步驟S220),判斷其長度是否是0 (步驟S222)。在步驟S222中判斷為新的MB跳過運行信息的長度是0的情況下(步驟S222的 是),跳過運行修正部237a認為不再有要處理的MB跳過運行信息,結束處理。在步驟S222中判斷為新的MB跳過運行信息的長度不是0的情況下(步驟S222 的是),跳過運行修正部137a認為還存在要處理的MB跳過運行信息,回到步驟S204,再次 進行MB跳過運行信息的劃分及輸出處理。將以上說明的處理在跳過運行修正部237a中反復進行直到流的結束。這樣,在跳 過運行修正部237a中,適當?shù)剡M行MB跳過運行信息的劃分。圖25是表示QP德爾塔插入部238的累積QP變化量的插入處理的流程圖。另外, 在圖25中,對于進行與圖18同樣的處理的步驟賦予相同的標號而省略詳細的說明。如果開始宏塊的處理,則QP德爾塔插入部238與實施方式1同樣,執(zhí)行步驟 S300 步驟S316之前的處理。并且,在判斷為處理對象宏塊位于MB行的開頭的情況下(步驟S316的是),QP德 爾塔插入部238將與被分配了處理對象宏塊的劃分流對應的累積QP變化量編碼,輸出給劃 分點檢測部139 (步驟S352)。S卩,QP德爾塔插入部238在輸出MB信息之前輸出累積QP變化量。接著,QP德爾塔插入部238將對應于包含有處理對象宏塊的劃分流的累積QP變化 量復位為0 (步驟S354)。接著,QP德爾塔插入部238將MB信息輸出給劃分點檢測部139, 結束處理(步驟S356)。即,QP德爾塔插入部238在MB信息中包含有QP變化量的情況下, 將QP變化量不修正而原樣輸出。另一方面,在判斷為處理對象宏塊沒有位于MB行的開頭的情況下(步驟S316的 否),QP德爾塔插入部238將MB信息輸出給劃分點檢測部139,結束處理(步驟S350)。艮口, QP德爾塔插入部238在MB信息中包含有QP變化量的情況下,不修正該QP變化量而輸出 MB信息。以上,QP德爾塔插入部238為了插入到MB行的開頭而將累積的新的QP變化量 (累積QP變化量)、以及包含在編碼流中的QP變化量輸出給劃分點檢測部139。這樣,在本實施方式的圖像解碼裝置200中,與實施方式1的圖像解碼裝置100同 樣,能夠使N個解碼引擎220的解碼處理的負擔變得均等,能夠適當?shù)貓?zhí)行解碼的并行處理。特別是,如果是位于MB行的開頭的宏塊不包含QP變化量的情況,本實施方式的圖 像解碼裝置200也通過將新的QP變化量插入到MB行中,在并行進行解碼處理時能夠得到 正確的QP值。此外,這樣的本實施方式的圖像解碼裝置200與實施方式1的圖像解碼裝置100 同樣,根據(jù)輸入到流劃分部230中的模式信息,執(zhí)行圖19A 圖19C所示的高析像度解碼、 高速解碼、以及多通道解碼中的某個。由此,本實施方式的圖像解碼裝置200能夠根據(jù)模式信息將解碼處理切換為高析像度解碼、高速解碼和多通道解碼的某個,所以能夠提高用戶的使用方便性。接著,對有關上述實施方式1及2的圖像解碼裝置的應用例進行說明。圖26是表示有關上述實施方式1及2的圖像解碼裝置的應用例的圖。例如,有關上述實施方式1及2的圖像解碼裝置如圖26所示,裝備在接收廣播波 而將包含在該廣播波中的編碼流再生的再生裝置101中。再現(xiàn)裝置101具備接收BS數(shù)字 廣播的廣播波的天線IOla和裝置主體101b,裝置主體IOlb具備上述圖像解碼裝置。裝備在裝置主體IOlb中的圖像解碼裝置從由天線IOla接收到的廣播波中提取例 如4k2k的編碼流。并且,該圖像解碼裝置如上述那樣將提取出的編碼流劃分而生成N個劃 分流,將N個劃分流并行地解碼。以上,利用實施方式對有關本發(fā)明的圖像解碼裝置及圖像解碼方法進行了說明, 但本發(fā)明并不限于這些。只要不脫離本發(fā)明的主旨,將本領域的技術人員想到的各種變形 實施到上述實施方式中、或者將不同的實施方式中的結構要素組合而構建的形態(tài)也包含在 本發(fā)明的范圍內(nèi)。例如,在上述實施方式中,圖像解碼裝置100、200具備劃分流緩沖器152等,但也 可以不具備這些。圖27是表示有關本發(fā)明的實施方式的圖像解碼裝置的最小結構的模塊圖。圖像解碼裝置10具有用來實現(xiàn)本發(fā)明的最小結構,具備獲得部11、流劃分部12、 以及N個解碼部13。獲得部11相當于流緩沖器151或用來從流緩沖器151向圖像解碼裝置10取入編 碼流的獲得裝置(或者單純的獲得口),獲得將圖像數(shù)據(jù)編碼后的編碼流。流劃分部12相 當于流劃分部130、230。S卩,流劃分部12按照包含在由獲得部11獲得的編碼流中的編碼圖 片,將該編碼圖片劃分為多個構成單位,通過將多個構成單位分別分配到作為生成對象的N 個(N是2以上的整數(shù))的劃分流中的某一個劃分流的一部分,生成N個劃分流。N個解碼 部13相當于解碼引擎120、220,將由流劃分部12生成的N個劃分流分別并行地解碼。此 外,流劃分部12在生成N個劃分流時,當將包含在編碼圖片中的片劃分為多個片部分而分 配到多個劃分流時,按照劃分流將片部分群重新構成為新的片,以使上述片部分群被N個 解碼部13的某個識別為片,上述片部分群是由對該劃分流分配的至少一個片部分構成的。由此,編碼圖片例如被劃分為多個宏塊行等構成單位,多個宏塊行分別被作為劃 分流的一部分分配到N個解碼部解碼,所以能夠使N個解碼部的解碼部處理的負擔變得均 等,能夠適當?shù)貓?zhí)行解碼的并行處理。例如,如果是H. 264/AVC的編碼圖片由一個片構成的 情況,也由于該編碼圖片被劃分為多個宏塊行,所以能夠使該一個片的解碼不是由一個解 碼部負擔、而由N個解碼部均等地負擔。這里,如果編碼圖片被劃分為多個宏塊行,則有跨越多個宏塊行的片被劃分為多 個片部分、這些片部分被分配到不同的劃分流的情況。即,在一個劃分流中沒有包含編碼圖 片的片的整體,而包含作為該片的片斷的片部分集合一個以上而構成的片部分群。此外,有 在這樣的片部分群中不包含表示其開頭的頭、及表示其末端的末端信息的情況。此外,有多 個片部分中的、在編碼流中連續(xù)的至少兩個片部分具有包含在編碼流中的規(guī)定的代碼字帶 來的依賴關系的情況。所以,在上述實施方式中,由于將該片部分群構成為新的片,所以將包括該片部分群的劃分流解碼的解碼部13不需要用來識別該片部分群并適當?shù)亟獯a的特別的處理,而 能夠將片部分群簡單地識別為新的片并適當?shù)亟獯a。即,在上述實施方式中,由于不需要在 N個解碼部13的各自中設置進行特別的處理的功能及結構,所以能夠在將劃分流解碼的解 碼部中沿用以往方式的解碼電路,能夠使圖像解碼裝置的整體結構變得簡單。因而,圖像解碼裝置10不需要上述實施方式中的劃分流緩沖器152等,即使沒有 它們也能夠起到上述本發(fā)明特有的作用效果、達到上述目的。例如,在上述實施方式中,將一個MB行作為一個構成單位處理,將圖片劃分為多 個構成單位,但該構成單位并不限于一個MB行,也可以是2個MB行、3個MB行,也可以是沿 圖片的垂直方向排列為一列的多個宏塊。例如,也可以在圖片由MBAFF構成的情況下,將2 個MB行作為構成單位處理,在圖片不由MBAFF構成的情況下,將一個MB行作為構成單位處理。此外,在上述實施方式中,流劃分部將復制片頭插入到劃分流中,解碼引擎將插入 了該復制片頭的劃分流讀出并解碼。但是,也可以是流劃分部不將復制片頭插入到劃分流 中而將該復制片頭直接輸出給解碼引擎。例如,流劃分部判斷在緊靠讀入到解碼引擎中的 劃分流中的MB行之前是否應存在復制片頭,在判斷為應存在時,在由解碼引擎將該MB行讀 入之前,將該復制片頭輸出給解碼引擎。這里,流劃分部也可以不將復制片頭自身輸出給解 碼引擎、而僅將包含在復制片頭中的一部分信息輸出給解碼引擎。此外,在上述實施方式中,流劃分部執(zhí)行QP變化量的修正及QP變化量的插入的某 一個操作,但也可以執(zhí)行兩者。在此情況下,流劃分部只要例如判斷MB行的開頭宏塊是否 包含有QP變化量就可以。這里,在MB行的開頭宏塊包含有QP變化量的情況下,流劃分部 只要進行該宏塊的QP變化量的替換等就可以(圖18的步驟S318 S322)。另一方面,在 MB行的開頭的宏塊不包含QP變化量的情況下,流劃分部只要進行累積QP變化量的輸出等 就可以(圖25的步驟S352 S356)。 進而,在流劃分部執(zhí)行QP變化量的修正及QP變化量的插入兩者的情況下,優(yōu)選的 是,跳過運行修正部例如在MB跳過運行信息位于MB行的開頭時,判斷在該MB行的開頭是 否插入QP變化量。這里,在MB行的開頭沒有插入QP變化量的情況下,跳過運行修正部只 要對MB跳過運行信息加上先行MB跳過運行信息就可以(圖15的S210)。另一方面,在MB 行的開頭插入QP變化量的情況下,只要將先行MB跳過運行信息和MB跳過運行信息分別作 為MB跳過運行信息輸出就可以。此外,在上述實施方式中,對第1代碼字是MB跳過運行信息的情況進行了說明,但 第1代碼字并不一定需要是MB跳過運行信息。例如,第1代碼字只要是表示與跳過宏塊不 同種類的宏塊連續(xù)的代碼字就可以。此外,在上述實施方式中,對第2代碼字是QP變化量的情況進行了說明,但第2代 碼字并不一定需要是QP變化量。例如,第2代碼字也可以是表示與QP變化量不同的、表示 宏塊間的編碼系數(shù)的變化量的代碼字就可以。另夕卜,模塊圖(圖1、圖7、圖9、圖14、圖20、圖21及圖23等)的各功能模塊典型 地作為是集成電路的LSI (大規(guī)模集成電路Large ScaleIntegration)實現(xiàn)。它們既可以 單獨地單芯片化,也可以包含一部分或全部而單芯片化。例如,也可以將圖1的用解碼器 110表示的部分(包括流劃分部130、第1解碼引擎 第N解碼引擎120的部分)包含在一個芯片中。這里,設為LSI,但根據(jù)集成度的差異,也有稱作IC(集成電路 IntegratedCircuit)、系統(tǒng)LSI、超級LSI、超大規(guī)模LSI的情況。此外,集成電路化的方法并不限于LSI,也可以由專用電路或通用處理器實現(xiàn)。 也可以使用在LSI制造后能夠編程的FPGA(場可編程門陣列=FieldProgrammable Gate Array)、或能夠重新構成LSI內(nèi)部的電路單元的連接及設定的可重構處理器。進而,如果因半導體技術的進步或派生的其他技術而出現(xiàn)代替LSI的集成電路化 的技術,則當然也可以使用該技術進行功能塊的集成化。有可能是生物技術的應用等。工業(yè)實用性本發(fā)明的圖像解碼裝置起到能夠以簡單的結構適當?shù)貓?zhí)行解碼的并行處理的效 果,例如作為將4k2k的編碼流解碼的再現(xiàn)裝置等具有實用性。符號說明10、100、200 圖像解碼裝置11獲得部12,130,230 流劃分部13 解碼部110、210 解碼器120,220第1 第N解碼引擎(解碼引擎)131開始代碼檢測部132a EPB 除去部132b EPB 插入部133 片頭插入部133a NAL類型判斷部133b頭插入計數(shù)器133c 頭地址更新部133d頭緩沖器134、134a、134b 片數(shù)據(jù)處理部135a、135b片數(shù)據(jù)層解碼部136a、136b宏塊層解碼部137a、237a 跳過運行修正部138、138a、138b QP 德爾塔修正部139、139a、139b 劃分點檢測部150存儲器151流緩沖器152劃分流緩沖器153幀存儲器160跳過運行提取部161跳過運行劃分部162跳過運行累積·保持部
42
163加法部164跳過運行編碼部238,238a,238b QP 德爾塔插入部
權利要求
一種圖像解碼裝置,對編碼圖像數(shù)據(jù)而得到的編碼流進行解碼,具備獲得部,獲得編碼流;流劃分部,按由上述獲得部獲得的編碼流中包含的每個編碼圖片,將該編碼圖片劃分為多個構成單位,將上述多個構成單位的每一個分配到作為生成對象的N個劃分流之中的任一個劃分流的一部分,從而生成N個劃分流,其中N為2以上的整數(shù);以及N個解碼部,對由上述流劃分部生成的N個劃分流的每一個并行進行解碼;上述流劃分部,在生成上述N個劃分流的情況下,在上述編碼圖片中包含的片被劃分為多個片部分而被分配到多個劃分流時,按每個上述劃分流,將片部分群重新構成為新的片,以使上述片部分群被上述N個解碼部的任一個識別為片,上述片部分群是由被分配到該劃分流的至少一個片部分構成的,在上述多個片部分之中的、在上述編碼流中連續(xù)的至少兩個片部分具有基于上述編碼流中包含的規(guī)定的代碼字的依賴關系時,通過在上述多個劃分流之中的至少一個劃分流中設定代碼字,以使上述依賴關系成為與各劃分流中的片部分的前后關系相應的新的依賴關系,從而將上述片部分群重新構成為新的片。
2.如權利要求1所述的圖像解碼裝置,其中,上述編碼圖片是按規(guī)定的像素數(shù)的塊來編碼的圖片;上述規(guī)定的代碼字是表示在上述編碼圖片中包含的片內(nèi)連續(xù)的指定種類的塊的個數(shù) 的第1代碼字;在上述編碼流中包含的第1代碼字表示在上述編碼流中跨連續(xù)的至少兩個片部分而 連續(xù)的塊的個數(shù),從而上述至少兩個片部分具有依賴關系時,上述流劃分部將修正為表示 每個片部分的塊的個數(shù)的上述第1代碼字,設定在被分別分配了上述至少兩個連續(xù)的片部 分的至少兩個劃分流中,從而將上述片部分群重新構成為新的片。
3.如權利要求2所述的圖像解碼裝置,其中,在各劃分流中,與設定的多個第1代碼字對應的多個塊在該劃分流內(nèi)連續(xù)時,上述流 劃分部還將上述多個第1代碼字,變換為表示上述多個第1代碼字的每一個所表示的個數(shù) 的總和的一個代碼字,從而將上述片部分群重新構成為新的片。
4.如權利要求1所述的圖像解碼裝置,其中,上述編碼圖片是按規(guī)定的像素數(shù)的塊來編碼的圖片;上述規(guī)定的代碼字是表示上述編碼圖片中包含的片內(nèi)的塊間的編碼系數(shù)的變化量的 第2代碼字;在上述編碼流中包含的第2代碼字表示在編碼流中跨連續(xù)的兩個片部分的塊間的變 化量,從而上述兩個片部分具有依賴關系時,上述流劃分部計算基于上述劃分流中的塊的 新的前后關系的編碼系數(shù)的變化量,將基于計算出的變化量的代碼字設定在被分別分配了 上述兩個片部分的兩個劃分流中的一個中,從而將上述片部分群重新構成為新的片。
5.如權利要求4所述的圖像解碼裝置,其中,上述流劃分部將修正為計算出的變化量的上述第2代碼字設定在上述劃分流中。
6.如權利要求4所述的圖像解碼裝置,其中,上述流劃分部將表示計算出的變化量的新的代碼字和上述第2代碼字設定在上述劃分流中。
7.如權利要求4所述的圖像解碼裝置,其中,上述流劃分部使用上述編碼流中包含的第2代碼字來將每個塊的編碼系數(shù)復原,利用 復原的編碼系數(shù),計算基于各劃分流中的塊的新的前后關系的編碼系數(shù)的變化量。
8.如權利要求4所述的圖像解碼裝置,其中,上述流劃分部按每個上述劃分流,將該劃分流以外的劃分流中包含的第2代碼字所表 示的變化量累積,利用累積的變化量,計算基于各劃分流中的塊的新的前后關系的編碼系 數(shù)的變化量。
9.如權利要求8所述的圖像解碼裝置,其中,上述流劃分部在將第2代碼字所表示的變化量累積時,在片邊界,將累積的變化量復 位為0。
10.一種圖像解碼方法,對編碼圖像數(shù)據(jù)而得到的編碼流進行解碼,其中, 獲得編碼流;按獲得的編碼流中包含的每個編碼圖片,將該編碼圖片劃分為多個構成單位,將上述 多個構成單位的每一個分配到作為生成對象的N個劃分流之中的任一個劃分流的一部分, 從而生成N個劃分流,其中N是2以上的整數(shù); 對生成的N個劃分流的每一個并行進行解碼; 在生成上述N個劃分流時,在上述編碼圖片中包含的片被劃分為多個片部分而被分配到多個劃分流時,按每個上 述劃分流,將片部分群重新構成為新的片,以使上述片部分群被上述N個解碼部的任一個 識別為片,上述片部分群是由被分配到該劃分流的至少一個片部分構成的,當上述多個片部分之中的、在上述編碼流中連續(xù)的至少兩個片部分具有基于上述編碼 流中包含的規(guī)定的代碼字的依賴關系時,通過在上述多個劃分流之中的至少一個劃分流中 設定代碼字,以使上述依賴關系成為與各劃分流中的片部分的前后關系相應的新的依賴關 系,從而將上述片部分群重新構成為新的片。
11.一種程序,用來對編碼圖像數(shù)據(jù)而得到的編碼流進行解碼,使計算機執(zhí)行 獲得編碼流;按獲得的編碼流中包含的每個編碼圖片,將該編碼圖片劃分為多個構成單位,將上述 多個構成單位的每一個分配到作為生成對象的N個劃分流之中的任一個劃分流的一部分, 從而生成N個劃分流,其中N是2以上的整數(shù); 對生成的N個劃分流的每一個并行進行解碼; 在生成上述N個劃分流時,在上述編碼圖片中包含的片被劃分為多個片部分而被分配到多個劃分流時,按每個上 述劃分流,將片部分群重新構成為新的片,以使上述片部分群被上述N個解碼部的任一個 識別為片,上述片部分群是由被分配到該劃分流的至少一個片部分構成的,當上述多個片部分之中的、在上述編碼流中連續(xù)的至少兩個片部分具有基于上述編碼 流中包含的規(guī)定的代碼字的依賴關系時,通過在上述多個劃分流之中的至少一個劃分流中 設定代碼字,以使上述依賴關系成為與各劃分流中的片部分的前后關系相應的新的依賴關 系,從而將上述片部分群重新構成為新的片。
12. —種集成電路,對編碼圖像數(shù)據(jù)而得到的編碼流進行解碼,具備 獲得部,獲得編碼流;流劃分部,按由上述獲得部獲得的編碼流中包含的每個編碼圖片,將該編碼圖片劃分 為多個構成單位,將上述多個構成單位的每一個分配到作為生成對象的N個劃分流之中的 任一個劃分流的一部分,從而生成N個劃分流,其中N為2以上的整數(shù);以及 N個解碼部,對由上述流劃分部生成的N個劃分流的每一個并行進行解碼; 上述流劃分部,在生成上述N個劃分流的情況下,在上述編碼圖片中包含的片被劃分為多個片部分而 被分配到多個劃分流時,按每個上述劃分流,將片部分群重新構成為新的片,以使上述片部 分群被上述N個解碼部的任一個識別為片,上述片部分群是由被分配到該劃分流的至少一 個片部分構成的,在上述多個片部分之中的、在上述編碼流中連續(xù)的至少兩個片部分具有基于上述編碼 流中包含的規(guī)定的代碼字的依賴關系時,通過在上述多個劃分流之中的至少一個劃分流中 設定代碼字,以使上述依賴關系成為與各劃分流中的片部分的前后關系相應的新的依賴關 系,從而將上述片部分群重新構成為新的片。
全文摘要
具備流劃分部,該流劃分部按照包含在編碼流中的每個圖片,劃分為多個MB行,將它們分別分配到多個劃分流中的某一個劃分流的一部分,由此生成能夠并行解碼的多個劃分流;流劃分部當包含在圖片中的片被劃分為多個片部分而分配到多個劃分流時,按照每個劃分流,將由對該劃分流分配的多個片部分構成的片部分群重新構成,以使其能夠被解碼裝置識別為片。此時,當連續(xù)的兩個MB行具有規(guī)定的代碼字(例如QP值變化量或MB跳過運行信息)帶來的依賴關系時,將代碼字設定在劃分流中,以使該依賴關系成為與各劃分流中的MB行的前后關系對應的新的依賴關系。
文檔編號H04N7/26GK101939994SQ20098010420
公開日2011年1月5日 申請日期2009年10月27日 優(yōu)先權日2008年12月8日
發(fā)明者吉松直樹, 巖橋大輔, 田中健 申請人:松下電器產(chǎn)業(yè)株式會社