JP3735097B2 - Movie playback apparatus and movie playback method - Google Patents
Movie playback apparatus and movie playback method Download PDFInfo
- Publication number
- JP3735097B2 JP3735097B2 JP2003102850A JP2003102850A JP3735097B2 JP 3735097 B2 JP3735097 B2 JP 3735097B2 JP 2003102850 A JP2003102850 A JP 2003102850A JP 2003102850 A JP2003102850 A JP 2003102850A JP 3735097 B2 JP3735097 B2 JP 3735097B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- moving image
- image data
- identification information
- area
- 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.)
- Expired - Lifetime
Links
- 238000000034 method Methods 0.000 title claims description 60
- 238000012545 processing Methods 0.000 claims description 47
- 239000003086 colorant Substances 0.000 description 46
- 238000013139 quantization Methods 0.000 description 40
- 238000006243 chemical reaction Methods 0.000 description 23
- 230000015654 memory Effects 0.000 description 22
- 238000010586 diagram Methods 0.000 description 15
- MHABMANUFPZXEB-UHFFFAOYSA-N O-demethyl-aloesaponarin I Natural products O=C1C2=CC=CC(O)=C2C(=O)C2=C1C=C(O)C(C(O)=O)=C2C MHABMANUFPZXEB-UHFFFAOYSA-N 0.000 description 12
- 238000013144 data compression Methods 0.000 description 11
- 238000002372 labelling Methods 0.000 description 7
- 101150044251 OGT gene Proteins 0.000 description 5
- 238000012937 correction Methods 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 238000012546 transfer Methods 0.000 description 4
- 238000007906 compression Methods 0.000 description 3
- 230000006835 compression Effects 0.000 description 3
- 230000012447 hatching Effects 0.000 description 3
- 230000005236 sound signal Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
Images
Landscapes
- Optical Recording Or Reproduction (AREA)
- Television Signal Processing For Recording (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
Description
【0001】
【産業上の利用分野】
この発明は、動画データが記録された記録媒体及びこの記録媒体からの動画データのデコード装置に関する。
【0002】
【従来の技術】
CD−ROMは、記録容量が大きく、マイクロコンピュータを使用したゲーム機やパーソナルコンピュータなどにおいて、外部記憶媒体として使用されているが、このCD−ROMに動画(アニメーション)の画像データを記録しておき、この画像データを読み出してホストコンピュータに供給し、CRTディスプレイに動画を表示することが考えられている。
【0003】
この場合、従来のCD−ROMからの画像データの読み出し方としては、CD−ROMから画像データを連続して読み出して動画をディスプレイに表示するのではなく、CD−ROMの所定の記録領域に記録されている複数駒からなる動画の画像データを読み出してホストコンピュータ側に用意されている大容量のRAMに転送し、このRAMからの画像データを読み出すことにより動画を表示するようにしている。
【0004】
【発明が解決しようとする課題】
しかしながら、この方法による場合には、動画の1秒当たりの駒数が少なく、動きのスムースなアニメーションを得ることができない。
【0005】
そこで、この発明の発明者は、特願平3−74555号として、CD−ROMから画像データを連続して読み出しながら動画を再生して、駒数が多く、スムースな動きのアニメーションを実現できる方法を提案している。
【0006】
ところで、ゲーム機などでは、アニメーションのための画像データだけでなく、いわゆる常駐キャラクタやゲーム上必要なその他のデータが必要となるが、上記のようにCD−ROMから連続読み出しでアニメーションを行なう場合に、アニメーションを止めることなく、その他のデータをCD−ROMから得るようにすることが望ましい。
【0007】
この要件を満足する方法として、CDの信号フォーマット上のサブコードを使用する方法が考えられる。しかしながら、この方法では、アニメーション以外のデータとして伝送できるデータ量に限りがあり、大量のデータを1度に送ることが困難であった。この発明は、以上の問題点を解決しようとするものである。
【0008】
【課題を解決する手段】
この発明によれば、動画を構成する圧縮された画像データと画像データを処理するためのデータとを含む動画データと、動画データ以外のデータとが記録エリア単位で連続して記録された記録媒体からデータを順次読み出しながら、動画データに基づく動画を再生する動画再生装置であって、
記録媒体から、記録エリア単位に、データを順次読み出す読み出し手段と、
読み出したデータを処理するための記憶手段と、
読み出したデータに含まれる当該データを識別するための識別情報を読み取り、
前記識別情報が動画データを示している場合には、読み出したデータを、画面を構成する単位で、前記記憶手段の第1の領域を用いて処理し、
前記識別情報が動画データ以外を示している場合には、読み出したデータを、前記記憶手段の第1の領域以外の領域を用いて処理する制御手段と、
前記記憶手段の第1の領域において処理された画面を構成する単位のデータを読み出して、動画として出力する出力手段とを備えることを特徴とする動画再生装置が提供される。
【0009】
また、この発明によれば、動画を構成する圧縮された画像データと画像データを処理するためのデータとを含む動画データと、動画データ以外のデータとが記録エリア単位で連続して記録された記録媒体からデータを順次読み出しながら、動画データに基づく動画を再生する動画再生方法であって、
記録媒体から、記録エリア単位に、データを順次読み出し、
読み出したデータに含まれる当該データを識別するための識別情報が動画データを示しているかどうかを判断し、
前記識別情報が動画データを示している場合には、読み出したデータを、画面を構成する単位で、記憶手段の第1の領域を用いて処理して、動画として再生し、
前記識別情報が動画データ以外を示している場合には、読み出したデータを、前記記憶手段の第1の領域以外の領域を用いて処理することを特徴とする動画再生方法が提供される。
【0010】
【作用】
動画データと動画データとの間に、動画データ以外のデータを挿入記録してあるが、動画データは動画再生用のメモリエリアに書き込まれ、その他データは、別個のメモリエリアに書き込まれる。したがって、その他データの期間は、動画データが欠如するので、その分だけ駒数が少なくなるが、その他データ後の動画データが動画再生用のメモリエリアに書き込まれると、動画が続く。したがって、視覚上は、動画(アニメーション)は止まるようなことはない。
【0011】
この場合には、その他データは、動画データの単位記録エリアの任意のものから任意のものまでの間に1度に大量に挿入することができる。したがって、アニメーションを止めることなく、動画データ以外のデータを大量に伝送することができる。
【0012】
【実施例】
先ず、動画の画像データのデータ圧縮方法と、圧縮した動画データ及び動画以外のその他のデータとを記録媒体に記録する方法について説明する。
【0013】
[動画の画像データのデータ圧縮方法]
図4及び図5は、この例の画像データ圧縮方法を実行するエンコード装置の一例のブロック図である。この例においては、圧縮した画像データはCD−ROMに記録する。このCD−ROMは、後述するようにゲーム機用のソフトとして用いられ、動画を再生できるように、画像データが高能率圧縮されている。
【0014】
この例においては、1フレーム(1画面)は、図6Aに示すように、横×縦=256画素×192画素で構成され、また、1画素は三原色がそれぞれ5ビットで表されている。なお、実際は、処理の都合でダミーの1ビットが最上位に追加され、1画素は、1ビット(ダミー)+5ビット×3色、すなわち16ビットとされる。そして、この原画像データが1フレーム単位で以下のようにデータ圧縮処理される。
【0015】
すなわち、原画像の1フレームのデータは、入力端21を通じてキャラクタ分割手段22に供給され、図6Bに示すように、1フレームの画像がそれぞれ横×縦=8画素×8画素からなる小領域ブロック(以下このブロックをキャラクタと称する)に分割される。したがって、図6Bにも示したように、1フレームの画像は、32×24=768個のキャラクタに分割される。そして、各キャラクタの画像データC(0) 〜C(767) は、レジスタ23に一時蓄えられる。
【0016】
このレジスタ23からの各キャラクタの画像データC(0) 〜C(767) は、第1のベクトル量子化手段24に供給される。この例においても、このベクトル量子化手段24においては、各キャラクタの画像データC(0) 〜C(767) が並列処理される。このように並列処理せずに、画像データC(0) 〜C(767) を順次にベクトル量子化処理するようにしても勿論よい。後述する各処理においても同様である。
【0017】
このベクトル量子化手段24では、各キャラクタ画像データC(k) (k=0〜767)毎に、そのキャラクタ内の画素として表われる色が4色以内となるようにベクトル量子化がなされる。このベクトル量子化の手法としては種々提案されているものが使用できるが、この例では、赤、青、緑の三原色の色成分を互いに直交する方向にとって3次元色空間を考えたとき、各画素間のその色空間上の距離を求め、互いの距離の短い画素同志をまとめることにより、すなわち近似する色の画素同志をまとめて1つの代表色とする処理を行うことにより、キャラクタ内の画素の色が4色以下の代表色に収まるように画素データを丸める。
【0018】
そして、1フレーム内の全キャラクタについて、そのキャラクタ内の画素の色が4色に収まるようにベクトル量子化した後、その1フレーム内の全キャラクタ内における量子化誤差(代表色の位置を中心として、その代表色と各画素との前記色空間上の距離に相当)の最大値Emax を求める。このとき、予め、1フレーム内の量子化誤差の最大値として許容されるスレッショールド値Ethを設定しておく。そして、前記量子化誤差の最大値Emax とスレッショールド値Ethとを比較する。そして、量子化誤差の最大値Emax がスレッショールド値Ethより大きいときは、さらに、各キャラクタ内の画像データについて、量子化誤差が前記最大値Emax を越える直前までベクトル量子化を行い、キャラクタ内の色数を減らしていく。これは、1フレーム内の全キャラクタ内の画像データのS/Nを均一にするためである。これを、量子化誤差の最大値Emax がスレッショールド値Ethを越える直前まで行う。このようにすれば、全てのフレームでのS/N比は一定に保たれる。
【0019】
このように量子化すると、色の変化の平坦なキャラクタでは、画素の色数が減る。これは、色の変化の平坦なキャラクタでは、色数が減少しても量子化誤差はさほど増大しないからである。この過程で、キャラクタ内の色数が2色に、さらには1色のみになるキャラクタも生じる。そして、各キャラクタ内で選択された色が代表色とされる。
【0020】
こうして、ベクトル量子化手段24からは、各キャラクタ内では4色以下に圧縮された画像データが得られる。このベクトル量子化手段24からのキャラクタ単位の画像データは、パレット分割手段25に供給される。
【0021】
このパレット分割手段25では、キャラクタをそのキャラクタ内の色の分布によって、似た色を持つキャラクタ同志をまとめることにより、8つのグループ(各グループをパレットと称する)に分類する。例えば、図6Cに示すように、画像の内容に応じて色調の似たキャラクタのグループが、A,B,C,D,E…のように生じたとした場合、このグループA,B,C,D,E…毎にパレットが構成される。
【0022】
この例の場合、8つのパレットの割当方法は、(1)各キャラクタの代表色(キャラクタ内の色の平均値)を計算し、各キャラクタはその代表色からなるものと仮定する。
(2)ベクトル量子化を行い、1フレーム内の全てのキャラクタを8色に量子化する。すなわち、キャラクタ数は768であるので、キャラクタの代表色は最大768色となるが、これを8色のキャラクタに量子化する。
(3)同じラベル(代表色)を持つキャラクタ同志をまとめて一つのパレットとする。
の3ステップにより行われる。
【0023】
なお、このパレットを構成するキャラクタのグループは、連続したキャラクタの領域のものである必要はなく、飛び飛びのキャラクタ同志が、1つのパレットのグループを構成してもよい。
【0024】
8個のパレットのデータP(0) 〜P(7) は、レジスタ26に一時蓄えられ、それぞれ第2のベクトル量子化手段27に供給され、並列処理される。
【0025】
第2のベクトル量子化手段27では、各パレット毎に16色の画素の代表色が決定される。このとき、1つのパレット内の画素の色数が16色より多ければ、キャラクタ内の場合と同様にして、ベクトル量子化が行われてパレット内の色が16色になるように丸められる。そして、その結果の16色が画素の代表色とされる。
【0026】
こうして、それぞれ16色に丸められた8個のパレットのキャラクタ単位の画像データP(0) 〜P(7) は、それぞれラベリング手段28に供給され、並列処理される。各ラベリング手段28では、各パレットについてそれぞれ画素の代表色として選定された16色又は16以下の色データの色変換テーブルCOL(0) 〜COL(7) が作成され、レジスタ29に一時蓄えられる(図7参照)。このレジスタ29からの色変換テーブルCOL(0) 〜COL(7) のデータは、記録データとして記録処理手段38に供給される。
【0027】
また、各ラベリング手段28では、各色変換テーブルCOL(0) 〜COL(7)が参照されて、各パレットに含まれる各キャラクタについて、それぞれ16色に丸められた画素データが、そのパレットの色変換テーブル上で、その画素の色が対応する色番号で表現されるラベル画像データLAB(0) 〜LAB(7) に変換される(図8参照)。そして、このラベル画像データLAB(0) 〜LAB(7) が、レジスタ30に一時蓄えられる。
【0028】
この場合、前述もしたように、キャラクタは、4又は3色からなるもの(図8A)、2色からなるもの(図8B)、1色のみからなるもの(図8C)がある。キャラクタが4又は3色の場合には、その4又は3色の色番号を示すテーブルが存在すれば、各画素データは、その色番号テーブルのどれであるか示す2ビットのデータで表すことができる。したがって、4又は3色からなるキャラクタの各画素データは、2ビットで表現することができる。同様に、キャラクタが2色であれば、そのキャラクタの2色の色番号テーブルと、それぞれ1ビットの画素データで表すことができる。さらに、1色のみであれば、後述するように、その色データのみとすることができる。
【0029】
2ビットで表現できるキャラクタを2ビットモードキャラクタ、1ビットで表現できるキャラクタを1ビットモードキャラクタ、1色のみのキャラクタを単色キャラクタと、以下称する。
【0030】
デコード処理を考慮した場合、2ビットモードキャラクタ、1ビットモードキャラクタ、単色キャラクタは、それぞれまとめて取り扱ったほうが高速処理ができる。しかし、1フレーム中の768個のキャラクタにおいては、一般に、図9Aに示すように、各モードキャラクタは、分散して混在する。図9で、▲1▼は1ビットモードキャラクタ、▲2▼は2ビットモードキャラクタ、○は単色キャラクタを示している。
【0031】
そこで、レジスタ30からの各パレットのラベル画像データLAB(0) 〜LAB(7) は、ソート手段31に供給され、図9Bに示すように、2ビットモードキャラクタ、1ビットモードキャラクタ、単色キャラクタの順に1フレームのキャラクタデータが並べ換えられる。
【0032】
そして、このソート手段31では、1フレームのキャラクタについて元の順序への並べ換えのためのテーブル(以下これをスクリーンテーブルという)scrが形成される。このスクリーンテーブルscrは、図10に示すように、1フレームの画像をキャラクタと同じ大きさの小領域に分割したとき、各小領域についてキャラクタ番号CNo. と、パレット番号PNo. が定められて構成される。キャラクタ番号CNo. は、その小領域の位置に表示されるべきキャラクタのソート後の1フレーム中でのキャラクタ順位である。また、パレット番号PNo. は、その小領域に表示されるキャラクタが、8個のパレットのうちのどのパレットに含まれているかを示す。すなわち、どの色変換テーブルをデコード時に使用するかを示すことになる。この場合、1つの小領域のキャラクタ番号CNo. とパレット番号PNo. とは、例えば2バイトのデータで構成される。
【0033】
また、この例の場合、キャラクタ番号CNo. のうちの0〜15までは、単色キャラクタに対してのみ割り当てられる。すなわち、テーブルscrにおいて、ある小領域の位置に表示されるキャラクタが単色キャラクタであるときには、その小領域に対しては、パレット番号PNo. は2ビットモード又は1ビットモードキャラクタと同様に割り当てられるが、キャラクタ番号CNo. の代わりに、そのパレットの色変換テーブルの0〜15の色番号のうちのそのキャラクタの色の色番号が割り当てられる。これにより、その小領域の色(単色)が決まる。したがって、単色キャラクタについては、このスクリーンテーブルscrに、そのキャラクタの色のデータを前記のように登録して記録することにより、後述する各キャラクタについての圧縮画像データとしては記録しない。
【0034】
以上のような単色キャラクタのため、2ビットモード及び1ビットモードのキャラクタに対するキャラクタ番号は、16番から始まる。もともと、キャラクタ番号には、10ビットが割り当てられているので、このような番号のシフトには十分に余裕がある。
【0035】
スクリーンテーブルscrのデータは、記録データとして記録処理手段38に供給される。
【0036】
そして、以上のようにしてソート手段31においてソートされて並べ換えられたキャラクタ単位の画像データのうち、N個(Nは768以下の整数)の各2ビットモードのキャラクタのデータC2(0)〜C2(N-1)は、レジスタ32を介してラベリング手段33に供給される。このラベリング手段33においては、各2ビットモードのキャラクタのデータC2(0)〜C2(N-1)について、図11Aに示すように、そのキャラクタの4色又は3色の色番号テーブルと、その色番号テーブル上の各色番号位置を示す2ビットのインデックス番号のデータとからなる圧縮画像データdat2(0)〜dat2(N-1)が形成される。そして、これらの圧縮画像データdat2(0)〜dat2(N-1)がレジスタ34に一時蓄積される。
【0037】
同様に、ソート手段31からM個(Mは768以下の整数)の各1ビットモードのキャラクタのデータC1(0)〜C1(M-1)が、レジスタ35を介してラベリング手段36に供給される。このラベリング手段36においては、各1ビットモードのキャラクタのデータC1(0)〜C1(M-1)について、図11Bに示すように、そのキャラクタの2色の色番号テーブルと、その色番号テーブル上の各色番号位置を示す1ビットのインデックス番号のデータとからなる圧縮画像データdat1(0)〜dat1(M-1)が形成される。そして、これらの圧縮画像データdat1(0)〜dat1(M-1)がレジスタ37に一時蓄積される。
【0038】
そして、レジスタ34からの全ての2ビットモードの圧縮画像データと、レジスタ37からの全ての1ビットモードの圧縮画像データとは、それぞれ記録データとして記録処理手段38に供給される。
【0039】
また、端子39を通じて例えば常駐キャラクタや、ゲームの条件変更などのデータが、この記録処理手段38に供給される。
【0040】
[記録データの生成]記録処理手段38では、CD−ROMに記録するデータを作成する。この記録データは、この例では1フレームを1つの塊として処理するが、CD−ROMへのデータ記録態様は、CD−ROMのデータフォーマットに従ったものであることは勿論である。
【0041】
例えば、CD−ROMの記録モードがモード1のときのセクタは、図13のようになっている。すなわち、セクタの先頭にはシンク(同期)パターンが配され、それに続いて、セクタ番号やトラック番号などを含むヘッダが配される。そして、このヘッダの後が2Kバイトのユーザデータとされ、最後がユーザデータのエラー検出用及びエラー訂正用符号などからなる補助データとされる。
【0042】
この例の場合、セクタのユーザデータの領域に、前述した動画の画像データやその他のデータが記録される。そして、この2Kバイトのユーザデータの始めの32バイトは、識別用情報IDとされる。この識別用情報IDは、ユーザデータの領域にどのような内容のデータが記録されているかを示すと共に、同じ内容のデータが何セクタ続くかを示す情報とされる。なお、他の情報を含むようにすることもできることはもちろんである。
【0043】
この識別用情報IDが示すデータの内容としては、後述もするように、そのセクタのユーザデータが、▲1▼動画の画像データ、▲2▼色変換テーブル及びスクリーンテーブルscrの情報、▲3▼背景の静止画の画像データ、▲4▼常駐キャラクタのデータ、▲5▼ゲームの条件変更のデータ、…などが用意される。
【0044】
ところで、上述した1フレーム分の画像に関するデータは、2ビットモードと1ビットモードの各キャラクタの画素に関する圧縮画像データと、画像データ以外のデータであるところのその1フレームの8個のパレットに対する図7に示した色変換テーブルCOL(0) 〜COL(7) と、図10に示したスクリーンテーブルscrとで構成される。
【0045】
そして、この例の場合、記録する1フレーム分の圧縮画像データは、図12に示すように、その先頭に、2ビットモードのキャラクタ数Nと1ビットモードのキャラクタ数Mを示すモード数情報と、N個の2ビットモードのキャラクタの圧縮画像データdat2(n)(n=0,1,2…N-1)と、M個の1ビットモードのキャラクタの圧縮画像データdat1(m)(m=0,1,2…M-1)とで構成される。単色キャラクタは、前述したように、スクリーンテーブルscrにその色情報を登録しておくことにより、画素のデータとしては記録しない。
【0046】
そして、1キャラクタ分の情報は、図12の下側に示すように、色番号テーブルの情報と、64画素分のインデックス番号データからなる。図11に示したように、各画素に対応するインデックス番号データは、2ビットモードでは2ビット、1ビットモードでは1ビットとなる。この場合、2ビットモードのキャラクタ数Nと、1ビットモードのキャラクタ数Mとは画素の内容に応じて変化するので、1フレーム分のキャラクタ画素に関するデータのデータ長は可変である。
【0047】
この例では、各モードのキャラクタ数をモード数情報として記録するようにしたが、このモード数情報に代わって、2ビットモードの最後のキャラクタと、1ビットモードの最初のキャラクタとの間に、キャラクタデータとしては生じないようなビットパターンのモード区切り情報を記録するようにしてもよい。
【0048】
この例の場合、以上のようにして圧縮された動画に関するデータ量は、1フレーム当たり、次のようになる。
【0049】
1フレーム当たり8パレットであるので、色変換テーブルとしては、合計で、16(色)×8(パレット)×2(バイト)=256(バイト)
となる。また、スクリーンテーブルscrは、1キャラクタ当たり2バイトであるから、768×2(バイト)=1536(バイト)
となる。
【0050】
したがって、色変換テーブルとスクリーンテーブルscrの合計のデータ量は、2Kバイト以下であり、1セクタ内に収まる。
【0051】
また、動画の画像データは、2ビットモードのキャラクタにおいては、4ビットで表現される色番号は4種類であるので、色番号テーブルは、4(ビット)×4=16(ビット)=2(バイト)
となる。また、インデックス番号データは2ビットであるので、2(ビット)×64=128(ビット)=16(バイト)
となる。したがって、2ビットモードのキャラクタの1キャラクタ当たりのデータ量は、18バイトとなる。
【0052】
また、1ビットモードのキャラクタは、色番号は2色分でよいので、色番号テーブルは、4(ビット)×2=8(ビット)=1(バイト)
となる。また、インデックス番号データは1ビットであるので、1(ビット)×64=64(ビット)=8(バイト)
となる。したがって、1ビットモードのキャラクタの1キャラクタ当たりのデータ量は、9バイトとなる。
【0053】
単色キャラクタについてはキャラクタの各画素データは伝送しないので、1フレームの画像データの圧縮率は、1フレーム内の2ビットモード及び1ビットモードのキャラクタの個数と、単色キャラクタの個数の割合で定まる。例えば、2ビットモード:1ビットモード:単色=2:1:1=384:192:192の場合、 キャラクタ画素データ 2ビットモード 384×18=6912バイト 1ビットモード 192× 9=1728バイト 合 計 7640バイトとなり、8Kバイト以下であるので、4セクタ内に収まる。
【0054】
以上のことから、この例の場合、図14Aに示すように、動画に関するデータは、1フレーム分毎に5セクタとして記録することができる。すなわち、5セクタの内の始めの4セクタのユーザデータとして2ビットモード及び1ビットモードのキャラクタデータ(モード数情報は最初のセクタに含まれる)を記録する。そして、図14Aで斜線を付して示す5番目のセクタには、スクリーンテーブルscr及び色変換テーブルのデータを記録する。
【0055】
そして、各セクタのユーザデータの領域の32バイトの識別用情報IDとして、始めの4セクタのものには、動画の画像データであることを示す情報と、それが続くセクタ数(1番目のセクタの場合には4である)の情報が記録される。また、最後の5番目のセクタのものには、スクリーンテーブルscr及び色変換テーブルのデータであることを示す情報と、それが続くセクタ数の情報(この場合、1である)が記録される。
【0056】
こうして、1フレーム分の動画に関するデータが5セクタ毎に繰り返し記録されるものである。この場合、スクリーンテーブルscr、色変換テーブル及び画像データからなる1フレーム分のデータの合計は、10432バイトとなるので、CD−ROMの伝送レートが150Kバイト/秒であることを考え合わせると、この例の場合、15フレーム(駒)/秒の動画を記録ないし再生できることになる。
【0057】
また、この例の場合、CD−ROMには、端子39から入力された常駐キャラクタやその他のデータも、このセクタのユーザデータの領域に記録する。さらには、この例のゲーム機では、後述するようにデコーダにおいて、動画の背景画を静止画として別に作成することができ、CRTディスプレイには、両者の合成画を表示することができるようにされている。このため、静止画の画像データもCD−ROM中に記録するようにされている。この場合、静止画のデータは、例えば1画素16ビットのデータが4ビットに圧縮されて記録される。また、常駐キャラクタも同様にして4ビットに圧縮されて記録される。
【0058】
これらのデータは、図14Bにおいて斜線を付して示すように、上述した動画に関する1フレーム分のデータ同志の間に挿入記録される。そして、各セクタのユーザデータの領域の最初の識別用IDとして、そのデータ内容及びそれが続くセクタ数が記録される。
【0059】
なお、CD−ROMには、以上のような圧縮画像情報のほかに、この圧縮画像情報をデコードするためのプログラムと、ゲーム用のプログラムが記録される。さらには、オーディオ情報も適宜記録される。デコードのためのプログラムとしては、2ビットモード用のデコードプログラムと、1ビットモード用のデコードプログラムとが、それぞれ記録されている。また、キャラクタの並べ換えのプログラムも記録されている。これらのプログラムデータは、上述したようなデータとは、別個に記録され、デコーダ時、動画などの再生に先立ち、一括して読み出すことができるようにされている。なお、これらのプログラムデータも、上記の例の動画の画像データ以外のデータとして、動画データの途中に記録するようにすることもできる。
【0060】
こうして、以上説明したデータ圧縮方法によれば、1フレーム単位で、画像を階層的に小領域に分割し、各階層の画像データに対してベクトル量子化を行うようにしたので、画像データの圧縮率を上げることができる。
【0061】
この場合に、似た色を持つキャラクタごとにまとめられて1つのグループ(パレット)が形成され、それが1画面分について複数個形成されて、画像データがパレット(グループ)分割されている。そして、この似た色の画像部分からなるパレット内でベクトル量子化処理が行われるので、量子化誤差が少なくなる。
【0062】
また、デコード時、テーブルを参照するだけでデコード処理を行うことができるので、デコーダの構成が簡単になる。さらに、大容量のバッファメモリを必要としないので、内蔵RAMの容量が限定されている汎用のDSPをデコーダとして使用することができ、デコーダをローコスト化することができる。
【0063】
しかも、フレーム相関を利用しないで圧縮処理を行っているので、デコード時にエラーを生じても、そのエラーは1フレーム内で完結し、以後のフレームに影響することがない。
【0064】
さらに、デコーダ回路をローコストに提供できるとともに、記録媒体としてCD−ROMを使用できるので、コンピュータゲーム機のソフトに適用して効果的である。
【0065】
なお、以上の例では、ベクトル量子化手段24におけるベクトル量子化は、各フレームでのS/Nが一定に保たれるように、全てのフレームで、キャラクタ内での量子化誤差の最大値Emax が一定になるようにした。このため、フレームの情報量(画像内容の複雑さ)に応じて、量子化後のデータサイズが変化する。
【0066】
しかし、各キャラクタについて次のように量子化することにより、フレーム毎のデータ量(データ伝送レート)を一定にすることができる。
【0067】
すなわち、先ず、キャラクタ内の近似する色の画素同志をまとめる距離のスレッショールド値Eθの初期値を設定し、そのスレッショールド値により各キャラクタについてベクトル量子化を行う。つまり、各キャラクタ内の画像データについて、量子化誤差が前記Eθを越える直前までベクトル量子化を行う。この量子化により、色の変化の大きいキャラクタでは4色になるようにデータ圧縮される。また、色の変化の平坦なキャラクタでは、色数が減り、3色、2色あるいは1色になるキャラクタも生じる。
【0068】
前記ベクトル量子化処理が1フレームの全てのキャラクタについて終了したら、1フレーム内の全てのキャラクタ内での量子化誤差の最大値Emax を計算する。次に、1フレーム内の2ビットモードのキャラクタ数Nと、1ビットモードのキャラクタ数Mと、単色キャラクタ数Lを計数する。次に、これら数値N,M,Lから1フレーム当たりの画像データ量を計算する。この画素データ量の計算は以下のようになる。
【0069】
1フレームのデータ量=N×18(バイト)+M×9(バイト)+L×0この結果の1フレームのデータ量が予め定められた所定値以下か否か、したがって圧縮率が所定の値になっているか否か判別し、データ量が未だ所定値以上であれば、スレッショールド値Eθを前記量子化誤差の最大値Emax に設定し、以上のベクトル量子化処理を繰り返す。
【0070】
以上のようにして、1フレーム当たりのデータ量が所定データ量になるまで、スレッショールド値Eθを変更してベクトル量子化を繰り返す。このようにした場合には、フレーム毎にS/Nは異なるが、伝送データ量は一定になる。すなわち、後述する動画の場合には、1秒当たりの駒(フレーム)数を一定にすることができる。
【0071】
また、以上の例では、色が1色となるキャラクタのデータについては、スクリーンテーブルscrに登録して色データのみを伝送し、画素単位のデータは伝送しないので、データ伝送路上のトラフィックを減少させることができる。
【0072】
なお、パレット分割する際の処理単位は1フレームでなく、複数フレームとして、3次元的にパレット分割するようにしてもよい。
【0073】
[デコード装置の説明]
次に、以上のようにして圧縮されてCD−ROMに記録された画像データをデコードする装置の一例を、ゲーム機に適用した場合について説明する。
【0074】
図1は、この発明をマイクロコンピュータを使用したゲーム機に適用した場合の一例を示し、1はそのゲーム機本体、4は副処理部、5はCD−ROM、6はプログラムカートリッジ、7は音声データの手段処理部である。
【0075】
ゲーム機本体1は、マイクロコンピュータにより構成されているもので、11はそのCPU、12はDMAC(DMAコントローラ)、13はワークエリア用のRAM、14はPPU(ピクチャ・プロセシング・ユニット)、15はビデオRAMである。そして、第1のシステムバス18に、CPU11、DMAC12及びRAM13が接続され、第2のシステムバス19にDMAC12及びPPU14が接続されるとともに、PPU14にビデオRAM15及びCRTディスプレイ6が接続される。また、第2のシステムバス19には、副処理部4と、音声データの主処理部7が接続されている。
【0076】
この場合、CPU11と第2のシステムバス19との間はポート16を介して接続され、CPU11と第2のシステムバス19に接続されているデバイス間は、ポート16を介してアクセスすることができる。
【0077】
また、ビデオRAM15は、この例の場合、例えば図2に示すように、複数例えば4個のメモリ領域M1〜M4に分割されている。この例の場合、メモリ領域M1は動画の再生のためのエリア、メモリ領域M2は背景の静止画のためのエリア、メモリ領域M3は常駐キャラクタなどのエリアとされる。これらのメモリ領域M1〜M3は、それぞれ2フレーム分(2画面分)の画面エリアを有し、その一方の画面エリアの画像データが、PPU14によりCRTディスプレイ8の垂直及び水平走査に同期して読み出され、ディスプレイ8により画像として表示されるとともに、この表示が行われている間に、他方の画面エリアに次に表示される画像の画像データが書き込まれる。
【0078】
また、メモリ領域M4は、PPU14のワークエリアであり、スクリーンテーブルscrや色変換テーブル、その他のデータのエリアとして使用される。
【0079】
さらに、ゲーム機本体1の音声データの主処理部7において、71はそのAPU(オーディオ・プロセシング・ユニット)、72はD/Aコンバータ、73は音声出力端子で、APU71が、バス19に接続されるとともに、D/Aコンバータ72に接続される。そして、APU71に音声データ及びそのデコード用のプログラムがロードされると、その音声データがデジタル音声信号にデコードされ、このデジタル音声信号がコンバータ72によりアナログ音声信号にD/A変換されてから出力端子73に出力される。
【0080】
また、副処理部4は、CDプレーヤを有してCD−ROM5の使用を可能にするためのもので、41はそのCDプレーヤ、42はDSP、43はCD−ROMデコーダ、44はそのワークエリア用のRAM、45はコントローラである。そして、CD−ROM5には、音声データ及び画像データが記録されているが、これら音声データ及び画像データ、特に画像データは上述した方法で画像データとしてデータ圧縮されて記録されている。
【0081】
DSP42は、プレーヤ41の再生信号に対するエラー訂正を行うとともに、再生信号から画像データなどのユーザ用データと、トラック番号などの制御データとを分離するためのものであり、コントローラ45は、そのDSP42からの制御データと、CPU11からの指示データとに基づいてプレーヤ41を制御し、目的とするデータを再生するためのものである。また、デコーダ43は、プレーヤ41の再生信号がCD−ROM5の再生信号のとき、そのCD−ROM用のエラー訂正などの処理を行うためのものである。
【0082】
さらに、副処理部4において、50はDSPで、これは汎用のDSPであるが、副処理部4においては、画像データの処理を行うものである。なお、この副処理部4は、この例においてはゲーム機本体1と一体化されているが、ゲーム機本体1に対してアダプタ形式とされていてもよい。なお、DSP50は、図示しないがプログラムRAMとバッファRAM(1つのRAMで構成できる)を備えている。
【0083】
また、プログラムカートリッジ6は、このゲーム機の使用時、ゲーム機本体1のスロット2に差し込まれて使用されるものである。このログラムカートリッジ6は、CD−ROM5を使用しないときは、一般的なゲームソフト用のものが差し込まれ、CD−ROM5を使用するときは、専用のものが差し込まれる。
【0084】
そして、カートリッジ6は、ROM61と、RAM62とを有し、CD−ROM5用のカートリッジの場合には、そのROM61には、CD−ROM5の記録データをゲーム機本体1が取り込んでゲームを実行するためのいわゆる初期化処理のためのプログラムなどが書き込まれている。また、RAM62は、例えばゲームを途中で一時中断するとき、そのときの状態に関する各種のデータをゲームの再開まで保持するためなどに使用されるものであり、電池63によりバックアップされている。
【0085】
そして、このカートリッジ6を、ゲーム機本体1のスロット2に差し込むと、コネクタ(図示せず)を通じてROM61及びRAM62はバス18に接続される。
【0086】
そして、カートリッジ6のROM61のプログラムがCPU11により実行され、CD−ROM5からのデータは、ゲーム機本体1のRAM13に取り込まれ、各セクタのユーザデータ中の識別用情報IDに基づいて各ユーザデータのデコード処理がなされる。これにより、動画が表示されると共に、この動画が止まることなく、背景の静止画や常駐キャラクタの表示がなされる。
【0087】
すなわち、CDプレーヤ41によりCD−ROM5からデータが再生されると、この再生データは、プレーヤ41からDSP42及びデコーダ43に順に供給されてエラー訂正などの処理が行われ、そのエラー訂正の行われたデータが、DMAC12によりデコーダ43からRAM13の第1のバッファエリアにDMA転送される。
【0088】
次に、このRAM13に取り込まれたデータの、各セクタの識別用情報IDがCPU11においてチェックされる。このチェック結果により、CPU11は、各IDで示される内容の再生データに応じたデコード処理の手順を実行する。
【0089】
なお、CD−ROM5からは、画像データなどの再生に先立ち、前述したデコード処理のプログラムやゲームのプログラムがRAM13取り込まれるものである。
【0090】
[動画の画像データのデコード処理]
CPU11での識別用情報IDのチェックの結果、セクタのユーザデータの内容が動画の画像データであると判別されたときは、次のようにして、動画のデコード及び表示処理がなされる。
【0091】
すなわち、1フレーム分の圧縮画像データが含まれる5セクタのデータに対して、次のようにしてデコード処理が行なわれる。この動画の画像データのデコード処理の手順は、基本的には次の3ステップからなっている。
【0092】
A.各キャラクタについて、色番号テーブルを参照して、2ビットあるいは1ビットのインデックス番号データを色変換テーブルCOL(0) 〜COL(7) の4ビットの色番号のデータに変換する第1次のテーブル参照のステップB.各パレットのキャラクタの各画素について、そのパレットの色変換テーブルを参照して、A項でデコードした色番号のデータを実際の色データに変換する第2次のテーブル参照のステップC.ソートされているキャラクタの並び換えのステップ、すなわち、スクリーンテーブルscrを参照してB項でデコードした画素データを、元のキャラクタ位置に並べ変えるステップそして、このA項〜C項のステップうち、A項のステップをDSP50が行い、B項及びC項のステップをPPU14が行う。
【0093】
[1.A項のステップ]
先ず、1フレーム分の圧縮画像データが含まれる4セクタのユーザデータに対して、DSP50において、次のようにして色番号のデータへのデコード処理を行ない、それをビデオRAM15のメモリ領域M1に書き込むまでの手順について説明する。すなわち、(1) 2ビットモードのキャラクタをデコードするためのプログラムが、RAM13からDSP50にロードされる。
【0094】
(2) RAM13の第1のバッファエリアにDMA転送された画像データの2ビットモードのキャラクタのデータのうち、その先頭から8キャラクタ分のデータが、DMAC12によりDSP50にDMA転送される。
【0095】
(3) DSP50において、(1) のプログラムによりA項のステップが実行され、DMA転送されてきたインデックス番号データは、色番号テーブルにより色番号のデータ(図11A)に変換される。この変換により、8キャラクタ分のインデックス番号データ(=18バイト×8個)は、4ビット×8画素×8画素(=256 バイト)の色番号のデータにデコードされる。
【0096】
(4) このデコードされた色番号が、DMAC12によりRAM13の第2のバッファエリアにDMA転送される。
【0097】
(5) 以後、(2) 〜(4) の処理が繰り返され、2ビットモードのキャラクタのインデックス番号データのすべてが色番号にデコードされてRAM13の第2のバッファエリアにDMA転送される。
【0098】
(6) RAM13の第2のバッファエリアにDMA転送された2ビットモードのすべての色番号のデータが、CRTディスプレイ8の垂直ブランキング期間に、DMAC12によりPPU14を通じてビデオRAM15にDMA転送され、そのメモリ領域M1に書き込まれる。
【0099】
(7) (6) までの処理を終了すると、1ビットモードのキャラクタをデコードするためのプログラムが、RAM13からDSP50にロードされる。
【0100】
(8) RAM13の第1のバッファエリアにDMA転送された画像データの1ビットモードのキャラクタのデータのうち、その先頭から8キャラクタ分のデータが、DMAC12によりDSP50にDMA転送される。
【0101】
(9) DSP50において、(7) のプログラムによりA項のステップが実行され、DMA転送されてきたインデックス番号データは、色番号テーブルにより色番号のデータ(図11B)に変換される。この変換により、8キャラクタ分のインデックス番号データ(=9バイト×8個)は、4ビット×8画素×8画素(=256 バイト)の色番号のデータにデコードされる。
【0102】
(10) このデコードされた色番号が、DMAC12によりRAM13の第2のバッファエリアにDMA転送される。
【0103】
(11) 以後、(8) 〜(10)の処理が繰り返され、1ビットモードのキャラクタのインデックス番号データのすべてが色番号のデータにデコードされてRAM13の第2のバッファエリアにDMA転送される。
【0104】
(12) RAM13の第2のバッファエリアにDMA転送された1ビットモードのすべての色番号のデータが、CRTディスプレイ8の垂直ブランキング期間に、DMAC12によりPPU14を通じてビデオRAM15にDMA転送され、そのメモリ領域M1に書き込まれる。
【0105】
なお、(6) における2ビットモードの色番号のDMA転送は、この(12)の直前((12)と(11)との間)に行うこともできる。
【0106】
[2.B項及びC項のステップ]
(13) 前記(12)までの処理を終了すると、1フレームの画像データの5番目のセクタの処理にかかる。すなわち、CPU11は、識別情報IDによりこの5番目のセクタは、スクリーンテーブルscr及び色変換テーブルのデータのセクタであると検知する。そこで、CPU11は、RAM13の第1のバッファエリアにDMA転送されていたスクリーンテーブルscr及び色変換テーブルのデータを、DSP50を通じることなく、DMAC12によりPPU14を通じてビデオRAM15にDMA転送する。この場合、これらスクリーンテーブルscr及び色変換テーブルのデータは、ビデオRAM15のメモリ領域M4に書き込まれる。
【0107】
(14) 以上の転送処理が行われと、PPU14は、リアルタイムで前述したB項、C項のステップを実行する。すなわち、色変換テーブルCOL(j) を参照することにより、(2) 〜(5) 、(8) 〜(11)により処理されたメモリ領域M1の色番号のデータが、実際の色の画素データにデコードされるとともに、スクリーンテーブルscrを参照することにより、各キャラクタの画素データが、元のキャラクタ位置に対応したアドレスに書き込まれる。
【0108】
(15) 以上により1フレーム分の画素データがビデオRAM15のメモリ領域M1の一方の画面エリアに書き込まれると、ビデオRAM15の表示エリアがその画面エリアに切り換えられ、その画素データの書き込まれたエリアがアクティブとされ、その画面がディスプレイ8に表示される。
【0109】
(16) 処理は(1) に戻り、以後、1フレーム単位で(1) 〜(16)の処理が繰り返される。
【0110】
こうして、CD−ROM5から再生された画像データは、上述のようにRAM13と、DSP50と、PPU14との間を、パイプライン処理的に処理されながらビデオRAM15まで次々と送られる。したがって、ディスプレイ8には、CD−ROM5の画像データによる画像が動画として表示される。なお、この動画表示は、上述のように15フレーム/秒の割り合いで行うことができる。
【0111】
[その他データの処理]
前述したように、スクリーンテーブルscr及び色変換テーブルのデータのセクタは、動画以外のセクタとして、動画データのセクタとは異なるプロセスでビデオRAM15に書き込まれる。これと同様に、静止画や常駐キャラクタのデータ、その他のデータのセクタも、その識別用情報IDに基づいて動画とは異なるプロセスでビデオRAM13、その他のメモリに書き込まれる。
【0112】
すなわち、CD−ROM5からの再生データが、図3に示すようなもので、図中斜線を付して示すように、動画の画像データの1フレーム分(5セクタ)の間に、その他データのセクタが挿入される場合には、この挿入されたその他データの始めの時点で、その他データの処理のスタートポインタPSが立ち、その他データの処理が開始されると共に、前述した動画のデコード処理は中止され、動画は、その前の画面のままとなる。
【0113】
そして、その他データについては、そのセクタの識別用情報IDがCPU11によりチェックされ、その識別用情報IDから、その他データの内容及び連続するセクタ数が検知され、その他データは適切なメモリ領域あるいは別のメモリに書き込まれて、その他データの内容に応じた処理がなされる。そして、その他データのセクタが終了すると、エンドポインタPEが立ち、その他データの処理が終了する。その後のセクタが動画のセクタであれば、動画の画像データのデコード処理プロセスが再開される。したがって、動画が前回の画面から続くことになる。この場合、5セクタ=1/15秒であり、その他データの挿入区間は、僅かの期間であるので、視覚的には動画はほとんど連続して見える。
【0114】
その他データが、例えば静止画の場合には次のように処理されて、ビデオRAM15のメモリ領域M2に書き込まれる。
【0115】
(1) 先ず、CPU11がセクタのユーザデータの識別用情報IDをチェックして、そのセクタが静止画のものであると判別すると共に、その静止画が続くセクタが例えば図3に示すように、5セクタであると判別したときは、この5セクタの間がスタートポインタPS及びエンドポインタPEにより示され、前述した動画のデコード処理プロセスから、一時、静止画の処理プロセスに移行する。そして、その指示がCPU11からPPU14に与えられる。
【0116】
(2) そして、RAM13にDMA転送されていた静止画の画像データを、DSP50を介さずにPPU14を介してビデオRAM15のメモリ領域M2にDMA転送する。
【0117】
(3) PPU14は、この静止画の画像データを4ビットから元の16ビットのデータに戻すデコード処理を行ない、デコードした静止画のデータをメモリ領域M2に書き直す。このデータ伸長処理は、プログラムカートリッジとして一般のプログラムカートリッジが使用されるときに実行されるもので、そのプログラムは、予めPPU14に対して用意されているものである。
【0118】
以上のようにしてデコードされた静止画は、動画と合成され、動画の背景とされるものである。
【0119】
こうして、CD−ROMには各セクタ毎にデータの内容及び同じ内容のデータが続くセクタ数を示す識別用情報IDを記録するようにしたので、デコード装置では、識別用情報IDを監視することにより、セクタ毎のデコード処理を行なうことができる。したがって、1フレームが複数個のセクタからなる動画の画像データの間に、その他のデータのセクタを挿入して記録することができ、セクタ単位で複数個挿入可能であるので、動画以外のデータを大量に動画データ中に挿入することが可能になる。
【0120】
そして、動画としては、その他データの期間は、その前の画面を保持すれば、その他データの期間の後には動画が続くので、動画は視覚上止まることなく再生することができる。
【0121】
また、図の例によれば、すべてのデータの流れをCPU11が管理することにより、CD−ROM5の画像データの読み出しと、CPU11の処理との非同期をCPU11が吸収しているので、CD−ROM5からその画像データを連続して読み出すことができる。しかも、そのための構成は図1からも明らかなように簡単である。
【0122】
また、データ圧縮されている動画の画像データに対しては、DSP50が第1次のデコードを行うとともに、PPU14が第2次のデコードを行うようにしているので、DSP50として汎用のものを使用することができ、コストを抑えることができる。
【0123】
さらに、データ圧縮されている画像データのデコードを、DSP50及びPPU14により手分けして行っているので、十分な速度で画像データをデコードすることができ、十分に動きのある動画を表示することができる。
【0124】
また、RAM13と、DSP50と、PPU14との間のデータ転送は、DMAC12が行うので、CPU11の負荷にならない。さらに、DSP50がデコードを行っている間は、CPU11は空いているので、前述したようにその他データの処理の指示を行うことができる。その他データとしては、音声データを挿入することもでき、その場合には、その音声データのセクタのユーザデータは、APU71のRAMに転送されるものである。
【0125】
なお、記録媒体としては、CD−ROMなどのディスクだけでなく、テープなどを使用することもできる。
【0126】
【発明の効果】
以上説明したように、この発明によれば、記録媒体には各単位記録エリア毎に少なくともその記録データの内容を示す識別用情報IDを記録するようにしたので、デコード装置では、この識別用情報IDを監視することにより、単位記録エリア毎のデコード処理を行なうことができる。したがって、動画の画像データの間に、その他のデータを1〜複数単位記録エリア分、挿入して記録することができ、動画以外のデータを1度に大量に伝送することが可能になる。
【0127】
そして、動画としては、その他データの期間は、その前の画面を保持して、その他データの期間の後の動画を続ければよいので、動画は視覚上止まることなく表示されるものである。
【図面の簡単な説明】
【図1】この発明によるデコード装置の一実施例のブロック図である。
【図2】メモリの分割記憶エリアを説明するための図である。
【図3】動画データ中に挿入されたその他データを説明するための図である。
【図4】この発明による記録媒体に記録する画像データの圧縮方法の一実施例を実施するエンコード装置の一例の一部のブロック図である。
【図5】この発明による記録媒体に記録する画像データの圧縮方法の一実施例を実施するエンコード装置の一例の残部のブロック図である。
【図6】図4及び図5の例の画像データ圧縮方法の一実施例の画像データの分割方法の一例を説明するための図である。
【図7】図4及び図5の例の画像データ圧縮方法の一実施例に用いるテーブルを説明するための図である。
【図8】図4及び図5の例の画像データ圧縮方法の一実施例による圧縮データの一例を説明するための図である。
【図9】図4及び図5の例の画像データ圧縮方法の一実施例の説明のための図である。
【図10】図4及び図5の例の画像データ圧縮方法の一実施例に用いるテーブルの一例を説明するための図である。
【図11】この発明による記録媒体への記録圧縮画像データの一例を説明するための図である。
【図12】この発明による記録媒体に記録するデータのフォーマットの一例を示す図である。
【図13】CDのセクタフォーマット及びこの発明による記録媒体に記録するセクタ毎の識別用情報IDを説明するための図である。
【図14】この発明による記録媒体の一例からの再生データの一例を示す図である。.
【符号の説明】
1 ゲーム機本体
5 CD−ROM
6 プログラムカートリッジ
8 CRTディスプレイ
11 CPU
12 DMAコントローラ
13 RAM
14 PPU(ピクチャー・プロセシング・ユニット)
15 ビデオRAM
22 キャラクタ分割手段
24 第1段階のベクトル量子化手段
25 パレット分割手段
27 第2段階のベクトル量子化手段
38 記録処理手段
39 その他のデータの入力端子
41 CD−ROMプレーヤ
50 汎用のDSP[0001]
[Industrial application fields]
The present invention relates to a recording medium on which moving image data is recorded and a decoding device for moving image data from the recording medium.
[0002]
[Prior art]
A CD-ROM has a large recording capacity and is used as an external storage medium in a game machine or personal computer using a microcomputer. Image data of a moving image (animation) is recorded on the CD-ROM. It is considered that this image data is read out and supplied to a host computer, and a moving image is displayed on a CRT display.
[0003]
In this case, the conventional method for reading the image data from the CD-ROM is not to read the image data continuously from the CD-ROM and display the moving image on the display, but to record it in a predetermined recording area of the CD-ROM. The moving image data consisting of a plurality of frames is read out and transferred to a large-capacity RAM prepared on the host computer side, and the moving image is displayed by reading out the image data from the RAM.
[0004]
[Problems to be solved by the invention]
However, according to this method, the number of frames per second of the moving image is small, and a smooth motion animation cannot be obtained.
[0005]
Therefore, the inventor of the present invention, as Japanese Patent Application No. 3-74555, reproduces a moving image while continuously reading image data from a CD-ROM, and can realize a smooth motion animation with a large number of frames. Has proposed.
[0006]
By the way, in a game machine or the like, not only image data for animation but also so-called resident characters and other data necessary for the game are required. When animation is performed by continuous reading from a CD-ROM as described above, It is desirable to obtain other data from the CD-ROM without stopping the animation.
[0007]
As a method of satisfying this requirement, a method of using a subcode on a CD signal format can be considered. However, with this method, the amount of data that can be transmitted as data other than animation is limited, and it is difficult to send a large amount of data at a time. The present invention is intended to solve the above problems.
[0008]
[Means for solving the problems]
According to the present invention, the recording medium in which the moving image data including the compressed image data constituting the moving image and the data for processing the image data and the data other than the moving image data are continuously recorded in units of recording areas. A video playback device that plays back video based on video data while sequentially reading data from
Read means for sequentially reading data from the recording medium in units of recording areas;
Storage means for processing the read data;
Read identification information for identifying the data included in the read data,
When the identification information indicates moving image data, the read data is processed using the first area of the storage means in units constituting a screen,
Control means for processing the read data using an area other than the first area of the storage means when the identification information indicates other than moving image data;
There is provided a moving image reproducing apparatus comprising output means for reading out data of a unit constituting a screen processed in the first area of the storage means and outputting the data as a moving image.
[0009]
According to the present invention, moving image data including compressed image data constituting the moving image and data for processing the image data and data other than the moving image data are continuously recorded in units of recording areas. A video playback method for playing back video based on video data while sequentially reading data from a recording medium,
Read data sequentially from the recording medium in units of recording areas,
Determine whether the identification information for identifying the data included in the read data indicates video data,
When the identification information indicates moving image data, the read data is processed in units of screens using the first area of the storage means and reproduced as a moving image,
When the identification information indicates other than moving image data, a moving image reproducing method is provided in which the read data is processed using an area other than the first area of the storage means.
[0010]
[Action]
Data other than the moving image data is inserted and recorded between the moving image data and the moving image data. The moving image data is written in the memory area for reproducing the moving image, and the other data is written in a separate memory area. Therefore, during the period of other data, since the moving image data is lacking, the number of frames is reduced by that amount. Therefore, the moving image (animation) does not stop visually.
[0011]
In this case, a large amount of other data can be inserted at a time from any one of the unit recording areas of the moving image data to any one. Therefore, a large amount of data other than moving image data can be transmitted without stopping the animation.
[0012]
【Example】
First, a data compression method of moving image data and a method of recording compressed moving image data and other data other than moving images on a recording medium will be described.
[0013]
[Data compression method for video image data]
4 and 5 are block diagrams of an example of an encoding apparatus that executes the image data compression method of this example. In this example, the compressed image data is recorded on a CD-ROM. As will be described later, this CD-ROM is used as software for a game machine, and image data is highly compressed so that a moving image can be reproduced.
[0014]
In this example, as shown in FIG. 6A, one frame (one screen) is composed of horizontal × vertical = 256 pixels × 192 pixels, and each pixel represents three primary colors with 5 bits. In practice, one dummy bit is added to the top for convenience of processing, and one pixel is 1 bit (dummy) +5 bits × 3 colors, that is, 16 bits. The original image data is subjected to data compression processing in units of one frame as follows.
[0015]
That is, one frame data of the original image is supplied to the character dividing means 22 through the
[0016]
The image data C (0) to C (767) of each character from the register 23 is supplied to the first vector quantization means 24. Also in this example, the vector quantization means 24 processes the image data C (0) to C (767) of each character in parallel. Of course, the image data C (0) to C (767) may be sequentially subjected to vector quantization without parallel processing. The same applies to each processing described later.
[0017]
In this vector quantization means 24, vector quantization is performed for each character image data C (k) (k = 0 to 767) so that the colors represented as pixels in the character are within four colors. Various proposed vector quantization methods can be used. In this example, when a three-dimensional color space is considered with the color components of the three primary colors red, blue, and green orthogonal to each other, each pixel By calculating the distance between the pixels in the color space and collecting the pixels having a short distance from each other, that is, by processing the pixels having similar colors together into one representative color, The pixel data is rounded so that the colors fall within the representative colors of four colors or less.
[0018]
For all characters in one frame, vector quantization is performed so that the colors of the pixels in the character fall within four colors, and then quantization errors in all characters in the one frame (centering on the position of the representative color). , The maximum value Emax of the representative color and each pixel (corresponding to the distance in the color space). At this time, the threshold value Eth allowed as the maximum value of the quantization error in one frame is set in advance. Then, the maximum value Emax of the quantization error is compared with the threshold value Eth. When the maximum value Emax of the quantization error is larger than the threshold value Eth, vector quantization is performed on the image data in each character until just before the quantization error exceeds the maximum value Emax. Reduce the number of colors. This is to make the S / N of image data in all characters in one frame uniform. This is performed until immediately before the maximum value Emax of the quantization error exceeds the threshold value Eth. In this way, the S / N ratio in all frames is kept constant.
[0019]
When quantization is performed in this manner, the number of colors of pixels is reduced in a character with flat color change. This is because the quantization error does not increase so much even if the number of colors decreases in a flat character of color change. In this process, there are also characters in which the number of colors in the character is two, or even one. The color selected in each character is used as the representative color.
[0020]
Thus, the vector quantization means 24 obtains image data compressed to 4 colors or less in each character. The character unit image data from the vector quantization means 24 is supplied to the palette dividing means 25.
[0021]
The palette dividing means 25 classifies the characters into eight groups (each group is called a palette) by collecting the characters having similar colors according to the color distribution in the character. For example, as shown in FIG. 6C, when a group of characters having similar tones according to the content of an image is generated as A, B, C, D, E..., This group A, B, C, A palette is constructed for each of D, E.
[0022]
In this example, the eight palette allocation methods are as follows: (1) The representative color of each character (average value of colors in the character) is calculated, and each character is assumed to be composed of the representative color.
(2) Vector quantization is performed to quantize all characters in one frame into eight colors. That is, since the number of characters is 768, the maximum representative color of the character is 768 colors, which are quantized into 8 color characters.
(3) Characters having the same label (representative color) are combined into one palette.
The three steps are performed.
[0023]
It should be noted that the groups of characters that make up this pallet do not have to be in the continuous character area, but the skipping characters may form a single pallet group.
[0024]
Eight palette data P (0) to P (7) are temporarily stored in the register 26, supplied to the second vector quantization means 27, and processed in parallel.
[0025]
In the second vector quantization means 27, representative colors of 16 pixels are determined for each palette. At this time, if there are more than 16 colors of pixels in one palette, vector quantization is performed in the same manner as in the character, and the colors in the palette are rounded to 16 colors. The resulting 16 colors are used as pixel representative colors.
[0026]
In this way, the image data P (0) to P (7) for each of the eight palettes rounded to 16 colors is supplied to the labeling means 28 and processed in parallel. In each labeling means 28, color conversion tables COL (0) to COL (7) of 16 color data or less than 16 color data selected as the representative colors of the pixels for each palette are created and temporarily stored in the register 29 ( (See FIG. 7). The data of the color conversion tables COL (0) to COL (7) from the register 29 is supplied to the recording processing means 38 as recording data.
[0027]
Each labeling means 28 refers to each color conversion table COL (0) to COL (7), and for each character included in each palette, pixel data rounded to 16 colors is converted into the color conversion of that palette. On the table, the color of the pixel is converted into label image data LAB (0) to LAB (7) expressed by the corresponding color number (see FIG. 8). The label image data LAB (0) to LAB (7) are temporarily stored in the
[0028]
In this case, as described above, there are characters having four or three colors (FIG. 8A), characters having two colors (FIG. 8B), and characters having only one color (FIG. 8C). When the character has 4 or 3 colors, if there is a table indicating the color numbers of the 4 or 3 colors, each pixel data can be expressed by 2-bit data indicating which of the color number tables. it can. Therefore, each pixel data of a character composed of 4 or 3 colors can be expressed by 2 bits. Similarly, if a character has two colors, it can be represented by a two-color color number table for the character and 1-bit pixel data. Further, if there is only one color, only that color data can be used as will be described later.
[0029]
Characters that can be expressed in 2 bits are hereinafter referred to as 2-bit mode characters, characters that can be expressed in 1 bit are referred to as 1-bit mode characters, and characters of only one color are referred to as single-color characters.
[0030]
In consideration of the decoding process, a 2-bit mode character, a 1-bit mode character, and a single color character can be processed at a high speed by handling them together. However, in 768 characters in one frame, generally, as shown in FIG. 9A, the mode characters are mixed and mixed. In FIG. 9, (1) indicates a 1-bit mode character, (2) indicates a 2-bit mode character, and (circle) indicates a single color character.
[0031]
Therefore, the label image data LAB (0) to LAB (7) of each palette from the
[0032]
The sorting means 31 forms a table (hereinafter referred to as a screen table) scr for rearranging characters in one frame into the original order. As shown in FIG. 10, the screen table scr is configured such that when an image of one frame is divided into small areas having the same size as the character, a character number CNo. And a palette number PNo. Are determined for each small area. Is done. The character number CNo. Is the character rank in one frame after sorting the characters to be displayed at the position of the small area. The pallet number PNo. Indicates in which pallet the character displayed in the small area is included in the eight pallets. That is, it indicates which color conversion table is used for decoding. In this case, the character number CNo. And pallet number PNo. Of one small area are composed of, for example, 2-byte data.
[0033]
In the case of this example, 0 to 15 of the character numbers CNo. Are assigned only to the monochromatic characters. That is, in the table scr, when the character displayed at the position of a certain small area is a single color character, the palette number PNo. Is assigned to the small area in the same manner as in the 2-bit mode or 1-bit mode character. Instead of the character number CNo., The color number of the color of the character among the
[0034]
Because of the single color character as described above, the character numbers for characters in the 2-bit mode and the 1-bit mode start from
[0035]
The data of the screen table scr is supplied to the recording processing means 38 as recording data.
[0036]
Of the character unit image data sorted and rearranged by the sorting means 31 as described above, character data C2 (0) to C2 of N pieces (N is an integer of 768 or less) of each 2-bit mode. (N−1) is supplied to the labeling means 33 via the
[0037]
Similarly, character data C1 (0) to C1 (M-1) of M 1-bit mode characters (M is an integer of 768 or less) are supplied from the sorting means 31 to the labeling means 36 via the
[0038]
All the compressed image data in the 2-bit mode from the
[0039]
Further, data such as a resident character and a game condition change are supplied to the recording processing means 38 through the terminal 39.
[0040]
[Generation of Recording Data] The recording processing means 38 creates data to be recorded on the CD-ROM. In this example, this recording data is processed as one block of one frame, but the data recording mode on the CD-ROM is of course according to the data format of the CD-ROM.
[0041]
For example, the sector when the recording mode of the CD-ROM is
[0042]
In the case of this example, the above-described moving image data and other data are recorded in the user data area of the sector. The first 32 bytes of the 2K user data are used as identification information ID. This identification information ID is information indicating what kind of data is recorded in the user data area and how many sectors the same content data continues. Of course, other information can be included.
[0043]
The contents of the data indicated by the identification information ID include, as will be described later, user data in the sector includes: (1) moving image image data, (2) color conversion table and screen table scr information, (3) Image data of a background still image, (4) resident character data, (5) game condition change data, etc. are prepared.
[0044]
By the way, the above-mentioned data related to the image for one frame is the compressed image data related to the pixel of each character in the 2-bit mode and the 1-bit mode, and the figure for the eight palettes of that frame which is data other than the image data. 7 includes the color conversion tables COL (0) to COL (7) shown in FIG. 7 and the screen table scr shown in FIG.
[0045]
In the case of this example, as shown in FIG. 12, the compressed image data for one frame to be recorded has mode number information indicating the number of characters N in the 2-bit mode and the number of characters M in the 1-bit mode, as shown in FIG. , Compressed image data dat2 (n) (n = 0, 1, 2... N−1) of N 2-bit mode characters and compressed image data dat1 (m) (m) of M 1-bit mode characters = 0,1,2 ... M-1). As described above, the monochrome character is not recorded as pixel data by registering its color information in the screen table scr.
[0046]
As shown on the lower side of FIG. 12, the information for one character includes information of a color number table and index number data for 64 pixels. As shown in FIG. 11, the index number data corresponding to each pixel is 2 bits in the 2-bit mode and 1 bit in the 1-bit mode. In this case, since the number of characters N in the 2-bit mode and the number of characters M in the 1-bit mode change according to the contents of the pixels, the data length of the data related to the character pixels for one frame is variable.
[0047]
In this example, the number of characters in each mode is recorded as mode number information, but instead of this mode number information, between the last character in the 2-bit mode and the first character in the 1-bit mode, Bit pattern mode delimiter information that does not occur as character data may be recorded.
[0048]
In the case of this example, the data amount related to the moving image compressed as described above is as follows per frame.
[0049]
Since there are 8 palettes per frame, the total color conversion table is 16 (colors) × 8 (palettes) × 2 (bytes) = 256 (bytes).
It becomes. Since the screen table scr is 2 bytes per character, 768 × 2 (bytes) = 1536 (bytes)
It becomes.
[0050]
Therefore, the total data amount of the color conversion table and the screen table scr is 2 Kbytes or less and fits in one sector.
[0051]
Further, since the image data of the moving image has 4 types of color numbers expressed in 4 bits in the character of the 2-bit mode, the color number table has 4 (bits) × 4 = 16 (bits) = 2 ( Part-Time Job)
It becomes. Since the index number data is 2 bits, 2 (bits) × 64 = 128 (bits) = 16 (bytes)
It becomes. Therefore, the data amount per character of the 2-bit mode character is 18 bytes.
[0052]
In addition, since the color number of a 1-bit mode character may be two colors, the color number table is 4 (bits) × 2 = 8 (bits) = 1 (bytes)
It becomes. Since the index number data is 1 bit, 1 (bit) × 64 = 64 (bit) = 8 (byte)
It becomes. Therefore, the data amount per character of the 1-bit mode character is 9 bytes.
[0053]
Since each pixel data of a character is not transmitted for a monochromatic character, the compression rate of image data for one frame is determined by the number of 2-bit mode and 1-bit mode characters in one frame and the ratio of the number of monochromatic characters. For example, in the case of 2 bit mode: 1 bit mode: single color = 2: 1: 1 = 384: 192: 192
[0054]
From the above, in this example, as shown in FIG. 14A, data relating to a moving image can be recorded as 5 sectors for each frame. In other words, 2-bit mode and 1-bit mode character data (mode number information is included in the first sector) is recorded as user data of the first 4 sectors out of 5 sectors. The screen table scr and the color conversion table data are recorded in the fifth sector indicated by hatching in FIG. 14A.
[0055]
As the 32-byte identification information ID of the user data area of each sector, the first four sectors include information indicating that it is moving image data and the number of sectors (the first sector) In this case, 4) is recorded. In the last fifth sector, information indicating the screen table scr and the color conversion table data and the number of sectors (1 in this case) following the information are recorded.
[0056]
In this way, data related to one frame of moving image is repeatedly recorded every five sectors. In this case, the sum of the data for one frame including the screen table scr, the color conversion table, and the image data is 10432 bytes. Therefore, considering that the transmission rate of the CD-ROM is 150 Kbytes / second, In the case of the example, a moving image of 15 frames (frames) / second can be recorded or reproduced.
[0057]
In the case of this example, the resident character and other data input from the terminal 39 are also recorded in the user data area of this sector on the CD-ROM. Furthermore, in the game machine of this example, as will be described later, in the decoder, a background image of a moving image can be separately created as a still image, and a composite image of both can be displayed on a CRT display. ing. For this reason, still image data is also recorded in the CD-ROM. In this case, for example, still image data is recorded by compressing data of 16 bits per pixel into 4 bits. In addition, the resident character is similarly compressed to 4 bits and recorded.
[0058]
These data are inserted and recorded between the data of one frame related to the above-mentioned moving image, as shown by hatching in FIG. 14B. Then, as the first identification ID in the user data area of each sector, the data content and the number of sectors following it are recorded.
[0059]
In addition to the compressed image information as described above, a program for decoding the compressed image information and a game program are recorded on the CD-ROM. Furthermore, audio information is also recorded as appropriate. As a program for decoding, a decode program for 2-bit mode and a decode program for 1-bit mode are recorded respectively. A character rearrangement program is also recorded. These program data are recorded separately from the data as described above, and can be read in a batch prior to reproduction of a moving image or the like at the time of decoding. These program data can also be recorded in the middle of the moving image data as data other than the moving image data of the above example.
[0060]
Thus, according to the data compression method described above, the image is hierarchically divided into small areas in units of one frame, and vector quantization is performed on the image data of each layer. You can raise the rate.
[0061]
In this case, a group (palette) is formed by grouping together characters having similar colors, and a plurality of them are formed for one screen, and the image data is divided into palettes (groups). Since the vector quantization process is performed in a palette composed of image parts of similar colors, the quantization error is reduced.
[0062]
Further, since the decoding process can be performed only by referring to the table at the time of decoding, the configuration of the decoder is simplified. Furthermore, since a large-capacity buffer memory is not required, a general-purpose DSP having a limited capacity of the built-in RAM can be used as a decoder, and the cost of the decoder can be reduced.
[0063]
In addition, since compression processing is performed without using frame correlation, even if an error occurs during decoding, the error is completed within one frame and does not affect subsequent frames.
[0064]
Furthermore, since the decoder circuit can be provided at low cost and a CD-ROM can be used as a recording medium, it is effective when applied to software for a computer game machine.
[0065]
In the above example, the vector quantization in the vector quantization means 24 is performed so that the S / N in each frame is kept constant so that the quantization error maximum value Emax in the character is maintained in all frames. To be constant. For this reason, the data size after quantization changes according to the information amount of the frame (complexity of the image content).
[0066]
However, by quantizing each character as follows, the data amount (data transmission rate) for each frame can be made constant.
[0067]
That is, first, an initial value of a distance threshold value Eθ for grouping pixels of similar colors in a character is set, and vector quantization is performed for each character based on the threshold value. That is, the vector quantization is performed on the image data in each character until just before the quantization error exceeds Eθ. By this quantization, data compression is performed so that a character having a large color change has four colors. Further, in a character with a flat color change, the number of colors is reduced, and a character having three colors, two colors, or one color is also generated.
[0068]
When the vector quantization process is completed for all characters in one frame, the maximum value Emax of the quantization error in all characters in one frame is calculated. Next, the number N of characters in the 2-bit mode, the number M of characters in the 1-bit mode, and the number L of single-color characters in one frame are counted. Next, the amount of image data per frame is calculated from these numerical values N, M, and L. The calculation of the pixel data amount is as follows.
[0069]
Data amount of one frame = N × 18 (bytes) + M × 9 (bytes) + L × 0 Whether or not the data amount of one frame as a result is equal to or less than a predetermined value, and thus the compression rate becomes a predetermined value. If the data amount is still greater than or equal to the predetermined value, the threshold value Eθ is set to the maximum value Emax of the quantization error, and the above vector quantization process is repeated.
[0070]
As described above, the vector quantization is repeated by changing the threshold value Eθ until the data amount per frame reaches a predetermined data amount. In this case, although the S / N is different for each frame, the transmission data amount is constant. That is, in the case of a moving image to be described later, the number of frames (frames) per second can be made constant.
[0071]
In the above example, the character data having one color is registered in the screen table scr and only the color data is transmitted, and the pixel unit data is not transmitted. Therefore, the traffic on the data transmission path is reduced. be able to.
[0072]
It should be noted that the processing unit when dividing the palette may be divided into three-dimensional palettes as a plurality of frames instead of one frame.
[0073]
[Description of Decoding Device]
Next, a case where an example of an apparatus for decoding image data compressed as described above and recorded on a CD-ROM is applied to a game machine will be described.
[0074]
FIG. 1 shows an example in which the present invention is applied to a game machine using a microcomputer. 1 is the game machine body, 4 is a sub-processing unit, 5 is a CD-ROM, 6 is a program cartridge, and 7 is a sound. This is a data processing unit.
[0075]
The game machine
[0076]
In this case, the
[0077]
In this example, the
[0078]
The memory area M4 is a work area of the PPU 14, and is used as an area for a screen table scr, a color conversion table, and other data.
[0079]
Furthermore, in the
[0080]
The
[0081]
The
[0082]
Furthermore, in the
[0083]
The
[0084]
The
[0085]
When this
[0086]
Then, the program in the
[0087]
That is, when data is reproduced from the CD-ROM 5 by the CD player 41, the reproduced data is supplied in order from the player 41 to the
[0088]
Next, the
[0089]
From the CD-ROM 5, the above-described decoding processing program and game program are loaded into the
[0090]
[Decoding processing of video image data]
As a result of checking the identification information ID in the
[0091]
That is, the decoding process is performed on the data of 5 sectors including the compressed image data for one frame as follows. This moving image image data decoding process basically comprises the following three steps.
[0092]
A. For each character, a primary table that converts 2-bit or 1-bit index number data into 4-bit color number data of color conversion tables COL (0) to COL (7) with reference to the color number table. Reference Step B. For each pixel of each pallet character, referring to the color conversion table of that pallet, the color table data decoded in item A is converted into actual color data. Step of rearranging the sorted characters, that is, step of rearranging the pixel data decoded in the item B with reference to the screen table scr to the original character position, and among the steps of the items A to C, A The
[0093]
[1. Step A]
First, the
[0094]
(2) Of the character data in the 2-bit mode of the image data DMA-transferred to the first buffer area of the
[0095]
(3) In the
[0096]
(4) The decoded color number is DMA-transferred by the
[0097]
(5) Thereafter, the processes (2) to (4) are repeated, and all of the index number data of the characters in the 2-bit mode are decoded into color numbers and DMA-transferred to the second buffer area of the
[0098]
(6) Data of all color numbers in the 2-bit mode DMA-transferred to the second buffer area of the
[0099]
(7) When the processes up to (6) are completed, a program for decoding the 1-bit mode character is loaded from the
[0100]
(8) Of the character data in the 1-bit mode of the image data DMA-transferred to the first buffer area of the
[0101]
(9) In the
[0102]
(10) The decoded color number is DMA-transferred by the
[0103]
(11) Thereafter, the processes of (8) to (10) are repeated, and all the index number data of the 1-bit mode character are decoded into the color number data and DMA-transferred to the second buffer area of the
[0104]
(12) Data of all color numbers in the 1-bit mode DMA-transferred to the second buffer area of the
[0105]
Note that the DMA transfer of the color number of the 2-bit mode in (6) can also be performed immediately before (12) and (11).
[0106]
[2. Steps B and C]
(13) When the processing up to (12) is completed, processing for the fifth sector of one frame of image data starts. That is, the
[0107]
(14) When the above transfer processing is performed, the PPU 14 executes the steps of the B term and the C term described above in real time. That is, by referring to the color conversion table COL (j), the data of the color number in the memory area M1 processed by (2) to (5) and (8) to (11) is the pixel data of the actual color. By referring to the screen table scr, the pixel data of each character is written at an address corresponding to the original character position.
[0108]
(15) When pixel data for one frame is written in one screen area of the memory area M1 of the
[0109]
(16) The processing returns to (1), and thereafter the processing of (1) to (16) is repeated for each frame.
[0110]
Thus, the image data reproduced from the CD-ROM 5 is sent to the
[0111]
[Other data processing]
As described above, the data sector of the screen table scr and the color conversion table is written into the
[0112]
That is, the reproduction data from the CD-ROM 5 is as shown in FIG. 3, and as shown by hatching in the drawing, the other data is stored during one frame (5 sectors) of the moving image data. When a sector is inserted, at the beginning of the inserted other data, the start pointer PS for the processing of the other data is set up, the processing of the other data is started, and the above-described video decoding process is stopped. The moving image remains the previous screen.
[0113]
For other data, the identification information ID of the sector is checked by the
[0114]
For example, in the case of a still image, other data is processed as follows and written in the memory area M2 of the
[0115]
(1) First, the
[0116]
(2) Then, the image data of the still image that has been DMA-transferred to the
[0117]
(3) The PPU 14 performs a decoding process for returning the still image data from 4 bits to the original 16 bits, and rewrites the decoded still image data in the memory area M2. This data decompression process is executed when a general program cartridge is used as the program cartridge, and the program is prepared for the PPU 14 in advance.
[0118]
The still image decoded as described above is combined with the moving image and used as the background of the moving image.
[0119]
In this way, the CD-ROM records the identification information ID indicating the data content and the number of sectors followed by the same data for each sector. Therefore, the decoding apparatus monitors the identification information ID. Thus, the decoding process for each sector can be performed. Therefore, it is possible to insert and record other data sectors between moving image data in which one frame is composed of a plurality of sectors. A large amount can be inserted into the video data.
[0120]
As for the moving image, if the previous screen is held during the other data period, the moving image continues after the other data period, so that the moving image can be reproduced without stopping visually.
[0121]
Further, according to the example shown in the figure, since the
[0122]
In addition, the
[0123]
Furthermore, since the compressed image data is decoded by the
[0124]
In addition, since the
[0125]
As a recording medium, not only a disc such as a CD-ROM but also a tape can be used.
[0126]
【The invention's effect】
As described above, according to the present invention, since the identification information ID indicating at least the content of the recording data is recorded on the recording medium for each unit recording area, the decoding apparatus uses this identification information. By monitoring the ID, the decoding process for each unit recording area can be performed. Accordingly, other data can be inserted and recorded between one and a plurality of unit recording areas between moving image data, and a large amount of data other than moving images can be transmitted at a time.
[0127]
As for the moving image, during the period of other data, it is only necessary to hold the previous screen and continue the moving image after the period of other data, so that the moving image is displayed without stopping visually.
[Brief description of the drawings]
FIG. 1 is a block diagram of an embodiment of a decoding device according to the present invention.
FIG. 2 is a diagram for explaining divided storage areas of a memory.
FIG. 3 is a diagram for explaining other data inserted in moving image data.
FIG. 4 is a block diagram of a part of an example of an encoding apparatus that implements an embodiment of a method for compressing image data to be recorded on a recording medium according to the present invention.
FIG. 5 is a block diagram of the remaining portion of an example of an encoding apparatus that implements an embodiment of a method for compressing image data to be recorded on a recording medium according to the present invention.
6 is a diagram for explaining an example of an image data dividing method according to an embodiment of the image data compression method of the examples of FIGS. 4 and 5. FIG.
7 is a diagram for explaining a table used in an embodiment of the image data compression method of the example of FIGS. 4 and 5. FIG.
FIG. 8 is a diagram for explaining an example of compressed data according to an embodiment of the image data compression method of the example of FIGS. 4 and 5;
FIG. 9 is a diagram for explaining an embodiment of the image data compression method of the example of FIGS. 4 and 5;
10 is a diagram for explaining an example of a table used in an embodiment of the image data compression method of the example of FIGS. 4 and 5. FIG.
FIG. 11 is a diagram for explaining an example of recorded compressed image data on a recording medium according to the present invention.
FIG. 12 is a diagram showing an example of a format of data recorded on a recording medium according to the present invention.
FIG. 13 is a diagram for explaining a sector format of CD and identification information ID for each sector recorded on the recording medium according to the present invention.
FIG. 14 is a diagram showing an example of reproduction data from an example of a recording medium according to the present invention. .
[Explanation of symbols]
1 Game console
5 CD-ROM
6 Program cartridge
8 CRT display
11 CPU
12 DMA controller
13 RAM
14 PPU (Picture Processing Unit)
15 Video RAM
22 Character division means
24. First stage vector quantization means
25 Pallet dividing means
27 Second-stage vector quantization means
38 Recording processing means
39 Other data input terminals
41 CD-ROM player
50 General-purpose DSP
Claims (9)
記録媒体から、記録エリア単位に、データを順次読み出す読み出し手段と、
読み出したデータを処理するための記憶手段と、
読み出したデータに含まれる当該データを識別するための識別情報を読み取り、
前記識別情報が動画データを示している場合には、読み出したデータを、画面を構成する単位で、前記記憶手段の第1の領域を用いてデコード処理し、
前記識別情報が動画データ以外を示している場合には、読み出したデータを、前記記憶手段の第1の領域以外の領域を用いて、前記識別情報に基づいて処理する制御手段と、
前記記憶手段の第1の領域においてデコード処理された画面を構成する単位のデータを読み出して、動画として出力する出力手段とを備えることを特徴とする動画再生装置。Data is sequentially read from a recording medium in which moving image data including compressed image data constituting the moving image and data for decoding the image data and data other than the moving image data are continuously recorded in units of recording areas. However, a video playback device that plays back video based on video data,
Read means for sequentially reading data from the recording medium in units of recording areas;
Storage means for processing the read data;
Read identification information for identifying the data included in the read data,
When the identification information indicates moving image data, the read data is decoded using the first area of the storage means in units constituting a screen,
Control means for processing the read data based on the identification information using an area other than the first area of the storage means when the identification information indicates other than moving image data;
An apparatus for reproducing a moving picture, comprising: output means for reading out data of a unit constituting a screen decoded in the first area of the storage means and outputting the data as a moving picture.
前記制御手段は、前記識別情報が動画データ以外を示しているデータを処理する間は、前記識別情報が動画データを示してるデータに対するデコード処理を中断することを特徴とする動画再生装置。 The moving image reproducing apparatus characterized in that the control means interrupts the decoding process for the data whose identification information indicates moving image data while the data indicating the identification information indicates other than moving image data.
前記出力手段は、前記制御手段が前記識別情報が動画データを示してるデータに対するデコード処理を中断している間は、直前に出力した画面を構成する単位のデータの出力状態を保持することを特徴とする動画再生装置。 The output means holds the output state of the data of the unit constituting the screen output immediately before the control means interrupts the decoding process for the data whose identification information indicates moving image data. A video playback device.
前記制御手段は、前記識別情報が、静止画を示している場合には、当該データに基づく画像を、前記記憶手段の第1の領域においてデコード処理された画面を構成する単位のデータと合成することを特徴とする動画再生装置。 When the identification information indicates a still image, the control unit synthesizes an image based on the data with unit data constituting a screen decoded in the first area of the storage unit. A video playback apparatus characterized by the above.
前記記憶手段の第1の領域は、ビデオRAM上に構成されることを特徴とする動画再生装置。 The moving image reproducing apparatus according to claim 1, wherein the first area of the storage means is configured on a video RAM.
前記記録媒体は、CD−ROMであることを特徴とする動画再生装置。 The moving picture reproducing apparatus, wherein the recording medium is a CD-ROM.
記録媒体から、記録エリア単位に、データを順次読み出し、 Read data sequentially from the recording medium in units of recording areas,
読み出したデータに含まれる当該データを識別するための識別情報が動画データを示しているかどうかを判断し、 Determine whether the identification information for identifying the data included in the read data indicates video data,
前記識別情報が動画データを示している場合には、読み出したデータを、画面を構成する単位で、記憶手段の第1の領域を用いてデコード処理して、動画として再生し、 When the identification information indicates moving image data, the read data is decoded using the first area of the storage means in units constituting the screen, and reproduced as a moving image,
前記識別情報が動画データ以外を示している場合には、読み出したデータを、前記記憶手段の第1の領域以外の領域を用いて、前記識別情報に基づいて処理することを特徴とする動画再生方法。 When the identification information indicates other than moving image data, the read data is processed based on the identification information using an area other than the first area of the storage means. Method.
前記識別情報が動画データ以外を示しているデータを処理する間は、前記識別情報が動画データを示してるデータに対するデコード処理を中断することを特徴とする動画再生方法。 A moving image reproducing method characterized in that decoding processing for data whose identification information indicates moving image data is interrupted while data indicating identification data other than moving image data is processed.
ある単位ごとに区切られたデータを、媒体を介して順次読み込み、 The data divided into units is read sequentially through the medium,
読み込んだデータに含まれる当該データを識別するための識別情報が動画データを示しているかどうかを判断し、 Determine whether the identification information for identifying the data included in the read data indicates video data,
前記識別情報が動画データを示している場合には、読み込んだデータを、画面を構成する単位で、記憶手段の第1の領域を用いてデコード処理して、動画として再生し、 When the identification information indicates moving image data, the read data is decoded using the first area of the storage means in units constituting the screen, and reproduced as a moving image,
前記識別情報が動画データ以外を示している場合には、読み込んだデータを、前記記憶手段の第1の領域以外の領域を用いて、前記識別情報に基づいて処理することを特徴とする動画再生方法。 When the identification information indicates other than moving image data, the read data is processed based on the identification information using an area other than the first area of the storage means. Method.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003102850A JP3735097B2 (en) | 2003-04-07 | 2003-04-07 | Movie playback apparatus and movie playback method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003102850A JP3735097B2 (en) | 2003-04-07 | 2003-04-07 | Movie playback apparatus and movie playback method |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP18514491A Division JP3442085B2 (en) | 1991-06-28 | 1991-06-28 | Video playback device, video playback method, and game device |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2003331531A JP2003331531A (en) | 2003-11-21 |
JP3735097B2 true JP3735097B2 (en) | 2006-01-11 |
Family
ID=29707376
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003102850A Expired - Lifetime JP3735097B2 (en) | 2003-04-07 | 2003-04-07 | Movie playback apparatus and movie playback method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3735097B2 (en) |
-
2003
- 2003-04-07 JP JP2003102850A patent/JP3735097B2/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JP2003331531A (en) | 2003-11-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5390158A (en) | Method for recording and reproducing compressed audio PCM data on and from optical disc using adjustable interleaving factor | |
CN1198566A (en) | Method and equipment used in information processing, computer readable medium and writing system | |
JP2950346B2 (en) | Image data decoding method and its decoder circuit | |
US6111592A (en) | DMA data transfer apparatus, motion picture decoding apparatus using the same, and DMA data transfer method | |
JPH1091393A (en) | Data buffering device | |
JP3735097B2 (en) | Movie playback apparatus and movie playback method | |
JP3084093B2 (en) | Image data decoding method and image reproducing apparatus thereof | |
JP3286329B2 (en) | Image data transmission method, image reproducing apparatus, and image reproducing method | |
JP3442085B2 (en) | Video playback device, video playback method, and game device | |
JP2937212B2 (en) | Data processing device | |
JP3358067B2 (en) | Method of manufacturing recording medium recording image data, image reproducing method and image reproducing apparatus | |
JP3363162B2 (en) | CD-ROM, CD-ROM playback method and playback apparatus | |
JP3045254B2 (en) | Data decoding method and decoder circuit thereof | |
JP3786716B2 (en) | Manufacturing method of recording medium on which image data is recorded | |
JP3444869B2 (en) | Moving image data recording method and reproducing method thereof | |
JP3202283B2 (en) | Image data reproducing method and reproducing circuit thereof | |
JP3205357B2 (en) | Image data transmission method and recording medium | |
JP3344730B2 (en) | Image display method and display control device | |
JPH04276983A (en) | Recording medium and picture data compression method | |
US6529679B1 (en) | Information processing apparatus and method as well as providing medium | |
JPH0520797A (en) | Cd-rom and its recording method | |
JPH04273788A (en) | Recording media and image data compressing | |
JPH04255187A (en) | Information recording device | |
CN100515066C (en) | Data processing system, reproduction apparatus, computer, reproduction method, | |
JPH0528501A (en) | Reproducing device for cd-rom and cd-i |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20040506 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20040607 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050915 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20051020 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091028 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101028 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111028 Year of fee payment: 6 |
|
EXPY | Cancellation because of completion of term | ||
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111028 Year of fee payment: 6 |