專利名稱:編碼器、解碼器、編碼方法以及解碼方法
技術(shù)領(lǐng)域:
本發(fā)明涉及對(duì)圖像數(shù)據(jù)進(jìn)行可變長(zhǎng)度編碼的編碼器、編碼方法、用于記錄編碼程 序的記錄介質(zhì)、對(duì)可變長(zhǎng)度編碼數(shù)據(jù)進(jìn)行可變長(zhǎng)度解碼的解碼器、解碼方法以及用于記錄 解碼程序的記錄介質(zhì),上述編碼器、編碼方法、解碼器、解碼方法以及記錄介質(zhì)適用于各種 編碼系統(tǒng)的解碼器和編碼器。
背景技術(shù):
在相關(guān)技術(shù)中,通常使用編碼器對(duì)圖像數(shù)據(jù)進(jìn)行編碼,然后進(jìn)行記錄或者發(fā)布,并 且當(dāng)顯示圖像時(shí)使用解碼器進(jìn)行解碼。近來(lái),隨著圖像精度的提高,圖像數(shù)據(jù)的信息量也相 應(yīng)增加,于是需要以高速對(duì)已進(jìn)行了編碼的圖像數(shù)據(jù)(下文中稱為比特流)進(jìn)行解碼。
因此,推薦采用如下技術(shù)將比特流分成多個(gè)段,并且使用多個(gè)并行布置的解碼器 對(duì)多個(gè)段同時(shí)進(jìn)行解碼(例如,參見(jiàn)日本專利申請(qǐng)公開(kāi)公報(bào)No. 2006-319943)。
圖1示出了可變長(zhǎng)度編碼圖像數(shù)據(jù)的結(jié)構(gòu)(下文中稱為可變長(zhǎng)度編碼序列)。在 可變長(zhǎng)度編碼處理過(guò)程中,通過(guò)分配響應(yīng)于與固定長(zhǎng)度的圖像數(shù)據(jù)的出現(xiàn)頻率差異而被分 配的不同長(zhǎng)度的可變長(zhǎng)度編碼,來(lái)生成可變長(zhǎng)度編碼序列。因此,與全部圖像數(shù)據(jù)的信息量 相比,能夠進(jìn)一步減少可變長(zhǎng)度編碼序列的信息量。 如圖2A 圖2D所示,通過(guò)依次對(duì)作為圖像數(shù)據(jù)而被輸入的可變長(zhǎng)度編碼數(shù)據(jù)塊 DB1、DB2、…進(jìn)行可變長(zhǎng)度編碼,生成了包含可變長(zhǎng)度編碼序列VL1、VL2、…的比特流(BS)。
如圖3A所示,在對(duì)可變長(zhǎng)度編碼序列進(jìn)行解碼的可變長(zhǎng)度解碼處理過(guò)程中,讀取 從比特流的首位算起的具有最大編碼長(zhǎng)度以上的位。下文中,把所讀取的位稱為待解碼的 位。對(duì)預(yù)先存儲(chǔ)的可變長(zhǎng)度解碼(Variable Length Decoding, VLD)表與具有最大編碼長(zhǎng)度 以上的待解碼的位進(jìn)行比較,并且選擇與待解碼的位一致的固定長(zhǎng)度編碼作為解碼數(shù)據(jù)。
如圖3B所示,將可變長(zhǎng)度編碼序列中用于解碼的位的后續(xù)位設(shè)定為待解碼的位, 并且對(duì)這些待解碼的位同樣地進(jìn)行可變長(zhǎng)度解碼,從而生成解碼數(shù)據(jù)。通過(guò)將解碼數(shù)據(jù)結(jié) 合起來(lái),生成圖像數(shù)據(jù)。 與上述的解碼器類似,即使在對(duì)可變長(zhǎng)度編碼序列進(jìn)行解碼的可變長(zhǎng)度解碼處理 過(guò)程中,也并行地設(shè)置有多個(gè)可變長(zhǎng)度解碼單元以同時(shí)生成解碼數(shù)據(jù),從而加快可變長(zhǎng)度 解碼處理過(guò)程。 然而,如圖l所示,可變長(zhǎng)度編碼具有不同的長(zhǎng)度,因而可能無(wú)法得知代表各可變 長(zhǎng)度編碼的是哪些位。 例如,如圖4所示,對(duì)設(shè)置有兩個(gè)可變長(zhǎng)度解碼單元(第一可變長(zhǎng)度解碼單元1和 第二可變長(zhǎng)度解碼單元2)的情況進(jìn)行說(shuō)明。第一可變長(zhǎng)度解碼單元l讀取從比特流的首位算起的待解碼的位,并且通過(guò)參照VLD表來(lái)生成包含固定長(zhǎng)度編碼的解碼數(shù)據(jù)。此時(shí),第 一次確認(rèn)分配給首個(gè)可變長(zhǎng)度編碼的編碼長(zhǎng)度,于是,識(shí)別出下一個(gè)可變長(zhǎng)度編碼的首位。
S卩,第二可變長(zhǎng)度解碼單元2不能對(duì)下一個(gè)可變長(zhǎng)度編碼的首位進(jìn)行識(shí)別,并且 也不能與第一可變長(zhǎng)度解碼單元1一起生成解碼數(shù)據(jù)。 在相關(guān)技術(shù)的可變長(zhǎng)度解碼處理過(guò)程中,沒(méi)有進(jìn)行使用多個(gè)可變長(zhǎng)度解碼單元的 并行處理,也很難以高速地進(jìn)行可變長(zhǎng)度解碼處理。
發(fā)明內(nèi)容
因此,本發(fā)明期望提供能夠高速地進(jìn)行可變長(zhǎng)度解碼處理的編碼器、編碼方法、解 碼器以及解碼方法。 本發(fā)明的實(shí)施例提供一種編碼器,所述編碼器包括分離單元,其用于將圖像數(shù)據(jù) 分成多個(gè)數(shù)據(jù)塊;可變長(zhǎng)度編碼單元,其用于對(duì)被所述分離單元分成的各個(gè)所述數(shù)據(jù)塊進(jìn) 行可變長(zhǎng)度編碼,并生成可變長(zhǎng)度編碼序列;編碼塊生成單元,其通過(guò)把利用所述可變長(zhǎng)度 編碼單元生成的兩個(gè)所述可變長(zhǎng)度編碼序列結(jié)合起來(lái),生成要從起始端和結(jié)束端起并行地 受到可變長(zhǎng)度解碼的編碼塊;比特流生成單元,其用于生成使所述編碼塊之間的邊界能夠 被識(shí)別的比特流。 因此,在發(fā)明實(shí)施例的編碼器中,由于開(kāi)始進(jìn)行可變長(zhǎng)度解碼的兩個(gè)起始位置能 夠通過(guò)比特流的編碼塊之間的邊界而被指定,因而當(dāng)進(jìn)行可變長(zhǎng)度解碼處理時(shí),可以從所 述兩個(gè)起始位置起并行地進(jìn)行可變長(zhǎng)度解碼處理。 本發(fā)明的另一實(shí)施例提供一種解碼器,所述解碼器包括接收單元,其包括具有可 變長(zhǎng)度編碼的多個(gè)編碼塊,并且接收所生成的使所述編碼塊之間的邊界能夠被識(shí)別的比特 流;指定單元,其用于基于所述編碼塊之間的邊界來(lái)指定所述編碼塊的起始端和結(jié)束端; 以及并行解碼單元,其用于對(duì)通過(guò)所述接收單元接收到的所述比特流以并行方式從由所述 指定單元指定的所述編碼塊的起始端和結(jié)束端起進(jìn)行可變長(zhǎng)度解碼。 因此,在本發(fā)明實(shí)施例的解碼器中,由于開(kāi)始進(jìn)行可變長(zhǎng)度解碼的兩個(gè)起始位置 能夠通過(guò)比特流的編碼塊之間的邊界而被指定,因而可以從該兩個(gè)起始位置起并行地進(jìn)行 可變長(zhǎng)度解碼處理。 本發(fā)明另一實(shí)施例提供一種編碼方法,所述編碼方法包括如下步驟將圖像數(shù)據(jù) 分成多個(gè)數(shù)據(jù)塊;對(duì)各個(gè)所述數(shù)據(jù)塊進(jìn)行可變長(zhǎng)度編碼,并生成可變長(zhǎng)度編碼序列;通過(guò) 把在上述可變長(zhǎng)度編碼步驟中生成的兩個(gè)所述可變長(zhǎng)度編碼序列結(jié)合起來(lái),生成要從起始 端和結(jié)束端起并行地受到可變長(zhǎng)度解碼的編碼塊;以及生成使所述編碼塊之間的邊界能夠 被識(shí)別的比特流。 因此,在本發(fā)明實(shí)施例的編碼方法中,由于能夠通過(guò)比特流的編碼塊之間的邊界 來(lái)指定開(kāi)始進(jìn)行可變長(zhǎng)度解碼的兩個(gè)起始位置,因此當(dāng)進(jìn)行可變長(zhǎng)度解碼處理時(shí),可以從 該兩個(gè)起始位置起并行地進(jìn)行可變長(zhǎng)度解碼處理。 本發(fā)明另一實(shí)施例提供一種解碼方法,所述解碼方法包括如下步驟在多個(gè)編碼 塊具有可變長(zhǎng)度編碼的情況下,接收所生成的使所述編碼塊之間的邊界能夠被識(shí)別的比特 流;基于所述編碼塊之間的邊界來(lái)指定所述編碼塊的起始端和結(jié)束端;以及對(duì)在上述接收 步驟中接收到的所述比特流以并行方式從由指定單元指定的所述起始端和所述結(jié)束端起
5進(jìn)行可變長(zhǎng)度解碼。 因此,在本發(fā)明實(shí)施例的解碼方法中,由于能夠通過(guò)比特流的編碼塊之間的邊界 來(lái)指定開(kāi)始進(jìn)行可變長(zhǎng)度解碼的兩個(gè)起始位置,因而可以從該兩個(gè)起始位置并行地進(jìn)行可 變長(zhǎng)度解碼處理。 根據(jù)本發(fā)明的實(shí)施例,由于開(kāi)始進(jìn)行可變長(zhǎng)度解碼的兩個(gè)起始位置能夠通過(guò)比特 流的編碼塊之間的邊界而被指定,因而可以從該兩個(gè)起始位置并行地進(jìn)行可變長(zhǎng)度解碼處 理。因此,根據(jù)本發(fā)明的實(shí)施例,能夠?qū)崿F(xiàn)可高速地進(jìn)行可變長(zhǎng)度解碼處理的編碼器和編碼 方法。 根據(jù)本發(fā)明的實(shí)施例,由于開(kāi)始進(jìn)行可變長(zhǎng)度解碼的兩個(gè)起始位置能夠通過(guò)比特 流的編碼塊之間的邊界而被指定,因而可以從該兩個(gè)起始位置并行地進(jìn)行可變長(zhǎng)度解碼處 理。因此,根據(jù)本發(fā)明的實(shí)施例,能夠?qū)崿F(xiàn)可高速地進(jìn)行可變長(zhǎng)度解碼處理的解碼器和解碼 方法。
圖3A、圖3B和圖3C是用于對(duì)相關(guān)技術(shù)的可變長(zhǎng)度解碼處理進(jìn)行說(shuō)明的示意圖4是用于對(duì)并行處理的問(wèn)題進(jìn)行說(shuō)明的示意圖5是示出了本發(fā)明第一實(shí)施例的編碼器結(jié)構(gòu)的示意圖6A和圖6B是示出了本發(fā)明第一實(shí)施例的圖像數(shù)據(jù)結(jié)構(gòu)的示意圖7是用于根據(jù)本發(fā)明第一實(shí)施例對(duì)數(shù)據(jù)的分離進(jìn)行說(shuō)明的示意圖8A和圖8B是用于根據(jù)本發(fā)明第一實(shí)施例對(duì)可變長(zhǎng)度解碼操作進(jìn)行說(shuō)明的示意
圖1是示出了可變長(zhǎng)度編碼的示意圖; 圖2A、圖2B、圖2C和圖2D是用于對(duì)相關(guān)技術(shù)的可變長(zhǎng)度編碼處理進(jìn)行說(shuō)明的示
意圖;
圖; 圖9A、圖9B、圖9C和圖9D是用于根據(jù)本發(fā)明第一實(shí)施例對(duì)數(shù)據(jù)的交替進(jìn)行說(shuō)明 的示意圖; 圖10是示出了本發(fā)明第一實(shí)施例的解碼器結(jié)構(gòu)的示意圖; 圖11A、圖11b、圖IIC和圖IID是用于根據(jù)本發(fā)明第一實(shí)施例對(duì)數(shù)據(jù)的讀取進(jìn)行 說(shuō)明的示意圖; 圖12是用于根據(jù)本發(fā)明第一實(shí)施例對(duì)可變長(zhǎng)度解碼處理進(jìn)行說(shuō)明的示意圖; 圖13是用于根據(jù)本發(fā)明第一實(shí)施例對(duì)圖像數(shù)據(jù)的生成進(jìn)行說(shuō)明的示意圖; 圖14是用于根據(jù)本發(fā)明第一實(shí)施例對(duì)編碼處理順序進(jìn)行說(shuō)明的流程圖; 圖15是用于根據(jù)本發(fā)明第一實(shí)施例對(duì)并行解碼處理順序進(jìn)行說(shuō)明的流程圖; 圖16是示出了本發(fā)明第二實(shí)施例的圖像數(shù)據(jù)結(jié)構(gòu)的示意圖; 圖17是示出了本發(fā)明的第二實(shí)施例的編碼器結(jié)構(gòu)的示意圖; 圖18是用于根據(jù)本發(fā)明第二實(shí)施例對(duì)數(shù)據(jù)的分離進(jìn)行說(shuō)明的示意圖; 圖19是用于根據(jù)本發(fā)明第二實(shí)施例對(duì)可變長(zhǎng)度解碼操作進(jìn)行說(shuō)明的示意圖; 圖20A、圖20B、圖20C、圖20D和圖20E是示出了本發(fā)明第二實(shí)施例的可變長(zhǎng)度編 碼序列的結(jié)構(gòu)的示意 圖21A、圖21B、圖21C、圖21D、圖21E和圖21F是用于根據(jù)本發(fā)明第二實(shí)施例對(duì)比 特流的生成進(jìn)行說(shuō)明的示意圖; 圖22是示出了本發(fā)明第二實(shí)施例的解碼器結(jié)構(gòu)的示意圖; 圖23A、圖23B、圖23C和圖23D是用于說(shuō)明根據(jù)本發(fā)明第二實(shí)施例對(duì)待解碼的位 進(jìn)行讀取(1)的示意圖; 圖24A、圖24B、圖24C、圖24D、圖24E和圖24F是用于說(shuō)明根據(jù)本發(fā)明第二實(shí)施例 對(duì)待解碼的位進(jìn)行讀取(2)的示意圖; 圖25A、圖25B、圖25C和圖25D是用于根據(jù)本發(fā)明第二實(shí)施例對(duì)終止處理(1)進(jìn) 行說(shuō)明的示意圖; 圖26A、圖26B、圖26C和圖26D是用于根據(jù)本發(fā)明第二實(shí)施例對(duì)終止處理(2)進(jìn) 行說(shuō)明的示意圖; 圖27是用于根據(jù)本發(fā)明第二實(shí)施例對(duì)編碼處理順序進(jìn)行說(shuō)明的流程圖;
圖28是用于根據(jù)本發(fā)明第二實(shí)施例對(duì)并行解碼處理順序進(jìn)行說(shuō)明的流程圖;
圖29是示出了本發(fā)明第三實(shí)施例的編碼器結(jié)構(gòu)的示意圖; 圖30A、圖30B、圖30C、圖30D和圖30E是示出了本發(fā)明第三實(shí)施例的可變長(zhǎng)度編 碼的結(jié)構(gòu)的示意圖; 圖31A、圖31B、圖31C、圖31D和圖31E是用于根據(jù)本發(fā)明第三實(shí)施例對(duì)比特流的 生成進(jìn)行說(shuō)明的示意圖; 圖32是示出了本發(fā)明第三實(shí)施例的解碼器結(jié)構(gòu)的示意圖;
圖33是用于說(shuō)明根據(jù)本發(fā)明第三實(shí)施例對(duì)待解碼的位進(jìn)行讀取的示意圖;
圖34是用于根據(jù)本發(fā)明第三實(shí)施例對(duì)圖像數(shù)據(jù)的生成進(jìn)行說(shuō)明的示意圖;
圖35是用于根據(jù)本發(fā)明第三實(shí)施例對(duì)編碼處理順序進(jìn)行說(shuō)明的流程圖;
圖36是用于根據(jù)本發(fā)明第三實(shí)施例對(duì)并行解碼處理順序進(jìn)行說(shuō)明的流程圖;
圖37是用于根據(jù)本發(fā)明其它實(shí)施例對(duì)比特流的生成(1)進(jìn)行說(shuō)明的示意圖;
圖38A、圖38B和圖38C是用于根據(jù)本發(fā)明其它實(shí)施例對(duì)比特流的生成(2)進(jìn)行說(shuō) 明的示意圖; 圖39是用于根據(jù)本發(fā)明其它實(shí)施例對(duì)圖像數(shù)據(jù)進(jìn)行說(shuō)明的示意圖; 圖40是用于根據(jù)本發(fā)明其它實(shí)施例對(duì)比特流的生成(3)進(jìn)行說(shuō)明的示意圖。
具體實(shí)施例方式
下面采用如下順序?qū)Ρ景l(fā)明的各實(shí)施例進(jìn)行說(shuō)明。 1、第一實(shí)施例(從兩端進(jìn)行可變長(zhǎng)度解碼操作的并行處理) 2、第二實(shí)施例(通過(guò)交替存儲(chǔ)多個(gè)數(shù)據(jù)段而進(jìn)行的并行處理) 3、第三實(shí)施例(第一實(shí)施例和第二實(shí)施例的組合) 4、其它實(shí)施例 1、第一實(shí)施例 1-1.編碼器的結(jié)構(gòu) 圖5中的附圖標(biāo)記10在整體上示出了編碼器。當(dāng)圖像數(shù)據(jù)通過(guò)輸入端子11供給
過(guò)來(lái)時(shí),編碼器io對(duì)該圖像數(shù)據(jù)進(jìn)行編碼處理,從而生成由可變長(zhǎng)度編碼組成的比特流,并且將該比特流通過(guò)輸出端子15輸出。 具體而言,輸入端子11將輸入進(jìn)來(lái)的圖像數(shù)據(jù)供給到分離單元12。如圖6A所示, 圖像數(shù)據(jù)BL的一幀由H(水平)像素XV(垂直)像素構(gòu)成。如圖6B所示,圖像數(shù)據(jù)BL采 用4:2:2格式,并且與64個(gè)像素對(duì)應(yīng)的像素值通過(guò)64段采用固定長(zhǎng)度編碼的亮度數(shù)據(jù)Y 以及32段采用固定長(zhǎng)度編碼的色差數(shù)據(jù)Cb和Cr來(lái)表示。 在圖像數(shù)據(jù)BL中,使用與64個(gè)像素對(duì)應(yīng)的塊作為處理塊,用數(shù)量與一幀的像素?cái)?shù) 相等的處理塊來(lái)表示一幀圖像。 當(dāng)圖像數(shù)據(jù)BL被供給過(guò)來(lái)時(shí),如圖7所示,分離單元12將圖像數(shù)據(jù)BL分成多個(gè)處 理塊,并且將這些處理塊分成亮度數(shù)據(jù)Y及色差數(shù)據(jù)Cb和Cr。下文中,將分出的亮度數(shù)據(jù)Y 稱為前半lfe (first half block) DBa,將色差數(shù)據(jù)Cb和Cr稱為后半i央(second halfblock) DBb。 分離單元12將前半塊DBa和后半塊DBb供給到可變長(zhǎng)度編碼單元13。 如圖8A和圖8B所示,可變長(zhǎng)度編碼單元13(見(jiàn)圖5)使用可變長(zhǎng)度編碼(Variable
Length Coding, VLC)表對(duì)前半塊DBa和后半塊DBb進(jìn)行可變長(zhǎng)度編碼,并生成由可變長(zhǎng)度
編碼組成的前半可變長(zhǎng)度編碼序列VLa和后半可變長(zhǎng)度編碼序列VLb。因此,前半可變長(zhǎng)度
編碼序列VLa和后半可變長(zhǎng)度編碼序列VLb分別具有64位可變長(zhǎng)度編碼a0 a63和b0
b63。 另夕卜,可變長(zhǎng)度編碼單元13同時(shí)還進(jìn)行固定長(zhǎng)度編碼的量子化處理 (quantization process)或者由于可變長(zhǎng)度編碼中較低位面舍入運(yùn)算(lowerbitplane rounding off operation)而弓l起的后量子化處理(post-qimntizationprocess),從而將 前半可變長(zhǎng)度編碼序列VLa和后半可變長(zhǎng)度編碼序列VLb抑制到預(yù)定編碼量以下。
可變長(zhǎng)度編碼單元13將前半可變長(zhǎng)度編碼序列VLa和后半可變長(zhǎng)度編碼序列VLb 供給到比特流生成單元14(見(jiàn)圖5)。 如圖9A和圖9B所示,比特流生成單元14將前半可變長(zhǎng)度編碼序列VLa和后半可 變長(zhǎng)度編碼序列VLb結(jié)合起來(lái)。此時(shí),比特流生成單元14將作為緩沖數(shù)據(jù)DD的虛擬數(shù)據(jù) 插入到前半可變長(zhǎng)度編碼序列VLa與后半可變長(zhǎng)度編碼序列VLb之間,從而生成具有固定 編碼長(zhǎng)度的固定長(zhǎng)度編碼塊VLx。 另外,如果要使得由前半可變長(zhǎng)度編碼序列VLa和后半可變長(zhǎng)度編碼序列VLb相 加而得到的編碼長(zhǎng)度等于固定長(zhǎng)度編碼塊VLx的固定編碼長(zhǎng)度,則比特流生成單元14可以 不插入緩沖數(shù)據(jù)DD。 此時(shí),如圖9C和圖9D所示,比特流生成單元14將后半可變長(zhǎng)度編碼序列VLb以 鏡像方式進(jìn)行反轉(zhuǎn),從而將后半可變長(zhǎng)度編碼序列VLb的首位放到固定長(zhǎng)度編碼塊VLx的 最后部分處。例如,如果后半可變長(zhǎng)度編碼序列VLb為"0110001001100…",則重新排列為 "…0011001000110"。 比特流生成單元14依次生成固定長(zhǎng)度編碼塊VLx并且使這些固定長(zhǎng)度編碼塊VLx 結(jié)合起來(lái),從而生成比特流BSw。 上述編碼處理可以通過(guò)硬件或者軟件來(lái)進(jìn)行。如果通過(guò)軟件來(lái)實(shí)現(xiàn)編碼處理,則 編碼器10被虛擬地形成在中央處理器(Central ProcessingUnit,CPU)和隨機(jī)存取存儲(chǔ)器 (Random Access Memory,廳)中。另夕卜,把存儲(chǔ)在只讀存儲(chǔ)器(Read Only Memory, ROM)中的編碼程序展開(kāi)以進(jìn)行編碼處理。 編碼器10將待處理的塊分成兩個(gè)塊(前半塊DBa和后半塊DBb),進(jìn)行VLC處理, 并且生成前半可變長(zhǎng)度編碼序列VLa和后半可變長(zhǎng)度編碼序列VLb。編碼器10插入緩沖數(shù) 據(jù)DD并使前半可變長(zhǎng)度編碼序列VLa和后半可變長(zhǎng)度編碼序列VLb結(jié)合起來(lái),因而生成具 有固定編碼長(zhǎng)度的固定長(zhǎng)度編碼塊VLx。 因此,編碼器10能夠使固定長(zhǎng)度編碼塊VLx的首位與末位之間的間隔總是恒定。
1-2.解碼器的結(jié)構(gòu) 下面對(duì)用于對(duì)比特流BSw進(jìn)行解碼的解碼器30進(jìn)行說(shuō)明。如圖10所示,當(dāng)比特 流BSw被供給過(guò)來(lái)時(shí),解碼器30對(duì)該比特流BSw進(jìn)行并行解碼處理即可變長(zhǎng)度解碼處理, 并且生成圖像數(shù)據(jù)BL。 當(dāng)比特流BSw通過(guò)輸入端子31被供給過(guò)來(lái)時(shí),解碼器30開(kāi)始進(jìn)行并行解碼處理, 同時(shí),利用兩個(gè)解碼單元(第一解碼單元33和第二解碼單元34)從比特流BSw生成由固定 長(zhǎng)度編碼組成的解碼數(shù)據(jù)。解碼器30通過(guò)輸出端子37輸出由解碼數(shù)據(jù)組成的圖像數(shù)據(jù) BL。 如圖llA所示,通過(guò)對(duì)各個(gè)具有固定編碼長(zhǎng)度的固定長(zhǎng)度編碼塊VLx進(jìn)行排列而
形成了比特流BSw。因此,解碼器30能夠從固定長(zhǎng)度編碼塊VLx的編碼長(zhǎng)度中識(shí)別出固定
長(zhǎng)度編碼塊VLx的起始端和結(jié)束端,并且計(jì)算出比特流BSw中的解碼起始位置。 因此,如圖11B所示,解碼器30將固定長(zhǎng)度編碼塊VLx的起始端指定為解碼起始
位置,并且把用于表示讀取開(kāi)始位置的開(kāi)始指針PI設(shè)定在該起始端處。解碼器30能夠從
開(kāi)始指針P1開(kāi)始依次向后讀取數(shù)據(jù),從而讀取前半可變長(zhǎng)度編碼序列VLa。 另外,如圖llC所示,固定長(zhǎng)度編碼塊VLx包括處于后半部分中的后半鏡像可變長(zhǎng)
度編碼序列VLm。后半鏡像可變長(zhǎng)度編碼序列VLm是從后半可變長(zhǎng)度編碼序列VLb進(jìn)行鏡
像轉(zhuǎn)變而來(lái)的,并且后半鏡像可變長(zhǎng)度編碼序列VLm的結(jié)束端形成了固定長(zhǎng)度編碼塊VLx
的結(jié)束端。 因此,解碼器30將固定長(zhǎng)度編碼塊VLx的結(jié)束端指定為解碼起始位置,并且將開(kāi) 始指針P2設(shè)定在該結(jié)束端處。解碼器30能夠從開(kāi)始指針P2開(kāi)始依次向前讀取數(shù)據(jù),從而 如圖11D所示將后半鏡像可變長(zhǎng)度編碼序列VLm讀取成后半可變長(zhǎng)度編碼序列VLb。
解碼器30使開(kāi)始指針移動(dòng)僅用于解碼的位數(shù),以便對(duì)從前半可變長(zhǎng)度編碼序列 VLa和后半可變長(zhǎng)度編碼序列VLb依次讀取的待解碼的位進(jìn)行可變長(zhǎng)度解碼,從而生成解 碼數(shù)據(jù)。下文中,把對(duì)待解碼的位進(jìn)行讀取操作和可變長(zhǎng)度解碼操作的一系列處理稱為解 碼數(shù)據(jù)生成處理。 g卩,如圖12所示,解碼器30通過(guò)第一可變長(zhǎng)度解碼單元33對(duì)前半可變長(zhǎng)度編碼 序列VLa進(jìn)行解碼數(shù)據(jù)生成處理,且生成前半解碼數(shù)據(jù)BBa。另外,解碼器30通過(guò)第二可變 長(zhǎng)度解碼單元34對(duì)后半可變長(zhǎng)度編碼序列VLb進(jìn)行解碼數(shù)據(jù)生成處理,且生成后半解碼數(shù) 據(jù)BBb。 如圖13所示,解碼器30通過(guò)圖像數(shù)據(jù)生成單元36使前半解碼數(shù)據(jù)BBa和后半解 碼數(shù)據(jù)BBb結(jié)合起來(lái),并且使已經(jīng)結(jié)合起來(lái)的解碼塊依次連接,從而生成圖像數(shù)據(jù)BL。
具體而言,解碼器30(見(jiàn)圖10)把通過(guò)輸入端子31供給過(guò)來(lái)的比特流BSw供給到 存儲(chǔ)器32。因此,將比特流BSw的數(shù)據(jù)依次存儲(chǔ)在存儲(chǔ)器32中。CN 101765010 A
并行解碼單元40的讀取控制單元35將比特流BSw的開(kāi)始部分識(shí)別為首個(gè)固定長(zhǎng) 度編碼塊VLx的首位(即,解碼起始位置)。讀取控制單元35設(shè)定與第一可變長(zhǎng)度解碼單 元33對(duì)應(yīng)的開(kāi)始指針Pl,并且從固定長(zhǎng)度編碼塊VLx的首位開(kāi)始向后(即,沿正方向)進(jìn) 行讀取。 也就是,讀取控制單元35按照與從固定長(zhǎng)度編碼塊VLx的首位算起的可變長(zhǎng)度編 碼的最大編碼量相同的位數(shù)對(duì)數(shù)據(jù)(即,待解碼的位)進(jìn)行讀取,并且將讀取到的數(shù)據(jù)供給 到第一可變長(zhǎng)度解碼單元33。于是,將待解碼的位存儲(chǔ)在第一可變長(zhǎng)度解碼單元33的緩沖 存儲(chǔ)器(未圖示)內(nèi)。 通過(guò)參照可變長(zhǎng)度解碼(Variable Length Decoding, VLD)表,第一可變長(zhǎng)度解碼 單元33從待解碼的位生成解碼數(shù)據(jù),并將該數(shù)據(jù)供給到圖像數(shù)據(jù)生成單元36。讀取控制單 元35使開(kāi)始指針Pl移動(dòng)用于生成解碼數(shù)據(jù)的位數(shù),并且開(kāi)始對(duì)后續(xù)的待解碼的位進(jìn)行讀 取。 當(dāng)生成了 64段解碼數(shù)據(jù)時(shí),讀取控制單元35識(shí)別出已經(jīng)完成了當(dāng)前正在進(jìn)行處 理的前半可變長(zhǎng)度編碼序列VLa的可變長(zhǎng)度解碼,并將開(kāi)始指針PI移動(dòng)到下一個(gè)固定長(zhǎng) 度編碼塊VLx的起始端部分。也就是,讀取控制單元35使開(kāi)始指針P1以固定長(zhǎng)度編碼塊 VLx的固定編碼長(zhǎng)度作為移動(dòng)距離而移動(dòng)到當(dāng)前正在進(jìn)行處理的前半可變長(zhǎng)度編碼序列 VLa( S卩,固定長(zhǎng)度編碼塊VLx)的起始端后面的位置。 因此,讀取控制單元35能夠?qū)㈤_(kāi)始指針PI移動(dòng)到下一個(gè)固定長(zhǎng)度編碼塊VLx的 作為解碼起始位置的起始端,即前半可變長(zhǎng)度編碼序列VLa的起始端,并且開(kāi)始對(duì)該下一 個(gè)前半可變長(zhǎng)度編碼序列VLa進(jìn)行解碼數(shù)據(jù)生成處理。 另外,從曾經(jīng)設(shè)定了開(kāi)始指針Pl的首個(gè)固定長(zhǎng)度編碼塊VLx的首位向后移動(dòng)了固 定長(zhǎng)度編碼塊VLx的固定編碼長(zhǎng)度而到達(dá)的位置變成下一個(gè)固定長(zhǎng)度編碼塊VLx的起始
丄山順。 然后,讀取控制單元35識(shí)別出該下一個(gè)固定長(zhǎng)度編碼塊VLx的起始端的前一位 (earlier by 1 [bit])為當(dāng)前正在處理的固定長(zhǎng)度編碼塊VLx的結(jié)束端(即,解碼起始位 置),并且設(shè)定與第二可變長(zhǎng)度解碼單元34對(duì)應(yīng)的開(kāi)始指針P2。 也就是,讀取控制單元35將開(kāi)始指針P2設(shè)定在用該下一個(gè)固定長(zhǎng)度編碼塊VLx 的首位減去l位(l[bit])固定長(zhǎng)度編碼而到達(dá)的位置處。讀取控制單元35從固定長(zhǎng)度編 碼塊VLx的末位開(kāi)始向前(即,沿正方向的反方向)讀取待解碼的位。
讀取控制單元35按照與從固定長(zhǎng)度編碼塊VLx的末位算起的可變長(zhǎng)度編碼的最 大編碼量相同的位數(shù)對(duì)數(shù)據(jù)(即,待解碼的位)進(jìn)行讀取,并且將讀取到的數(shù)據(jù)供給到第二 可變長(zhǎng)度解碼單元34。于是,將待解碼的位存儲(chǔ)在第二可變長(zhǎng)度解碼單元34的緩沖存儲(chǔ)器 (未圖示)內(nèi)。 通過(guò)參照可變長(zhǎng)度解碼(VLD)表,第二可變長(zhǎng)度解碼單元34從待解碼的位生成解
碼數(shù)據(jù),并將該數(shù)據(jù)供給到圖像數(shù)據(jù)生成單元36。讀取控制單元35使開(kāi)始指針P2在反方
向上移動(dòng)用于生成解碼數(shù)據(jù)的位數(shù),并且開(kāi)始對(duì)后續(xù)的待解碼的位進(jìn)行讀取。 當(dāng)生成了 64段解碼數(shù)據(jù)時(shí),讀取控制單元35識(shí)別出已經(jīng)完成了當(dāng)前正在進(jìn)行處
理的后半可變長(zhǎng)度編碼序列VLb的可變長(zhǎng)度解碼,并將開(kāi)始指針P2移動(dòng)到下一個(gè)固定長(zhǎng)度
編碼塊VLx的結(jié)束端(即,解碼起始位置)。也就是,讀取控制單元35使開(kāi)始指針P2以固
10定長(zhǎng)度編碼塊VLx的固定編碼長(zhǎng)度作為移動(dòng)距離而移動(dòng)到當(dāng)前正在進(jìn)行處理的后半鏡像 可變長(zhǎng)度編碼序列VLm( S卩,固定長(zhǎng)度編碼塊VLx)的結(jié)束端后面的位置。
因此,讀取控制單元35能夠?qū)㈤_(kāi)始指針移動(dòng)到下一個(gè)固定長(zhǎng)度編碼塊VLx的作為 解碼起始位置的結(jié)束端,即后半可變長(zhǎng)度編碼序列VLb的起始端,并開(kāi)始對(duì)該下一個(gè)后半 可變長(zhǎng)度編碼序列VLb進(jìn)行解碼數(shù)據(jù)生成處理。 圖像數(shù)據(jù)生成單元36使從第一可變長(zhǎng)度解碼單元33供給來(lái)的64段解碼數(shù)據(jù) (即,前半解碼數(shù)據(jù)BBa)和從第二可變長(zhǎng)度解碼單元34供給來(lái)的64段解碼數(shù)據(jù)(S卩,后半 解碼數(shù)據(jù)BBb)進(jìn)行排列并結(jié)合起來(lái)。另外,圖像輸出單元36使已經(jīng)結(jié)合起來(lái)的解碼塊依 次連接,從而生成圖像數(shù)據(jù)BL。 上述并行解碼處理可以通過(guò)硬件或者軟件來(lái)進(jìn)行。如果通過(guò)軟件來(lái)實(shí)現(xiàn)并行解碼 處理,則解碼器30被虛擬地形成在CPU和RAM中。另外,將存儲(chǔ)在ROM中的解碼程序展開(kāi) 以進(jìn)行該并行解碼處理。 解碼器30從比特流BSw的固定長(zhǎng)度編碼塊VLx的起始端和結(jié)束端同時(shí)進(jìn)行解碼 數(shù)據(jù)生成處理。因此,由于解碼器30能夠利用兩個(gè)可變長(zhǎng)度解碼單元來(lái)并行地進(jìn)行解碼數(shù) 據(jù)生成處理,所以可以實(shí)現(xiàn)高速的可變長(zhǎng)度解碼處理。
1-3.詳細(xì)流程 [cm 5] 1-3-1.編碼流程 下面參照?qǐng)D14的流程圖對(duì)根據(jù)編碼程序進(jìn)行的編碼流程RT1進(jìn)行說(shuō)明。
當(dāng)圖像數(shù)據(jù)BL被供給過(guò)來(lái)時(shí),編碼器10開(kāi)始編碼流程RT1,并且進(jìn)入步驟SPl。
在步驟SP1中,編碼器lO將圖像數(shù)據(jù)BL分成前半塊DBa和后半塊DBb,然后進(jìn)入 下一步驟SP2。 在步驟SP2中,編碼器IO對(duì)分離而成的各單位(即,前半塊DBa和后半塊DBb)中 的圖像數(shù)據(jù)BL進(jìn)行可變長(zhǎng)度編碼,從而生成前半可變長(zhǎng)度編碼序列VLa和后半可變長(zhǎng)度編 碼序列VLb,然后進(jìn)入下一步驟SP3。 在步驟SP3中,編碼器10對(duì)后半可變長(zhǎng)度編碼序列VLb進(jìn)行鏡像處理,從而生成 后半鏡像可變長(zhǎng)度編碼序列VLm,然后進(jìn)入下一步驟SP4。 在步驟SP4中,編碼器10把緩沖數(shù)據(jù)DD插入在前半可變長(zhǎng)度編碼序列VLa與后 半鏡像可變長(zhǎng)度編碼序列VLm之間而使兩者結(jié)合起來(lái),從而生成具有固定編碼長(zhǎng)度的固定 長(zhǎng)度編碼塊VLx。然后,編碼器lO將新生成的固定長(zhǎng)度編碼塊VLx與先前生成的固定長(zhǎng)度 編碼塊VLx進(jìn)行結(jié)合,從而生成比特流BSw,然后進(jìn)入結(jié)束步驟,從而完成了編碼流程RT1 。
1-3-2.并行解碼流程 參照?qǐng)D15的流程圖對(duì)根據(jù)并行解碼程序進(jìn)行的并行解碼流程RT2進(jìn)行說(shuō)明。
當(dāng)圖像數(shù)據(jù)BL被供給過(guò)來(lái)時(shí),編碼器30開(kāi)始并行解碼流程RT2,將供給過(guò)來(lái)的比 特流BSw依次存入存儲(chǔ)器32中,然后進(jìn)入步驟SPll。 在步驟SPll中,解碼器30將存儲(chǔ)器32中的待處理的固定長(zhǎng)度編碼塊VLx的起始 端和結(jié)束端設(shè)定為解碼起始位置。 也就是,解碼器30將固定長(zhǎng)度編碼塊VLx的起始端確定為第一可變長(zhǎng)度解碼單元 33的解碼起始位置,并且設(shè)定用于表示讀取開(kāi)始位置的開(kāi)始指針P1。另外,解碼器30將固 定長(zhǎng)度編碼塊VLx的結(jié)束端確定為第二可變長(zhǎng)度解碼單元34的解碼起始位置,并且設(shè)定開(kāi)始指針P2,然后進(jìn)入下一步驟SP13。 在步驟SP13中,解碼器30從開(kāi)始指針PI開(kāi)始在正方向上并且從開(kāi)始指針P2開(kāi) 始在反方向上從存儲(chǔ)器32讀取數(shù)據(jù),從而依次讀取待解碼的位,然后進(jìn)入下一步驟SP14。
在步驟SP14中,通過(guò)參照VLD表,解碼器30從待解碼的位生成解碼數(shù)據(jù),然后進(jìn) 行下一步驟SP15。 在步驟SP15中,解碼器30判斷在所有的可變長(zhǎng)度解碼單元中,是否已經(jīng)完成了待 處理的固定長(zhǎng)度編碼塊VLx的解碼數(shù)據(jù)的生成。 如果得到的是否定結(jié)果("否"),則說(shuō)明在固定長(zhǎng)度編碼塊VLx中還存在應(yīng)當(dāng)進(jìn) 行可變長(zhǎng)度解碼的可變長(zhǎng)度編碼。此時(shí),解碼器30返回步驟SP13,從通過(guò)將開(kāi)始指針Pl和 P2移動(dòng)待解碼的位數(shù)即移動(dòng)在步驟SP14中用于生成解碼數(shù)據(jù)的待解碼的位數(shù)而獲得的位 置起,開(kāi)始對(duì)待解碼的位進(jìn)行讀取,然后繼續(xù)進(jìn)行處理。 相反,如果在步驟SP15中得到的是肯定結(jié)果("是"),則解碼器30使前半解碼數(shù) 據(jù)BBa和后半解碼數(shù)據(jù)BBb結(jié)合起來(lái),從而生成解碼塊。然后,解碼器30將新生成的解碼 塊和先前生成的解碼塊結(jié)合起來(lái),從而生成圖像數(shù)據(jù)BL,然后進(jìn)入結(jié)束步驟,從而完成了并 行解碼處理。 1-4.操作和效果 在上述的結(jié)構(gòu)中,編碼器10將圖像數(shù)據(jù)BL分成作為多個(gè)數(shù)據(jù)塊的前半塊DBa和 后半塊DBb。編碼器10對(duì)前半塊DBa和后半塊DBb進(jìn)行可變長(zhǎng)度編碼,從而生成可變長(zhǎng)度 編碼序列。 編碼器10將前半可變長(zhǎng)度編碼序列VLa和后半可變長(zhǎng)度編碼序列VLb,即由可 變長(zhǎng)度編碼單元13生成的這兩個(gè)可變長(zhǎng)度編碼序列結(jié)合起來(lái),從而生成固定長(zhǎng)度編碼塊 VLx,作為要從起始端和結(jié)束端并行地進(jìn)行可變長(zhǎng)度解碼的編碼塊。此時(shí),編碼器10對(duì)固定 長(zhǎng)度編碼塊VLx進(jìn)行排列,從而生成使得固定長(zhǎng)度編碼塊VLx的邊界能夠被識(shí)別的比特流 BSw。 通常,如果并行地進(jìn)行對(duì)可變長(zhǎng)度編碼的可變長(zhǎng)度解碼處理,則可以在比特流中 僅包含用于表示解碼起始位置的解碼起始位置信息。如果僅包含解碼起始位置信息,則對(duì) 于一個(gè)解碼起始位置需要包含一個(gè)解碼起始位置信息。 由于本發(fā)明實(shí)施例的編碼器10基于固定長(zhǎng)度編碼塊VLx的邊界從固定長(zhǎng)度編碼 塊VLx的起始端和結(jié)束端開(kāi)始進(jìn)行解碼,因此,對(duì)于一個(gè)作為固定長(zhǎng)度編碼塊VLx的邊界的 解碼起始位置信息就可以指定兩個(gè)解碼起始位置。因而,編碼器10能夠減少比特流BSw中 所包含的解碼起始位置信息的信息量,并且能夠抑制因?yàn)樵摻獯a起始位置信息而導(dǎo)致的編 碼量的增加。 另外,編碼器10將編碼塊的編碼長(zhǎng)度設(shè)定為固定長(zhǎng)度,以便對(duì)編碼塊的邊界進(jìn)行 識(shí)別。 因此,即使當(dāng)解碼器不檢測(cè)用于表示邊界的信息時(shí),編碼器10也能夠僅基于編碼 長(zhǎng)度來(lái)指定解碼起始位置。 編碼器10將緩沖數(shù)據(jù)DD插入在前半可變長(zhǎng)度編碼序列VLa與后半可變長(zhǎng)度編碼 序列VLb之間,從而固定編碼長(zhǎng)度并生成固定長(zhǎng)度編碼塊VLx。 因此,即使當(dāng)不對(duì)前半可變長(zhǎng)度編碼序列VLa和后半可變長(zhǎng)度編碼序列VLb的編碼量進(jìn)行明顯的調(diào)整時(shí),編碼器10也能夠用固定編碼長(zhǎng)度生成固定長(zhǎng)度編碼塊VLx,并且 降低了處理負(fù)荷。 編碼器10將分布在前半部分中的前半可變長(zhǎng)度編碼序列VLa從起始端起按照正 方向進(jìn)行排列,將分布在后半部分中的后半可變長(zhǎng)度編碼序列VLb從結(jié)束端起按照逆方向 進(jìn)行排列,從而生成固定長(zhǎng)度編碼塊VLx。 因此,編碼器10使得解碼器沿正方向從起始端起讀取出前半可變長(zhǎng)度編碼序列 VLa,沿反方向從結(jié)束端起讀取出后半部分的后半可變長(zhǎng)度編碼序列VLb,并且不需對(duì)后半 可變長(zhǎng)度編碼序列VLb進(jìn)行重新排列。 解碼器30具有多個(gè)由可變長(zhǎng)度編碼組成的固定長(zhǎng)度編碼塊VLx,并且接收所生成 的使固定長(zhǎng)度編碼塊VLx之間的邊界能夠被識(shí)別的比特流BSw。解碼器30基于固定長(zhǎng)度編 碼塊VLx的邊界來(lái)指定固定長(zhǎng)度編碼塊VLx的起始端和結(jié)束端。另外,解碼器30從固定長(zhǎng) 度編碼塊VLx的起始端和結(jié)束端起并行地開(kāi)始對(duì)比特流BSw進(jìn)行作為可變長(zhǎng)度解碼操作的 解碼數(shù)據(jù)生成處理。 因此,由于解碼器30使用固定長(zhǎng)度編碼塊VLx的起始端和結(jié)束端作為解碼起始 位置來(lái)并行地進(jìn)行解碼數(shù)據(jù)生成處理,因而可以對(duì)比特流BSw進(jìn)行高速的可變長(zhǎng)度解碼處理。 解碼器30使用同一解碼表(即,VLD表),對(duì)由從起始端起按照正方向進(jìn)行排列的 前半可變長(zhǎng)度編碼序列VLa和從結(jié)束端起按照逆方向進(jìn)行排列的后半可變長(zhǎng)度編碼序列 VLb組成的固定長(zhǎng)度編碼塊VLx進(jìn)行解碼數(shù)據(jù)生成處理。 解碼器30能夠沿反方向?qū)蟀肟勺冮L(zhǎng)度編碼序列VLb進(jìn)行讀取,從而按照正確的 順序讀取出后半可變長(zhǎng)度編碼序列VLb。因此,即使當(dāng)沒(méi)有特意準(zhǔn)備鏡像VLD表時(shí),解碼器 30也能夠使用與前半可變長(zhǎng)度編碼序列VLa共用的VLD表,對(duì)后半可變長(zhǎng)度編碼序列VLb 進(jìn)行解碼數(shù)據(jù)生成處理。 根據(jù)上述的結(jié)構(gòu),編碼器10將圖像數(shù)據(jù)BL分成多個(gè)處理塊單位,把通過(guò)可變長(zhǎng)度 編碼處理而生成的兩個(gè)可變長(zhǎng)度編碼序列(前半可變長(zhǎng)度編碼序列VLa和后半可變長(zhǎng)度編 碼序列VLb)結(jié)合起來(lái),因而生成作為一個(gè)編碼塊的固定長(zhǎng)度編碼塊VLx。另外,編碼器IO 生成使固定長(zhǎng)度編碼塊VLx之間的邊界能夠被識(shí)別的比特流BSw。 因此,解碼器30能夠根據(jù)固定長(zhǎng)度編碼塊VLx的邊界來(lái)指定兩個(gè)解碼起始位置 (前半可變長(zhǎng)度編碼序列VLa的起始端和后半鏡像可變長(zhǎng)度編碼序列VLm的結(jié)束端),并且 進(jìn)行并行解碼數(shù)據(jù)生成處理。 因此,本發(fā)明能夠?qū)崿F(xiàn)可高速地進(jìn)行可變長(zhǎng)度解碼處理的編碼器、編碼方法、記錄
有編碼程序的記錄介質(zhì)、解碼器、解碼方法以及記錄有解碼程序的記錄介質(zhì)。 2、第二實(shí)施例 圖16 圖28說(shuō)明了本發(fā)明的第二實(shí)施例,其中,與圖5 圖15所示第一實(shí)施例 中對(duì)應(yīng)的部分用相同的附圖標(biāo)記表示。第二實(shí)施例的編碼器50在生成比特流BSr的方法 上方面不同于第一實(shí)施例。
2-1.編碼器的結(jié)構(gòu) 當(dāng)圖像數(shù)據(jù)BL被供給過(guò)來(lái)時(shí),編碼器50對(duì)該圖像數(shù)據(jù)進(jìn)行編碼處理,從而生成由 可變長(zhǎng)度編碼組成的比特流BSr。
13
如圖16所示,圖像數(shù)據(jù)BL采用4:2:2格式,并且與256個(gè)像素對(duì)應(yīng)的亮度數(shù)據(jù)Y 以及色差數(shù)據(jù)Cb和Cr被用作處理塊單位。通過(guò)按照頻段對(duì)亮度值進(jìn)行劃分,亮度數(shù)據(jù)被 分成由高通分量組成的亮度數(shù)據(jù)Ya和由低通分量組成的亮度數(shù)據(jù)Yb。
如圖17所示,編碼器50的輸入端子51將輸入過(guò)來(lái)的圖像數(shù)據(jù)供給到分離單元 52。如圖18所示,分離單元52將供給過(guò)來(lái)的具有多個(gè)處理塊的圖像數(shù)據(jù)BL分成亮度數(shù)據(jù) Ya和Yb以及色差數(shù)據(jù)Cb和Cr,從而依次生成數(shù)據(jù)塊DBa DBd。 分離單元52(見(jiàn)圖17)將數(shù)據(jù)塊DBa、DBb、DBc和DBd分別供給到第一可變長(zhǎng)度編
碼單元61、第二可變長(zhǎng)度編碼單元62、第三可變長(zhǎng)度編碼單元63和第四可變長(zhǎng)度編碼單元
64。下文中,將這些可變長(zhǎng)度編碼單元統(tǒng)稱為可變長(zhǎng)度編碼單元61 64。 如圖19所示,可變長(zhǎng)度編碼單元61 64對(duì)數(shù)據(jù)塊DBa DBd進(jìn)行VLC處理,分
別生成可變長(zhǎng)度編碼序列VLa VLd,并且將這些可變長(zhǎng)度編碼序列VLa VLd供給到比特
流生成單元54。 比特流生成單元54根據(jù)可變長(zhǎng)度編碼序列VLa VLd生成嵌套塊VLy,并且對(duì)嵌 套塊VLy進(jìn)行排列,從而生成比特流BSr。 如圖20A所示,可變長(zhǎng)度編碼序列VLa包括128個(gè)可變長(zhǎng)度編碼序列a0 a127。 如果將數(shù)字"k O"賦予給可變長(zhǎng)度編碼序列VLa中各自具有1位(l[bit])的編碼,則可 以將可變長(zhǎng)度編碼序列VLa表示為如圖20B所示。 類似地,如果將數(shù)字"l 0"、"m O"和"n O"賦予給可變長(zhǎng)度編碼序列VLb VLd中各自具有1位的編碼,則可以將可變長(zhǎng)度編碼序列VLb VLd示為如圖20C 圖20E 所示。 如圖21A 圖21E所示,比特流生成單元54逐位地(l[bit]by l[bit])從首位提 取數(shù)據(jù),并將提取的數(shù)據(jù)按照可變長(zhǎng)度編碼序列VLa、 VLb、 VLc和VLd的順序進(jìn)行排列。另 外,比特流生成單元54逐位地從第二位提取數(shù)據(jù),并將提取的數(shù)據(jù)按照可變長(zhǎng)度編碼序列 VLa、 VLb、 VLc和VLd的順序進(jìn)行排列。類似地,比特流生成單元54對(duì)可變長(zhǎng)度編碼序列 VLa VLd的所有編碼進(jìn)行重新排列。 因而,在嵌套塊VLy中,可變長(zhǎng)度編碼序列VLa、VLb、VLc和VLd的數(shù)據(jù)以嵌套形式 排列著,如a[k]、b[l]、c[m]、d[n]、a[k-l]、b[l-l]、c[m-l]、d[n-l]、…、a[x] 、 b [y] 、 c [z] 和d[v]。其中,x、y、z和v分別表示變數(shù)。下文中,把重復(fù)出現(xiàn)的一套位組(例如,a[k]、 b[l]、c[m]和d[n]構(gòu)成一套)稱為重復(fù)位。 此處,可變長(zhǎng)度編碼序列VLa VLd的編碼長(zhǎng)度是不同的。因此,與其他可變長(zhǎng)度 編碼序列相比,編碼長(zhǎng)度較短的可變長(zhǎng)度編碼序列的數(shù)據(jù)會(huì)較早用完。在這種情況下,如圖 21F所示,比特流生成單元54繼續(xù)對(duì)其余可變長(zhǎng)度編碼序列的數(shù)據(jù)以彼此嵌套的方式進(jìn)行 重新排列。 也就是,在將可變長(zhǎng)度編碼序列VLc的末位數(shù)據(jù)c[O]進(jìn)行排列之后就已經(jīng)完成了 對(duì)可變長(zhǎng)度編碼序列VLc的所有數(shù)據(jù)的重新排列時(shí),比特流生成單元54繼續(xù)僅對(duì)其余可變 長(zhǎng)度編碼序列VLa、VLb和VLd的數(shù)據(jù)以嵌套形式進(jìn)行重新排列。因而,在嵌套塊VLy中,連 續(xù)排列的是由a[x]、b[y]和d[v]組成的重復(fù)位。 接著,在將可變長(zhǎng)度編碼序列VLd的末位數(shù)據(jù)d[O]進(jìn)行排列之后就已經(jīng)完成了對(duì) 可變長(zhǎng)度編碼序列VLd的所有數(shù)據(jù)的重新排列時(shí),比特流生成單元54繼續(xù)僅對(duì)其余可變長(zhǎng)
14度編碼序列VLa和VLb的數(shù)據(jù)交替進(jìn)行重新排列。因而,在嵌套塊VLy中,連續(xù)排列的是由 a[x]和b[y]組成的重復(fù)位。 接著,在將可變長(zhǎng)度編碼序列VLb的末位數(shù)據(jù)b[O]進(jìn)行排列之后就已經(jīng)完成了對(duì) 可變長(zhǎng)度編碼序列VLb的所有數(shù)據(jù)的重新排列時(shí),比特流生成單元54繼續(xù)僅對(duì)其余可變長(zhǎng) 度編碼序列VLa的數(shù)據(jù)進(jìn)行重新排列。因而,在嵌套塊VLy中,連續(xù)排列的都是a [x], 一直 到出現(xiàn)a[O]。 編碼器50使可變長(zhǎng)度編碼序列VLa、 VLb、 VLc和VLd的各編碼逐位地以嵌套形式 進(jìn)行交替,從而生成嵌套塊VLy,并且生成具有連續(xù)的各嵌套塊Vly的比特流BSr。
因此,編碼器50能夠以預(yù)定的記錄間隔(即,以4位的間隔)對(duì)可變長(zhǎng)度編碼序 列VLa、 VLb、 VLc和VLd的數(shù)據(jù)進(jìn)行排列。
2-2.解碼器的結(jié)構(gòu) 如圖22所示,當(dāng)比特流BSr被供給過(guò)來(lái)時(shí),解碼器80對(duì)比特流BSr進(jìn)行并行解碼 處理即可變長(zhǎng)度解碼處理,從而生成圖像數(shù)據(jù)BL。 當(dāng)由嵌套塊VLy組成的比特流BSr被供給過(guò)來(lái)時(shí),解碼器80的輸入端子81將該 比特流BSr供給到存儲(chǔ)器82。存儲(chǔ)器82根據(jù)讀取控制單元83的控制來(lái)依次存儲(chǔ)供給過(guò)來(lái) 的嵌套塊VLy。 解碼器80具有包括四個(gè)可變長(zhǎng)度解碼單元91 94(即,第一可變長(zhǎng)度解碼單元 91、第二可變長(zhǎng)度解碼單元92、第三可變長(zhǎng)度解碼單元93和第四可變長(zhǎng)度解碼單元94)和 讀取控制單元83的并行解碼單元90。根據(jù)讀取控制單元83的控制,可變長(zhǎng)度解碼單元 91 94分別對(duì)可變長(zhǎng)度編碼序列VLa、 VLb、 VLc和VLd的數(shù)據(jù)進(jìn)行解碼。
如上所述,在嵌套塊VLy中,可變長(zhǎng)度編碼序列VLa、 VLb、 VLc和VLd的數(shù)據(jù)是以 嵌套形式被記錄下來(lái)的。讀取控制單元83從記錄有嵌套塊VLy的地址生成解碼起始位置 信息和讀取間隔信息,并且將這些信息供給到可變長(zhǎng)度解碼單元91 94。另外,解碼起始 位置信息是用于表示存儲(chǔ)器82的某一地址的信息,可變長(zhǎng)度解碼單元91 94在該地址處 開(kāi)始對(duì)嵌套塊VLy進(jìn)行可變長(zhǎng)度解碼。另外,讀取間隔信息指的是可變長(zhǎng)度解碼單元91 94對(duì)數(shù)據(jù)進(jìn)行讀取的間隔。 此時(shí),讀取控制單元83分別將用于表示待處理的嵌套塊VLy的首位、從首位算起 的第二位、從首位算起的第三位和從首位算起的第四位的解碼起始位置信息供給到可變長(zhǎng) 度解碼單元91 94。另外,讀取控制單元83分別將表示"4"的讀取間隔信息供給到可變 長(zhǎng)度解碼單元91 94。 如圖23A和圖23B所示,根據(jù)解碼起始位置信息,第一可變長(zhǎng)度解碼單元91把用 于表示讀取開(kāi)始位置的開(kāi)始指針Pl設(shè)定在存儲(chǔ)于存儲(chǔ)器82中的嵌套塊VLy的首位處,并 且從開(kāi)始指針P1開(kāi)始以4位(4[bits])的間隔讀取數(shù)據(jù)。也就是,第一可變長(zhǎng)度解碼單元 91僅將源自可變長(zhǎng)度編碼序列VLa的數(shù)據(jù)作為待解碼的位進(jìn)行讀取,并且暫時(shí)將讀取到的 數(shù)據(jù)存入緩沖存儲(chǔ)器(未圖示)中。 如圖23C和圖23D所示,根據(jù)解碼起始位置信息,第二可變長(zhǎng)度解碼單元92把開(kāi) 始指針P2設(shè)定在從存儲(chǔ)于存儲(chǔ)器82中的嵌套塊VLy的首位算起的第二位處,并且從開(kāi)始 指針P2開(kāi)始以4位的間隔讀取數(shù)據(jù)。也就是,第二可變長(zhǎng)度解碼單元92僅將源自可變長(zhǎng) 度編碼序列VLb的數(shù)據(jù)作為待解碼的位進(jìn)行讀取,并且暫時(shí)將讀取到的數(shù)據(jù)存入緩沖存儲(chǔ)器(未圖示)中。 盡管未圖示,但是根據(jù)解碼起始位置信息,第三可變長(zhǎng)度解碼單元93把開(kāi)始指針 P3設(shè)定在從存儲(chǔ)于存儲(chǔ)器82中的嵌套塊VLy的首位算起的第三位處,并且從開(kāi)始指針P3 開(kāi)始以4位的間隔讀取數(shù)據(jù)。也就是,第三可變長(zhǎng)度解碼單元93僅將源自可變長(zhǎng)度編碼序 列VLc的數(shù)據(jù)作為待解碼的位進(jìn)行讀取,并且暫時(shí)將讀取到的數(shù)據(jù)存入緩沖存儲(chǔ)器(未圖 示)中。 盡管未圖顯示,但是根據(jù)解碼起始位置信息,第四可變長(zhǎng)度解碼單元94把開(kāi)始指 針P4設(shè)定在從存儲(chǔ)于存儲(chǔ)器82中的嵌套塊VLy的首位算起的第四位處,并且從開(kāi)始指針 P4開(kāi)始以4位的間隔讀取數(shù)據(jù)。也就是,第四可變長(zhǎng)度解碼單元94僅將源自可變長(zhǎng)度編碼 序列VLd的數(shù)據(jù)作為待解碼的位進(jìn)行讀取,并且暫時(shí)將讀取到的數(shù)據(jù)存入緩沖存儲(chǔ)器(未 圖示)中。 接著,如圖24A所示,第一可變長(zhǎng)度解碼單元91使用VLD表對(duì)待解碼的位進(jìn)行可 變長(zhǎng)度解碼,并且生成解碼數(shù)據(jù)。第一可變長(zhǎng)度解碼單元91將開(kāi)始指針Pl移動(dòng)用于解碼 的數(shù)據(jù)的位數(shù)(即,2位),并且從開(kāi)始指針Pl開(kāi)始以4位的間隔讀取作為待解碼的位的數(shù) 據(jù)。 如圖24B 圖24D所示,類似地,第二可變長(zhǎng)度解碼單元92、第三可變長(zhǎng)度解碼單 元93和第四可變長(zhǎng)度解碼單元94使用VLD表對(duì)待解碼的位進(jìn)行可變長(zhǎng)度解碼,并且生成 解碼數(shù)據(jù)。 第二可變長(zhǎng)度解碼單元92、第三可變長(zhǎng)度解碼單元93和第四可變長(zhǎng)度解碼單元 94分別將開(kāi)始指針P2、 P3和P4移動(dòng)僅用于解碼的位數(shù)(即,2位、6位和2位),并從各自 的開(kāi)始指針開(kāi)始以4位的間隔讀取作為待解碼的位的數(shù)據(jù)。 然后,可變長(zhǎng)度解碼單元91 94類似地讀取待解碼的位,并且繼續(xù)進(jìn)行解碼數(shù)據(jù) 生成處理。另外,將解碼數(shù)據(jù)暫時(shí)存儲(chǔ)在可變長(zhǎng)度解碼單元91 94中所包含的解碼數(shù)據(jù) 存儲(chǔ)器(未圖示)中。 如圖24E和圖24F所示,在嵌套塊VLy的結(jié)束部分中,與各可變長(zhǎng)度編碼序列 VLa VLd對(duì)應(yīng)的數(shù)據(jù)的記錄間隔有所改變。 也就是,在嵌套塊VLy中,如果已經(jīng)完成了基于可變長(zhǎng)度編碼序列VLc的數(shù)據(jù),則
將基于其余可變長(zhǎng)度編碼序列VLa、 VLb和VLd的數(shù)據(jù)的記錄間隔從"4"改變?yōu)?3"。 在嵌套塊VLy中,如果已經(jīng)完成了基于可變長(zhǎng)度編碼序列VLd的數(shù)據(jù),則將基于其
余可變長(zhǎng)度編碼序列VLa和VLb的數(shù)據(jù)的記錄間隔從"3"改變?yōu)?2"。 在嵌套塊VLy中,如果已經(jīng)完成了可變長(zhǎng)度編碼序列VLb的數(shù)據(jù),則將基于其余可
變長(zhǎng)度編碼序列VLa的數(shù)據(jù)的記錄間隔從"2"改變?yōu)?1",并且對(duì)可變長(zhǎng)度編碼序列VLa進(jìn)
行連續(xù)記錄。 因此,如果一直以讀取間隔"4"對(duì)待解碼的位進(jìn)行讀取,直到嵌套塊VLy的結(jié)束部 分,則可變長(zhǎng)度解碼單元91 94不會(huì)生成基于可變長(zhǎng)度編碼序列VLa VLd的解碼數(shù)據(jù)。
根據(jù)在嵌套塊VLy的結(jié)束部分處的記錄間隔的改變,解碼器80從存儲(chǔ)器82中讀 取待解碼的位,并且執(zhí)行用于實(shí)現(xiàn)再次生成解碼數(shù)據(jù)的解碼數(shù)據(jù)生成處理的結(jié)束處理。
具體而言,如果已經(jīng)完成了生成第128次解碼數(shù)據(jù)的處理,則與第127次解碼數(shù)據(jù) 類似,可變長(zhǎng)度解碼單元91 94將各自的開(kāi)始指針移動(dòng)用于解碼數(shù)據(jù)的位數(shù)。
16
此時(shí),讀取控制單元83確認(rèn)各開(kāi)始指針的位置,并且選擇在最前地址處的開(kāi)始指 針。例如,當(dāng)選擇了與可變長(zhǎng)度編碼序列VLc對(duì)應(yīng)的開(kāi)始指針P3時(shí),讀取控制單元83將位 于開(kāi)始指針P3之前4位讀取間隔的地址指定為已完成了解碼數(shù)據(jù)生成處理的可變長(zhǎng)度編 碼序列VLc的最后數(shù)據(jù)的所在位置(下文中,稱為先前完成地址)。 讀取控制單元83將先前完成地址之后的讀取間隔改變?yōu)?3",然后使用與可變長(zhǎng) 度編碼序列VLa、 VLb和VLd對(duì)應(yīng)的可變長(zhǎng)度解碼單元91 、92和94再次進(jìn)行解碼數(shù)據(jù)生成 處理。 S卩,對(duì)于在由包括具有可變長(zhǎng)度編碼序列VLc的先前完成地址的重復(fù)位的可變長(zhǎng) 度編碼所生成的解碼數(shù)據(jù)(下文中,稱為先前完成解碼數(shù)據(jù))之后生成的解碼數(shù)據(jù),第一可 變長(zhǎng)度解碼單元91使得該解碼數(shù)據(jù)無(wú)效。然后,第一可變長(zhǎng)度解碼單元91從先前完成解 碼數(shù)據(jù)開(kāi)始再次進(jìn)行解碼數(shù)據(jù)生成處理。 例如,第一可變長(zhǎng)度解碼單元91從第118次開(kāi)始再次進(jìn)行解碼數(shù)據(jù)生成處理,第 二可變長(zhǎng)度解碼單元92從第124次開(kāi)始再次進(jìn)行解碼數(shù)據(jù)生成處理,第四可變長(zhǎng)度解碼單 元94從第127次開(kāi)始再次進(jìn)行解碼數(shù)據(jù)生成處理。 解碼控制單元83將表示可變長(zhǎng)度編碼序列VLc的先前完成地址的先前完成地址 信息供給到可變長(zhǎng)度解碼單元91 、92和94。可變長(zhǎng)度解碼單元91 、92和94使得先前完成 解碼數(shù)據(jù)和之后生成的解碼數(shù)據(jù)無(wú)效。 例如,如果將可變長(zhǎng)度編碼序列VLc的先前完成地址用于基于可變長(zhǎng)度編碼序列 VLa的第118次解碼數(shù)據(jù)生成處理所生成的解碼數(shù)據(jù),則第一可變長(zhǎng)度解碼單元91使得在 第118次之后生成的解碼數(shù)據(jù)無(wú)效。類似地,第二可變長(zhǎng)度解碼單元92使得在第124次解 碼數(shù)據(jù)生成處理之后生成的解碼數(shù)據(jù)無(wú)效。第四可變長(zhǎng)度解碼單元94使得在第127次解 碼數(shù)據(jù)生成處理之后生成的解碼數(shù)據(jù)無(wú)效。 可變長(zhǎng)度解碼單元91、92和94分別存儲(chǔ)在解碼數(shù)據(jù)生成處理時(shí)所設(shè)定的開(kāi)始指 針的位置??勺冮L(zhǎng)度解碼單元91、92和94分別使各自的開(kāi)始指針?lè)祷氐皆谏上惹巴瓿?解碼數(shù)據(jù)的解碼數(shù)據(jù)生成處理時(shí)所設(shè)定的位置處。 S卩,第一可變長(zhǎng)度解碼單元91使開(kāi)始指針P1返回到第118次解碼數(shù)據(jù)生成處理 時(shí)的位置處。第二可變長(zhǎng)度解碼單元92使開(kāi)始指針P2返回到第124次解碼數(shù)據(jù)生成處理 時(shí)的位置處。第四可變長(zhǎng)度解碼單元94使開(kāi)始指針P4返回到第127次解碼數(shù)據(jù)生成處理 時(shí)的位置處。 然后,讀取控制單元83將讀取間隔信息供給到可變長(zhǎng)度解碼單元91 、92和94,該 讀取間隔信息表示到先前完成地址為止,讀取間隔被設(shè)定為"4",并且從超過(guò)先前完成地 址的下一個(gè)重復(fù)位開(kāi)始,讀取間隔被改變?yōu)?3"。 如圖25A和圖25B所示,在有可變長(zhǎng)度編碼序列VLc時(shí),第一可變長(zhǎng)度解碼單元91 以4位的間隔讀取數(shù)據(jù),但是,在沒(méi)有了可變長(zhǎng)度編碼序列VLc之后,第一可變長(zhǎng)度解碼單 元91以3位的間隔讀取數(shù)據(jù)。 因而,第一可變長(zhǎng)度解碼單元91可以僅將可變長(zhǎng)度編碼序列VLa讀取為待解碼的 位,并且可以基于可變長(zhǎng)度編碼序列VLa來(lái)生成解碼數(shù)據(jù)。 類似地,從在讀取控制單元83控制下用于生成先前完成解碼數(shù)據(jù)的解碼數(shù)據(jù)生 成處理開(kāi)始,可變長(zhǎng)度解碼單元92和94再次進(jìn)行解碼數(shù)據(jù)生成處理。
用于生成先前完成解碼數(shù)據(jù)的解碼數(shù)據(jù)生成處理的次數(shù)根據(jù)各可變長(zhǎng)度編碼序 列等的長(zhǎng)度而不同。因此,對(duì)于各個(gè)可變長(zhǎng)度解碼單元91、92和94來(lái)說(shuō),再次進(jìn)行的解碼 數(shù)據(jù)生成處理的次數(shù)不同。 第一可變長(zhǎng)度解碼單元91從第118次開(kāi)始要進(jìn)行11次剩余解碼數(shù)據(jù)生成處理。 第二可變長(zhǎng)度解碼單元92從第124次開(kāi)始要進(jìn)行5次剩余解碼數(shù)據(jù)生成處理,第四可變長(zhǎng) 度解碼單元94從第127次開(kāi)始要進(jìn)行2次剩余解碼數(shù)據(jù)生成處理。 因此,通過(guò)兩次解碼數(shù)據(jù)生成處理,第四可變長(zhǎng)度解碼單元94完成了第128次解 碼數(shù)據(jù)生成處理。此時(shí),讀取控制單元83將可變長(zhǎng)度編碼序列VLd的最后地址與分別對(duì)應(yīng) 于可變長(zhǎng)度解碼單元91和92的開(kāi)始指針Pl和開(kāi)始指針P2進(jìn)行比較。
例如,如圖25C所示,如果開(kāi)始指針P2位于可變長(zhǎng)度編碼序列VLd的最后地址 d[O]之前,則可以更早完成可變長(zhǎng)度編碼序列VLb的數(shù)據(jù)。 因此,讀取控制單元83使可變長(zhǎng)度解碼單元91和92繼續(xù)進(jìn)行解碼數(shù)據(jù)生成處 理,直到分別對(duì)應(yīng)于其它可變長(zhǎng)度解碼單元91和92的開(kāi)始指針Pl和P2都超出可變長(zhǎng)度 編碼序列VLd的最后地址。 此時(shí),如圖25D所示,當(dāng)開(kāi)始指針Pl和P2都超出了可變長(zhǎng)度編碼序列VLd的最后 地址時(shí),讀取控制單元83將可變長(zhǎng)度編碼序列VLd的最后地址識(shí)別為先前完成地址。
另外,如果在開(kāi)始指針Pl和P2中的任何一個(gè)沒(méi)有超出可變長(zhǎng)度編碼序列VLd的 最后地址的狀態(tài)下完成了第128次解碼數(shù)據(jù)生成處理,則讀取控制單元83將先前完成的可 變長(zhǎng)度編碼序列的最后地址指定為先前完成地址。 如圖26A和圖26B所示,在讀取控制單元83的控制下,第一可變長(zhǎng)度解碼單元91 將開(kāi)始指針P1移動(dòng)到用于生成先前完成解碼數(shù)據(jù)的解碼數(shù)據(jù)生成處理的位置處。另外,第 一可變長(zhǎng)度解碼單元91使得先前完成解碼數(shù)據(jù)之后的解碼數(shù)據(jù)無(wú)效,將先前完成地址之 后的重復(fù)位的讀取間隔改變?yōu)?2",并且繼續(xù)進(jìn)行解碼數(shù)據(jù)生成處理。對(duì)于第二可變長(zhǎng)度解 碼單元92,情況也是如此。 如圖26C和圖26D所示,當(dāng)使用第二可變長(zhǎng)度解碼單元92完成了第128次解碼數(shù) 據(jù)生成處理時(shí),類似地,讀取控制單元83指定先前完成地址。另外,在讀取控制單元83的 控制下,第一可變長(zhǎng)度解碼單元91將開(kāi)始指針Pl移動(dòng)到用于生成先前完成解碼數(shù)據(jù)的解 碼數(shù)據(jù)生成處理的位置處。另外,第一可變長(zhǎng)度解碼單元91使得先前完成解碼數(shù)據(jù)之后的 解碼數(shù)據(jù)無(wú)效,將先前完成地址之后的重復(fù)位的讀取間隔改變?yōu)?1 ",并且繼續(xù)進(jìn)行解碼數(shù) 據(jù)生成處理。 如果使用第一可變長(zhǎng)度解碼單元91完成了第128次解碼數(shù)據(jù)生成處理,則讀取控 制單元83根據(jù)讀取間隔"1 "將可變長(zhǎng)度編碼序列VLa的末位識(shí)別為嵌套塊VLy的末位。讀 取控制單元83完成嵌套塊VLy的并行解碼處理,此時(shí),開(kāi)始對(duì)下一個(gè)嵌套塊VLy的處理。
解碼器80為各個(gè)可變長(zhǎng)度編碼VLa VLd讀取由采用嵌套形式的多個(gè)可變長(zhǎng)度 編碼序列VL組成的比特流BSr。因此,解碼器80能夠同時(shí)對(duì)多個(gè)可變長(zhǎng)度編碼序列VLa VLd進(jìn)行解碼從而生成多段解碼數(shù)據(jù),并且能夠高速地進(jìn)行可變長(zhǎng)度解碼處理。
2-3、具體處理流程
2-3-1 、編碼流程 下面使用圖27的流程圖對(duì)根據(jù)編碼程序進(jìn)行的編碼流程RT3進(jìn)行說(shuō)明。
當(dāng)圖像數(shù)據(jù)BL被供給過(guò)來(lái)時(shí),編碼器50開(kāi)始編碼流程RT3,并且進(jìn)入步驟SP31。
在步驟SP31中,編碼器50將圖像數(shù)據(jù)BL分成作為處理塊單位的多個(gè)數(shù)據(jù)塊DB, 然后進(jìn)入下一步驟SP32。 在步驟SP32中,編碼器50對(duì)分離而成的各單位(即,各數(shù)據(jù)塊DB)中的圖像數(shù) 據(jù)BL進(jìn)行可變長(zhǎng)度編碼,從而生成多個(gè)可變長(zhǎng)度編碼序列VLa VLd,然后進(jìn)入下一步驟 SP33。 在步驟SP33中,編碼器50對(duì)多個(gè)可變長(zhǎng)度編碼序列VLa VLd以嵌套形式進(jìn)行逐 位排列,從而生成嵌套塊VLy。編碼器50將新生成的嵌套塊VLy和先前生成的嵌套塊VLy 結(jié)合起來(lái),從而生成比特流BSr,并且進(jìn)入結(jié)束步驟,從而完成了編碼流程RT3。
2-3-2 、并行解碼流程 下面使用圖28對(duì)根據(jù)并行解碼程序進(jìn)行的并行解碼流程RT4進(jìn)行說(shuō)明。 當(dāng)比特流BSr被供給過(guò)來(lái)時(shí),解碼器80開(kāi)始并行解碼流程RT4,將供給過(guò)來(lái)的比特
流BSr依次存儲(chǔ)到存儲(chǔ)器82中,并且進(jìn)入下一步驟SP41。 在步驟SP41中,解碼器80把用于構(gòu)成嵌套塊VLy的可變長(zhǎng)度編碼序列VL的數(shù)量 設(shè)定為讀取間隔,然后進(jìn)入下一步驟SP42。 在步驟SP42中,解碼器80基于存儲(chǔ)器82中的待處理的嵌套塊VLy的起始端來(lái)設(shè) 定解碼起始位置,然后進(jìn)入步驟SP43。 也就是,解碼器80將嵌套塊VLy的首位確定為第一可變長(zhǎng)度解碼單元91的解碼 起始位置,并且設(shè)定開(kāi)始指針P1。另外,解碼器80將嵌套塊VLy的第二位、第三位和第四 位分別確定為可變長(zhǎng)度解碼單元92、93和94的解碼起始位置,并且設(shè)定開(kāi)始指針P2、P3和 P4。 在步驟SP43中,解碼器80利用可變長(zhǎng)度解碼單元91 94從各自的開(kāi)始指針開(kāi) 始按照讀取間隔來(lái)讀取數(shù)據(jù),并且將讀取到的數(shù)據(jù)設(shè)定為待解碼的位,然后進(jìn)入步驟SP44。
在步驟SP44中,通過(guò)參照VLD表,解碼器80利用可變長(zhǎng)度解碼單元91 94從待 解碼的位生成解碼數(shù)據(jù),然后進(jìn)入步驟SP45。 在步驟SP45中,解碼器80判斷是否完成了這幾個(gè)可變長(zhǎng)度解碼單元91 94的 解碼數(shù)據(jù)生成處理,然后,如果得到的是否定結(jié)果,則返回步驟SP42。 在步驟SP42中,解碼器80將開(kāi)始指針移動(dòng)用于在步驟SP44中生成解碼數(shù)據(jù)的待 解碼的位數(shù),然后進(jìn)入SP43從而繼續(xù)進(jìn)行處理。 相反地,如果在步驟SP45中得到的是肯定結(jié)果,則意味著可以改變嵌套塊VLy的 讀取間隔。此時(shí),解碼器80進(jìn)入下一步驟SP46。 在步驟SP46中,解碼器80判斷讀取間隔是否為"1"。此處,如果得到的是否定結(jié)
果,則意味著改變了記錄間隔,且因此沒(méi)有正確地生成解碼數(shù)據(jù)。此時(shí),解碼器進(jìn)入下一步 驟SP50。 在步驟SP50中,解碼器80指定用于表示在最前地址處完成了解碼數(shù)據(jù)生成處理
的可變長(zhǎng)度編碼序列的地址的先前完成地址,然后進(jìn)入下一步驟SP51。 在步驟SP51中,解碼器80使先前完成解碼數(shù)據(jù)和之后的解碼數(shù)據(jù)無(wú)效,該先前完
成解碼數(shù)據(jù)即為從具有包括先前完成地址的重復(fù)位的可變長(zhǎng)度編碼生成的解碼數(shù)據(jù),然后
進(jìn)入下一步驟SP52。
在步驟SP52中,解碼器80從先前完成地址所屬的重復(fù)位的下一位開(kāi)始將讀取間 隔減小"1",設(shè)定了讀取間隔,然后進(jìn)入下一步驟SP53。 在步驟SP53中,解碼器80使開(kāi)始指針?lè)祷氐竭M(jìn)行先前完成解碼數(shù)據(jù)的解碼處理 的位置處,返回到下一步驟SP43,然后繼續(xù)進(jìn)行其余可變長(zhǎng)度編碼序列的解碼數(shù)據(jù)生成處理。 與此相反,如果在步驟SP46中得到的是肯定結(jié)果,則意味著完成了使用所有可變 長(zhǎng)度解碼單元91 94進(jìn)行的解碼數(shù)據(jù)生成處理,并且生成了嵌套塊VLy。此時(shí),解碼器80 將新生成的嵌套塊VLy和先前生成的嵌套塊VLy連接起來(lái)從而生成圖像數(shù)據(jù)BL,進(jìn)入結(jié)束 步驟,并且完成了并行解碼流程RT4。
2-4、操作和效果 在上述的結(jié)構(gòu)中,編碼器50將圖像數(shù)據(jù)BL分成作為多個(gè)數(shù)據(jù)塊的數(shù)據(jù)塊DBa DBd,對(duì)數(shù)據(jù)塊DBa DBd進(jìn)行可變長(zhǎng)度編碼,并且生成多個(gè)可變長(zhǎng)度編碼序列VLa VLd。 編碼器50生成了這樣的比特流BSr :在該比特流BSr中,基于多個(gè)可變長(zhǎng)度編碼序列VLa VLd的數(shù)據(jù)以嵌套形式排列著。 因此,編碼器50能夠在比特流BSr的一個(gè)嵌套塊VLy中對(duì)基于可變長(zhǎng)度編碼序列 VLa VLd的數(shù)據(jù)進(jìn)行并行排列。 對(duì)于多個(gè)可變長(zhǎng)度編碼序列VLa VLd,如果基于具有較短編碼長(zhǎng)度的可變長(zhǎng)度 編碼序列的數(shù)據(jù)已經(jīng)完成了排列,則編碼器50對(duì)基于未完成數(shù)據(jù)排列的可變長(zhǎng)度編碼序 列的數(shù)據(jù)以嵌套形式進(jìn)行排列。 因此,由于編碼器50能夠僅從基于可變長(zhǎng)度編碼序列VLa VLd的數(shù)據(jù)生成比特 流BSr,因此不會(huì)由于需要增加虛擬數(shù)據(jù)等而使編碼量增加。 編碼器50對(duì)基于多個(gè)固定長(zhǎng)度編碼塊VLx的數(shù)據(jù)按照嵌套形式以作為提取數(shù)的 l位為單位逐位地(l[bit]by l[bit])進(jìn)行排列。 此處,如果編碼器將提取數(shù)設(shè)定為復(fù)數(shù),則當(dāng)完成了基于固定長(zhǎng)度編碼塊VLx的
數(shù)據(jù)的排列時(shí),要添加用于保持該提取數(shù)的虛擬數(shù)據(jù),因而會(huì)使編碼量增加。 編碼器50將提取數(shù)設(shè)定為"1",因而不必添加虛擬數(shù)據(jù),所以能夠抑制編碼量的增加。 解碼器80為各個(gè)由可變長(zhǎng)度編碼組成的可變長(zhǎng)度編碼序列VLa VLd從比特流 BSr讀取數(shù)據(jù),在該比特流BSr中,基于多個(gè)可變長(zhǎng)度編碼序列VLa VLd的數(shù)據(jù)以嵌套形 式排列著。解碼器80對(duì)多個(gè)可變長(zhǎng)度編碼序列VLa VLd并行地進(jìn)行可變長(zhǎng)度解碼,從而 生成解碼數(shù)據(jù)。 因此,由于解碼器80能夠?qū)Χ鄠€(gè)可變長(zhǎng)度編碼序列VLa VLd并行地進(jìn)行可變長(zhǎng) 度解碼,因此可以實(shí)現(xiàn)高速的可變長(zhǎng)度解碼處理。 解碼器80以與比特流BSr中排列的數(shù)據(jù)的各個(gè)可變長(zhǎng)度編碼序列VLa VLd的 記錄間隔相同的讀取間隔來(lái)讀取數(shù)據(jù),從而為各個(gè)可變長(zhǎng)度編碼序列VLa VLd讀取作為 待解碼的位的數(shù)據(jù)。 因此,解碼器80能夠?qū)Ω鱾€(gè)可變長(zhǎng)度編碼序列VLa VLd進(jìn)行解碼數(shù)據(jù)生成處
理,并因而能夠?qū)Χ鄠€(gè)可變長(zhǎng)度編碼序列VLa VLd并行地進(jìn)行可變長(zhǎng)度解碼。 在多個(gè)可變長(zhǎng)度編碼序列VLa VLd中,如果基于具有較短編碼長(zhǎng)度的可變長(zhǎng)度
20編碼序列的數(shù)據(jù)已經(jīng)完成了排列,則解碼器80對(duì)基于未完成數(shù)據(jù)排列的可變長(zhǎng)度編碼序 列的數(shù)據(jù)以嵌套形式進(jìn)行排列,從而對(duì)各個(gè)可變長(zhǎng)度編碼序列的記錄間隔有所變化的比特 流BSr進(jìn)行可變長(zhǎng)度解碼。 如果已經(jīng)完成了對(duì)比特流BSr的基于具有較短編碼長(zhǎng)度的可變長(zhǎng)度編碼序列的 數(shù)據(jù)的讀取,則解碼器80指定先前完成地址,即完成了讀取操作的可變長(zhǎng)度編碼序列的最 后位置。如果對(duì)重復(fù)位,即排列在先前完成地址處的基于所有可變長(zhǎng)度編碼序列的數(shù)據(jù),進(jìn) 行了簡(jiǎn)要排列,則解碼器80使用先前完成地址所屬的重復(fù)位之后的位再次對(duì)經(jīng)過(guò)可變長(zhǎng) 度解碼操作的可變長(zhǎng)度編碼進(jìn)行讀取。解碼器80再次對(duì)已經(jīng)讀取的可變長(zhǎng)度編碼進(jìn)行可 變長(zhǎng)度解碼。 因此,解碼器80能夠?qū)τ捎谟涗涢g隔的變化而可能被進(jìn)行了錯(cuò)誤的可變長(zhǎng)度解 碼操作的可變長(zhǎng)度編碼再次進(jìn)行可變長(zhǎng)度解碼。因此,解碼器80始終能夠精確地進(jìn)行可變 長(zhǎng)度解碼,而不會(huì)對(duì)多個(gè)可變長(zhǎng)度編碼序列VLa VLd進(jìn)行錯(cuò)誤的可變長(zhǎng)度解碼操作。
根據(jù)上述的結(jié)構(gòu),編碼器50通過(guò)對(duì)為各個(gè)編碼單位生成的可變長(zhǎng)度編碼序列 VLa VLd的數(shù)據(jù)以作為提取數(shù)的1位為單位逐位地進(jìn)行提取并依次排列,生成了比特流 BSr。 因此,解碼器50能夠生成按照記錄間隔對(duì)可變長(zhǎng)度編碼序列VLa VLd的數(shù)據(jù)進(jìn) 行排列的比特流BSr。 由于解碼器80能夠以與記錄間隔相同的讀取間隔對(duì)所生成的比特流BSr進(jìn)行讀 取,并且能夠?yàn)楦鱾€(gè)可變長(zhǎng)度編碼序列VLa VLd讀取待解碼的位,因此,可以并行地進(jìn)行 解碼數(shù)據(jù)生成處理。 因此,本發(fā)明能夠?qū)崿F(xiàn)可高速進(jìn)行可變長(zhǎng)度解碼處理的編碼器、編碼方法、記錄有
編碼程序的記錄介質(zhì)、解碼器、解碼方法和記錄有解碼程序的記錄介質(zhì)。 3、第三實(shí)施例 圖29 圖36說(shuō)明了本發(fā)明的第三實(shí)施例,其中,與如圖16 圖28所示第二實(shí)施 例中對(duì)應(yīng)的部分用相同的附圖標(biāo)記表示。第三實(shí)施例與第二實(shí)施例的不同之處在于,將分 成的4個(gè)數(shù)據(jù)塊DBa DBd中的各個(gè)數(shù)據(jù)塊都分成前半部分和后半部分,產(chǎn)生了總共8個(gè) 可變長(zhǎng)度編碼序列,從而生成固定長(zhǎng)度編碼塊VLx。
3-l、編碼器的結(jié)構(gòu) 如圖29所示,當(dāng)圖像數(shù)據(jù)BL被供給過(guò)來(lái)時(shí),第三實(shí)施例的編碼器100對(duì)該圖像數(shù) 據(jù)進(jìn)行編碼處理,從而生成并輸出比特流BSx。 具體而言,當(dāng)圖像數(shù)據(jù)BL通過(guò)輸入端子101供給過(guò)來(lái)時(shí),編碼器100將圖像數(shù)據(jù) BL供給到分離單元102。 如圖30A所示,與第二實(shí)施例類似,分離單元102將圖像數(shù)據(jù)BL分成數(shù)據(jù)塊DBa DBd。另外,分離單元102還將各個(gè)數(shù)據(jù)塊DBa DBd —分為二,使得亮度數(shù)據(jù)或者色差數(shù)據(jù) 各自以64位為單位進(jìn)行了劃分,從而生成了前半數(shù)據(jù)塊DBal DBdl和后半數(shù)據(jù)塊DBa2 DBd2。分離單元102分別將這些數(shù)據(jù)塊供給到對(duì)應(yīng)的可變長(zhǎng)度編碼單元111 118。
第一可變長(zhǎng)度編碼單元111對(duì)從分離單元102供給過(guò)來(lái)的前半數(shù)據(jù)塊DBal進(jìn)行 可變長(zhǎng)度編碼,生成前半可變長(zhǎng)度編碼序列VLal (見(jiàn)圖30B),并且將前半可變長(zhǎng)度編碼序 列VLal供給到第一結(jié)合單元131。
第二可變長(zhǎng)度編碼單元112對(duì)從分離單元102供給過(guò)來(lái)的后半數(shù)據(jù)塊DBa2進(jìn)行 可變長(zhǎng)度編碼,生成后半可變長(zhǎng)度編碼序列VLa2 (見(jiàn)圖30B),并且將后半可變長(zhǎng)度編碼序 列VLa2供給到第一鏡像處理單元121。 第一鏡像處理單元121對(duì)后半可變長(zhǎng)度編序列VLa2進(jìn)行重新排列,進(jìn)行鏡像處 理,并且將該經(jīng)過(guò)鏡像處理的編碼序列供給到第一結(jié)合單元131。 第一結(jié)合單元131將前半可變長(zhǎng)度編碼序列VLal與經(jīng)過(guò)鏡像處理的后半可變長(zhǎng) 度編碼序列VLa2結(jié)合起來(lái),必要時(shí)可在兩者之間插入緩沖數(shù)據(jù)DD而使兩者結(jié)合起來(lái),并且 生成具有固定編碼長(zhǎng)度的固定長(zhǎng)度編碼塊VXa。另外,第一結(jié)合單元131對(duì)編碼長(zhǎng)度進(jìn)行調(diào) 整,使得前半可變長(zhǎng)度編碼序列VLal和經(jīng)過(guò)鏡像處理的后半可變長(zhǎng)度編碼序列VLa2的總 編碼長(zhǎng)度等于或者小于該固定編碼長(zhǎng)度。 第三可變長(zhǎng)度編碼單元113、第四可變長(zhǎng)度編碼單元114、第二鏡像處理單元122 和第二結(jié)合單元132對(duì)供給過(guò)來(lái)的前半數(shù)據(jù)塊DBbl和后半數(shù)據(jù)塊DBb2進(jìn)行同樣的處理, 并且生成固定長(zhǎng)度編碼塊VXb。 第五可變長(zhǎng)度編碼單元115、第六可變長(zhǎng)度編碼單元116、第三鏡像處理單元123 和第三結(jié)合單元133對(duì)供給過(guò)來(lái)的前半數(shù)據(jù)塊DBcl和后半數(shù)據(jù)塊DBc2進(jìn)行同樣的處理, 并且生成固定長(zhǎng)度編碼塊VXc。 第七可變長(zhǎng)度編碼單元117、第八可變長(zhǎng)度編碼單元118、第四鏡像處理單元124 和第四結(jié)合單元134對(duì)供給過(guò)來(lái)的前半數(shù)據(jù)塊DBdl和后半數(shù)據(jù)塊DBd2進(jìn)行同樣的處理, 并且生成固定長(zhǎng)度編碼塊VXd。 如圖31A 圖31E所示,比特流生成單元104從固定長(zhǎng)度編碼塊VXa VXd的首 位起逐位地對(duì)數(shù)據(jù)以嵌套形式進(jìn)行排列,從而生成嵌套塊VLz 。 因此,在嵌套塊VLz中,與前半可變長(zhǎng)度編碼序列VLal、VLbl、VLcl和VLdl對(duì)應(yīng)的 數(shù)據(jù)從起始端起按照正方向以嵌套形式進(jìn)行排列。在嵌套塊VLz中,與后半可變長(zhǎng)度編碼 序列VLa2、 VLb2、 VLc2和VLd2對(duì)應(yīng)的數(shù)據(jù)從結(jié)束端起按照逆方向以嵌套形式進(jìn)行排列。
比特流生成單元104對(duì)嵌套塊VLz進(jìn)行依次排列,從而生成比特流BSx。
編碼器100生成了多個(gè)固定長(zhǎng)度編碼塊VXa VXd,并且對(duì)該多個(gè)固定長(zhǎng)度編碼塊 VXa VXd的數(shù)據(jù)以嵌套形式進(jìn)行排列,從而生成比特流BSx。 因此,在比特流BSx中,與多個(gè)固定長(zhǎng)度編碼塊VXa VXd對(duì)應(yīng)的數(shù)據(jù)從起始端起 和從結(jié)束端起按照互逆方向重復(fù)排列。另外,在比特流BSx中,能夠使嵌套塊VLz的編碼長(zhǎng) 度總是恒定。 3-2、解碼器的結(jié)構(gòu) 如圖32所示,當(dāng)比特流BSx被供給過(guò)來(lái)時(shí),第三實(shí)施例的解碼器150進(jìn)行作為可 變長(zhǎng)度解碼處理的并行解碼處理,從而生成圖像數(shù)據(jù)BL。 具體而言,當(dāng)由嵌套塊VLz組成的比特流BSx被供給過(guò)來(lái)時(shí),解碼器150將該比特 流BSx供給到存儲(chǔ)器152。存儲(chǔ)器152依次存儲(chǔ)被供給過(guò)來(lái)的嵌套塊VLz。
如圖33所示,讀取控制單元153根據(jù)嵌套塊VLz的編碼長(zhǎng)度來(lái)指定解碼起始位 置,并且在解碼起始位置處設(shè)定開(kāi)始指針Pl P4。也就是,讀取控制單元153將與第一可 變長(zhǎng)度解碼單元161對(duì)應(yīng)的開(kāi)始指針P1設(shè)給嵌套塊VLz的首位。另外,讀取控制單元153 將分別與可變長(zhǎng)度解碼單元162 164對(duì)應(yīng)的開(kāi)始指針P2 P4分別設(shè)給從嵌套塊VLz的
22首位算起在正方向上的第二位(2nd[bit])、第三位(3rd[bit])和第四位(4th[bit])。
讀取控制單元153在正方向上以4位的間隔從開(kāi)始指針PI P4開(kāi)始對(duì)數(shù)據(jù)進(jìn)行 讀取,讀取了待解碼的位,并且將它們供給到可變長(zhǎng)度解碼單元161 164。
當(dāng)從可變長(zhǎng)度解碼單元161 164接收到與用于生成解碼數(shù)據(jù)的位數(shù)有關(guān)的信息 時(shí),讀取控制單元153使開(kāi)始指針PI P4在正方向上移動(dòng)該用于生成解碼數(shù)據(jù)的位數(shù)。讀 取控制單元153以4位的間隔從開(kāi)始指針PI P4開(kāi)始對(duì)數(shù)據(jù)進(jìn)行讀取,讀取了待解碼的 位,并且將它們供給到可變長(zhǎng)度解碼單元161 164。 因此,可變長(zhǎng)度解碼單元161 164能夠執(zhí)行用于對(duì)待解碼的位并行地進(jìn)行讀取 操作和可變長(zhǎng)度解碼操作的解碼數(shù)據(jù)生成處理。 讀取控制單元153根據(jù)具有固定長(zhǎng)度的嵌套塊VLz的編碼長(zhǎng)度來(lái)指定解碼起始位 置,并且在解碼起始位置處設(shè)定開(kāi)始指針P5 P8。也就是,讀取控制單元153將與第五可 變長(zhǎng)度解碼單元165對(duì)應(yīng)的開(kāi)始指針P5設(shè)給嵌套塊VLz的末位。另外,讀取控制單元153 將分別與可變長(zhǎng)度解碼單元166 168對(duì)應(yīng)的開(kāi)始指針P6 P8分別設(shè)給從嵌套塊VLz的 末位算起在反方向上的第二位、第三位和第四位。 讀取控制單元153在反方向上以4位的間隔從開(kāi)始指針P5 P8開(kāi)始對(duì)數(shù)據(jù)進(jìn)行 讀取,讀取了待解碼的位,并且將它們供給到可變長(zhǎng)度解碼單元165 168。
當(dāng)從可變長(zhǎng)度解碼單元165 168接收到與用于生成解碼數(shù)據(jù)的位數(shù)有關(guān)的信息 時(shí),讀取控制單元153使開(kāi)始指針P5 P8在反方向上移動(dòng)該用于生成解碼數(shù)據(jù)的位數(shù)。讀 取控制單元153以4位的間隔從開(kāi)始指針P5 P8開(kāi)始對(duì)數(shù)據(jù)進(jìn)行讀取,讀取了待解碼的 位,并且將它們供給到可變長(zhǎng)度解碼單元165 168。 因此,可變長(zhǎng)度解碼單元161 168能夠進(jìn)行并行的解碼數(shù)據(jù)生成處理,分別生成 數(shù)據(jù)i央BBal、 BBa2、 BBbl、 BBb2、 BBcl、 BBc2、 BBdl和BBd2,并且供給到圖像數(shù)據(jù)生成單元 154。 如圖34所示,圖像數(shù)據(jù)生成單元154使數(shù)據(jù)塊BBal 、BBa2、BBb 1 、BBb2、BBc 1 、BBc2、 BBdl和BBd2連接起來(lái),從而生成解碼塊。圖像數(shù)據(jù)生成單元154進(jìn)一步使各解碼塊連接起 來(lái),從而生成圖像數(shù)據(jù)BL。 解碼器150從嵌套塊VLz的起始端和結(jié)束端開(kāi)始以并行方式對(duì)以嵌套形式排列的 數(shù)據(jù)進(jìn)行讀取和可變長(zhǎng)度解碼。 因此,由于解碼器150能夠同時(shí)進(jìn)行并行的解碼數(shù)據(jù)生成處理,因而可以實(shí)現(xiàn)高 速的可變長(zhǎng)度解碼處理。
3-3、詳細(xì)流程
3-3-1 、編碼流程 下面使用圖35所示的流程圖對(duì)根據(jù)編碼程序進(jìn)行的編碼流程RT5進(jìn)行說(shuō)明。
當(dāng)圖像數(shù)據(jù)BL被供給過(guò)來(lái)時(shí),編碼器100開(kāi)始編碼流程RT5,并且進(jìn)入步驟SP61。
在步驟SP61中,編碼器100將圖像數(shù)據(jù)BL分成前半數(shù)據(jù)塊DBal DBdl和后半 數(shù)據(jù)塊DBa2 DBd2,然后進(jìn)入下一步驟SP62。 在步驟SP62中,編碼器100對(duì)分離而成的各單位中的圖像數(shù)據(jù)BL進(jìn)行可變長(zhǎng) 度編碼,從而生成前半可變長(zhǎng)度編碼序列VLal VLdl和后半可變長(zhǎng)度編碼序列VLa2 VLd2,然后進(jìn)入下一步驟SP63。
在步驟SP63中,編碼器100對(duì)后半可變長(zhǎng)度編碼序列VLa2 VLd2進(jìn)行鏡像處理, 然后進(jìn)入下一步驟SP64。 在步驟SP64中,編碼器100通過(guò)在前半可變長(zhǎng)度編碼序列VLa與后半鏡像可變長(zhǎng) 度編碼序列VLm之間插入緩沖數(shù)據(jù)DD,使前半可變長(zhǎng)度編碼序列VLa和后半鏡像可變長(zhǎng)度 編碼序列VLm結(jié)合起來(lái),從而生成具有固定編碼長(zhǎng)度的固定長(zhǎng)度編碼塊VLxa VLxd,然后 進(jìn)入下一步驟SP65。 在步驟SP65中,編碼器100從固定長(zhǎng)度編碼塊VXa VXd中逐位提取數(shù)據(jù),并且 對(duì)這些數(shù)據(jù)以嵌套形式進(jìn)行排列,從而生成嵌套塊VLz 。然后,編碼器100對(duì)嵌套塊VLz進(jìn) 行排列,從而生成比特流BSx,然后進(jìn)入結(jié)束步驟,從而完成了編碼流程RT5。
3-3-2 、并行解碼流程 下面使用圖36所示的流程圖對(duì)根據(jù)并行解碼程序進(jìn)行的并行解碼流程RT6進(jìn)行 說(shuō)明。 當(dāng)比特流BSx被供給過(guò)來(lái)時(shí),解碼器150開(kāi)始并行解碼流程RT6,將供給過(guò)來(lái)的比 特流BSx依次存入到存儲(chǔ)器152中,并且進(jìn)入下一步驟SP71。 在步驟SP71中,解碼器150根據(jù)存儲(chǔ)器152中的待處理的嵌套塊VLz的起始端和 結(jié)束端來(lái)設(shè)定解碼起始位置,并且進(jìn)入下一步驟SP72。 也就是,解碼器150將嵌套塊VLz的起始端和從所述起始端算起的第二位、第三位 和第四位確定為可變長(zhǎng)度解碼單元161 164的解碼起始位置,并且設(shè)定開(kāi)始指針Pl P4。另外,解碼器150將嵌套塊VLz的結(jié)束端和從所述結(jié)束端算起的第二位、第三位和第四 位確定為可變長(zhǎng)度解碼單元165 168的解碼起始位置,并且設(shè)定開(kāi)始指針P5 P8。
在步驟SP72中,解碼器150從開(kāi)始指針Pl P4起在正方向上從存儲(chǔ)器152中讀 取數(shù)據(jù),并且從開(kāi)始指針P5 P8起在反方向上從存儲(chǔ)器152中讀取數(shù)據(jù),從而依次讀取待 解碼的位,然后進(jìn)入下一步驟SP73。 在步驟SP73中,解碼器150從待解碼的位生成解碼數(shù)據(jù),然后進(jìn)入下一步驟SP74。
在步驟SP74中,解碼器150判斷在所有可變長(zhǎng)度解碼單元161 168中是否完成 了待處理的嵌套塊VLz的解碼數(shù)據(jù)的生成。 如果得到的是否定結(jié)果,則說(shuō)明在嵌套塊VLz中還有應(yīng)當(dāng)進(jìn)行可變長(zhǎng)度解碼的可 變長(zhǎng)度編碼。此時(shí),解碼器150返回到步驟SP72,從通過(guò)將開(kāi)始指針Pl P8移動(dòng)用于在步 驟SP73中生成解碼數(shù)據(jù)的待解碼的位數(shù)而獲得的位置起,開(kāi)始讀取待解碼的位,然后繼續(xù) 進(jìn)行處理。 與之相反,如果在步驟SP74中得到的是肯定結(jié)果,則解碼器150進(jìn)入下一步驟 SP75。在步驟SP75中,解碼器150將前半解碼數(shù)據(jù)BBal BBdl和后半解碼數(shù)據(jù)BBa2 BBd2結(jié)合起來(lái),從而生成嵌套塊VLz。然后,解碼器150對(duì)嵌套塊VLz進(jìn)行排列,從而生成 圖像數(shù)據(jù)BL,然后進(jìn)入結(jié)束步驟,從而完成了并行解碼處理。
3-4、操作和效果 在上述結(jié)構(gòu)中,編碼器100生成了多個(gè)固定長(zhǎng)度編碼塊VLx,這些固定長(zhǎng)度編碼塊 VLx是通過(guò)使前半可變長(zhǎng)度編碼序列VLal VLdl和后半可變長(zhǎng)度編碼序列VLa2 VLd2 進(jìn)行結(jié)合而生成的編碼塊。編碼器100對(duì)基于多個(gè)固定長(zhǎng)度編碼塊VXa VXd的數(shù)據(jù)以嵌 套形式進(jìn)行排列,從而生成嵌套塊VLz,并且對(duì)嵌套塊VLz進(jìn)行排列,從而生成比特流BSx。
因此,編碼器100能夠?qū)潭ㄩL(zhǎng)度編碼塊VXa VXd的數(shù)據(jù)從嵌套塊VLz的起始 端和結(jié)束端起并行地進(jìn)行解碼數(shù)據(jù)生成處理。 另外,編碼器100生成了兩個(gè)可變長(zhǎng)度編碼序列,且使得作為該兩個(gè)可變長(zhǎng)度編 碼序列的前半可變長(zhǎng)度編碼VLal和后半可變長(zhǎng)度編碼序列VLa2的總編碼長(zhǎng)度等于或者小 于固定長(zhǎng)度。 因此,可變編碼器100與如下情況相比能夠放寬對(duì)編碼長(zhǎng)度的限制,該情況為前 半可變長(zhǎng)度編碼序列VLal和后半可變長(zhǎng)度編碼序列VLa2被生成為使得半可變長(zhǎng)度編碼序 列VLal和后半可變長(zhǎng)度編碼序列VLa2各自的編碼長(zhǎng)度等于或者小于預(yù)定的固定長(zhǎng)度。因 此,編碼器100能夠?qū)⒃摴潭ㄩL(zhǎng)度設(shè)定得較小,從而降低編碼量,或者抑制由于對(duì)編碼量的 調(diào)整而引起的圖像質(zhì)量劣化。 解碼器150從其中讓基于多個(gè)固定長(zhǎng)度編碼塊VXa VXd的數(shù)據(jù)以嵌套形式排列 著的比特流BSx中讀取固定長(zhǎng)度編碼塊VXa VXd的數(shù)據(jù),從而對(duì)該多個(gè)固定長(zhǎng)度編碼塊 VXa VXd并行地進(jìn)行可變長(zhǎng)度解碼。 因此,由于解碼器150能夠從嵌套塊VLz的起始端和結(jié)束端起進(jìn)行解碼數(shù)據(jù)生成 處理,因而盡管嵌套的固定長(zhǎng)度編碼塊VXa VXd的數(shù)量沒(méi)有增加,但是可以增加以并行方 式進(jìn)行的解碼數(shù)據(jù)生成處理的數(shù)量。因此,解碼器150能夠高速地進(jìn)行作為可變長(zhǎng)度解碼 處理的并行解碼處理。 根據(jù)上述結(jié)構(gòu),編碼器100使兩個(gè)可變長(zhǎng)度編碼序列結(jié)合,從而生成多個(gè)具有固 定長(zhǎng)度的固定長(zhǎng)度編碼塊VXa VXd,對(duì)基于這些固定長(zhǎng)度編碼塊VXa VXd的數(shù)據(jù)以提取 數(shù)進(jìn)行提取并進(jìn)行依次排列,并且生成嵌套塊VLz。 因此,編碼器100能夠生成使前半可變長(zhǎng)度編碼序列VLal VLdl的首位依次排 列在起始端、并且使后半可變長(zhǎng)度編碼序列VLa2 VLd2依次排列在結(jié)束端的嵌套塊VLz。
對(duì)于各個(gè)可變長(zhǎng)度編碼序列,解碼器150從所生成的嵌套塊VLz的起始端和結(jié)束 端起對(duì)基于多個(gè)可變長(zhǎng)度編碼序列的數(shù)據(jù)進(jìn)行讀取,從而進(jìn)行解碼數(shù)據(jù)生成處理。
因此,解碼器150能夠提高以并行方式進(jìn)行的解碼數(shù)據(jù)生成處理的數(shù)量,并且高
速地進(jìn)行并行解碼處理。
4、其它實(shí)施例 此外,在上述的第二實(shí)施例中,說(shuō)明了把提取數(shù)設(shè)定為"1"并且把基于可變長(zhǎng)度編 碼序列VLa VLd的數(shù)據(jù)以嵌套形式逐位排列的情況。本發(fā)明不限于此,也可以不對(duì)提取 數(shù)進(jìn)行限定。例如,如圖37所示,可以將提取數(shù)設(shè)定為"3",并且可以將基于可變長(zhǎng)度編碼 序列VLa VLd的數(shù)據(jù)以3位為單位(3[bits]by 3[bits])以嵌套形式進(jìn)行排列。
在這種情況下,如圖38A 圖38C所示,例如,當(dāng)完成了基于可變長(zhǎng)度編碼序列VLd 的數(shù)據(jù)時(shí),編碼器在最后剩余的1位或者2位上添加虛擬數(shù)據(jù)DM,從而生成一個(gè)由3位構(gòu)成 的組。 因此,與上述的第二實(shí)施例類似,編碼器能夠僅改變記錄間隔從而生成比特流 BSrx,而不會(huì)破壞提取數(shù)為3位的關(guān)系。 在上述的第二實(shí)施例中,說(shuō)明了具有可變長(zhǎng)度的可變長(zhǎng)度編碼序列VLa VLd以 嵌套形式進(jìn)行排列的情況。本發(fā)明不限于此,并且可以通過(guò)在可變長(zhǎng)度編碼序列VLa VLd 的后面添加虛擬數(shù)據(jù),使編碼長(zhǎng)度為固定值。在這種情況下,上述的結(jié)束處理(解碼數(shù)據(jù)生成處理的再執(zhí)行)是不必要的。 在上述第一 第三實(shí)施例中,說(shuō)明了對(duì)原樣地表示像素值的圖像數(shù)據(jù)進(jìn)行接收的 情況。本發(fā)明不限于此,例如,可以接收經(jīng)過(guò)離散余弦變換(Discrete Cosine Transform, DCT)處理或者量子化處理的圖像數(shù)據(jù)。圖像數(shù)據(jù)不必采用4:2:2格式,例如,可以采用 4:2:0格式或者4:4:4格式。 在上述第一 第三實(shí)施例中,說(shuō)明了圖像數(shù)據(jù)BL由對(duì)應(yīng)于預(yù)定像素?cái)?shù)的亮度數(shù) 據(jù)塊和色差數(shù)據(jù)塊構(gòu)成的情況。本發(fā)明不限于此,例如,如圖39所示,亮度數(shù)據(jù)和色差數(shù)據(jù) 可以用由2個(gè)像素組成的組構(gòu)成。在這種情況下,可以將與某一像素?cái)?shù)對(duì)應(yīng)的塊分成數(shù)據(jù) 塊DB。 在上述第一 第三實(shí)施例中,說(shuō)明了將對(duì)應(yīng)于同一像素?cái)?shù)(即,同一編碼量)的數(shù) 據(jù)分成數(shù)據(jù)塊DB的情況。本發(fā)明不限于此,可以將對(duì)應(yīng)于不同像素?cái)?shù)的數(shù)據(jù)分成數(shù)據(jù)塊 DB。另外,對(duì)數(shù)據(jù)塊DB的大小也不受限制。 在上述第一實(shí)施例中,說(shuō)明了通過(guò)生成固定長(zhǎng)度編碼塊VLx以便能夠根據(jù)編碼長(zhǎng) 度來(lái)識(shí)別出固定長(zhǎng)度編碼塊VLx之間的邊界的情況。本發(fā)明不限于此,例如,如圖40所示, 可以生成具有可變編碼長(zhǎng)度的編碼塊VLt,并且可以在編碼塊VLt之間插入邊界信息IB以 便對(duì)編碼塊VLt之間的邊界進(jìn)行識(shí)別。在這種情況下,通過(guò)對(duì)一個(gè)數(shù)據(jù)塊連續(xù)地進(jìn)行可變 長(zhǎng)度編碼,能夠生成通過(guò)把要被不同可變長(zhǎng)度解碼單元進(jìn)行可變長(zhǎng)度解碼的兩個(gè)可變編碼 序列VLa和VLb結(jié)合起來(lái)而獲得的編碼塊VLt。 因此,在本發(fā)明中,由于可以不包含緩沖數(shù)據(jù)DD來(lái)生成固定長(zhǎng)度編碼塊VLx,因而 如果邊界信息IB的數(shù)據(jù)量小于緩沖數(shù)據(jù)DD的數(shù)據(jù)量,就可以降低全部編碼量。本發(fā)明可 以有效地應(yīng)用于經(jīng)過(guò)DCT處理的圖像數(shù)據(jù),從而顯著改變編碼量。 可以使用第二實(shí)施例的嵌套塊VLy來(lái)替代可變編碼序列VLa和VLb。在這種情況 下,替代可變編碼序列VLb的是,對(duì)在后半部分中使用的嵌套塊VLy進(jìn)行鏡像處理。
在上述的第一實(shí)施例中,說(shuō)明了從一個(gè)固定長(zhǎng)度編碼塊VLx的兩端起并行地進(jìn)行 可變長(zhǎng)度解碼的情況。本發(fā)明不限于此,可以根據(jù)固定長(zhǎng)度編碼塊VLx的編碼長(zhǎng)度來(lái)指定 下一個(gè)固定長(zhǎng)度編碼塊VLx的起始端和結(jié)束端,并且可以對(duì)多個(gè)固定長(zhǎng)度編碼塊VLx進(jìn)行 可變長(zhǎng)度解碼。 在上述的第一實(shí)施例中,說(shuō)明了前半可變長(zhǎng)度編碼序列VLa和后半可變長(zhǎng)度編碼 序列VLb被生成得使前半可變長(zhǎng)度編碼序列VLa和后半可變長(zhǎng)度編碼序列VLb各自的長(zhǎng)度 等于或者小于預(yù)定編碼長(zhǎng)度的情況。本發(fā)明不限于此,可以把前半可變長(zhǎng)度編碼序列VLa 和后半可變長(zhǎng)度編碼序列VLb生成得使使前半可變長(zhǎng)度編碼序列VLa和后半可變長(zhǎng)度編碼 序列VLb的長(zhǎng)度的相加值等于或者小于預(yù)定編碼長(zhǎng)度。 在上述的第一 第三實(shí)施例中,說(shuō)明了各個(gè)解碼單元具有一個(gè)16位(16-bit)緩 沖存儲(chǔ)器的情況。本發(fā)明不限于此,可以根據(jù)可變長(zhǎng)度編碼數(shù)據(jù)的最大編碼長(zhǎng)度來(lái)配置緩 沖存儲(chǔ)器,并且該緩沖存儲(chǔ)器的位數(shù)不限于等于或者大于可變長(zhǎng)度編碼數(shù)據(jù)的最大編碼長(zhǎng) 度的存儲(chǔ)容量。 在上述的第一 第三實(shí)施例中,說(shuō)明了可變長(zhǎng)度解碼單元從開(kāi)始指針起以預(yù)定數(shù) 量讀取待解碼的位的情況。本發(fā)明不限于此,可以通過(guò)進(jìn)行緩沖存儲(chǔ)器的移位控制來(lái)從存 儲(chǔ)器中僅讀取用于解碼的數(shù)據(jù)。
26
在上述的第一 第三實(shí)施例中,說(shuō)明了將后半可變長(zhǎng)度編碼序列進(jìn)行鏡像處理后再與前半可變長(zhǎng)度編碼序列進(jìn)行結(jié)合的情況。本發(fā)明不限于此,例如,可變長(zhǎng)度解碼單元可以具有存儲(chǔ)器,并且可以當(dāng)完成了可變長(zhǎng)度編碼序列的可變長(zhǎng)度編碼操作時(shí),從結(jié)束端部分起沿逆方向進(jìn)行讀取操作。因此,鏡像處理單元是不必要的。 在上述的第一 第三實(shí)施例中,說(shuō)明了將編碼程序和解碼程序等預(yù)先存儲(chǔ)在ROM或硬盤驅(qū)動(dòng)器等中的情況,本發(fā)明不限于此,可以從諸如閃存的存儲(chǔ)棒(memory stick)(索尼公司的注冊(cè)商標(biāo))等外部存儲(chǔ)介質(zhì)來(lái)進(jìn)行程序安裝。另外,可以通過(guò)通用串行總線(Universal Serial Bus, USB)或者諸如以太網(wǎng)(Ethernet,注冊(cè)商標(biāo))(電氣和電子工程師協(xié)會(huì)(Institute ofElectrical and Electronics Engineers):注冊(cè)商標(biāo))802. lla/b/g的無(wú)線局域網(wǎng)(Local Area Network, LAN)而從外部獲得數(shù)據(jù)庫(kù)生成程序等,并且可以將該數(shù)據(jù)庫(kù)生成程序等發(fā)布到陸地?cái)?shù)字電視廣播或者BS(廣播衛(wèi)星)數(shù)字電視廣播。
可以對(duì)上述的第一 第三實(shí)施例進(jìn)行適當(dāng)?shù)慕M合。 在上述第一實(shí)施例中,說(shuō)明了如下的情況編碼器10被配置為包括用作分離單元的分離單元12、用作可變長(zhǎng)度編碼單元的可變長(zhǎng)度編碼單元13以及用作編碼塊生成單元和比特流生成單元的比特流生成單元14。本發(fā)明不限于此,本發(fā)明的編碼器可以被配置為包括具有各種其它結(jié)構(gòu)的分離單元、可變長(zhǎng)度編碼單元、編碼塊生成單元和比特流生成單元。 在上述的第一實(shí)施例中,說(shuō)明了如下情況解碼器30被配置為包括用作接收單元的存儲(chǔ)器32、用作指定單元的讀取控制單元35以及用作并行解碼單元的并行解碼單元40。本發(fā)明不限于此,本發(fā)明的解碼器可以被配置為包括具有各種其它結(jié)構(gòu)的接收單元、指定單元和并行解碼單元。 本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解,依據(jù)設(shè)計(jì)要求和其他因素,可以在本發(fā)明所附的權(quán)利要求或其等同物的范圍內(nèi)進(jìn)行各種修改、組合、次組合及改變。
權(quán)利要求
一種編碼器,所述編碼器包括分離單元,其用于將圖像數(shù)據(jù)分成多個(gè)數(shù)據(jù)塊;可變長(zhǎng)度編碼單元,其用于對(duì)被所述分離單元分成的各個(gè)所述數(shù)據(jù)塊進(jìn)行可變長(zhǎng)度編碼,并生成可變長(zhǎng)度編碼序列;編碼塊生成單元,其用于通過(guò)把利用所述可變長(zhǎng)度編碼單元生成的兩個(gè)可變長(zhǎng)度編碼序列結(jié)合起來(lái),生成要從起始端和結(jié)束端起并行地受到可變長(zhǎng)度解碼的編碼塊;比特流生成單元,其用于生成使所述編碼塊之間的邊界能夠被識(shí)別的比特流。
2. 根據(jù)權(quán)利要求1的編碼器,其中,所述編碼塊生成單元將所述編碼塊的編碼長(zhǎng)度設(shè)定為固定長(zhǎng)度,并且 所述比特流生成單元通過(guò)對(duì)所述編碼塊進(jìn)行排列,來(lái)生成使所述編碼塊之間的邊界能 夠被識(shí)別的所述比特流。
3. 根據(jù)權(quán)利要求2的編碼器,其中,所述比特流生成單元通過(guò)在所述兩個(gè)可變長(zhǎng)度編 碼序列之間插入緩沖數(shù)據(jù)從而使所述編碼長(zhǎng)度固定,來(lái)生成所述編碼塊。
4. 根據(jù)權(quán)利要求3的編碼器,其中,所述可變長(zhǎng)度編碼單元將所述兩個(gè)可變長(zhǎng)度編碼 序列生成為使得所述兩個(gè)可變長(zhǎng)度編碼序列的編碼長(zhǎng)度之和等于或者小于所述固定長(zhǎng)度。
5. 根據(jù)權(quán)利要求3的編碼器,其中,所述比特流生成單元通過(guò)如下方式來(lái)生成所述編 碼塊對(duì)分布在所述兩個(gè)可變長(zhǎng)度編碼序列的前半部分中的可變長(zhǎng)度編碼從起始端起按照 正方向進(jìn)行排列,并且對(duì)分布在所述兩個(gè)可變長(zhǎng)度編碼序列的后半部分中的可變長(zhǎng)度編碼 從結(jié)束端起按照逆方向進(jìn)行排列。
6. 根據(jù)權(quán)利要求1的編碼器,其中,所述編碼塊生成單元生成具有可變長(zhǎng)度編碼的所述編碼塊,并且所述比特流生成單元通過(guò)在所述編碼塊之間插入邊界信息,來(lái)生成使所述編碼塊之間 的邊界能夠被識(shí)別的所述比特流。
7. 根據(jù)權(quán)利要求2的編碼器,其中,所述比特流生成單元對(duì)基于多個(gè)所述編碼塊的數(shù) 據(jù)以嵌套形式進(jìn)行排列。
8. 根據(jù)權(quán)利要求1的編碼器,其中,所述比特流生成單元對(duì)基于多個(gè)所述編碼塊的數(shù) 據(jù)以嵌套形式逐位地進(jìn)行排列。
9. 一種解碼器,所述解碼器包括接收單元,其包括具有可變長(zhǎng)度編碼的多個(gè)編碼塊,并且接收所生成的使所述編碼塊之間的邊界能夠被識(shí)別的比特流;指定單元,其用于基于所述編碼塊之間的邊界來(lái)指定所述編碼塊的起始端和結(jié)束端;以及并行解碼單元,其用于對(duì)通過(guò)所述接收單元接收到的所述比特流從由所述指定單元指定的所述編碼塊的起始端和結(jié)束端起以并行方式進(jìn)行可變長(zhǎng)度解碼。
10. 根據(jù)權(quán)利要求9的解碼器,其中,所述并行解碼單元對(duì)多個(gè)所述編碼塊并行地進(jìn)行可變長(zhǎng)度解碼。
11. 根據(jù)權(quán)利要求9的解碼器,其中,所述編碼塊包括從起始端起按照正方向進(jìn)行排列的可變長(zhǎng)度編碼序列和從結(jié)束端起按照逆方向進(jìn)行排列的可變長(zhǎng)度編碼序列,并且所述并行解碼單元使用同一解碼表對(duì)上述兩個(gè)可變長(zhǎng)度編碼序列進(jìn)行可變長(zhǎng)度解碼。
12. 根據(jù)權(quán)利要求11的解碼器,其中,所述比特流是通過(guò)對(duì)基于多個(gè)所述編碼塊的數(shù)據(jù)以嵌套形式進(jìn)行排列而構(gòu)成的,并且 所述并行解碼單元通過(guò)從所述比特流中提取各個(gè)所述編碼塊的數(shù)據(jù)來(lái)對(duì)多個(gè)所述編 碼塊并行地進(jìn)行可變長(zhǎng)度解碼。
13. —種編碼方法,所述編碼方法包括如下步驟 將圖像數(shù)據(jù)分成多個(gè)數(shù)據(jù)塊;對(duì)各個(gè)所述數(shù)據(jù)塊進(jìn)行可變長(zhǎng)度編碼,并生成可變長(zhǎng)度編碼序列; 通過(guò)把在所述可變長(zhǎng)度編碼步驟中生成的兩個(gè)可變長(zhǎng)度編碼序列結(jié)合起來(lái),生成要從 起始端和結(jié)束端起并行地受到可變長(zhǎng)度解碼的編碼塊;以及 生成使所述編碼塊之間的邊界能夠被識(shí)別的比特流。
14. 一種解碼方法,所述解碼方法包括如下步驟在多個(gè)編碼塊具有可變長(zhǎng)度編碼的情況下,接收被生成為使所述編碼塊之間的邊界能夠被識(shí)別的比特流;基于所述編碼塊之間的邊界來(lái)指定所述編碼塊的起始端和結(jié)束端;以及 對(duì)在所述接收步驟中接收到的所述比特流從由指定單元指定的所述起始端和所述結(jié)束端起以并行方式進(jìn)行可變長(zhǎng)度解碼。
全文摘要
本發(fā)明提供編碼器、解碼器、編碼方法以及解碼方法,所述編碼器包括分離單元,其用于將圖像數(shù)據(jù)分成多個(gè)數(shù)據(jù)塊;可變長(zhǎng)度編碼單元,其用于對(duì)被所述分離單元分成的各個(gè)所述數(shù)據(jù)塊進(jìn)行可變長(zhǎng)度編碼,并生成可變長(zhǎng)度編碼序列;編碼塊生成單元,其用于通過(guò)把利用所述可變長(zhǎng)度編碼單元生成的兩個(gè)可變長(zhǎng)度編碼序列結(jié)合起來(lái),生成要從起始端和結(jié)束端起并行地受到可變長(zhǎng)度解碼的編碼塊;比特流生成單元,其用于生成使所述編碼塊之間的邊界能夠被識(shí)別的比特流。因此,本發(fā)明可實(shí)現(xiàn)能夠高速地進(jìn)行可變長(zhǎng)度解碼處理的編碼器、編碼方法、解碼器以及解碼方法。
文檔編號(hào)H04N7/26GK101765010SQ200910259488
公開(kāi)日2010年6月30日 申請(qǐng)日期2009年12月22日 優(yōu)先權(quán)日2008年12月25日
發(fā)明者和田祐司, 奧田正和, 金子隆児 申請(qǐng)人:索尼株式會(huì)社