JPH104360A - 可変長復号化方法及び可変長復号化装置 - Google Patents

可変長復号化方法及び可変長復号化装置

Info

Publication number
JPH104360A
JPH104360A JP15393596A JP15393596A JPH104360A JP H104360 A JPH104360 A JP H104360A JP 15393596 A JP15393596 A JP 15393596A JP 15393596 A JP15393596 A JP 15393596A JP H104360 A JPH104360 A JP H104360A
Authority
JP
Japan
Prior art keywords
data
decoding
code
original data
bits
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
JP15393596A
Other languages
English (en)
Inventor
Mitsuharu Oki
光晴 大木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP15393596A priority Critical patent/JPH104360A/ja
Publication of JPH104360A publication Critical patent/JPH104360A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

(57)【要約】 【課題】 複数の原データを圧縮したバイナリデータ列
を復号する際の高速処理を実現する。 【解決手段】 複数の原データを圧縮したバイナリデー
タ列を復号する際に、ステップS12において、複数の
原データに対応する符号の内、各符号が最長の符号とし
た場合の合計の符号長だけ、バイナリデータ列からメモ
リにデータを読み込む。次のステップS13では、読み
込んだデータから、複数の原データを復号する。次のス
テップS14では、上記複数の原データの復号に際し使
用したビット数を求め、次のステップS15に進んで、
上記使用したビット数だけ、上記バイナリデータ列の先
頭から削除する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、圧縮されたデータ
を伸長して復元データを得る可変長復号化方法、及びそ
の装置に関するものである。
【0002】
【従来の技術】現在最も多く使用されている画像圧縮の
方式の1つとして、いわゆるMPEG(Moving Picture
Coding Experts Group) 規格を挙げることができる。
このMPEGとは、ISO/IEC JTC1/SC29
(International Organizationfor Standardization /
International Electrotechnical Commission, JointTe
chnical Committee 1 / Sub Committee 29:国際標準化
機構/国際電気標準会議 合同技術委員会1/専門部会
29)の蓄積用動画像符号化の検討組織の略称であり、
MPEG1標準としてISO11172が、MPEG2標準とし
てISO13818がある。これらの国際標準において、マルチ
メディア多重化の項目でISO11172-1及びISO13818-1が、
映像の項目でISO11172-2及びISO13818-2が、また音声の
項目でISO11172-3及びISO13818-3がそれぞれ標準化され
ている。
【0003】このMPEG規格に基づいた画像符号化方
式のように過去及び未来の画像との相関を利用して圧縮
する方式、すなわち、動き補償を行って圧縮する方式
が、効率が高く、有望視されている。
【0004】図7は、MPEG2により圧縮された符号
化データ列の一部として、MPEG2におけるマクロブ
ロックモード(macroblock_modes)の部分の符号を示し
ており、図中右欄の数字はビット長を示している。
【0005】デコーダ側では、圧縮された符号データ列
(入力バイナリデータ列)を受け取り、先頭から順番に
符号を見ていき、macroblock_type の可変長符号のパタ
ーン(図示省略。)と一致するパターンを検出し、その
パターンに対応する復号データをmacroblock_type とす
る。
【0006】次に、spatial_temporal_weight_code_fla
g が1であり、かつ、spatial_temporal_weight_code_t
able_indexが0でない場合は、macroblock_type に関す
る符号に続く2ビットの符号をspatial_temporal_weigh
t_codeとする。
【0007】次に、macroblock_motion_forward 、ある
いは、macroblock_motion_backwardの少なくとも一方が
0でなければ、以下の操作を行う。つまり、picture_st
ructure がframe構造である場合は、frame_pred_f
rame_dctの値が0であれば、続く2ビットの符号をfram
e_motion_type とし、frame_pred_frame_dctの値が0で
なければ、何もしない。picture_structure がfram
e構造でない場合は、続く2ビットの符号をfield_moti
on_type とする。
【0008】次に、picture_structure がframe構
造であり、かつ、frame_pred_frame_dctの値が0であ
り、かつ、macroblock_intraあるいはmacroblock_patte
rnのどちらかが0でなければ、続く1ビットの符号をdc
t_typeとする。
【0009】ただし、macroblock_modesに関する符号デ
ータ列以前に入力されてきた符号データ列により、spat
ial_temporal_weight_code_flag 、spatial_temporal_w
eight_code_table_index、macroblock_motion_forward
、macroblock_motion_backward、picture_structure
、frame_pred_frame_dct、macroblock_intra、macrobl
ock_patternは、復号されている。
【0010】このようにして、macroblock_modes(macr
oblock_type, spatial_temporal_weight_code, frame_m
otion_type, field_motion_type、dct_type)に関する復
号が行われる。また、図7のビット長(No. of bits)
の欄には、それぞれの符号の長さが示されているこのよ
うな符号化データ列の一部、例えばmacroblock_modesに
関するデータ列を、メモリを有するマイクロプロセッサ
を用いて復号処理する場合の処理手順について、図8〜
図10を参照しながら説明する。
【0011】図8〜図10は、この復号の一連の操作の
フローチャートである。図8〜図10の一連の操作を行
う前に、あらかじめ、spatial_temporal_weight_code_f
lag等は復号され、マイクロプロセッサのメモリ上のそ
れぞれの領域に格納されているとする。
【0012】図8において、ステップS401でこの一
連の操作は始まり、ステップS402に進む。
【0013】ステップS402で、マイクロプロセッサ
の入出力ポートから、入力バイナリデータ列(符号デー
タ列)の先頭9ビット分を読み込み、それをメモリ上の
変数BSの領域に代入する。そして、ステップS403
に進む。ステップS403で、BSの値を先頭から調べ
ていき、macroblock_type の可変長符号のパターンと一
致するパターンを検出し、そのパターンに対応する復号
データをmacroblock_type とする。つまり、対応する復
号データをメモリ上の変数macroblock_type の領域に代
入する。この一致するパターンの検出は、マイクロプロ
セッサの論理演算回路で行われる。また、この一致した
パターンの長さ(復号において使用したビット数)をメ
モリ上の変数UBの領域に代入する。macroblock_type
に関する符号長は、最短で1ビット、最長で9ビットで
ある(図7参照)から、9ビット分のデータ(符号)を
コピーしたBSの値のみから、必ず復号できる(UB=
1〜9)。次にステップS404に進む。ステップS4
04で、入力バイナリデータ列の先頭からUBビット分
削除し、UB+1ビット目を先頭とする。これは、具体
的には、これ以降で入力バイナリデータ列を先頭から読
み込むとき、UB+1ビット目から読み込むことを意味
する。そして、ステップS405に進む。
【0014】ステップS405で、メモリ上の変数spat
ial_temporal_weight_code_flag 、spatial_temporal_w
eight_code_table_indexを調べ、spatial_temporal_wei
ght_code_flag が1であり、かつ、spatial_temporal_w
eight_code_table_indexが0でないかをチェックする。
このチェックは、上記論理演算回路で行われる。真であ
ればステップS406に進み、偽であれば図9のステッ
プS409に進む。ステップS406で、入出力ポート
から、入力バイナリデータ列の先頭2ビット分を読み込
み、それをメモリ32上の変数BSの領域に代入する。
そして、ステップS407に進む。ステップS407
で、BSの値からspatial_temporal_weight_codeを求め
る。具体的には、2ビットのデータであるBSの値を、
メモリ上の変数spatial_temporal_weight_codeにコピー
すれば良い。そして、ステップS408に進む。ステッ
プS408で、入力バイナリデータ列の先頭から2ビッ
ト分削除し、3ビット目を先頭とする。そして、図9の
ステップS409に進む。
【0015】図9のステップS409で、メモリ上の変
数macroblock_motion_forward 、macroblock_motion_ba
ckwardを調べ、macroblock_motion_forward 、あるい
は、macroblock_motion_backwardの少なくとも一方が0
でないかをチェックする。真であればステップS410
に進み、偽であれば図10のステップS418に進む。
ステップS410で、メモリ上の変数picture_structur
e を調べ、picture_structure がframe構造である
かをチェックする。真であればステップS411に進
み、偽であればステップS415に進む。ステップS4
11で、メモリ上の変数frame_pred_frame_dctを調べ、
frame_pred_frame_dctの値が0でないかをチェックす
る。真であればステップS412に進み、偽であれば図
10のステップS418に進む。ステップS412で、
入出力ポートから、入力バイナリデータ列の先頭2ビッ
ト分を読み込み、それをメモリ上の変数BSの領域に代
入する。そして、ステップS413に進む。ステップS
413で、BSの値からframe_motion_type を求める。
具体的には、2ビットのデータであるBSの値を、メモ
リ上の変数frame_motion_type にコピーすれば良い。そ
して、ステップS414に進む。ステップS414で、
入力バイナリデータ列の先頭から2ビット分削除し、3
ビット目を先頭とする。そして、図10のステップS4
18に進む。また、ステップS415で、入出力ポート
から、入力バイナリデータ列の先頭2ビット分を読み込
み、それをメモリ上の変数BSの領域に代入する。そし
て、ステップS416に進む。ステップS416で、B
Sの値からfield_motion_type を求める。具体的には、
2ビットのデータであるBSの値を、メモリ上の変数fi
eld_motion_type にコピーすれば良い。そして、ステッ
プS417に進む。ステップS417で、入力バイナリ
データ列の先頭から2ビット分削除し、3ビット目を先
頭とする。そして、図10のステップS418に進む。
【0016】図10のステップS418で、メモリ上の
変数picture_structure 、frame_pred_frame_dct、macr
oblock_intra 、macroblock_pattern を調べ、picture_
structure がframe構造であり、かつ、frame_pred
_frame_dctの値が0であり、かつ、macroblock_intraあ
るいはmacroblock_patternのどちらかが0でないかをチ
ェックする。真であればステップS419に進み、偽で
あればステップS422に進む。ステップS419で、
入出力ポート33から、入力バイナリデータ列の先頭1
ビット分を読み込み、それをメモリ32上の変数BSの
領域に代入する。そして、ステップS420に進む。ス
テップS420で、BSの値からdct_typeを求める。具
体的には、1ビットのデータであるBSの値を、メモリ
32上の変数dct_typeにコピーすれば良い。そして、ス
テップS421に進む。ステップS421で、入力バイ
ナリデータ列の先頭から1ビット分削除し、2ビット目
を先頭とする。そして、ステップS422に進む。そし
て、ステップS422で、この一連の処理は終わる。
【0017】このようにして、マイクロプロセッサを用
いて、macroblock_modesに関する復号が行われる。
【0018】
【発明が解決しようとする課題】ところで、上記ステッ
プS405、ステップS409、ステップS410、ス
テップS411、ステップS418の全ての分岐におい
て、真である場合、ステップS402、ステップS40
6、ステップS412、ステップS419での4箇所
で、入出力ポート33から、入力バイナリデータ列を読
み込まなくてはいけない。読み込む処理には時間がかか
るため、復号処理を高速に行うことが出来ないという欠
点がある。
【0019】すなわち、従来の復号化方法においては、
1つの値を復号するのに、1回、入力バイナリデータ列
を読み込まなくてはいけないので、復号処理を高速に行
いたいという要望に答えられていない。
【0020】本発明は、このような実情に鑑みてなされ
たものであり、複数の原データを圧縮したバイナリデー
タ列を復号する際に、復号処理を高速に行い得るような
可変長復号化方法及び可変長復号化装置の提供を目的と
する。
【0021】
【課題を解決するための手段】本発明に係る可変長復号
化方法によれば、複数の原データを圧縮したバイナリデ
ータ列を入力とし、上記バイナリデータ列から復号を行
い、上記複数の原データを復元する可変長復号化方法に
おいて、上記複数の原データに対応する符号の内、各符
号が最長の符号とした場合の合計の符号長(例えば、1
4ビット)だけ、上記バイナリデータ列からデータを読
み込み、上記読み込んだデータから、上記複数の原デー
タを復号すると共に、上記複数の原データの復号に際し
使用したビット数(UB)を求め、上記使用したビット
数だけ、上記バイナリデータ列の先頭から削除すること
により、上述した課題を解決する。
【0022】また、本発明に係る可変長復号化装置によ
れば、複数の原データを圧縮したバイナリデータ列を入
力とし、上記バイナリデータ列から復号を行い、上記複
数の原データを復元する可変長復号化装置において、上
記複数の原データに対応する符号の内、各符号が最長の
符号とした場合の合計の符号長だけ、上記バイナリデー
タ列からデータを読み込み、上記読み込んだデータを格
納する記憶素子を有し、上記記憶素子に記憶された上記
読み込んだデータから、上記複数の原データを復号する
と共に、上記複数の原データの復号に際し使用したビッ
ト数を求める復元データ生成回路を有し、上記使用した
ビット数だけ、上記バイナリデータ列の先頭から削除す
るデータ削除回路を有することにより、上述した課題を
解決する。
【0023】本発明の可変長復号化方法及び可変長復号
化装置によれば、入力データ列の先頭から、一度、多め
に(例えば、8〜128ビット程度)入力バイナリデー
タ列を読み込み、それをメモリ32上の変数BSの領域
に格納する。そして、このBSから、複数のデータに関
する復号を行い、それぞれの復号において使用したビッ
ト数の合計を求め、その合計数の値だけ入力バイナリデ
ータ列の先頭から削除している。これにより、一度の入
力バイナリデータ列の読み込みで、複数のデータに関す
る復号を行うことができ、復号処理を高速に行うことが
可能である。
【0024】
【発明の実施の形態】以下、本発明の実施の形態につい
て図面を参照しながら説明する。
【0025】図1は、本発明の実施の形態を説明するた
めの図である。この本発明の実施の形態においては、複
数の原データを圧縮したバイナリデータ列を入力とし、
上記バイナリデータ列から復号を行い、上記複数の原デ
ータを復元する可変長復号化方法を前提としている。
【0026】図1においては、ステップS11で復号処
理が開始されると、最初のステップS12において、上
記複数の原データに対応する符号の内、各符号が最長の
符号とした場合の合計の符号長だけ、上記バイナリデー
タ列からメモリにデータを読み込んでいる。次のステッ
プS13では、上記読み込んだデータから、上記複数の
原データを復号している。次のステップS14では、上
記複数の原データの復号に際し使用したビット数を求
め、次のステップS15に進んで、上記使用したビット
数だけ、上記バイナリデータ列の先頭から削除し、次の
ステップS16で処理を終了している。ここで、ステッ
プS13、S14、S15の順序は前後してもよい。
【0027】このような処理を実現するためのハードウ
ェア構成の一例を図2に示す。
【0028】図2は、一般的なマイクロプロセッサの内
部構成を示しており、このマイクロプロセッサは、論理
演算回路31、メモリ32、入出力ポート33、バス線
34、及び制御回路35を有して構成されている。入出
力ポート33からデータが入力され、バス線34を介し
てメモリ32に取り込まれる。取り込まれたデータは、
メモリ32からバス線34を介して論理演算回路31に
供給され、論理演算回路(ALU)31で所望の処理が
行われ、メモリ32にフィードバックされる。全ての処
理が終わると、結果は、バス線34を介して入出力ポー
ト33に出力される。これらの制御は、制御回路35に
て行われる。このようにして、データはマイクロプロセ
ッサで所望の処理が行われていく。
【0029】次に、上記実施の形態を、前述したいわゆ
るMPEG2により圧縮符号化された符号データ列を復
号化する場合の処理手順の具体例について説明する。
【0030】図3〜図5は、前記図7と共に説明したM
PEG2符号化データの内のマクロブロックモード(ma
croblock_modes)の部分の符号について復号を行う手順
を示しており、例えば図2に示すマイクロプロセッサに
より可変長復号を行う場合の処理手順を示している。
【0031】この具体例においては、図3〜図5の一連
の操作を行う前に、予め、spatial_temporal_weight_co
de_flag 等は復号され、図2のメモリ32上のそれぞれ
の領域に格納されているとする。
【0032】図3において、ステップS101でこの一
連の操作は始まり、ステップS102に進む。
【0033】ステップS102で、図2の入出力ポート
33から、入力バイナリデータ列(符号データ列)の先
頭14ビット分を読み込み、それをメモリ32上の変数
BSの領域に代入する。そして、ステップS103に進
む。ステップS103で、BSの値を先頭から調べてい
き、macroblock_type の可変長符号のパターンと一致す
るパターンを検出し、そのパターンに対応する復号デー
タをmacroblock_typeとする。つまり、対応する復号デ
ータをメモリ32上の変数macroblock_type の領域に代
入する。この一致するパターンの検出は、論理演算回路
31で行われる。また、この一致したパターンの長さ
(復号において使用したビット数)をメモリ32上の変
数UBの領域に代入する。macroblock_type に関する符
号長は、最短で1ビット、最長で9ビットである(図7
参照)から、14ビット分のデータ(符号)をコピーし
たBSの値のみから、必ず復号できる(UB=1〜
9)。次にステップS104に進む。ステップS104
で、BSの先頭(左端)からUBビット分削除し、UB
ビット分シフトする。これにより、入力バイナリデータ
列の先頭からUBビット分削除しUB+1ビット目を先
頭とした後の「入力バイナリデータ列の先頭から14−
UBビット分の値」と、BSの値は一致する。そして、
ステップS105に進む。
【0034】ステップS105で、メモリ32上の変数
spatial_temporal_weight_code_flag 、spatial_tempor
al_weight_code_table_indexを調べ、spatial_temporal
_weight_code_flag が1であり、かつ、spatial_tempor
al_weight_code_table_indexが0でないかをチェックす
る。このチェックは、論理演算回路31で行われる。真
であればステップS106に進み、偽であれば図4のス
テップS109に進む。ステップS106で、BSの値
からspatial_temporal_weight_codeを求める。具体的に
は、BSの先頭(左端)の2ビットのデータを、メモリ
32上の変数spatial_temporal_weight_codeにコピーす
れば良い。そして、ステップS107に進む。ステップ
S107で、UB+2を新たにUBとする。そして、ス
テップS108に進む。ステップS108で、BSの先
頭から2ビット分削除し、2ビット分シフトする。そし
て、図4のステップS109に進む。
【0035】図4のステップS109で、メモリ32上
の変数macroblock_motion_forward、macroblock_motion
_backwardを調べ、macroblock_motion_forward 、ある
いは、macroblock_motion_backwardの少なくとも一方が
0でないかをチェックする。真であればステップS11
0に進み、偽であれば図5のステップS118に進む。
ステップS110で、メモリ32上の変数picture_stru
cture を調べ、picture_structure がframe構造で
あるかをチェックする。真であればステップS111に
進み、偽であればステップS115に進む。ステップS
111で、メモリ32上の変数frame_pred_frame_dctを
調べ、frame_pred_frame_dctの値が0でないかをチェッ
クする。真であればステップS112に進み、偽であれ
ばステップS118に進む。ステップS112で、BS
の値からframe_motion_type を求める。具体的には、B
Sの先頭2ビットのデータを、メモリ32上の変数fram
e_motion_type にコピーすれば良い。そして、ステップ
S113に進む。ステップS113で、UB+2を新た
にUBとする。そして、ステップS114に進む。ステ
ップS114で、BSの先頭から2ビット分削除し、2
ビット分シフトする。そして、図5のステップS118
に進む。また、ステップS115で、BSの値からfiel
d_motion_type を求める。具体的には、BSの先頭2ビ
ットのデータを、メモリ32上の変数field_motion_typ
e にコピーすれば良い。そして、ステップS116に進
む。ステップS116で、UB+2を新たにUBとす
る。そして、ステップS117に進む。ステップS11
7で、BSの先頭から2ビット分削除し、2ビット分シ
フトする。そして、図5のステップS118に進む。
【0036】図5のステップS118で、メモリ32上
の変数picture_structure 、frame_pred_frame_dct、ma
croblock_intra、macroblock_patternを調べ、picture_
structure がframe構造であり、かつ、frame_pred
_frame_dctの値が0であり、かつ、macroblock_intraあ
るいはmacroblock_patternのどちらかが0でないかをチ
ェックする。真であればステップS119に進み、偽で
あればステップS121に進む。ステップS119で、
BSの値からdct_typeを求める。具体的には、
BSの先頭1ビットのデータを、メモリ32上の変数dc
t_typeにコピーすれば良い。そして、ステップS120
に進む。ステップS120で、UB+1を新たにUBと
する。そして、ステップS121に進む。
【0037】ステップS121で、入力バイナリデータ
列の先頭からUBビット分削除し、UB+1ビット目を
先頭とする。これは、具体的には、macroblock_modes以
降の別の復号において、入力バイナリデータ列を先頭か
ら読み込むとき、UB+1ビット目から読み込むことを
意味する。そして、ステップS122に進む。このステ
ップS122で、この一連の処理は終わる。
【0038】このようにして、例えば図2に示すような
マイクロプロセッサにより、macroblock_modesに関する
復号が行われる。
【0039】ここで、ステップS102において入力バ
イナリデータ列から14ビット取ってメモリ32に読み
込むことについて説明する。
【0040】前記図7から分かるように、macroblock_m
odesに関する符号は、最長で、 「macroblock_type の最長の符号の長さ」+「spatial_
temporal_weight_codeの符号長」+「frame_motion_typ
e の符号長、あるいは、field_motion_type の符号長」
+「dct_typeの符号長」=9+2+2+1=14ビット である。従って、ステップS102において14ビット
読み込むことで、必ず、ずなわち最長の場合を考慮して
も、全て復号できる。つまり、ステップS102におい
て最長の場合を考慮したビット数だけ読み込んでいるの
である。
【0041】このように、本発明の実施の形態において
は、一度、多めに(例えば、8〜128ビット程度)入
力バイナリデータ列をステップS102において読み込
み、それをメモリ32上の変数BSの領域に格納する。
そして、このBSの内容から、複数のデータに関する復
号を行い、それぞれの復号において使用したビット数の
合計(UB)を求め、ステップS121において、その
合計数の値だけ入力バイナリデータ列の先頭から削除し
ている。これにより、一度の入力バイナリデータ列の読
み込みで、複数のデータに関する復号を行うことがで
き、復号処理を高速に行うことが可能である。
【0042】また、マイクロプロセッサの種類によって
は、図2に示す構成において、さらに、レジスタファイ
ルを有する場合がある。レジスタファイルは、図2のバ
ス線34に接続されており、メモリ32と論理演算回路
31とにアクセス出来る。これは、メモリ32の読み書
きが比較的低速なので、高速にアクセスできるようにメ
モリ32と論理演算回路31の間にレジスタファイルを
設けているものである。この場合、上記BSの値、すな
わち上記入力バイナリデータ列から読み込んだデータ
を、上記レジスタファイル上に常駐させることにより、
さらに高速処理が可能となる。
【0043】以上説明したような本発明の実施の形態
は、MPEG2符号化データの他の部分に対しても適用
可能であり、他の具体例として、符号化データの動きベ
クトル(motion_vector) の部分について、図6を参照
しながら説明する。
【0044】図6は、MPEG2符号化データのmotion
_vectorの部分の符号を示している。このmotion_vector
の部分の符号は、最初に1〜11ビットの符号に符号
化されたmotion_code[r][s][0]がある。次に、f_code
[s][0]が1でなく、かつ、motion_code[r][s][0]が0で
ないときは、1〜8ビットの符号に符号化されたmotion
_residual[r][s][0]がある。次に、dmvが1のとき
は、1〜2ビットの符号に符号化されたdmvector[0] が
ある。
【0045】次に、1〜11ビットの符号に符号化され
たmotion_code[r][s][1]がある。次に、f_code[s][1]が
1でなく、かつ、motion_code[r][s][1]が0でないとき
は、1〜8ビットの符号に符号化されたmotion_residua
l[r][s][1]がある。次に、dmvが1のときは、1〜2
ビットの符号に符号化されたdmvector[1] がある。
【0046】この部分に、本発明の実施の形態を適用す
る場合、まず、考えられる最大の長さである11+8+
2+11+8+2=42ビットを、入力バイナリデータ
列の先頭から読み込む。そして、読み込んだデータか
ら、最初に、motion_code[r][s][0]を復号し、次に、必
要に応じて、motion_residual[r][s][0]を復号し、次
に、必要に応じて、dmvector[0] を復号する。さらに、
motion_code[r][s][1]を復号し、次に、必要に応じて、
motion_residual[r][s][1]を復号し、次に、必要に応じ
て、dmvector[1] を復号する。そして、これら復号に使
用された合計のビット数を、入力バイナリデータ列の先
頭から削除する。このようにして、一度の入力バイナリ
データ列の読み込みで、複数のデータに関する復号を行
うことができ、復号処理を高速に行うことが可能であ
る。
【0047】また、本発明は、MPEG2符号化データ
に関する復号に限定されないことは勿論である。
【0048】
【発明の効果】本発明によれば、複数の原データを圧縮
したバイナリデータ列を復号する際に、複数の原データ
に相当するデータをバイナリデータ列から読み込んでい
るため、読み込んだデータから複数の復元データを得る
ことができ、データの読み込み回数を少なくすることが
でき、復号処理を高速に行うことが可能となる。
【図面の簡単な説明】
【図1】本発明の基本的な実施の形態を示すフローチャ
ートである。
【図2】本発明の実施の形態が適用されるハードウェア
の一例の概略構成を示すブロック図である。
【図3】本発明の実施の形態の復号化処理手順の具体例
を示すフローチャートである。
【図4】本発明の実施の形態の復号化処理手順の具体例
の図3の続きを示すフローチャートである。
【図5】本発明の実施の形態の復号化処理手順の具体例
の図4の続きを示すフローチャートである。
【図6】MPEG2符号化データの動きベクトル(moti
on_vector) の部分の符号を示す図である。
【図7】MPEG2符号化データのマクロブロックモー
ド(macroblock_modes)の部分の符号を示す図である。
【図8】従来例の復号化処理手順の具体例を示すフロー
チャートである。
【図9】従来例の復号化処理手順の具体例の図8の続き
を示すフローチャートである。
【図10】従来例の復号化処理手順の具体例の図9の続
きを示すフローチャートである。
【符号の説明】
31 論理演算回路、 32 メモリ、 33 入出力
ポート、 34 バス線、 35 制御回路

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】 複数の原データを圧縮したバイナリデー
    タ列を入力とし、上記バイナリデータ列から復号を行
    い、上記複数の原データを復元する可変長復号化方法に
    おいて、 上記バイナリデータ列から上記複数の原データに相当す
    るデータを読み込むデータ読み込み工程と、 上記読み込んだデータから、上記複数の原データを復号
    すると共に、上記複数の原データの復号に際し使用した
    ビット数を求め、上記使用したビット数だけ、上記バイ
    ナリデータ列の先頭から削除する工程とを有することを
    特徴とする可変長復号化方法。
  2. 【請求項2】 上記データ読み込み工程は、上記複数の
    原データに対応する符号の内、各符号が最長の符号とし
    た場合の合計の符号長だけ、上記バイナリデータ列から
    データを読み込むことを特徴とする請求項1記載の可変
    長復号化方法。
  3. 【請求項3】 上記復号は、マイクロプロセッサを使用
    して行われ、上記読み込んだデータは、上記マイクロプ
    ロセッサ内のレジスタファイルに常駐させることを特徴
    とする請求項1記載の可変長復号化方法。
  4. 【請求項4】 上記読み込んだデータから上記複数の原
    データのうち一番最初の原データを復号をした時点で、
    上記一番最初の原データに使用したビット数だけ上記読
    み込んだデータの先頭部分を削除して、上記一番最初の
    原データに使用したビット数だけシフトして、上記一番
    最初の原データに使用したビット数だけ後方に意味のな
    いデータを付け加えた加工データを作成し、上記複数の
    原データの内、二番目の原データは、上記加工データを
    用いて復号することを特徴とする請求項1記載の可変長
    復号化方法。
  5. 【請求項5】 複数の原データを圧縮したバイナリデー
    タ列を入力とし、上記バイナリデータ列から復号を行
    い、上記複数の原データを復元する可変長復号化装置に
    おいて、 上記複数の原データに対応する符号の内、各符号が最長
    の符号とした場合の合計の符号長だけ、上記バイナリデ
    ータ列からデータを読み込み、上記読み込んだデータを
    格納する記憶手段と、 上記記憶手段に記憶された上記読み込んだデータから、
    上記複数の原データを復号すると共に、上記複数の原デ
    ータの復号に際し使用したビット数を求める復元データ
    生成手段と、 上記使用したビット数だけ、上記バイナリデータ列の先
    頭から削除するデータ削除手段とを有することを特徴と
    する可変長復号化装置
JP15393596A 1996-06-14 1996-06-14 可変長復号化方法及び可変長復号化装置 Withdrawn JPH104360A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP15393596A JPH104360A (ja) 1996-06-14 1996-06-14 可変長復号化方法及び可変長復号化装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP15393596A JPH104360A (ja) 1996-06-14 1996-06-14 可変長復号化方法及び可変長復号化装置

Publications (1)

Publication Number Publication Date
JPH104360A true JPH104360A (ja) 1998-01-06

Family

ID=15573302

Family Applications (1)

Application Number Title Priority Date Filing Date
JP15393596A Withdrawn JPH104360A (ja) 1996-06-14 1996-06-14 可変長復号化方法及び可変長復号化装置

Country Status (1)

Country Link
JP (1) JPH104360A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4899214A (en) * 1988-09-02 1990-02-06 Itek Graphic Corp. Low cost color scanner

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4899214A (en) * 1988-09-02 1990-02-06 Itek Graphic Corp. Low cost color scanner

Similar Documents

Publication Publication Date Title
CA2134681C (en) Apparatus and method for encoding and decoding images
US6725372B1 (en) Digital watermarking
US6606393B1 (en) Message authentication code using image histograms
EP0648055B1 (en) Scrambling system, scrambling apparatus and descrambling apparatus
EP0778709B1 (en) MPEG-2 decoding with a reduced RAM requisite by ADPCM recompression before storing MPEG decompressed data
EP1528813B1 (en) Improved video coding using adaptive coding of block parameters for coded/uncoded blocks
EP2317476B1 (en) Multimedia signature coding and decoding
US6516318B2 (en) Management system and terminal apparatus to manage and control distribution and use of software and the like
US5991403A (en) Recoverable cryptographic transformation on YUV data suitable for compressions
US20010048770A1 (en) Image processing apparatus and method, and its computer program and storage medium
US20010014178A1 (en) Image predictive decoding method, image predictive decoding apparatus, image predictive coding method, image predictive coding apparatus, and data storage media
EP0817498B1 (en) MPEG-2 decoding with a reduced RAM requisite by ADPCM recompression before storing MPEG-2 decompressed data optionally after a subsampling algorithm
US6414608B1 (en) Variable length code decoding device, digital broadcast receiving apparatus, and DVD reproducing apparatus
EP0738084A2 (en) Image decoding apparatus
US5963342A (en) Image processing apparatus and method thereof
JP3185763B2 (ja) 動画像符号化装置
JPH104360A (ja) 可変長復号化方法及び可変長復号化装置
JP3262761B2 (ja) エラー許容モードビデオコデック方法及びその装置
JPH06152986A (ja) 画像圧縮方法及び装置
JP2776284B2 (ja) 画像符号化装置
JP2918360B2 (ja) 逆量子化方法および画像データ復元装置
US20050147306A1 (en) Method of encoding and decoding digital images
JP3200515B2 (ja) 符号化復号化画像の処理方法
JPH09172633A (ja) 画像圧縮符号列の編集装置及び復号装置
JP3288677B2 (ja) 可変長符号復号化装置、デジタル放送受信装置及びdvd再生装置

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20030902