(57)【要約】【課題】参照画像を重複してデコードすることなくスクラブ再生を実現させる。【解決手段】デコード制御部は、再生されるストリームと再生出力するフレームＢ１３およびＢ３、および、再生速度や再生モードなどの指令を受け、インデックステーブルおよびベースバンド画像データ用メモリに記憶されているベースバンド画像データの情報を基に、デコードに用いるデコーダとデコード順を決定し、デコード処理部に順次供給させる。デコーダは、供給されたデータをＩ２ピクチャからデコードし、デコードして生成したベースバンド画像データをベースバンド画像データ用メモリに保存させるとともに、Ｐ５,Ｐ８,Ｐ１１、および、Ｐ１４のデコード時に、ベースバンド画像データ用メモリに保存されたベースバンド画像データから参照画像の供給を受け、それを基に、デコードを実行する。本発明は、再生装置またはパーソナルコンピュータに適用できる。【選択図】図７
2006319962.tif 000002
【特許請求の範囲】
【請求項１】
符号化ストリームの再生状態を示す再生情報の入力を受ける再生情報入力ステップと、
前記再生情報入力ステップの処理により入力された前記再生情報を基に、前記符号化ストリームの対象ピクチャを復号処理するのに必要な参照ピクチャを示す参照ピクチャ情報を取得する参照ピクチャ情報取得ステップと、
前記参照ピクチャ情報取得ステップの処理により取得された前記参照ピクチャ情報に基づいて、前記参照ピクチャが所定の記憶領域に記憶されているかを判定する判定ステップと、
前記判定ステップの処理により、前記参照ピクチャが前記記憶領域に記憶されていないと判定された場合、前記符号化ストリームから前記記憶領域に記憶されていない前記参照ピクチャを取得して復号処理し、前記記憶領域への記憶を制御する参照ピクチャ復号ステップと、
前記記憶領域に記憶されている前記参照ピクチャを利用して、前記符号化ストリームの対象ピクチャを復号処理することにより画像データを生成して、前記記憶領域への記録を制御する復号ステップと
を含む処理をコンピュータに実行させるプログラム。
【請求項２】
前記参照ピクチャ復号ステップおよび前記復号ステップの処理では、複数の復号方法で復号処理を実行し、
前記再生情報入力ステップの処理により入力された前記再生情報を基に、前記符号化ストリームの復号順および復号方法を決定する第１の決定ステップを更に含み、
前記参照ピクチャ復号ステップおよび前記復号ステップの処理は、前記第１の決定ステップの処理により決定された前記復号順および前記復号方法に基づいて実行される
請求項１に記載のプログラム。
【請求項３】
前記判定ステップの処理では、前記第１の決定ステップの処理により決定された前記復号方法において復号された前記参照ピクチャが前記記憶領域に記憶されているか否かが判定される
請求項２に記載のプログラム。
【請求項４】
前記参照ピクチャ復号ステップおよび前記復号ステップの処理では、前記第１の決定ステップの処理による決定に基づいて、解像度の異なる複数の復号処理のうちのいずれかが実行可能である
請求項２に記載のプログラム。
【請求項５】
前記参照ピクチャ復号ステップおよび前記復号ステップの処理では、前記第１の決定ステップの処理による決定に基づいて、複数の符号化方式に対応する復号処理のうちのいずれかが実行可能である
請求項２に記載のプログラム。
【請求項６】
前記符号化ストリームには、Ｉピクチャ、Ｐピクチャ、および、Ｂピクチャが含まれており、
前記復号ステップの処理では、前記符号化ストリームの対象ピクチャがＢピクチャである場合、前記対象ピクチャに対して時間的に近傍に存在するＩピクチャ、または、Ｐピクチャを復号する
請求項２に記載のプログラム。
【請求項７】
前記符号化ストリームには、フレーム内符号化されたピクチャ、および、フレーム間予測符号化されたピクチャが含まれており、
前記復号ステップの処理では、前記符号化ストリームの対象ピクチャがフレーム間予測符号化されたピクチャである場合、前記対象ピクチャに対して時間的に近傍に存在するフレーム内符号化されたピクチャを復号する
請求項２に記載のプログラム。
【請求項８】
前記参照ピクチャ情報に含まれる過去側の参照フレーム数、および、１フレームに対応する画像の表示内に復号処理を実行することが可能なフレーム数を基に、前記符号化ストリームの復号方法を決定する第２の決定ステップを更に含む
請求項２に記載のプログラム
【請求項９】
１フレームに対応する画像の表示時間内に復号処理を実行することが可能なフレーム数を算出する算出ステップを更に含む
請求項８に記載のプログラム。
【請求項１０】
前記参照ピクチャ情報に含まれる過去側の参照フレーム数を算出する算出ステップを更に含む
請求項８に記載のプログラム。
【請求項１１】
符号化ストリームを復号処理する復号装置において、
前記符号化ストリームの再生状態を示す再生情報の入力を受ける再生情報入力手段と、
前記符号化ストリームの対象ピクチャを復号処理するために必要な参照ピクチャを示す参照ピクチャ情報を管理する参照ピクチャ情報管理手段と、
前記符号化ストリームを復号処理して画像データを生成する復号手段と、
前記復号手段により生成された前記画像データを記憶する記憶手段と、
前記記憶手段により記憶された前記画像データの記憶状態を管理する記憶管理手段と、
前記参照ピクチャ情報管理手段により管理された前記参照ピクチャ情報、および、前記記憶管理手段により管理される前記記憶状態を参照することによって、前記復号手段による復号処理を制御する復号制御手段と
を備え、
前記復号手段は、前記記憶手段により記憶されている前記画像データのうちのいずれかを参照ピクチャとして前記符号化ストリームを復号処理し、復号された前記対象ピクチャを前記記憶手段に供給して記憶させる
復号装置。
【請求項１２】
所定の記憶領域に画像データが記憶されるようになされ、前記記憶領域を利用して、符号化ストリームを復号する復号装置の復号方法において、
前記符号化ストリームの再生状態を示す再生情報の入力を受ける再生情報入力ステップと、
前記再生情報入力ステップの処理により入力された前記再生情報を基に、前記符号化ストリームの対象ピクチャを復号処理するのに必要な参照ピクチャを示す参照ピクチャ情報を取得する参照ピクチャ情報取得ステップと、
前記参照ピクチャ情報取得ステップの処理により取得された前記参照ピクチャ情報に基づいて、前記参照ピクチャが前記記憶領域に記憶されているかを判定する判定ステップと、
前記判定ステップの処理により、前記参照ピクチャが前記記憶領域に記憶されていないと判定された場合、前記符号化ストリームから前記記憶領域に記憶されていない前記参照ピクチャを取得して復号処理し、前記記憶領域への記憶を制御する参照ピクチャ復号ステップと、
前記記憶領域に記憶されている前記参照ピクチャを利用して、前記符号化ストリームの対象ピクチャを復号処理することにより画像データを生成して、前記記憶領域への記録を制御する復号ステップと
を含む復号方法。
【請求項１３】
請求項１に記載のプログラムが記録されている記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラム、復号装置、復号方法、並びに、記録媒体に関し、特に、スクラブ再生を行う場合に用いて好適な、プログラム、復号装置、復号方法、並びに、記録媒体に関する。
【背景技術】
【０００２】
MPEG方式で映像データをエンコード（符号化）する場合、圧縮データを生成するのみならず、インデックスデータなどのサブデータを生成することにより、圧縮データをデコードして再生するとき、サブデータを参照して、所定の画面から再生を開始する特殊再生を実行することができるようにした技術がある（例えば、特許文献１）。
【０００３】
【特許文献１】特開平１１−３４１４３７号公報
【０００４】
インデックスデータを用いて、MPEG2 LongGOP形式でエンコードされているストリームデータをデコードすることができる従来の再生装置１について、図１を用いて説明する。
【０００５】
操作入力取得部２１は、ユーザの操作入力を取得する。操作入力取得部２１は、ユーザから、デコード対象ストリームの選択と、再生開始位置の指定を受け、ストリーム復号位置検出処理部２２に供給する。ストリーム復号位置検出処理部２２は、操作入力取得部２１から供給されたデコード対象ストリームの選択と、再生開始位置の指定を基に、再生されるストリームのStreamNo.と、再生開始位置のFrameNo.を求め、ストリーム供給制御部２３に供給する。
【０００６】
ストリーム供給制御部２３は、再生されるストリームのStreamNo.と、再生開始位置のFrameNo.を基に、インデックス管理部２４に記憶されている対応するストリームのデコードに必要な各種情報を取得し、指定された再生開始位置のフレームをデコードするために必要な参照画像フレームを検出する。そして、ストリーム供給制御部２３は、ストリームメモリ制御部２５に、デコードに必要なストリームデータを要求し、ストリームメモリ制御部２５を介してストリーム用メモリ２６から供給されたストリームデータを、デコーダ２８に供給する。また、ストリーム供給制御部２３は、出力されるフレームのFrameNo.を、後述するベースバンド信号処理部３２に供給する。
【０００７】
ストリームメモリ制御部２５は、ストリーム用メモリ２６の記憶を制御するものであり、ストリーム供給制御部２３から要求されたストリームデータを、ストリーム用メモリ２６から読み出して、ストリーム供給制御部２３に出力する。
【０００８】
ストリーム用メモリ２６は、それぞれ、ストリームデータを記憶するものであり、ストリームメモリ制御部２５の制御に基づいて、所定のストリームデータを出力する。
【０００９】
デコーダ２８は、その内部にメモリ制御部４１を有し、メモリ制御部４１により参照ベースバンド画像用メモリ２９を制御して、ストリーム供給制御部２３から供給されたストリームデータをデコードし、デコード済みのベースバンド画像データを、ベースバンド画像データ用メモリ制御部３０に供給する。
【００１０】
具体的には、デコーダ２８は、供給された圧縮ストリームがフレーム間参照により圧縮されている圧縮ストリームである場合、後のデコードで必要となる参照画像を、メモリ制御部４１の処理により参照ベースバンド画像用メモリ２９に保持させることにより、圧縮ストリームをデコードする。
【００１１】
ベースバンド画像データ用メモリ制御部３０は、デコーダ２８から供給された、デコード済みのベースバンド画像データを、ベースバンド画像データ用メモリ３１に供給するとともに、ベースバンド信号処理部３２から要求されたStreamNo.とFrameNo.により示されるフレームのベースバンド画像データをベースバンド画像データ用メモリ３１から読み出して、ベースバンド信号処理部３２に供給する。
【００１２】
ベースバンド信号処理部３２は、供給されたベースバンド画像データに対して、例えば、色補正やサイズ補正、スロー再生時におけるフィールドコントロールなど、デコードされた画像が正しく再生出力されるように各種補正を行って、生成された出力ベースバンド画像データを出力する。
【００１３】
次に、図２のフローチャートを参照して、図１の再生装置１において実行される、従来の再生処理について説明する。
【００１４】
ステップＳ１において、ストリーム復号位置検出処理部２２は、操作入力取得部２１より、再生位置の指定（ストリームＮｏ．フレームＮｏ．）の入力を受け、ストリーム供給制御部２３に供給する。
【００１５】
ステップＳ２において、ストリーム供給制御部２３は、供給されたストリームＮｏ．に対応するインデックステーブルを、インデックス管理部２４から取得する。
【００１６】
ステップＳ３において、ストリーム供給制御部２３は、インデックステーブルから、デコードに必要な情報である、例えば、ピクチャタイプ、参照画像に関する情報、データ長などの情報を抽出する。
【００１７】
ステップＳ４において、ストリーム供給制御部２３は、指定されたフレームＮｏ.のフレームをデコードするために参照画像として必要なフレーム（デコードするフレームとして指定されているフレームがＩピクチャではなかった場合は、直前のＩピクチャを含む少なくとも１つのフレーム）のフレームＮｏ．と、それらをデコードするための情報を取得する。
【００１８】
ステップＳ５において、ストリーム供給制御部２３は、参照画像およびデコードされる画像として必要なフレームを、ストリームメモリ制御部２５に要求する。ストリームメモリ制御部２５は、ストリーム用メモリ２６から、参照画像およびデコードされる画像として必要なフレームを、順方向に読み出して、ストリーム供給制御部２３に供給する。
【００１９】
ステップＳ６において、ストリーム供給制御部２３は、供給されたフレームデータをデコーダ２８に供給する。デコーダ２８は、供給されたデータをデコードする。具体的には、デコーダ２８は、後のデコードで必要となる参照画像をデコードしたとき、メモリ制御部４１の処理により参照ベースバンド画像用メモリ２９にデコードされて生成されたベースバンド画像データを保持させ、これを参照画像として用いることにより、圧縮ストリームをデコードする。このとき、デコーダ２８は、必要のないＢフレームの供給を受けたとき（供給されたＢピクチャのデコードを行わずに、必要とされているフレームのデコードが可能であれば）、Ｂピクチャのデコードをスキップする。
【００２０】
そして、ステップＳ７において、デコーダ２８は、デコードされたベースバンド画像データをベースバンド画像データ用メモリ制御部３０に供給する。ベースバンド画像データ用メモリ制御部３０は、デコーダ２８から供給されたデコード済みのベースバンド画像データを、ベースバンド画像データ用メモリ３１に供給するとともに、ベースバンド信号処理部３２から要求されたStreamNo.とFrameNo.により示されるフレームのベースバンド画像データをベースバンド画像データ用メモリ３１から読み出して、ベースバンド信号処理部３２に供給する。ベースバンド信号処理部３２は、供給されたベースバンド画像データに対して、例えば、色補正やサイズ補正、スロー再生時におけるフィールドコントロールなど、デコードされた画像が正しく再生出力されるように各種補正を行って、生成された出力ベースバンド画像データを出力する。
【００２１】
図３を用いて、図１および図２を用いて説明した再生装置１においてＢ１３フレームとＢ３フレームを順に出力する場合を例として、ユーザの指定した所望のフレームを再生するスクラブ再生（ランダム再生とも称される）について説明する。
【００２２】
ストリーム復号位置検出処理部２２は、操作入力取得部２１より、デコード対象のストリームのストリームＮｏ．と、再生出力するフレームとして指定されたＢ１３およびＢ３のフレームＮｏ．の入力を受け、ストリーム供給制御部２３に供給する。
【００２３】
ストリーム供給制御部２３は、まず、１枚目に出力するＢ１３をデコードするために参照画像として必要なフレームであるＩ２,Ｐ５,Ｐ８,Ｐ１１、および、Ｐ１４と、再生出力されるフレームであるＢ１３とを含む時間順のストリームを、ストリームメモリ制御部２５に要求して、デコーダ２８に供給する。
【００２４】
デコーダ２８は、供給されたデータを順次デコード（Ｂピクチャのデコードは、必要に応じてスキップすることができる）し、メモリ制御部４１の処理により参照ベースバンド画像用メモリ２９にＰ１１とＰ１４をセットし、これらを参照画像としてＢ１３をデコードする。デコーダ２８は、デコードされたＢ１３に対応するベースバンド画像データをベースバンド画像データ用メモリ制御部３０に供給して、ベースバンド画像データ用メモリ３１に保存させる（メモリコピー）。そして、ベースバンド信号処理部３２において各種補正が行われて（ベースバンド処理）出力ベースバンド画像データが出力される。
【００２５】
そして、ストリーム供給制御部２３は、次に、２枚目に出力するＢ３をデコードするために参照画像として必要なフレームであるＩ２、および、Ｐ５と、再生出力されるフレームであるＢ３とを、ストリームメモリ制御部２５に要求して、これらを含む時間順のストリームをデコーダ２８に供給する。
【００２６】
デコーダ２８は、供給されたデータを順次デコードし、メモリ制御部４１の処理により参照ベースバンド画像用メモリ２９にＩ２とＰ５をセットし、これらを参照画像としてＢ３をデコードする。デコーダ２８は、デコードされたＢ３に対応するベースバンド画像データをベースバンド画像データ用メモリ制御部３０に供給して、ベースバンド画像データ用メモリ３１に保存させる（メモリコピー）。そして、ベースバンド信号処理部３２において各種補正が行われて（ベースバンド処理）出力ベースバンド画像データが出力される。
【００２７】
このような処理により、従来の再生装置１において、スクラブ再生が行われた。
【発明の開示】
【発明が解決しようとする課題】
【００２８】
図１を用いて説明した再生装置１においては、デコーダ２８に圧縮ストリームが時間順に供給され、デコードが行われ、デコードされて生成されたベースバンド画像データが出力されるようになされている。デコーダ２８は、供給された圧縮ストリームがフレーム間参照により圧縮されている圧縮ストリームである場合、後のデコードで必要となる参照画像を、メモリ制御部４１の処理により参照ベースバンド画像用メモリ２９に保持させることにより、圧縮ストリームをデコードする。
【００２９】
具体的には、デコーダ２８は、供給される圧縮ストリームがMPEG2 LongGOP形式でエンコードされている場合、Ｉピクチャをデコードして、参照ベースバンド画像用メモリ２９に保持させ、このＩピクチャを参照して、Ｐピクチャをデコードして、参照ベースバンド画像用メモリ２９に保持させ、保持されているＩピクチャまたはＰピクチャを参照して、Ｂピクチャをデコードする。また、参照ベースバンド画像用メモリ２９に保持されている参照画像データは、参照されるフレームのデコードが終了した後、破棄される。
【００３０】
すなわち、参照ベースバンド画像用メモリ２９は、デコーダ２８のメモリ制御部４１により制御され、デコーダ２８のデコード処理において、フレーム間参照が行われている圧縮データをデコードする場合の参照画像データを一時記憶するためのみに用いられている。
【００３１】
このような方式では、時間的にランダムな画像のデコードを高速に行うことは、困難であった。例えば、何フレームか前にデコードした画像を参照画像として用いたい場合であっても、デコーダ２８によって参照可能な参照ベースバンド画像用メモリ２９に残っていなければ、再度、デコーダ２８に参照画像として必要なベースバンド画像フレームを供給し、デコードさせて、参照ベースバンド画像用メモリ２９にセットさせる必要があった。そして、その後、再生出力されるベースバンド画像フレームをデコーダ２８によりデコードさせることができるので、時間的にランダムな画像のデコードを高速に行うことは困難であった。
【００３２】
したがって、従来のデコード方法では、スクラブ再生（ランダム再生）の指令に対して、再生出力を高速に追従させることが困難であった。また、ランダムな位置のフレームの再生を高速に行うことが困難であるということは、例えば、コマ送りにおいて、操作量（例えば、操作入力デバイスがダイヤルの場合、ダイヤルの回転量など）に比例したフレーム数を移動させるジョグ再生、サーチにおいて、操作量に比例した速度で再生が行われるシャトル再生などの他、逆再生、一時停止、コマ送り、コマ戻しなどの各種再生、可変速再生または逆再生などのトリック再生などのさまざまな再生処理の指令に対して、再生出力を高速に追従させることが困難であるということである。
【００３３】
本発明はこのような状況に鑑みてなされたものであり、スクラブ再生（ランダム再生）の指令に対して、再生出力を高速に追従させることができるようにするものである。
【課題を解決するための手段】
【００３４】
本発明の一側面のプログラムは、符号化ストリームの再生状態を示す再生情報の入力を受ける再生情報入力ステップと、再生情報入力ステップの処理により入力された再生情報を基に、符号化ストリームの対象ピクチャを復号処理するのに必要な参照ピクチャを示す参照ピクチャ情報を取得する参照ピクチャ情報取得ステップと、参照ピクチャ情報取得ステップの処理により取得された参照ピクチャ情報に基づいて、参照ピクチャが所定の記憶領域に記憶されているかを判定する判定ステップと、判定ステップの処理により、参照ピクチャが記憶領域に記憶されていないと判定された場合、符号化ストリームから記憶領域に記憶されていない参照ピクチャを取得して復号処理し、記憶領域への記憶を制御する参照ピクチャ復号ステップと、記憶領域に記憶されている参照ピクチャを利用して、符号化ストリームの対象ピクチャを復号処理することにより画像データを生成して、記憶領域への記録を制御する復号ステップとを含む処理をコンピュータに実行させる。
【００３５】
参照ピクチャ復号ステップおよび復号ステップの処理では、複数の復号方法で復号処理が実行され、再生情報入力ステップの処理により入力された再生情報を基に、符号化ストリームの復号順および復号方法を決定する第１の決定ステップを更に含ませるようにすることができ、参照ピクチャ復号ステップおよび復号ステップの処理では、第１の決定ステップの処理により決定された復号順および復号方法に基づいて復号処理が実行される。
【００３６】
判定ステップの処理では、第１の決定ステップの処理により決定された復号方法において復号された参照ピクチャが記憶領域に記憶されているか否かが判定されるものとすることができる。
【００３７】
参照ピクチャ復号ステップおよび復号ステップの処理では、第１の決定ステップの処理による決定に基づいて、解像度の異なる複数の復号処理のうちのいずれかが実行可能であるものとすることができる。
【００３８】
参照ピクチャ復号ステップおよび復号ステップの処理では、第１の決定ステップの処理による決定に基づいて、複数の符号化方式に対応する復号処理のうちのいずれかが実行可能であるものとすることができる。
【００３９】
符号化ストリームには、Ｉピクチャ、Ｐピクチャ、および、Ｂピクチャが含まれているものとすることができ、復号ステップの処理では、符号化ストリームの対象ピクチャがＢピクチャである場合、対象ピクチャに対して時間的に近傍に存在するＩピクチャ、または、Ｐピクチャを復号させるようにすることができる。
【００４０】
符号化ストリームには、フレーム内符号化されたピクチャ、および、フレーム間予測符号化されたピクチャが含まれているものとすることができ、復号ステップの処理では、符号化ストリームの対象ピクチャがフレーム間予測符号化されたピクチャである場合、対象ピクチャに対して時間的に近傍に存在するフレーム内符号化されたピクチャを復号させるようにすることができる。
【００４１】
参照ピクチャ情報に含まれる過去側の参照フレーム数、および、１フレームに対応する画像の表示内に復号処理を実行することが可能なフレーム数を基に、符号化ストリームの復号方法を決定する第２の決定ステップを更に含ませるようにすることができる。
【００４２】
１フレームに対応する画像の表示時間内に復号処理を実行することが可能なフレーム数を算出する算出ステップを更に含ませるようにすることができる。
【００４３】
参照ピクチャ情報に含まれる過去側の参照フレーム数を算出する算出ステップを更に含ませるようにすることができる。
【００４４】
本発明の一側面の復号装置は、符号化ストリームの再生状態を示す再生情報の入力を受ける再生情報入力手段と、符号化ストリームの対象ピクチャを復号処理するために必要な参照ピクチャを示す参照ピクチャ情報を管理する参照ピクチャ情報管理手段と、符号化ストリームを復号処理して画像データを生成する復号手段と、復号手段により生成された画像データを記憶する記憶手段と、記憶手段により記憶された画像データの記憶状態を管理する記憶管理手段と、参照ピクチャ情報管理手段により管理された参照ピクチャ情報、および、記憶管理手段により管理される記憶状態を参照することによって、復号手段による復号処理を制御する復号制御手段とを備え、復号手段は、記憶手段により記憶されている画像データのうちのいずれかを参照ピクチャとして符号化ストリームを復号処理し、復号された対象ピクチャを記憶手段に供給して記憶させる。
【００４５】
本発明の一側面の復号方法は、符号化ストリームの再生状態を示す再生情報の入力を受ける再生情報入力ステップと、再生情報入力ステップの処理により入力された再生情報を基に、符号化ストリームの対象ピクチャを復号処理するのに必要な参照ピクチャを示す参照ピクチャ情報を取得する参照ピクチャ情報取得ステップと、参照ピクチャ情報取得ステップの処理により取得された参照ピクチャ情報に基づいて、参照ピクチャが記憶領域に記憶されているかを判定する判定ステップと、判定ステップの処理により、参照ピクチャが記憶領域に記憶されていないと判定された場合、符号化ストリームから記憶領域に記憶されていない参照ピクチャを取得して復号処理し、記憶領域への記憶を制御する参照ピクチャ復号ステップと、記憶領域に記憶されている参照ピクチャを利用して、符号化ストリームの対象ピクチャを復号処理することにより画像データを生成して、記憶領域への記録を制御する復号ステップとを含む。
【００４６】
本発明の一側面においては、符号化ストリームの再生状態を示す再生情報の入力を受け、再生情報を基に、対象ピクチャの復号に必要な参照ピクチャを示す参照ピクチャ情報が取得され、参照ピクチャが所定の記憶領域に記憶されているか否かの判定を基に、必要に応じて、符号化ストリームから参照ピクチャに対応する符号化されたピクチャが取得されて復号され、生成された参照ピクチャが所定の記憶領域へ記憶されるとともに、所定の記憶領域に記憶されている参照ピクチャを基に、対象ピクチャが復号されて、所定の記憶領域に記録される。
【発明の効果】
【００４７】
本発明の一側面によれば、ストリーム画像データが復号され、特に、参照フレームと復号後の再生出力されるフレームとが同一の記憶領域に記憶されるので、高速にスクラブ再生を行うことが可能となる。
【発明を実施するための最良の形態】
【００４８】
以下に本発明の実施の形態を説明するが、本発明の構成要件と、明細書または図面に記載の実施の形態との対応関係を例示すると、次のようになる。この記載は、本発明をサポートする実施の形態が、明細書または図面に記載されていることを確認するためのものである。従って、明細書または図面中には記載されているが、本発明の構成要件に対応する実施の形態として、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その構成要件に対応するものではないことを意味するものではない。逆に、実施の形態が構成要件に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その構成要件以外の構成要件には対応しないものであることを意味するものでもない。
【００４９】
本発明の一側面のプログラムまたは復号方法は、符号化ストリームの再生状態を示す再生情報（例えば、再生されるフレームの指定や、再生速度または再生モード）の入力を受ける再生情報入力ステップ（例えば、図１１のステップＳ４１の処理）と、再生情報入力ステップの処理により入力された再生情報を基に、符号化ストリームの対象ピクチャを復号処理するのに必要な参照ピクチャを示す参照ピクチャ情報を取得する参照ピクチャ情報取得ステップ（例えば、図１１のステップＳ４６の処理）と、参照ピクチャ情報取得ステップの処理により取得された参照ピクチャ情報に基づいて、参照ピクチャが所定の記憶領域（例えば、図１０のＲＡＭ２２３のベースバンド画像データ用メモリ２２３）に記憶されているかを判定する判定ステップ（例えば、図１１のステップＳ４７の処理）と、判定ステップの処理により、参照ピクチャが記憶領域に記憶されていないと判定された場合、符号化ストリームから記憶領域に記憶されていない参照ピクチャを取得して復号処理し、記憶領域への記憶を制御する参照ピクチャ復号ステップ（例えば、図１１のステップＳ４８の処理）と、記憶領域に記憶されている参照ピクチャを利用して、符号化ストリームの対象ピクチャを復号処理することにより画像データを生成して、記憶領域への記録を制御する復号ステップ（例えば、図１１のステップＳ４９の処理）とを含む処理をコンピュータに実行させる。
【００５０】
参照ピクチャ復号ステップおよび復号ステップの処理では、複数の復号方法で復号処理を実行することができ、再生情報入力ステップの処理により入力された再生情報を基に、符号化ストリームの復号順および復号方法を決定する第１の決定ステップ（例えば、図１１のステップＳ４４の処理）を更に含ませることができ、参照ピクチャ復号ステップおよび復号ステップの処理では、第１の決定ステップの処理により決定された復号順および復号方法に基づいて復号処理を実行することができる。
【００５１】
参照ピクチャ復号ステップおよび復号ステップの処理では、第１の決定ステップの処理による決定に基づいて、複数の符号化方式に対応する復号処理（例えば、所定のピクチャタイプ専用の復号処理やＭＰＥＧ以外の復号処理）のうちのいずれかが実行可能であるものとすることができる。
【００５２】
符号化ストリームには、フレーム内符号化されたピクチャ（例えば、Ｉピクチャ）、および、フレーム間予測符号化されたピクチャ（例えば、ＰピクチャまたはＢピクチャ）が含まれているものとすることができ、復号ステップの処理では、符号化ストリームの対象ピクチャがフレーム間予測符号化されたピクチャである場合、対象ピクチャに対して時間的に近傍に存在するフレーム内符号化されたピクチャを復号することができる。
【００５３】
参照ピクチャ情報に含まれる過去側の参照フレーム数（例えば、深さ情報に対応する値）、および、１フレームに対応する画像の表示内に復号処理を実行することが可能なフレーム数（例えば、デコード可能フレーム数）を基に、符号化ストリームの復号方法を決定する第２の決定ステップ（例えば、図１３のステップＳ１２７の処理、すなわち、図１４に示される処理）を更に含ませることができる。
【００５４】
１フレームに対応する画像の表示時間内に復号処理を実行することが可能なフレーム数（例えば、デコード可能フレーム数）を算出する算出ステップ（例えば、図１４のステップＳ１６４の処理）を更に含ませることができる。
【００５５】
参照ピクチャ情報に含まれる過去側の参照フレーム数（例えば、深さ情報に対応する値）を算出する算出ステップ（例えば、図１２を用いて説明した処理）を更に含ませることができる。
【００５６】
本発明の一側面の復号装置（例えば、図４の再生装置または図９のパーソナルコンピュータ２０１）は、符号化ストリームの再生状態を示す再生情報（例えば、再生されるフレームの指定や、再生速度または再生モード）の入力を受ける再生情報入力手段（例えば、図４の操作入力取得部２１）と、符号化ストリームの対象ピクチャを復号処理するために必要な参照ピクチャを示す参照ピクチャ情報を管理する参照ピクチャ情報管理手段（例えば、図４のインデックス管理部２４）と、符号化ストリームを復号処理して画像データを生成する復号手段（例えば、図４のデコード処理部７６）と、復号手段により生成された画像データを記憶する記憶手段（例えば、図４のベースバンド画像データ用メモリ３１）と、記憶手段により記憶された画像データの記憶状態を管理する記憶管理手段（例えば、図４のベースバンドメモリ管理部７３）と、参照ピクチャ情報管理手段により管理された参照ピクチャ情報、および、記憶管理手段により管理される記憶状態を参照することによって、復号手段による復号処理を制御する復号制御手段（例えば、図４のデコード制御部７２）とを備え、復号手段は、記憶手段により記憶されている画像データのうちのいずれかを参照ピクチャとして符号化ストリームを復号処理し、復号された対象ピクチャを記憶手段に供給して記憶させる。
【００５７】
以下、図を参照して、本発明の実施の形態について説明する。
【００５８】
図４は、本発明を適用した再生装置６１の構成例を示すブロック図である。
【００５９】
なお、従来の場合と対応する部分には同一の符号を付してあり、その説明は適宜省略する。
【００６０】
すなわち、図４の再生装置６１は、ストリーム供給制御部２３に代わって、ストリーム供給制御部７４が設けられ、デコーダ２８に代わって、デコード処理部７６が設けられ、ベースバンド画像データ用メモリ制御部３０に代わって、ベースバンド画像データ用メモリ制御部７７が設けられ、参照ベースバンド画像用メモリ２９が省略され、新たに、ＧＵＩ表示制御部７１、デコード制御部７２、ベースバンドメモリ管理部７３、および、参照画像指示部７５が設けられている以外は、図１を用いて説明した再生装置１と基本的に同様の構成を有している。
【００６１】
ＧＵＩ表示制御部７１は、ユーザに操作入力を促すためのＧＵＩ（Graphical User Interface）を提供したり、処理結果を表示出力するための画面の表示を制御するものであり、例えば、図５に示されるような編集画面の表示を制御する。
【００６２】
図５に示される編集画面１０１は、例えば、複数のストリームデータをランダムに再生させて所望の編集点を検出し、所望の編集点において、異なるストリームデータを接続させるなどの編集処理を実行するための、各種ＧＵＩを提供するものである。
【００６３】
例えば、ユーザにより選択されたストリームデータは、デコード処理部７６においてデコード（復号）され、ベースバンド画像データ用メモリ制御部７７を介して、ベースバンド画像データ用メモリ３１に記憶され、ベースバンド信号処理部３２において所定の処理がなされた後、ＧＵＩ表示制御部７１の処理により、再生ウィンドウ１１１において表示される。すなわち、ベースバンド信号処理部３２において処理された再生用の出力ベースバンド画像データがＧＵＩ表示制御部７１に供給され、ＧＵＩ表示制御部７１より表示が制御されている編集画面１０１の再生ウィンドウ１１１に表示される。
【００６４】
ストリームデータの再生位置は、ユーザの操作入力に基づいて、再生ウィンドウ１１１の下部に設けられているスクラブバー１２１のポインタ１２２の位置が移動されることにより設定される。また、タイムラインウィンドウ１１２にも、例えば、ビデオストリームやオーディオストリーム中の時間軸における再生位置をユーザに通知したり、ユーザが再生位置を指令することができるようになされているタイムライン１３１が設けられており、ユーザの操作入力に基づいて、タイムライン１３１のポインタ１３２の位置が移動されることにより、再生位置を設定することができるようになされている。
【００６５】
操作入力取得部２１は、図５を用いて説明した編集画面１０１を参照したユーザによる操作入力を取得する。操作入力取得部２１は、ユーザから、デコード対象ストリームの選択と、再生開始位置の指定、すなわち、スクラブバー１２１のポインタ１２２、または、タイムライン１３１のポインタ１３２の操作を受けるとともに、再生モードや再生速度などの指令を受け、ストリーム復号位置検出処理部２２に供給する。ストリーム復号位置検出処理部２２は、操作入力取得部２１から供給されたデコード対象ストリームの選択と、再生開始位置の指定を基に、再生されるストリームのStreamNo.と、再生開始位置のFrameNo.を求め、再生速度などの指令とともに、デコード制御部７２に供給する。
【００６６】
再生モードには、例えば、所定再生位置からの通常再生、早送り、早巻き戻し、正逆方向のコマ送り、静止画像の表示などがあり、早送りや早巻き戻しなどのスピードや、コマ送りのコマ間隔なども、それぞれ設定可能なようになされている。
【００６７】
デコード制御部７２は、ストリーム復号位置検出処理部２２から供給された、再生されるストリームのStreamNo.と再生開始位置のFrameNo.、および、再生速度や再生モードなどの指令内容を基に、インデックス管理部２４に記憶されている対応するストリームのデコードに必要な各種情報が記載されているインデックステーブル（図６）を取得し、更に、ベースバンドメモリ管理部７３により管理されている、ベースバンド画像データ用メモリ３１に記憶されているベースバンド画像データの情報を取得する。そして、デコード制御部７２は、これらの情報を基に、デコードに用いるデコーダとデコード順を決定する。
【００６８】
インデックス管理部２４に記憶されているインデックステーブルの一例を、図６に示す。
【００６９】
図６に示されるインデックステーブルには、ディスプレイオーダ（Display Order）におけるピクチャの並び順と、ストリームオーダ（Stream Order）におけるピクチャの並び順、そして、ディスプレイオーダからストリームオーダへピクチャの並びを変換させるためのピクチャのずれ量（Temporal Offset）が記載されている。また、インデックステーブルには、ストリームオーダにおけるシーケンスヘッダ（Sequence Header）の位置を示す情報が、図中では、シーケンスヘッダありを１、なしを０として記載され、前方向または後ろ方向への参照画像の有無を示す情報（Forward/Backward Prediction（Picture Type)）が記載されている。
【００７０】
なお、前方向または後ろ方向への参照画像の有無を示す情報は、この例においては、供給されるビットストリームがOpenGOP形式であるものとして、前方向予測符号化フレーム（すなわちＰピクチャ）を「１０」、両方向予測符号化フレーム（すなわちＢピクチャ）を「１１」、そして、フレーム内符号化フレーム（すなわちＩピクチャ）を「００」として記載されるものとする。なお、供給されるビットストリームがClosedGOP形式である場合、フレーム内符号化データ（すなわちＩピクチャ）に続く２枚のＢピクチャは、後ろ方向のみを参照するので、「０１」が記載されるものとする。
【００７１】
そして、インデックステーブルには、それぞれのピクチャのピクチャサイズ（Picture Size）と、ピクチャのストリーム内または記録領域内でのアドレス（Address）が記載されている。また、インデックステーブルには、そのピクチャとキーフレームとなるピクチャ（ここでは、フレーム内符号化処理が行われているＩピクチャ）との距離を示す情報（Key Frame Offset（decimal)）や、デコーダの仮想入力バッファの蓄積量を９０KHzクロックの時間で示すVbvDelay（VBV:Video buffer verifier）が記載されている。さらに、インデックステーブルには、そのピクチャをデコードするために必要となる前方向画像のうち、最も再生フレームから遠いフレームとの間のフレーム数（深さ）を示す深さ情報（Depth of Past Frames for Decoding）が記載されている。
【００７２】
すなわち、デコード制御部７２は、インデックステーブルを基に、指定された再生開始位置のフレームをデコードするために必要なＩフレーム（キーフレーム）の位置と、ストリーム用メモリ２６に記憶されているストリームのアドレスやピクチャサイズなどを検索する。また、デコード制御部７２は、ユーザにより指令された再生速度などの情報を基に、デコードに必要な品質を決定する。
【００７３】
具体的には、デコード制御部７２は、例えば、再生装置６１内の各部の処理速度や、扱うストリームのデータレートなどに応じて、最終的に出力される表示フレームの表示品質や表示コマ数などを保持するために、デコード順を、以下の（１）乃至（３）に示すいずれかの方法で制御する。
【００７４】
（１）レイテンシ（Latency：待ち時間）が最短となるように、再生されるように指示されたフレームを順にデコードする。（２）再生されるように指示されたフレームのピクチャタイプがＢピクチャの場合には、近傍のＩピクチャまたはＰピクチャをデコードして出力する。（３）再生されるように指示されたフレームの近傍のＩピクチャだけをデコード出力する。
【００７５】
具体的には、デコード制御部７２は、例えば、（１）の方法によってデコード順を制御することができる場合は、（１）に示される方法を取るものとし、ある程度高速の早送りまたは巻き戻しなどが指令されており、（１）に示される方法では、最終的に出力される表示フレームの表示コマ数を確保することができないような場合、（２）に示される方法で、デコード順を制御するものとし、（２）に示される方法でも、最終的に出力される表示フレームの表示コマ数を確保することができないような場合、（３）に示される方法で、デコード順を制御するものとすればよい。
【００７６】
また、デコード制御部７２は、指令されている再生モードや、再生装置６１内の各部の処理速度、および、扱うストリームのデータレートなどに応じて、最終的に出力される表示フレームの表示品質や表示コマ数などを保持するために、デコード処理部７６に含まれる複数のデコードのうちの最も適したデコーダを、デコード処理を実行するデコーダとして選択することができる。
【００７７】
具体的には、デコード制御部７２は、例えば、上述した（１）の方法によってデコード順を制御する場合、表示速度が一定以上に遅かったり、静止画像を表示させるようなとき、すなわち、表示される画像の解像度がユーザによって充分認識可能なような再生モードであるときには、高解像度のデコーダを選択するようにしたり、（１）の方法によってデコード順を制御する場合であっても、表示速度が一定以上に速い場合など、表示される画像の解像度がユーザによって確認しにくいような再生モードであるときには、低解像度のデコーダを選択するようにすることができる。
【００７８】
また、デコード制御部７２は、同一の速度で再生が指令されているとしても、例えば、（１）の方法によってデコード順を制御する場合、最終的に出力される表示フレームの表示コマ数を確保することができるように、低解像度のデコーダを選択するようにし、一方、（２）の方法によってデコード順を制御する場合、最終的に出力される表示フレームの表示コマ数は充分確保することができるので、高解像度のデコーダを選択するようにすることができる。
【００７９】
更に、デコード制御部７２は、例えば、（３）の方法によってデコード順を制御する場合など、特定のピクチャタイプ専用のデコーダ（ここでは、Ｉピクチャ専用のデコーダ）を選択するようにしても良い。
【００８０】
また、デコード制御部７２は、ＭＰＥＧ以外の圧縮方法で圧縮された圧縮ストリームをデコードすることが可能なデコーダを備えるようにすることができ、例えば、ＭＰＥＧ以外の圧縮方法で圧縮された圧縮ストリームが供給された場合、その圧縮ストリームをデコードすることが可能なデコーダを選択し、デコード処理を実行させるようにすることができる。
【００８１】
また、デコード制御部７２は、デコード順やデコーダの選択を、ストリームまたはフレームごとに切り替えるようにしても良い。
【００８２】
また、デコード制御部７２は、インデックスデータを基に、指定されたフレームをデコードするために必要な参照フレームを決定し、ベースバンドメモリ管理部７３から取得された、ベースバンド画像データ用メモリ３１に記憶されているベースバンド画像データの情報を基に、必要な参照フレームはデコード済みであるか否かを判断する。そして、デコード制御部７２は、その判断結果を基に、デコードが必要なフレームのデコード順とデコードを実施するデコーダを決定する。そして、デコード制御部７２は、ストリーム供給制御部７４に、デコードされるストリームのStreamNo.とデコードされるフレームのFrameNo.を供給し、参照画像指示部７５に、デコードされるストリームのStreamNo.と参照画像としてベースバンド画像データ用メモリ３１から読み出す必要のあるフレーム（１枚の再生フレームに対して、０乃至２枚のフレーム）のFrameNo.を供給し、デコード処理部７６に、処理に用いられるデコーダの選択結果と、デコード処理を制御するための制御信号とを供給する。
【００８３】
ベースバンドメモリ管理部７３は、ベースバンド画像データ用メモリ制御部７７を介して、ベースバンド画像データ用メモリ３１に保持されているベースバンド画像データを監視し、ベースバンド画像データ用メモリ３１に保持されているベースバンド画像データのフレーム情報を、デコード制御部７２に供給する。
【００８４】
ストリーム供給制御部７４は、デコード制御部７２から供給された、再生されるストリームのStreamNo.と、デコードされるフレームのFrameNo.を基に、ストリームメモリ制御部２５に、デコードに必要なストリームデータを要求し、ストリームメモリ制御部２５から供給されたストリームデータを、デコード処理部７６に供給する。
【００８５】
ストリームメモリ制御部２５は、ストリーム用メモリ２６によるストリームデータの記憶を制御するものであり、ストリーム供給制御部７４から要求されたストリームデータを、ストリーム用メモリ２６から読み出して、ストリーム供給制御部７４に出力する。
【００８６】
ストリーム用メモリ２６は、それぞれ、ストリームデータを記憶するものであり、ストリームメモリ制御部２５の制御に基づいて、所定のストリームデータを出力する。
【００８７】
参照画像指示部７５は、デコード制御部７２から供給された、復号されるストリームのStreamNo.と参照画像としてベースバンド画像データ用メモリ３１から読み出す必要のあるフレームのFrameNo.を基に、ベースバンド画像データ用メモリ制御部７７に、参照画像としてベースバンド画像データ用メモリ３１から読み出す必要のあるフレームのデコード処理部７６への供給を要求し、参照画像として用いられるベースバンド画像データを、デコード処理部７６に供給させる。
【００８８】
デコード処理部７６は、複数のデコーダ（デコーダ０乃至デコーダｎ）から構成されており、デコード制御部７２の制御に基づいて、ストリーム供給制御部７４から供給されたストリームデータを適するデコーダによりデコードし、デコード済みのベースバンド画像データを、ベースバンド画像データ用メモリ制御部７７に供給する。
【００８９】
具体的には、デコード処理部７６は、例えば、高解像度デコーダ、低解像度デコーダ、特定のピクチャ専用のデコーダ、または、ＭＰＥＧ以外の圧縮方法により圧縮されたストリームデータをデコード可能なデコーダなどを含んで構成され、デコード制御部７２の制御に基づいて選択されたデコーダによって、必要に応じてベースバンド画像データ用メモリ制御部７７から供給されるベースバンド画像データを参照画像として参照することにより、ストリーム供給制御部７４から供給された圧縮されたストリームデータをデコードする。
【００９０】
ベースバンド画像データ用メモリ制御部７７は、デコード処理部７６から供給された、デコード済みのベースバンド画像データを、ベースバンド画像データ用メモリ３１に供給するとともに、参照画像指示部７５から、参照画像としてベースバンド画像データ用メモリ３１から読み出す必要のあるフレームの供給の要求を受け、指定された参照画像をベースバンド画像データ用メモリ３１から読み出して、デコード処理部７６に供給する。
【００９１】
また、ベースバンド画像データ用メモリ制御部７７は、ベースバンド信号処理部３２から要求されたStreamNo.とFrameNo.により示されるフレームのベースバンド画像データをベースバンド画像データ用メモリ３１から読み出して、ベースバンド信号処理部３２に供給する。ベースバンド画像データ用メモリ制御部７７は、例えば、ジョグ再生などの変速再生が指令された場合においても、ユーザの操作入力に基づいた所定のフレームをベースバンド画像データ用メモリ３１から読み出して、ベースバンド信号処理部３２に供給して再生出力させるようにすることができる。
【００９２】
ベースバンド信号処理部３２は、供給されたベースバンド画像データに対して、例えば、色補正やサイズ補正、スロー再生時におけるフィールドコントロールなど、デコードされた画像が正しく再生出力されるように各種補正を行って、生成された出力ベースバンド画像データを、ＧＵＩ表示制御部７１に出力する。
【００９３】
以上説明した様に、本発明を適用した再生装置６１においては、デコード処理部７６のうちのいずれかのデコーダによりデコードされたベースバンド画像データは、全て、ベースバンド画像データ用メモリ３１に記憶され、参照画像も、ベースバンド画像データ用メモリ３１から読み出されるものとされる。図１を用いて説明した再生装置１の参照ベースバンド画像用メモリ２９は、デコーダ２８のメモリ制御部４１にのみ制御され、デコーダ２８のみデータを授受しており、図１を用いて説明した再生装置１のベースバンド画像データ用メモリ３１は、ベースバンド画像データ用メモリ制御部３０の制御に基づいて、デコーダ２８から供給されたベースバンド画像データをベースバンド信号処理部３２に供給するものであった。これに対して、本発明を適用した再生装置６１のベースバンド画像データ用メモリ３１は、ベースバンド画像データ用メモリ制御部７７の制御に基づいて、デコード処理部７６と参照画像データの授受を行うとともに、従来における場合と同様に、ベースバンド信号処理部３２にベースバンド画像データを供給する。
【００９４】
本発明を適用した再生装置６１においては、ベースバンド画像データ用メモリ３１に参照画像データとして利用可能なベースバンド画像データが記憶されているとき、参照画像として、ベースバンド画像データ用メモリ３１に記憶されているベースバンド画像データが用いられるので、デコード処理部７６には、参照画像を生成するためのフレームが新たに供給されない。すなわち、デコード処理部７６に供給されるフレームは、通常のフレームどおりの順番でなくても良い場合がある。
【００９５】
または、本発明を適用した再生装置６１においては、ベースバンド画像データ用メモリ３１に参照画像データとして利用可能なベースバンド画像データが記憶されているとき、参照画像として、ベースバンド画像データ用メモリ３１に記憶されているベースバンド画像データが用いられるので、デコード処理部７６は、供給された時間順のビットストリームをその順番に従ってデコードしない（参照画像がある場合は、対応するフレームをデコードしないでスキップする）場合がある。
【００９６】
したがって、本発明を適用した再生装置６１には、ベースバンド画像データ用メモリ３１に記憶されているベースバンド画像データを監視するベースバンドメモリ管理部７３が設けられ、ベースバンドメモリの状態を基にデコードの順番とデコーダの選択を行うデコード制御部７２が設けられ、参照画像のデコード処理部７６への供給の指示をベースバンド画像データ用メモリ制御部７７に与える参照画像指示部７５が設けられている。
【００９７】
次に、図７を用いて、Ｂ１３フレームとＢ３フレームを順に出力する場合を例として、ユーザの指定した所望のフレームを再生するスクラブ再生について説明する。
【００９８】
ストリーム復号位置検出処理部２２は、操作入力取得部２１より、デコード対象のストリームのストリームＮｏ．と、再生出力するフレームとして指定されたＢ１３およびＢ３のフレームＮｏ．の入力を受けるとともに、再生速度や再生モードなどの指令を受け、デコード制御部７２に供給する。
【００９９】
デコード制御部７２は、ストリーム復号位置検出処理部２２から供給された、再生されるストリームのStreamNo.と再生出力するフレームとして指定されたＢ１３およびＢ３のフレームＮｏ．、並びに、再生速度や再生モードなどの指令内容を基に、インデックス管理部２４に記憶されている図６を用いて説明したインデックステーブルを取得して、対応するストリームのデコードに必要な各種情報を得、更に、ベースバンドメモリ管理部７３により管理されている、ベースバンド画像データ用メモリ３１に記憶されているベースバンド画像データの情報を取得する。ここでは、ベースバンド画像データ用メモリ３１には、再生出力するフレームとして指定されたＢ１３およびＢ３をデコードするために必要となる参照画像に対応するフレームが保持されていなかったものとして説明する。
【０１００】
デコード制御部７２は、これらの情報を基に、デコードに用いるデコーダとデコード順を決定する。すなわち、デコード制御部７２は、例えば、再生モードがこれら２枚のフレームの静止画像の連続再生である場合、高解像度のデコーダをデコード処理部７６から選択し、Ｂ１３をデコードするために参照画像として必要なフレームであるＩ２,Ｐ５,Ｐ８,Ｐ１１、および、Ｐ１４をデコードして、参照画像Ｐ１１とＰ１４を用いてＢ１３をデコードし、次に、Ｂ１３のデコードのために、既にデコードされてベースバンド画像データ用メモリ３１に保存されているＩ２およびＰ５を用いて、Ｂ３をデコードすることを決定する。
【０１０１】
デコード制御部７２は、デコード処理部７６に供給する必要があるフレームのフレームＮｏ．、すなわち、１枚目に出力するＢ１３をデコードするために参照画像として必要なフレームであるＩ２,Ｐ５,Ｐ８,Ｐ１１、および、Ｐ１４、並びに、再生出力されるフレームであるＢ１３およびＢ３のフレームのフレームＮｏ．を、ストリームＮｏ．とともに、ストリーム供給制御部７４に供給する。
【０１０２】
ストリーム供給制御部７４は、まず、１枚目に出力するＢ１３をデコードするために参照画像として必要なフレームであるＩ２,Ｐ５,Ｐ８,Ｐ１１、および、Ｐ１４、並びに、再生出力されるフレームであるＢ１３、および、Ｂ３を、ストリームメモリ制御部２５に要求して、デコード処理部７６に順次供給する。
【０１０３】
デコード処理部７６のうち、デコード制御部７２によって選択されたデコーダは、デコード制御部７２の制御に基づいて、供給されたデータをＩ２ピクチャからデコードし、デコードして生成したベースバンド画像データをベースバンド画像データ用メモリ制御部７７に供給して、ベースバンド画像データ用メモリ３１に保存させるとともに、それ以降、Ｐ５,Ｐ８,Ｐ１１、および、Ｐ１４のデコード時に、ベースバンド画像データ用メモリ制御部７７を介して、ベースバンド画像データ用メモリ３１に保存されたベースバンド画像データのうち、参照画像に対応するフレームのベースバンド画像データの供給を受け、それを基に、デコードを実行する。
【０１０４】
そして、デコード処理部７６のうち、デコード制御部７２によって選択されたデコーダは、デコード制御部７２の制御に基づいて、Ｂ１３をデコードするとき、Ｐ１１およびＰ１４に対応するベースバンド画像データの供給を受け、これらを参照画像として、Ｂ１３をデコードし、デコードされたＢ１３に対応するベースバンド画像データを、ベースバンド画像データ用メモリ制御部７７を介してベースバンド画像データ用メモリ３１に保存させた後、ベースバンド信号処理部３２に供給する。そして、ベースバンド信号処理部３２において、各種補正（ベースバンド処理）が行われて、出力ベースバンド画像データが出力される。
【０１０５】
そして、デコード処理部７６のうち、デコード制御部７２によって選択されたデコーダは、次に、Ｂ３をデコードするとき、デコード制御部７２の制御に基づいて、既にベースバンド画像データ用メモリ３１に記憶されているＩ２およびＰ５に対応するベースバンド画像信号の供給を受け、これらを参照画像として、Ｂ３をデコードし、デコードされたＢ３に対応するベースバンド画像データをベースバンド画像データ用メモリ制御部７７を介してベースバンド画像データ用メモリ３１に保存させた後、ベースバンド信号処理部３２に供給する。そして、ベースバンド信号処理部３２において、各種補正が行われて（ベースバンド処理）出力ベースバンド画像データが出力される。
【０１０６】
このように、デコード済みのベースバンド画像データの保存と、参照画像の保存とを１つのメモリで行うようにしたので、出力処理のためのメモリコピーの動作が必要なくなり、また、スクラブ再生において、参照画像を生成するために、同一フレームを重複してデコードする必要がなくなるため、高速に再生フレームをデコードすることができる。
【０１０７】
また、参照画像の保存を行うメモリを、デコーダから独立させて、デコーダ以外の部分から制御させるようにしたので、デコード順の制御の自由度が増し、また、入力ストリームを１フレームごとに切り替えたり、デコーダを１フレームごとに切り替えることが可能となるので、さまざまなデコードアルゴリズムに対応することができる。
【０１０８】
図７を用いて説明した処理を行うために、ベースバンドメモリ管理部７３は、図８に示されるような情報を管理する。すなわち、ベースバンドメモリ管理部７３は、それぞれのフレームが、ベースバンド画像データ用メモリ３１にデコード済で存在しているか否かを示すフラグ（Exist:１がベースバンド画像データ用メモリ３１にデコード済で存在していることを示す）のほかに、これらのデコード済みのフレームが、デコード処理部７６のうちのいずれのデコーダによってデコードされたかを示す値（Decoder Type：例えば、図８に示される場合、高解像度デコーダが１、低解像度デコーダが２など）を管理する。
【０１０９】
デコード制御部７２は、高解像度のデコーダを用いてデコードを実行する場合、画像の劣化を防ぐため、参照画像として用いられるベースバンド画像データが低解像度でデコードされてベースバンド画像データ用メモリ３１に保持されていても、この参照画像データを用いずに、対応する圧縮画像フレームを高解像度のデコーダでデコードして参照画像として用いるようにすることができる。
【０１１０】
また、ベースバンドメモリ管理部７３は、フレームごとに、Horizontal SizeやVertical Size、Chroma Formatなども管理しており、ベースバンド信号処理部３２は、これらの情報を基に、出力フォーマットに基づいて、供給されたベースバンド画像信号をリサイズするようにしても良い。
【０１１１】
上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウェアにより実行させることもできる。この場合、例えば、再生装置６１は、図９に示されるようなパーソナルコンピュータ２０１により構成される。
【０１１２】
図９において、CPU（Central Processing Unit）２２１は、ROM（Read Only Memory）２２２に記憶されているプログラム、またはＨＤＤ２２６からRAM（Random Access Memory）２２３にロードされたプログラムに従って各種の処理を実行する。RAM２２３にはまた、CPU２２１が各種の処理を実行する上において必要なデータなども適宜記憶される。
【０１１３】
CPU２２１、ROM２２２、およびRAM２２３は、バス２２４を介して相互に接続されている。このバス２２４にはまた、インタフェース（Ｉ／Ｆ）２２５−１乃至２２５−３、ＨＤＤ（hard Disc Drive）２２６、映像特殊効果音声ミキシング処理部２２７、および、信号処理部２２８も接続されている。
【０１１４】
インタフェース２２５−１には、キーボード２０２、マウス２０３などの入力デバイスが接続されている。インタフェース２２５−２には、記憶装置２０４が接続され、情報を授受することができるようになされている。また、インタフェース２２５−３には、外部映像記録再生装置２０５−１乃至２０５−ｍが接続され、情報を授受することができるようになされている。ＨＤＤ２２６は、ハードディスクをドライブし、各種情報を記憶することができるようになされている。
【０１１５】
映像特殊効果音声ミキシング処理部２２７は、信号処理部２２８、並びに、記憶装置２０４および映像記録再生装置２０５−１乃至２０５−ｍとも接続され、記憶装置２０４および映像記録再生装置２０５−１乃至２０５−ｍのいずれかから供給された、または、バス２２４を介して、ＨＤＤ２２６から供給された映像信号に特殊効果を施したり、音声をミキシングするなどして、信号処理部２２８に供給させて出力させたり、記憶装置２０４および映像記録再生装置２０５−１乃至２０５−ｍのうちのいずれかに供給させて保存させる。
【０１１６】
信号処理部２２８は、ディスプレイ２２９およびスピーカ２３０とも接続され、例えば、映像特殊効果音声ミキシング処理部２２７などから供給された映像信号を、ディスプレイ２２９に供給して表示させたり、音声信号を、スピーカ２３０に供給して音声出力させる。
【０１１７】
ディスプレイ２２９は、例えば、CRT（Cathode Ray Tube)、LCD（Liquid Crystal display）などよりなり、信号処理部２２８から供給される映像を表示する。スピーカは、信号処理部２２８から供給される音声を再生出力する。
【０１１８】
バス２２４にはまた、必要に応じてドライブ２３１が接続され、磁気ディスク、光ディスク、光磁気ディスク、あるいは半導体メモリなどのリムーバブルメディア２０６が適宜装着され、それらから読み出されたコンピュータプログラムが、必要に応じてＨＤＤ２２６にインストールされる。
【０１１９】
図９を用いて説明したパーソナルコンピュータ２０１において、ソフトウェアにより、本発明を適用した処理が実行される場合の機能の一例について説明するための機能ブロック図を図１０に示す。
【０１２０】
なお、図４または図９における場合と対応する部分には同一の符号を付してあり、その説明は適宜省略する。
【０１２１】
ＣＰＵ２２１が所定のプログラムを実行することによって、パーソナルコンピュータ２０１は、図４の操作入力取得部２１およびＧＵＩ表示制御部７１と基本的に同等の機能を有するＧＵＩ制御部２５１、図４のストリーム供給制御部７４およびストリームメモリ制御部２５と基本的に同等の機能を有するストリーム供給制御部２５２、図４の参照画像指示部７５およびベースバンド画像データ用メモリ制御部７７と基本的に同等の機能を有する参照画像指示部２５３の機能を有するとともに、図４を用いて説明した、ストリーム復号位置検出処理部２２、デコード制御部７２、デコード処理部７６、ベースバンド信号処理部３２と同等の機能を有する。
【０１２２】
ＣＰＵ２２１は、マウス２０２またはキーボード２０３などの入力デバイスによって入力されたユーザの操作を基に、記憶装置２０４、外部映像記録再生装置２０５、または、ＨＤＤ２２６に記録されているインデックステーブルを参照するとともに、ＲＡＭ２２３のうちの所定の記憶領域をベースバンド画像データ用メモリ３１として利用し、ベースバンド画像データ用メモリ３１に記憶されているベースバンド画像データを参照して、記憶装置２０４、外部映像記録再生装置２０５、または、ＨＤＤ２２６に記憶されているストリームデータのうち、ユーザが指定したストリームに含まれるフレームのデコードの順番と、デコードの方法を決定する。
【０１２３】
ＣＰＵ２２１は、ＲＡＭ２２３のうちの所定の記憶領域をベースバンド画像データ用メモリ３１として利用するので、デコードされたベースバンド画像データを、ＲＡＭ２２３に供給して記憶させるとともに、ＲＡＭ２２３に記憶されたべースバンド画像データを参照画像としてデコードに利用する。そして、ＣＰＵ２２１は、ＲＡＭ２２３に記憶されたべースバンド画像データを読み出して、例えば、例えば、色補正やサイズ補正、スロー再生時におけるフィールドコントロールなど、デコードされた画像が正しく再生出力されるように各種補正を行って、生成された出力ベースバンド画像データを、ディスプレイ２２９に供給して表示させる。
【０１２４】
すなわち、ＣＰＵ２２１は、ＲＡＭ２２３のうちの所定の記憶領域をベースバンド画像データ用メモリ３１として利用し、デコード済みのベースバンド画像データを、参照画像用と出力信号用とに区別せずに記憶させ、これらのベースバンド画像データを、参照画像および出力信号として利用する。
【０１２５】
次に、図１１のフローチャートを参照して、図４を用いて説明した再生装置６１または図９および図１０を用いて説明したパーソナルコンピュータ２０１によって実行される、デコード処理１について説明する。
【０１２６】
ステップＳ４１において、ストリーム復号位置検出処理部２２（ＣＰＵ２２１のストリーム復号位置検出処理部２２）は、操作入力取得部２１（ＣＰＵ２２１のＧＵＩ制御部２５１）より、再生位置の指定（ストリームＮｏ．フレームＮｏ．）の入力を受け、デコード制御部７２（ＣＰＵ２２１のデコード制御部７２）に供給する。
【０１２７】
ステップＳ４２において、デコード制御部７２（ＣＰＵ２２１のデコード制御部７２）は、供給されたストリームＮｏ．に対応するインデックステーブルを、インデックス管理部２４（記憶装置２０４、外部映像記録再生装置２０５、または、ＨＤＤ２２６）から取得する。
【０１２８】
ステップＳ４３において、デコード制御部７２（ＣＰＵ２２１のデコード制御部７２）は、インデックステーブルから、デコードに必要な情報である、例えば、ピクチャタイプ、参照画像に関する情報、データ長、または、メモリ内のアドレスなどの情報を抽出する。
【０１２９】
ステップＳ４４において、デコード制御部７２（ＣＰＵ２２１のデコード制御部７２）は、ユーザからの指令を基に、再生出力されるフレームのデコード順とデコーダ（デコードの方法）を決定する。
【０１３０】
具体的には、例えば、ユーザにより、低速の再生が指令されている場合、デコード制御部７２（ＣＰＵ２２１のデコード制御部７２）は、レイテンシが最短となるように、再生が指示されたフレームを、順に高解像度のデコーダを用いてデコードさせることができる。しかしながら、ある程度高速の早送りまたは巻き戻しなどが指令されている場合、デコード制御部７２（ＣＰＵ２２１のデコード制御部７２）は、再生されるフレームを順に高解像度のデコーダを用いてデコードする方法では、最終的に出力される表示フレームの表示コマ数を確保することができないので、再生されるように指示されたフレームの近傍のＩピクチャまたはＰピクチャをデコードさせて出力させたり、低解像度のデコーダを用いてデコードしたりすることができる。そして、更に、高速で画質を求めない再生モードにおいては、再生が指令されたフレームの近傍のＩピクチャだけをＩピクチャ専用のデコーダでデコードさせて出力させるようにすることができる。
【０１３１】
ステップＳ４５において、デコード制御部７２（ＣＰＵ２２１のデコード制御部７２）は、インデックステーブルに記載された情報を参照して、デコードに必要な前方向画像のうち、最も再生フレームから遠いフレームとの間のフレーム数（深さ）（Depth of Past Frames for Decoding）を検出する。
【０１３２】
ステップＳ４６において、デコード制御部７２（ＣＰＵ２２１のデコード制御部７２）は、インデックステーブルに記載された情報を参照して、指定されたフレームＮｏ.のフレームをデコードするために参照画像として必要なフレーム（デコードするフレームとして指定されているフレームがＩピクチャではなかった場合は、直前のＩピクチャを含む少なくとも１つのフレーム）のフレームＮｏ．を取得する。デコード制御部７２（ＣＰＵ２２１のデコード制御部７２）は、例えば、図７を用いて説明した様に、Ｂ１３フレームの再生出力が指令されている場合、参照画像として、Ｉ２,Ｐ５,Ｐ８,Ｐ１１、および、Ｐ１４が必要であることを取得し、Ｂ３フレームの再生出力が指令されている場合、参照画像として、Ｉ２およびＰ５が必要であることを取得する。
【０１３３】
ステップＳ４７において、デコード制御部７２（ＣＰＵ２２１のデコード制御部７２）は、ベースバンドメモリ管理部７３により管理されるベースバンド画像データ用メモリ３１に記憶されているベースバンド画像データを参照して（ＲＡＭ２２３のベースバンド画像データ用メモリ３１として利用されている記憶領域に記憶されているベースバンド画像データを参照して）、ベースバンド画像データ用メモリ３１に、必要な参照画像が、必要な品質で、全て存在するか否かを判断する。
【０１３４】
ステップＳ４７において、ベースバンド画像データ用メモリ３１に、必要な参照画像が、必要な品質で、全て存在していないと判断された場合、換言すれば、必要な参照画像のうち、ベースバンド画像データ用メモリ３１に、必要な品質で存在していないものがあると判断された場合、ステップＳ４８において、デコード制御部７２（ＣＰＵ２２１のデコード制御部７２）は、ベースバンド画像データ用メモリ３１に存在しない参照画像を、対応するデコーダ（デコード方法）でデコードする。
【０１３５】
すなわち、デコード制御部７２（ＣＰＵ２２１のデコード制御部７２）は、ストリーム供給制御部７４に、ストリームメモリ２５を介してストリーム用メモリ２６から、ベースバンド画像データ用メモリ３１に存在しない参照画像に対応する圧縮画像フレームを読み出させ、デコード処理部７６に供給させてデコードさせ、ベースバンド画像データ用メモリ制御部７７を介してベースバンド画像データ用メモリ３１に供給させて、保存させ（ＣＰＵ２２１のストリーム供給制御部２５２に、記憶装置２０４、外部映像記録再生装置２０５、または、ＨＤＤ２２６に記憶されているストリームデータを読み出させ、デコード処理部７６に供給させてデコードさせ、ＲＡＭ２２３のベースバンド画像データ用メモリ３１として利用されている記憶領域に供給させて、保存させ）、処理は、ステップＳ４７に戻り、それ以降の処理が繰り返される。
【０１３６】
ステップＳ４７において、ベースバンド画像データ用メモリ３１に、必要な参照画像が、必要な品質で、全て存在していると判断された場合、ステップＳ４９において、デコード処理部７６（ＣＰＵ２２１のデコード処理部７６）は、デコード制御部７２の制御に基づいて、ベースバンド画像データ用メモリ３１（ＲＡＭ２２３のベースバンド画像データ用メモリ３１として利用されている記憶領域）に記憶されている参照画像を利用して、再生されるフレームを対応するデコーダ（デコード方法）でデコードし、ベースバンド画像データ用メモリ３１（ＲＡＭ２２３のベースバンド画像データ用メモリ３１として利用されている記憶領域）に供給する。
【０１３７】
ステップＳ５０において、ベースバンド信号処理部３２（ＣＰＵ２２１のベースバンド信号処理部３２）は、デコード制御部７２によりデコードされ、ベースバンド画像データ用メモリ３１（ＲＡＭ２２３のベースバンド画像データ用メモリ３１として利用されている記憶領域）により記憶されているベースバンド画像データを取得し、各種補正（ベースバンド処理）を施し、生成された出力ベースバンド画像データフレームを出力して、ＧＵＩ表示制御部７１の処理により表示させ（ＣＰＵ２２１のＧＵＩ制御部２５１の処理によりディスプレイ２２９に出力して表示させ）、処理が終了される。
【０１３８】
このような処理により、スクラブ再生において、参照画像を生成するために、同一フレームを重複してデコードする必要がなくなるため、高速に再生フレームをデコードすることができる。
【０１３９】
すなわち、上述したようにして、デコード順を制御することにより、例えば、スクラブ再生（ランダム再生）などの特定位置からの再生時や、いわゆるトリック再生のレイテンシを短縮し、遅延時間最短で所望のフレームを再生出力することが可能となる。
【０１４０】
更に、参照画像用のメモリと出力画像用のメモリを同一のものとしたことにより、装置全体のメモリ数を減少させることができ、更に、デコードされたデータが出力されるまでのメモリコピー回数を減らすことができるので、レイテンシを短くすることができる。
【０１４１】
また、参照画像の保存を行うメモリを、デコーダから独立させて、デコーダ以外の部分から制御させるようにしたので、デコード順の制御の自由度が増し、また、入力ストリームを１フレームごとに切り替えたり、デコーダを１フレームごとに切り替えることが可能となるので、さまざまなデコードアルゴリズムに対応することができるようになる。
【０１４２】
また、このような構成をとることにより、装置の処理能力と、再生速度や求められる画質に応じて、デコーダやデコード方法を選択することができる。例えば、通常は、高解像度のデコードを再生出力の順に基づいて行うようにしておき、これに対して、再生出力の速度や、必要な画質に対応するように、必要に応じて、低解像度のデコードを行ったり、Ｂピクチャのデコードを行わずに、ＩピクチャまたはＰピクチャのみデコードを行ったり、更に、Ｉピクチャなど特定のピクチャタイプのデコード（フレーム内圧縮方式のデコード）のみを行うようにすることができる。
【０１４３】
したがって、従来の再生装置においては高速で再生出力を追従させることができなかった、スクラブ再生などの複雑な再生指示に対しても、再生出力される画像の画質とデコード時間とのバランスを考慮して、最適な、デコードアルゴリズムやデコーダ（デコード方法）を選択ことができ、無駄のない最短遅延のデコードが実現できる。
【０１４４】
更に、このような構成にすることにより、例えば、ＭＰＥＧ方式によって圧縮されたストリームをデコード可能なデコーダとそれ以外の方式において圧縮されたストリームをデコード可能なデコーダとをそれぞれ備えさせ、適宜切り替えてデコードさせることも可能となる。
【０１４５】
また、本発明が適用された場合、複数のデコーダまたはデコード方法によってデコードされた後のベースバンド画像データを、参照画像用と出力用とで区別せずに記憶するようにしたので、デコードされた後のベースバンド画像データがいかなるデコード方法によってデコードされたかの情報が管理される。いかなるデコード方法によってデコードされたかの情報は、例えば、図８を用いて説明したデコーダタイプ（Decoder Type）のフラグ情報である。
【０１４６】
例えば、低速再生や静止画の表示など、高解像度のデコードが実行される場合、画像の劣化を防ぐため、デコードされた後のベースバンド画像データがいかなるデコード方法によってデコードされたかの情報を参照することにより、低解像度でデコードされたベースバンド画像データを参照画像データとして用いることなく、高解像度でデコードされたベースバンド画像データのみを参照画像として用いるようにすることができる。
【０１４７】
なお、ここでは、主に、Ｉピクチャ、Ｐピクチャ、および、ＢピクチャからなるMPEG2 LongGOPにおける場合について説明したが、本発明は、フレーム間参照によりデコードされた圧縮符号化データを再生する場合に適用可能である。
【０１４８】
このように、例えば、スクラブ再生時などにおいては、再生出力の速度や、必要な画質に対応するように、必要に応じて、低解像度のデコードを行ったり、Ｂピクチャのデコードを行わずに、ＩピクチャまたはＰピクチャのみデコードを行ったり、更に、Ｉピクチャなど特定のピクチャタイプのデコード（フレーム内圧縮方式のデコード）のみを行うようになされているなど、再生出力される画像の画質とデコード時間とのバランスを考慮して、最適な、デコードアルゴリズムやデコーダ（デコード方法）を選択することができ、無駄のない最短遅延のデコードが実現できるようになされていた。
【０１４９】
また、更に、図６を用いて説明したインデックステーブルのデコード深さ情報（Depth of Past Frames for Decoding）を利用することにより、更に、できるだけ画像の品質がよい、最短遅延のデコード処理が可能となる。
【０１５０】
次に、図４または図１０のデコード制御部７２において実行されるデコード処理の制御において、インデックステーブルのデコード深さ情報（Depth of Past Frames for Decoding）を利用する方法について、具体的に説明する。
【０１５１】
図６を用いて説明したインデックステーブルのデコード深さ情報（Depth of Past Frames for Decoding）は、上述したように、過去側の参照フレームを得るために必要なデコードの回数を表したものである。未来側のフレームを参照するのは、Ｂピクチャのみであるが、Ｂピクチャの未来側の参照フレーム数は、１フレームである。すなわち、Ｂピクチャのすべての参照フレームを得るために必要なデコードの回数を得るには、「過去側のデコードの回数＋１」とすればよい。したがって、インデックステーブルとしては、過去のデコードの深さだけを所持していれば十分である。
【０１５２】
すなわち、GOPの先頭のIピクチャをデコードするためには過去側の参照フレームを必要としないため、深さの値は０となる。そして、それぞれのPピクチャの深さの値は、GOPの先頭から数えて、Ｐピクチャが来るたびに１インクリメントした値となり、そして、ストリームの先頭、または、Closed GOP先頭の２枚のＢピクチャをデコードするためには、過去側の参照フレームを必要としないため、深さの値は０となり、Open GOPであり、かつ、ストリームの先頭ではないＩピクチャの直後の２枚のＢピクチャの深さの値は、Iピクチャの直前のＰピクチャの深さの値に１を加えたものとなり、それ以外のＢピクチャの深さの値は、直前のＰピクチャの深さの値と等しい。
【０１５３】
図４または図１０のデコード制御部７２においては、図６を用いて説明したインデックステーブルのデコード深さ情報（Depth of Past Frames for Decoding）を利用して、デコード処理の制御を行うことができる。
【０１５４】
図１２のフローチャートを参照して、ストリームを先頭からパースして、深さ情報を作成する、深さ情報算出処理について説明する。
【０１５５】
なお、例えば、図４を用いて説明した再生装置６１において再生処理が実行される場合、深さ情報算出処理は、インデックステーブルを記憶するインデックス管理部２４において実行されてもよいし、再生装置６１以外の装置（例えば、一般的なパーソナルコンピュータ、具体的には、図１０を用いて説明した機能ブロック図に示される機能を有さないものを含むパーソナルコンピュータ２０１など）において実行され、生成されたインデックステーブルが再生装置６１に供給されて、インデックス管理部２４に記憶されるものとしてもよい。
【０１５６】
また、図９および図１０を用いて説明したパーソナルコンピュータ２０１において再生処理が実行される場合、深さ情報算出処理は、ＣＰＵ２２１（ただし、図１０を用いて説明した機能ブロック図に示されない機能を用いて処理が実行される）において実行されてもよいし、パーソナルコンピュータ２０１以外の装置（例えば、一般的なパーソナルコンピュータ、具体的には、図１０を用いて説明した機能ブロック図に示される機能を有さないものを含むパーソナルコンピュータなど）において実行され、生成されたインデックステーブルがパーソナルコンピュータ２０１に供給されて、ＨＤＤ２２６に記憶されてもよいし、生成されたインデックステーブルが記憶装置２０４または外部映像記録再生装置２０５に記憶されて、パーソナルコンピュータ２０１に供給されるものとしてもよい。
【０１５７】
図１２のフローチャートにおいては、深さ情報算出処理は、パーソナルコンピュータ２０１のＣＰＵ２２１（ただし、図１０を用いて説明した機能ブロック図に示されない機能を用いて処理が実行される）において実行されるものとして説明するが、上述したように、パーソナルコンピュータ２０１のＣＰＵ２２１以外において実行されるものとしてもよい。
【０１５８】
ステップＳ８１において、パーソナルコンピュータ２０１のＣＰＵ２２１は、インデックステーブルを生成するストリームのStream Orderの入力を受ける。
【０１５９】
ステップＳ８２において、ＣＰＵ２２１は、次のピクチャのピクチャタイプはＩであるか否かを判断する。ステップＳ８２において、次のピクチャのピクチャタイプはＩではないと判断された場合、処理は、後述するステップＳ８５に進む。
【０１６０】
ステップＳ８２において、次のピクチャのピクチャタイプはＩであると判断された場合、ステップＳ８３において、ＣＰＵ２２１は、デコード深さを算出するための第１のカウンタであるdepthの値を、depth＝depth＋１とし、更に、デコード深さを算出するための第２のカウンタであるprev_depthの値をprev_depth＝depthとする。
【０１６１】
ここで、デコード深さを算出するための第１のカウンタであるdepthは、ＧＯＰ内のＰピクチャ、および、GOP先頭の２枚のＢピクチャ以外のＢピクチャのデコード深さを算出するために用いられるカウンタであり、デコード深さを算出するための第２のカウンタであるprev_depthは、GOP先頭の２枚のＢピクチャのデコード深さを算出するために用いられるカウンタである。
【０１６２】
ステップＳ８４において、ＣＰＵ２２１は、第１のカウンタであるdepthの値を、depth＝０とし、処理は、後述するステップＳ８９に進む。
【０１６３】
ステップＳ８２において、次のピクチャのピクチャタイプはＩではないと判断された場合、ステップＳ８５において、ＣＰＵ２２１は、次のピクチャのピクチャタイプはＰであるか否かを判断する。ステップＳ８５において、次のピクチャのピクチャタイプはＰではないと判断された場合、処理は、後述するステップＳ８８に進む。
【０１６４】
ステップＳ８５において、次のピクチャのピクチャタイプはＰであると判断された場合、ステップＳ８６において、ＣＰＵ２２１は、デコード深さを算出するための第２のカウンタであるprev_depthの値をリセットして、Prev_depth＝０とする
【０１６５】
ステップＳ８７において、ＣＰＵ２２１は、デコード深さを算出するための第１のカウンタであるdepthの値を、depth＝depth＋１とし、処理は、後述するステップＳ８９に進む。
【０１６６】
ステップＳ８５において、次のピクチャのピクチャタイプはＰではない、すなわち、Ｂピクチャであると判断された場合、ステップＳ８８において、ＣＰＵ２２１は、depth＝０であるか否か、換言すれば、GOP先頭２枚のＢピクチャであるか否かを判断する。
【０１６７】
ステップＳ８４、または、ステップＳ８７の処理の終了後、もしくは、ステップＳ８８において、depth＝０ではないと判断された場合、ステップＳ８９において、ＣＰＵ２２１は、デコード深さdepth of Past Frames for Decodingの値を、depth of Past Frames for Decoding＝depthとし、処理は、後述するステップＳ９３に進む。
【０１６８】
具体的には、ピクチャタイプがＩである場合、ステップＳ８４において、デコード深さを算出するための第１のカウンタであるdepthの値は、depth＝０となっているので、Ｉピクチャのデコード深さdepth of Past Frames for Decodingの値は０となり、ピクチャタイプがＰである場合、ステップＳ８７において、デコード深さを算出するための第１のカウンタであるdepthの値は、１づつインクリメントされるので、Ｐピクチャのデコード深さdepth of Past Frames for Decodingの値は、それぞれ、GOPの先頭（Ｉピクチャ）から数えて、Ｐピクチャが来るたびに１インクリメントした値となり、ピクチャタイプがＢであり、かつ、GOP先頭２枚のＢピクチャ以外のＢピクチャである場合、デコード深さdepth of Past Frames for Decodingの値は、直前のＰピクチャと等しいものとなる。
【０１６９】
ステップＳ８８において、depth＝０である、すなわち、GOP先頭２枚のＢピクチャであると判断された場合、ステップＳ９０において、ＣＰＵ２２１は、このＢピクチャに対して、過去参照画像が存在しないか否か、換言すれば、このＢピクチャは、ストリームの先頭、または、Closed GOP先頭の２枚のＢピクチャのうちのいずれかであるか否かを判断する。
【０１７０】
ステップＳ９０において、過去参照画像が存在しない、すなわち、このＢピクチャは、ストリームの先頭、または、Closed GOP先頭の２枚のＢピクチャのうちのいずれかであると判断された場合、ステップＳ９１において、ＣＰＵ２２１は、デコード深さdepth of Past Frames for Decodingの値を、depth of Past Frames for Decoding＝０とし、処理は、後述するステップＳ９３に進む。
【０１７１】
ステップＳ９０において、過去参照画像が存在すると判断された場合、すなわち、このＢピクチャは、ストリームの先頭、または、Closed GOPのいずれとも異なるＧＯＰの先頭の２枚のＢピクチャのうちのいずれかである場合、ステップＳ９２において、ＣＰＵ２２１は、デコード深さdepth of Past Frames for Decodingの値を、depth of Past Frames for Decoding＝prev_depthとし、処理は、後述するステップＳ９３に進む。
【０１７２】
具体的には、ステップＳ８６、すなわち、Ｐピクチャが来たときにprev_depthの値はリセットされ、ステップＳ８３、すなわち、Ｉピクチャが来たときにprev_depthの値はdepth＋１とされているので、GOP先頭であり、かつ、ストリームの先頭、または、Closed GOPではないＧＯＰのＢピクチャは、その直前のＰピクチャのdepth of Past Frames for Decodingの値に１を加えた値となる。
【０１７３】
ステップＳ８９、ステップＳ９１、または、ステップＳ９２の処理の終了後、ステップＳ９３において、ＣＰＵ２２１は、ストリームが終了したか否かを判断する。ステップＳ９３において、ストリームが終了していないと判断された場合、処理は、ステップＳ８２に戻り、それ以降の処理が繰り返される。ステップＳ９３において、ストリームが終了したと判断された場合、処理が終了される。
【０１７４】
このような処理により、図６を用いて説明したインデックステーブルのdepth of Past Frames for Decodingの値が算出され、デコード処理の制御に用いられる。
【０１７５】
次に、図１３のフローチャートを参照して、図１２の深さ情報算出処理により算出されたdepth of Past Frames for Decodingの値を用いて、図４を用いて説明した再生装置６１または図９および図１０を用いて説明したパーソナルコンピュータ２０１によって実行される、デコード処理２について説明する。
【０１７６】
ステップＳ１２１乃至ステップＳ１２６において、図１１のステップＳ４１乃至ステップＳ４６と基本的に同様の処理が実行される。
【０１７７】
すなわち、ストリーム復号位置検出処理部２２（ＣＰＵ２２１のストリーム復号位置検出処理部２２）は、操作入力取得部２１（ＣＰＵ２２１のＧＵＩ制御部２５１）より、再生位置の指定（ストリームＮｏ．フレームＮｏ．）の入力を受け、デコード制御部７２（ＣＰＵ２２１のデコード制御部７２）に供給する。デコード制御部７２（ＣＰＵ２２１のデコード制御部７２）は、供給されたストリームＮｏ．に対応するインデックステーブルを、インデックス管理部２４（記憶装置２０４、外部映像記録再生装置２０５、または、ＨＤＤ２２６）から取得する。
【０１７８】
デコード制御部７２（ＣＰＵ２２１のデコード制御部７２）は、インデックステーブルから、デコードに必要な情報である、例えば、ピクチャタイプ、参照画像に関する情報、データ長、または、メモリ内のアドレスなどの情報を抽出し、ユーザからの指令を基に、再生出力されるフレームのデコード順とデコーダ（デコードの方法）を決定する。
【０１７９】
そして、デコード制御部７２（ＣＰＵ２２１のデコード制御部７２）は、インデックステーブルに記載された情報を参照して、デコードに必要な前方向画像のうち、最も再生フレームから遠いフレームとの間のフレーム数（深さ）（Depth of Past Frames for Decoding）を検出し、インデックステーブルに記載された情報を参照して、指定されたフレームＮｏ.のフレームをデコードするために参照画像として必要なフレーム（デコードするフレームとして指定されているフレームがＩピクチャではなかった場合は、直前のＩピクチャを含む少なくとも１つのフレーム）のフレームＮｏ．を取得する。
【０１８０】
そして、ステップＳ１２７において、図１４を用いて後述するデコード切り替え決定処理が実行される。
【０１８１】
すなわち、通常再生モードの場合や、スクラブ再生であっても既にベースバンド画像データ用メモリ３１に参照フレームが存在している場合には、この後のデコード処理が短いと予測できるので、深さ情報を使った処理は行わず、通常のデコード処理（ステップＳ１３０乃至ステップＳ１３３の処理）が行なわれる。一方、スクラブモードで過去参照画像もない場合、すなわち、ランダムに再生中で周囲のフレームがデコードされていない場合、インデックステーブルに記載されている深さ情報を利用して、通常デコードを行っても処理が間に合うか否かを判断し、デコード処理を通常デコード処理（ステップＳ１３０乃至ステップＳ１３３の処理）とするか、代替の処理（ステップＳ１２９の処理）とするかが決定される。
【０１８２】
ステップＳ１２８において、デコード制御部７２（ＣＰＵ２２１のデコード制御部７２）は、ステップＳ１２７において実行されたデコード切り替え決定処理において、代替表示を実行すると決定されたか否かを判断する。
【０１８３】
ステップＳ１２８において、代替表示を実行すると決定されたと判断された場合、ステップＳ１２９において、デコード制御部７２（ＣＰＵ２２１のデコード制御部７２）は、低解像度画像または近傍画像を用いた代替表示を実行させて、処理が終了される。
【０１８４】
具体的には、代替の方法としては、例えば、Ｂピクチャのデコードを行わずに、ＩピクチャまたはＰピクチャのみデコードを行ったり、Ｉピクチャなど特定のピクチャタイプのデコード（フレーム内圧縮方式のデコード）のみを行ったり、デコード自体を高速に処理することを目的として低解像度のデコードを行うなど、必要に応じて、再生出力される画像の画質とデコード時間とのバランスを考慮して、最適な、デコードアルゴリズムやデコーダ（デコード方法）が選択されるようになされている。
【０１８５】
更に、代替の方法として、例えば、プロクシファイルとして、ＰピクチャおよびＢピクチャ、または、Ｐピクチャのうちの少なくともいずれか１フレームを一旦デコードしてＩピクチャに再エンコードしたものを別途用意し、このＩピクチャを用いて画像を表示するようにしてもよい。プロクシファイルの詳細については後述する。
【０１８６】
ステップＳ１２８において、代替表示を実行しないと決定されたと判断された場合、ステップＳ１３０乃至ステップＳ１３３において、図１１のステップＳ４７乃至ステップＳ５０と同様の処理が実行されて、処理が終了される。
【０１８７】
すなわち、デコード制御部７２（ＣＰＵ２２１のデコード制御部７２）は、ベースバンドメモリ管理部７３により管理されるベースバンド画像データ用メモリ３１に記憶されているベースバンド画像データを参照して（ＲＡＭ２２３のベースバンド画像データ用メモリ３１として利用されている記憶領域に記憶されているベースバンド画像データを参照して）、ベースバンド画像データ用メモリ３１に、必要な参照画像が、必要な品質で、全て存在するか否かを判断する。
【０１８８】
ベースバンド画像データ用メモリ３１に、必要な参照画像が、必要な品質で、全て存在していないと判断された場合、換言すれば、必要な参照画像のうち、ベースバンド画像データ用メモリ３１に、必要な品質で存在していないものがあると判断された場合、ベースバンド画像データ用メモリ３１に存在しない参照画像が、対応するデコーダ（デコード方法）でデコードされ、処理は、ステップＳ１３０に戻り、それ以降の処理が繰り返される。
【０１８９】
そして、ベースバンド画像データ用メモリ３１に、必要な参照画像が、必要な品質で、全て存在していると判断された場合、デコード制御部７２の制御に基づいて、ベースバンド画像データ用メモリ３１（ＲＡＭ２２３のベースバンド画像データ用メモリ３１として利用されている記憶領域）に記憶されている参照画像を利用して、再生されるフレームが、対応するデコーダ（デコード方法）でデコードされ、ベースバンド画像データ用メモリ３１（ＲＡＭ２２３のベースバンド画像データ用メモリ３１として利用されている記憶領域）に供給される。
【０１９０】
そして、ベースバンド信号処理部３２（ＣＰＵ２２１のベースバンド信号処理部３２）は、デコード制御部７２によりデコードされ、ベースバンド画像データ用メモリ３１（ＲＡＭ２２３のベースバンド画像データ用メモリ３１として利用されている記憶領域）により記憶されているベースバンド画像データを取得し、各種補正（ベースバンド処理）を施し、生成された出力ベースバンド画像データフレームを出力して、ＧＵＩ表示制御部７１の処理により表示させ（ＣＰＵ２２１のＧＵＩ制御部２５１の処理によりディスプレイ２２９に出力して表示させ）、処理が終了される。
【０１９１】
このような処理により、スクラブ再生において、参照画像を生成するために、同一フレームを重複してデコードする必要がなくなるため、高速に再生フレームをデコードすることができるとともに、後述するデコード切り替え処理により、例えば、スクラブモードで過去参照画像もない場合、すなわち、ランダムに再生中で周囲のフレームがデコードされていない場合などにおいて、インデックステーブルに記載されている深さ情報が利用されて、通常デコードを行っても処理が間に合うか否かが判断され、デコードを切り替えて代替表示を行うか否かが判断されて、必要に応じて、代替表示が行われる。
【０１９２】
すなわち、上述したようにして、デコード順を制御することにより、例えば、スクラブ再生（ランダム再生）などの特定位置からの再生時や、いわゆるトリック再生のレイテンシを短縮し、遅延時間最短で所望のフレームを再生出力することが可能となるばかりでなく、通常デコードを行うと処理が間に合わないような場合には、デコードを切り替えて代替表示が実行される。
【０１９３】
次に、図１４のフローチャートを参照して、図１３のステップＳ１２７において実行される、デコード切り替え決定処理について説明する。
【０１９４】
ステップＳ１６１において、デコード制御部７２（ＣＰＵ２２１のデコード制御部７２）は、現在の再生モードは、スクラブモードであるか否かを判断する。ステップＳ１６１において、スクラブモードではないと判断された場合、処理は、後述するステップＳ１７０に進む。
【０１９５】
ステップＳ１６１において、スクラブモードであると判断された場合、ステップＳ１６２において、デコード制御部７２（ＣＰＵ２２１のデコード制御部７２）は、ベースバンド画像データ用メモリ３１に、過去参照フレームが存在するか否かを判断する。ステップＳ１６２において、過去参照フレームが存在すると判断された場合、処理は、後述するステップＳ１７０に進む。
【０１９６】
ステップＳ１６２において、過去参照フレームが存在しないと判断された場合、ステップＳ１６３において、デコード制御部７２（ＣＰＵ２２１のデコード制御部７２）は、デコード可能フレーム数があらかじめ決められているか、または、上位アプリケーションから指定されるかなどの条件設定を基に、デコード可能フレーム数の算出の必要があるか否かを判断する。
【０１９７】
具体的には、デコード可能フレーム数は、例えば、予め設定されて（フレーム数が直接指定されて）いてもよいし、上位アプリケーションにより指定されるようになされていてもよい。例えば、デコード可能フレーム数は、デコード処理に用いられるデコーダやCPUの数やクロック周波数によって、設定されるようにしてもよい。このような場合は、デコード可能フレーム数の算出の必要は無く、指定されるデコード可能フレーム数を取得するようにすればよい。
【０１９８】
これに対して、例えば、上位アプリケーションからデコード処理に与えることができる時間配分Ｔ（例えば、20ms）のみが指定された場合には、デコード可能フレーム数の算出の必要がある。
【０１９９】
ステップＳ１６３において、デコード可能フレーム数の算出の必要があると判断された場合、ステップＳ１６４において、図１５を用いて後述するデコード可能フレーム数算出処理が実行される。
【０２００】
ステップＳ１６３において、デコード可能フレーム数の算出の必要がないと判断された場合、ステップＳ１６５において、デコード制御部７２（ＣＰＵ２２１のデコード制御部７２）は、上位アプリケーションにより指定された、または、あらかじめ設定されているデコード可能フレーム数を取得する。
【０２０１】
ステップＳ１６４、または、ステップＳ１６５の処理の終了後、ステップＳ１６６において、デコード制御部７２（ＣＰＵ２２１のデコード制御部７２）は、処理するフレームはＢピクチャであるか否かを判断する。
【０２０２】
ステップＳ１６６においてＢピクチャであると判断された場合、ステップＳ１６７において、デコード制御部７２（ＣＰＵ２２１のデコード制御部７２）は、インデックステーブルの深さ情報（depth of Past Frames for Decodingの値）を参照し、過去参照フレーム数（深さ）＋２＞デコード可能フレーム数であるか否かを判断する。
【０２０３】
ここで、過去参照フレーム数（深さ）＋２は、参照画像フレームが全く存在しない場合に、対応するＢピクチャをデコードするために必要なデコード回数である。具体的には、対応するＢピクチャをデコードするために必要なデコード回数は、過去の参照画像のフレーム数（depth of Past Frames for Decodingの値）と、未来側（時間的に後のフレーム）の参照フレーム数１と、自分自身のデコードのための１回との合計となる。
【０２０４】
ステップＳ１６７において、過去参照フレーム数（深さ）＋２＞デコード可能フレーム数であると判断された場合、処理は、後述するステップＳ１６９に進み、過去参照フレーム数（深さ）＋２＞デコード可能フレーム数ではないと判断された場合、処理は、後述するステップＳ１７０に進む。
【０２０５】
ステップＳ１６６においてＢピクチャではないと判断された場合、ステップＳ１６８において、デコード制御部７２（ＣＰＵ２２１のデコード制御部７２）は、インデックステーブルの深さ情報（depth of Past Frames for Decodingの値）を参照し、過去参照フレーム数（深さ）＋１＞デコード可能フレーム数であるか
否かを判断する。
【０２０６】
ここで、過去参照フレーム数（深さ）＋１は、参照画像フレームが全く存在しない場合に、対応するＰピクチャまたはＩピクチャをデコードするために必要なデコード回数である。具体的には、対応するＰピクチャまたはＩピクチャをデコードするために必要なデコード回数は、過去の参照画像のフレーム数（depth of Past Frames for Decodingの値）に、自分自身のデコードのための１回を加えた回数となる。Ｉピクチャの過去参照フレーム数（深さ）は０であるので、Ｉピクチャをデコードするために必要なデコード回数は１回となるのはもちろんである。
【０２０７】
ステップＳ１６８において、過去参照フレーム数（深さ）＋１＞デコード可能フレーム数であると判断された場合、処理は、後述するステップＳ１６９に進み、過去参照フレーム数（深さ）＋１＞デコード可能フレーム数ではないと判断された場合、処理は、後述するステップＳ１７０に進む。
【０２０８】
ステップＳ１６７において、過去参照フレーム数（深さ）＋２＞デコード可能フレーム数であると判断された場合、または、ステップＳ１６８において、過去参照フレーム数（深さ）＋１＞デコード可能フレーム数であると判断された場合、ステップＳ１６９において、デコード制御部７２（ＣＰＵ２２１のデコード制御部７２）は、代替表示を行うものと決定し、処理は、図１３のステップＳ１２７に戻り、ステップＳ１２８に進む。
【０２０９】
ここで、代替表示とは、具体的には、例えば、上述したように、Ｂピクチャのデコードを行わずに、ＩピクチャまたはＰピクチャのみデコードを行ったり、Ｉピクチャなど特定のピクチャタイプのデコード（フレーム内圧縮方式のデコード）のみを行ったり、デコード自体を高速に処理することを目的として低解像度のデコードを行うなどのほかに、プロクシファイルとして、ＰピクチャおよびＢピクチャ、または、Ｐピクチャのうちの少なくともいずれか１フレームを一旦デコードしてＩピクチャに再エンコードしたものを別途用意し、このＩピクチャを用いて画像を表示することにより、代替表示を行わない場合と比較して、高速に所望の画像を表示することができるようにするものである。プロクシファイルの詳細については、後述する。代替表示としては、これらの表示方法以外であっても、必要に応じて、再生出力される画像の画質とデコード時間とのバランスを考慮して、最適な、デコードアルゴリズムやデコーダ（デコード方法）が選択されるようにすればよい。
【０２１０】
ステップＳ１６７において、過去参照フレーム数（深さ）＋２＞デコード可能フレーム数ではないと判断された場合、または、ステップＳ１６８において、過去参照フレーム数（深さ）＋１＞デコード可能フレーム数ではないと判断された場合、ステップＳ１７０において、デコード制御部７２（ＣＰＵ２２１のデコード制御部７２）は、代替表示を行わないものと決定し、処理は、図１３のステップＳ１２７に戻り、ステップＳ１２８に進む。
【０２１１】
このような処理により、インデックステーブルに記載されている深さ情報が利用されて、通常デコードを行っても処理が間に合うか否かが判断され、デコードを切り替えて代替表示を行うか否かが判断されて、必要に応じて、代替表示が行われる。
【０２１２】
次に、図１５のフローチャートを参照して、図１４のステップＳ１６４において実行されるデコード可能フレーム数算出処理について説明する。
【０２１３】
ステップＳ２０１において、デコード制御部７２（ＣＰＵ２２１のデコード制御部７２）は、例えば、１秒間３０フレームや１秒間１５フレームなど、単位時間当たりの表示フレーム数を設定する。
【０２１４】
ステップＳ２０２において、デコード制御部７２（ＣＰＵ２２１のデコード制御部７２）は、１フレーム表示サイクルのうち、他の処理に使う時間を引いて、１フレームの表示に対してデコード処理に与えられる時間Ｔを設定する。
【０２１５】
具体的には、例えば、デコード以外の処理に１フレームあたり１３ｍｓ使われるとすると、１秒３０フレーム表示の場合、１/３０＝３３ｍｓ，３３-１３＝２０ｍｓとなり、２０ｍｓが１フレームの表示に対してデコード処理に与えられる時間Ｔと設定され、１秒１５フレーム表示の場合、１／１５＝６６ｍｓ，６６−１３＝５３ｍｓとなり、５３ｍｓが１フレームの表示に対してデコード処理に与えられる時間Ｔと設定される。
【０２１６】
ステップＳ２０３において、デコード制御部７２（ＣＰＵ２２１のデコード制御部７２）は、デコード対象ストリームを１ＧＯＰ以上デコードし、平均１フレームデコード時間Ａを計測する。
【０２１７】
そして、ステップＳ２０４において、デコード制御部７２（ＣＰＵ２２１のデコード制御部７２）は、Ｔ÷Ａを演算し、Ｔ÷Ａ以下の整数の最大値をデコード可能フレーム数Ｘとし、処理は、図１４のステップＳ１６４に戻り、ステップＳ１６６に進む。
【０２１８】
このような処理により、デコード可能フレーム数Ｘが算出され、インデックステーブルに記載されている深さ情報との比較が行われることにより、通常デコードを行っても処理が間に合うか否かが判断され、デコードを切り替えて代替表示を行うか否かが判断されて、必要に応じて、代替表示が行われる。
【０２１９】
このようにして、本発明が適用されることにより、深さ情報を使って、デコード切り替えを行うかどうかを決定することが可能となる。すなわち、通常再生モードの場合や、スクラブ再生モードであってもデコード済みの参照フレームが存在している場合には、この後のデコード処理が短いと予測できるので、深さ情報を使った処理は行わず、通常のデコード処理を行う。一方、スクラブモードであり、かつ、過去参照画像もない場合、即ち、ランダムに再生中で周囲のフレームがデコードされていない場合、通常デコードを行うと処理が間に合わなくなり表示できなくなると予測されるか否かを判断するため、デコード可能フレーム数Ｘが算出または取得され、インデックステーブルに記載されている深さ情報との比較が行われることにより、デコード切り替えを行うかどうかが決定される。
【０２２０】
デコード可能フレーム数は、フレーム数が指定されていてもよいし、デコード時間最大値が指定され、これを基に算出されるようにしてもよい。フレーム数が指定される場合、例えば、上位アプリケーションで直接、最大デコードフレーム数が指定されるものとしてもよいし、CPUなどの処理能力（数や処理クロック速度など処理の速さを推し量れる情報）から、いくつかの要素パラメータを組み合わせて決定される（例えば、DualCoreCPUの3.6GHzならばデコード可能フレーム数は５フレームだが、SingleCoreCPUの2GHzならばデコード可能フレーム数は２フレームであるというように）ものとしてもよい。一方、時間が指定された場合、アプリケーションがデコード処理に与えることができる時間Tと１フレームの平均デコード時間AからT/Aの値が求められて、デコード可能フレーム数が算出される。
【０２２１】
また、デコード可能フレーム数は、例えば、代替表示において、近傍のIピクチャおよびＰピクチャを用いて、または、Ｉピクチャのみを用いてデコード処理が実行されるような場合においても有効に利用することが可能である。即ち、デコード処理を行う近傍画像フレームを選択する場合の代替対象の制限に使用することが出来る。例えば、デコード可能フレーム数が４フレームであり、１ＧＯＰ１５フレーム（ディスプレイオーダにおいて、Ｂ０，Ｂ１，Ｉ２，Ｂ３，Ｂ４，Ｐ５，Ｂ６，Ｂ７，Ｐ８，Ｂ９・・・Ｐ１４）の場合Ｉ２，Ｐ５，Ｐ８，Ｐ１１はデコードし、Ｐ１４はＰピクチャであってもデコード対象から外されることにより、スクラブ再生などにおける高速デコード処理が可能となる。
【０２２２】
このように、本発明が適用された場合、スクラブ再生などの特殊再生においても、デコードの難しさに応じて、復号方法を自動的に切り替えることにより、GOP後半のフレームまでも快適に表示することが可能となる。また、デコーダの能力に応じて、柔軟にデコード方式を切り替えることができ、能力の低いデコーダ使用時にも、高いスクラブ表示性能を維持することができる。
【０２２３】
また、代替表示が実行される場合には、例えば、上述したように、Ｂピクチャのデコードを行わずに、ＩピクチャまたはＰピクチャのみデコードを行ったり、Ｉピクチャなど特定のピクチャタイプのデコード（フレーム内圧縮方式のデコード）のみを行ったり、デコード自体を高速に処理することを目的として低解像度のデコードを行うなどのほかに、プロクシファイルとして、ＰピクチャおよびＢピクチャ、または、Ｐピクチャのうちの少なくともいずれか１フレームを一旦デコードしてＩピクチャに再エンコードしたものを別途用意し、このＩピクチャを用いて画像を表示するなど、必要に応じて、再生出力される画像の画質とデコード時間とのバランスを考慮して、最適な、デコードアルゴリズムやデコーダ（デコード方法）が選択される。
【０２２４】
次に、代替表示の一例として上述したプロクシファイルについて説明する。
【０２２５】
プロクシファイルは、再生装置６１またはパーソナルコンピュータ２０１により生成されてもよいが、これらの装置とは独立して構成されている変換装置３１１により生成されてもよい。
【０２２６】
変換装置３１１は、例えば、Mpeg2 LongGOPストリームなどのフレーム間参照符号化によって符号化されたビットストリーム（Ｉピクチャ（フレーム内符号化フレーム）、Ｐピクチャ（前方向予測符号化フレーム）、および、Ｂピクチャ（両方向予測符号化フレーム）により構成されているビットストリーム）の供給を受け、供給されたビットストリームのうちのＰピクチャをエンコード（符号化）してＩピクチャに変換することによって、図１３のステップＳ１２９において代替表示が実行される場合に利用されるプロクシファイルを生成することができる。
【０２２７】
図１６は、変換装置３１１の構成例を示すブロック図である。
【０２２８】
ビットストリーム取得部３３１は、Ｉピクチャ、Ｐピクチャ、および、Ｂピクチャが含まれているビットストリームの供給を受け、ビットストリーム解析部３３２に供給する。
【０２２９】
ビットストリーム解析部３３２は、Ｉピクチャ、Ｐピクチャ、および、Ｂピクチャが含まれているビットストリームの供給を受け、このうち、ＩピクチャおよびＰピクチャを、デコーダ３３４に供給する。また、ビットストリーム解析部３３２は、デコーダ３３４、エンコーダ３３６、および、プロクシファイル記憶部３３７を制御する。
【０２３０】
また、ビットストリーム解析部３３２は、供給されたビットストリームを解析するとともに、エンコーダ３３６により実行される処理の結果を解析し、図６を用いて説明したインデックスファイルを生成し、インデックスファイル記憶部３３３に供給することができるものとしてもよい。
【０２３１】
更に、インデックスファイルには、後述するプロクシインデックス記憶部３３８により記憶される情報を基に、図６を用いて説明した情報以外にも、例えば、図１７に示されるように、プロクシファイルに含まれている、オリジナルストリームにおけるＰピクチャに対応するフレームであってエンコーダ３３６によりエンコードされたＩピクチャに関する符号化情報として、ピクチャサイズ（Proxy File Picture Size）と、それらのフレームのアドレス（Proxy File Address）とが記載されるものとすると好適である。これらの情報は、エンコーダ３３６により後述するプロクシインデックス記憶部３３８に記憶される。
【０２３２】
インデックスファイル記憶部３３３は、ビットストリーム解析部３３２から供給される、図１７を用いて説明したインデックスファイルを記憶する。
【０２３３】
デコーダ３３４は、ビットストリーム解析部３３２から供給されたＩピクチャおよびＰピクチャをデコードして、非圧縮ベースバンド画像を生成し、Ｐピクチャに対応する非圧縮ベースバンド画像データをエンコーダ３３６に供給する。このとき、デコーダ３３４は、生成された非圧縮ベースバンド画像が、その後デコードされるフレームの参照画像として必要となる場合、生成された非圧縮ベースバンド画像を参照画像用メモリ３３５にも供給して記憶させ、Ｐピクチャをデコードする場合、参照画像用メモリ３３５に記憶されている参照用画像を適宜参照する。
【０２３４】
エンコーダ３３６は、供給されたＰピクチャに対応する非圧縮ベースバンド画像データを、フレーム内符号化によりＩピクチャとしてエンコードし、生成されたＩピクチャをプロクシファイル記憶部３３７に供給する。また、エンコーダ３３６は、圧縮処理時（Ｉピクチャ生成時）のパラメータとして、例えば、圧縮レートなどを設定することができる。
【０２３５】
図１８を参照して、エンコーダ３３６から出力されるＩピクチャのビットレートを固定にする場合について説明する。
【０２３６】
エンコーダ３３６は、出力されるＩピクチャのビットレートを固定にする場合、例えば、プロクシファイル記憶部３３７の記憶容量などに応じた所定のビットレートとなるように、Ｉピクチャを生成する。一般的に、Ｉピクチャよりも、前方参照を使ったＰピクチャの方が、情報量が少ないので、Ｐピクチャを再圧縮してＩピクチャにエンコードする場合のビットレートは、変換前（Ｐピクチャ）のビットレートよりも大きなビットレートとする方が、画質が維持しやすく、好適である。また、このビットレートを、ユーザにより設定可能なようにしても良い。
【０２３７】
次に、図１９を参照して、エンコーダ３３６から出力されるＩピクチャのビットレートを変動とする場合について説明する。
【０２３８】
エンコーダ３３６は、ビットストリーム解析部３３２、または、デコーダ３３４から、オリジナルのビットストリームのＩピクチャ（GOP単位で先頭のＩピクチャ）のレートを取得し、その値に応じたビットレートとなるように、Ｉピクチャを生成する。一般に、オリジナルの圧縮ストリームのＩピクチャのビットレートは、そのＧＯＰにおける映像の複雑さを反映している。したがって、Ｐピクチャから変換されて生成されるＩピクチャのビットレートも、ＧＯＰにおける映像の複雑さを反映している先頭のＩピクチャのビットレートに応じて変動させることにより、画質の劣化を防止することが可能となる。
【０２３９】
そして、プロクシファイル記憶部３３７は、エンコーダ３３６から供給された、図１８または図１９を用いて説明したようにして生成され、エンコーダ３３６から供給されたＩピクチャのデータを基に、プロクシファイル（proxy、すなわち、代理データファイル）を生成して記憶する。
【０２４０】
プロクシインデックス記憶部３３８は、エンコーダ３３６から、供給されたＰピクチャに対応する非圧縮ベースバンド画像データがフレーム内符号化によりＩピクチャとしてエンコードされてＩピクチャが生成されるごとに、生成されたＩピクチャに関する符号化情報として、ピクチャサイズ（Proxy File Picture Size）と、それらのフレームのアドレス（Proxy File Address）とをプロクシインデックスとして取得して記憶し、ビットストリーム解析部３３２に供給する。
【０２４１】
次に、図２０を参照して、オリジナルのビットストリームにおいてＰピクチャをデコードする場合について説明する。
【０２４２】
例えば、Mpeg2 LongGOPのビットストリームにおいて、Ｐ１１フレームを再生出力する場合、従来においては、図２０Ａに示されるように、Ｐ１１をふくむＧＯＰの先頭のＩピクチャであるＩ２フレームをデコードし、次いで、Ｐ５，Ｐ８フレームをデコードして参照フレーム画像データを生成した後、目的となるＰ１１フレームをデコードすることができるようになされていた。
【０２４３】
これに対して、プロクシファイルを利用してＰ１１フレームを再生出力する場合、図２０Ｂに示されるように、Ｐ１１フレームに対応するフレーム内圧縮されたＩピクチャであるＩ１１フレームをプロクシファイルから抽出してデコードし、再生出力すればよい。
【０２４４】
したがって、プロクシファイルを利用してＰ１１フレームを再生出力する場合、従来のデコード回数４回と比較して、デコード回数は１回のみとなり、高速に指定されたフレームを再生出力することができる。
【０２４５】
次に、図２１を参照して、オリジナルのビットストリームでのＢピクチャをデコードする場合について説明する。
【０２４６】
例えば、Mpeg2 LongGOPのビットストリームにおいて、Ｂ１２フレームを再生出力する場合、従来においては、図２１Ａに示されるように、Ｂ１２をふくむＧＯＰの先頭のＩピクチャであるＩ２フレームをデコードし、次いで、Ｐ５，Ｐ８，Ｐ１１，Ｐ１４フレームをデコードして参照フレーム画像データを生成した後、目的となるＢ１２フレームをデコードすることができるようになされていた。
【０２４７】
これに対して、プロクシファイルを利用してＢ１２フレームを再生出力する場合、図２１Ｂに示されるように、Ｂ１２フレームの参照画像として必要なＰ１１フレームおよびＰ１４フレームに対応する、フレーム内圧縮されたＩピクチャであるＩ１１フレームおよびＩ１４フレームをデコードし、これらを参照画像として目的となるＢ１２フレームをデコードして再生出力すればよい。
【０２４８】
したがって、プロクシファイルを利用してＢ１２フレームを再生出力する場合、従来のデコード回数６回と比較して、デコード回数は３回となり、高速に指定されたフレームを再生出力することができる。
【０２４９】
上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウェアにより実行させることもできる。この場合、例えば、変換装置３１１と同様の機能を、図９を用いて説明したパーソナルコンピュータ２０１により実現させることができる。
【０２５０】
図９を用いて説明したパーソナルコンピュータ２０１において、ソフトウェアにより、変換装置３１１と同様の機能が実現される場合の機能の一例について説明するための機能ブロック図を図２２に示す。
【０２５１】
なお、図１６、または、図９における場合と対応する部分には同一の符号を付してあり、その説明は適宜省略する。
【０２５２】
ＣＰＵ２２１が所定のプログラムを実行することによって、パーソナルコンピュータ２０１は、図１６のビットストリーム解析部３３２、デコーダ３３４、および、エンコーダ３３６と同等の機能を有する。
【０２５３】
ＣＰＵ２２１は、マウス２０２またはキーボード２０３などの入力デバイスによって入力されたユーザの操作を基に、記憶装置２０４、外部映像記録再生装置２０５、または、ＨＤＤ２２６のうちのいずれかの領域に対応するビットストリーム記憶部２８１に記録されているビットストリームのうちのＩピクチャおよびＰピクチャを、参照画像用メモリ３３５に対応するＲＡＭ２２３の領域を利用してデコードし、ＰピクチャのみをＩピクチャとしてエンコードすることにより、プロクシファイルを生成して、記憶装置２０４、外部映像記録再生装置２０５、または、ＨＤＤ２２６のうちのいずれかの領域に対応するプロクシファイル記憶部３３７に記憶させる。
【０２５４】
更に、ＣＰＵ２２１は、Ｐピクチャに対応する非圧縮ベースバンド画像データがフレーム内符号化によりＩピクチャとしてエンコードされてＩピクチャが生成されるごとに、生成されたＩピクチャに関する符号化情報として、ピクチャサイズ（Proxy File Picture Size）と、それらのフレームのアドレス（Proxy File Address）とを、プロクシインデックスとしてプロクシインデックス記憶部３３８に対応するＲＡＭ２２３の領域に保存させるとともに、ビットストリームを解析し、プロクシインデックス記憶部３３８に保存されていたプロクシインデックスを取得してインデックスファイルを生成し、記憶装置２０４、外部映像記録再生装置２０５、または、ＨＤＤ２２６のうちのいずれかの領域に対応するインデックスファイル記憶部３３３に記憶させる。
【０２５５】
再生装置６１のデコード制御部７２は、記憶装置２０４、外部映像記録再生装置２０５、または、ＨＤＤ２２６のうちのいずれかの領域に対応するインデックスファイル記憶部３３３に記録されているインデックスファイルを、所定の伝送媒体を介して取得する。また、デコード制御部７２またはデコード処理部７６は、図１３のステップＳ１２９においてプロクシファイルを利用して代替表示を実行する場合、記憶装置２０４、外部映像記録再生装置２０５、または、ＨＤＤ２２６のうちのいずれかの領域に対応するプロクシファイル記憶部３３７に記憶されているプロクシファイルを、所定の伝送媒体を介して取得し、デコード処理を実行する。
【０２５６】
なお、例えば、図９を用いて説明したパーソナルコンピュータ２０１が、図２２に示される機能に加えて図１０を用いて説明したデコード処理を実行する機能を有していた場合、図１０のパーソナルコンピュータ２０１のデコード制御部７２は、記憶装置２０４、外部映像記録再生装置２０５、または、ＨＤＤ２２６のうちのいずれかの領域に対応するインデックスファイル記憶部３３３からインデックスファイルを取得する。また、デコード制御部７２またはデコード処理部７６は、図１３のステップＳ１２９においてプロクシファイルを利用して代替表示を実行する場合、記憶装置２０４、外部映像記録再生装置２０５、または、ＨＤＤ２２６のうちのいずれかの領域に対応するプロクシファイル記憶部３３７からプロクシファイルを取得し、デコード処理を実行する。
【０２５７】
次に、図２３のフローチャートを参照して、図１６を用いて説明した変換装置３１１、または、図９および図２２を用いて説明したパーソナルコンピュータのＣＰＵ２２１において実行されるプロクシファイル生成処理１について説明する。
【０２５８】
ステップＳ２２１において、ビットストリーム取得部３３１（ＣＰＵ２２１）は、オリジナルのビットストリームを取得し、ビットストリーム解析部３３２（ＣＰＵ２２１のビットストリーム解析部３３２）に供給する。
【０２５９】
ステップＳ２２２において、ビットストリーム解析部３３２（ＣＰＵ２２１のビットストリーム解析部３３２）は、供給されたオリジナルのビットストリームのうちの１ピクチャを読み込む。
【０２６０】
ステップＳ２２３において、ビットストリーム解析部３３２（ＣＰＵ２２１のビットストリーム解析部３３２）は、読み込んだピクチャを解析する。すなわち、ビットストリーム解析部３３２は、図１７を用いて説明したインデックスファイルのうちの対応するピクチャの情報を取得する。
【０２６１】
ステップＳ２２４において、ビットストリーム解析部３３２（ＣＰＵ２２１のビットストリーム解析部３３２）は、読み込んだピクチャは、ＩピクチャまたはＰピクチャであるか否かを判断する。ステップＳ２２４において、ＩピクチャまたはＰピクチャではない、すなわち、Ｂピクチャであると判断された場合、処理は、後述するステップＳ２３０に進む。
【０２６２】
ステップＳ２２４において、ＩピクチャまたはＰピクチャであると判断された場合、ステップＳ２２５において、ビットストリーム解析部３３２（ＣＰＵ２２１のビットストリーム解析部３３２）は、読み込んだＩピクチャまたはＰピクチャをデコーダ３３４に供給する。デコーダ３３４は、供給されたＩピクチャまたはＰピクチャをデコードして、参照画像用メモリ３３５に格納する。
【０２６３】
ステップＳ２２６において、デコーダ３３４（ＣＰＵ２２１のデコーダ３３４）は、デコードされたピクチャは、Ｐピクチャであるか否かを判断する。ステップＳ２２６において、デコードされたピクチャは、Ｐピクチャではない、すなわち、Ｉピクチャであると判断された場合、処理は、後述するステップＳ２３０に進む。
【０２６４】
ステップＳ２２６において、デコードされたピクチャは、Ｐピクチャであると判断された場合、ステップＳ２２７において、デコーダ３３４（ＣＰＵ２２１のデコーダ３３４）は、デコードしたＰピクチャに対応する非圧縮画像フレームをエンコーダ３３６（ＣＰＵ２２１のエンコーダ３３６）に供給する。エンコーダ３３６は、供給された非圧縮画像フレームをＩピクチャとしてエンコードし、プロクシファイル記憶部３３７（記憶装置２０４、外部映像記録再生装置２０５、または、ＨＤＤ２２６のうちのいずれかの領域に対応するプロクシファイル記憶部３３７）に供給する。
【０２６５】
ステップＳ２２８において、プロクシファイル記憶部３３７（記憶装置２０４、外部映像記録再生装置２０５、または、ＨＤＤ２２６のうちのいずれかの領域に対応するプロクシファイル記憶部３３７）は、エンコードされて生成されたＩピクチャにより構成されるプロクシファイルを記憶する。
【０２６６】
ステップＳ２２９において、エンコーダ３３６は、生成されたＩピクチャに関する符号化情報として、ピクチャサイズ（Proxy File Picture Size）と、それらのフレームのアドレス（Proxy File Address）とのインデックス情報、すなわち、プロクシインデックスを、プロクシインデックス記憶部３３８に供給する。プロクシインデックス記憶部３３８は、該当するピクチャのプロクシインデックスを記憶する。
【０２６７】
ステップＳ２２４において、読み込んだピクチャはＩピクチャまたはＰピクチャではない、すなわち、Ｂピクチャであると判断された場合、ステップＳ２２６において、デコードされたピクチャは、Ｐピクチャではない、すなわち、Ｉピクチャであると判断された場合、または、ステップＳ２２９の処理の終了後、ステップＳ２３０において、ビットストリーム解析部３３２（ＣＰＵ２２１）は、全てのピクチャの処理が終了したか否かを判断する。ステップＳ２３０において、全てのピクチャの処理が終了していないと判断された場合、処理は、ステップＳ２２２に戻り、それ以降の処理が繰り返される。
【０２６８】
ステップＳ２３０において、全てのピクチャの処理が終了したと判断された場合、ステップＳ２３１において、ビットストリーム解析部３３２（ＣＰＵ２２１のビットストリーム解析部３３２）は、それぞれのピクチャの解析結果と、プロクシインデックス記憶部３３８に記憶されている、エンコーダ３３６によってＩピクチャとしてエンコードされたフレーム、すなわち、ＰピクチャからＩピクチャに変換されたフレームのピクチャサイズ（Proxy File Picture Size）とアドレス（Proxy File Address）を基に、図１７を用いて説明したインデックスファイルを生成し、インデックスファイル記憶部３３３（記憶装置２０４、外部映像記録再生装置２０５、または、ＨＤＤ２２６のうちのいずれかの領域に対応するインデックスファイル記憶部３３３）に供給して記憶させ、処理が終了される。
【０２６９】
このような処理により、オリジナルのビットストリームにおけるＰピクチャがデコードされたのち、Ｉピクチャとしてエンコードされることによって生成されたＩピクチャによるプロクシファイルと、オリジナルのビットストリームおよびプロクシファイルに含まれるＩピクチャ（オリジナルのビットストリームではＰピクチャ）に関する情報が記載されたインデックスファイルとが生成される。
【０２７０】
このように、変換装置３１１は、圧縮されたビットストリームの供給を受け、これを解析してインデックスファイルを生成するとともに、ＰピクチャをＩピクチャに変換してプロクシファイルを生成する。
【０２７１】
また、本発明を適用したパーソナルコンピュータ２０１は、所定のプログラムを実行することによって、変換装置３１１と同様の機能を有することができる。
【０２７２】
変換装置３１１においては、供給されたオリジナルのビットストリームから、ＩピクチャとＰピクチャのみがデコードされて、Ｐピクチャに対応するフレームのみが、再度、Ｉピクチャとしてエンコードされることにより、プロクシファイルが生成される。
【０２７３】
そのとき、生成されるプロクシファイルのＩピクチャのデータレートは、固定レートであっても良いし、オリジナルのビットストリームの対応するＧＯＰの先頭のＩピクチャのフレームレートに応じて変動させても（可変レートとしても）良い。
【０２７４】
そして、変換装置３１１において生成されるインデックスファイルには、オリジナルのビットストリームのデコードに必要な情報のみならず、プロクシファイルに含まれるＩピクチャ、すなわち、オリジナルのビットストリームにおいてＰピクチャであったフレームが、Ｉピクチャとしてエンコードされたフレームに関するピクチャサイズやアドレスなどの情報が含まれる。
【０２７５】
プロクシファイルがストリームのデコードに利用されることにより、ランダム生成におけるデコード時間を短縮することが可能となる。
【０２７６】
また、上述したように、ＰピクチャをIピクチャに変換するＰＩ変換を行い、変換前のストリームと変換された部分とを切り替えながらデコード処理に用いるようにすることにより、デコード時間を短縮しランダムアクセス性能を向上することが出来る。しかしながら、編集や再生を行う前に、元々のストリームのうちＰピクチャの部分をＩピクチャに変換する処理のために時間がかかってしまう。例えば、１GOPが１５フレームのストリームのうちＰピクチャが５フレームあったとすると、その５フレーム分を全てデコードして、Iピクチャに変換する（デコードした後再エンコードする）ための時間がかかってしまう。
【０２７７】
そこで、図１６のビットストリーム解析部３３２は、ＰＩ変換を行うときに、全てのＰピクチャをIピクチャに変換するのではなく、必要に応じて、一部のＰピクチャのみをＩピクチャに変換してプロクシファイルを生成して記憶するように、デコーダ３３４、エンコーダ３３６、プロクシファイル記憶部３３７を制御するようにしてもよい。
【０２７８】
ＰＩ変換を行う処理時間は、Iピクチャに変換する（デコードした後再エンコードする）Ｐピクチャの個数に依存するため、変換するピクチャの枚数を減らすことができれば、処理時間（プロクシファイルの生成時間）を短縮することができる。ビットストリーム解析部３３２は、変換後のストリームをデコードするのに必要な最長フレーム数がデコーダの能力を超えないことを、変換するピクチャの枚数を決定するための判断基準とすると好適である。変換後のストリームをデコードするのに必要な最長フレーム数（以下、デコード可能フレーム数とも称する）は、例えば、再生モードがスクラブ再生であるか、通常再生であるかによっても異なる。
【０２７９】
具体的には、デコード可能フレーム数は、例えば、予め設定されて（フレーム数が直接指定されて）いてもよいし、上位アプリケーションにより指定されるようになされていてもよい。例えば、デコード可能フレーム数は、デコード処理に用いられるデコーダやCPUの数やクロック周波数によって、設定されるようにしてもよい。このような場合、ビットストリーム解析部３３２は、デコード可能フレーム数を算出する必要は無く、指定されるデコード可能フレーム数を取得するようにすればよい。
【０２８０】
これに対して、例えば、上位アプリケーションからデコード処理に与えることができる時間配分Ｔ（例えば、20ms）のみが指定された場合には、ビットストリーム解析部３３２は、デコード可能フレーム数を算出する必要がある。
【０２８１】
また、このとき、ビットストリーム解析部３３２は、変換するＰピクチャができるだけ連続しないようにＩピクチャに変換されるＰピクチャを選択するようにすると、デコード可能フレーム数に対するＩピクチャに変換されるＰピクチャの数が少なくなるため、好適である。
【０２８２】
図２４を参照して、１ＧＯＰ１５フレーム、Ｐピクチャの数Ｎ＝４の場合（ＩＢＢＰＢＢＰＢＢＰＢＢＰＢＢ）におけるＰＩ変換のバリエーションについて説明する。
【０２８３】
例えば、ＰＩ変換を行わなかった場合、有効なシーケンス（Ｂピクチャを除くＩピクチャおよびＰピクチャの５フレームのピクチャタイプ）は、ＩＰＰＰＰとなり、最長デコード時間は、Open GOPであり、かつ、ストリームの先頭のＧＯＰではない場合の、ストリームオーダにおいてＩピクチャに続く２枚のＢピクチャ（例えば、図２０や図２１におけるＢ０Ｂ１）をデコードする場合の７フレーム分のデコードにかかる時間となる。
【０２８４】
そして、上述したように、４枚のＰピクチャをすべてＰＩ変換した場合、有効なシーケンスは、ＩＩＩＩＩとなり、最長デコード時間は、いずれかのＢピクチャをデコードする場合の３フレーム分のデコードにかかる時間となる。
【０２８５】
これに対して、変換する対象のＰピクチャを全て変換するのでなく、一定数に減らすことにより、ランダムデコードの最長デコード時間が、図２４に示されるように変動する。すなわち、４枚のＰピクチャのうちの１枚のみをＰＩ変換した場合、変換するＰピクチャができるだけ連続しないようにＩピクチャに変換されるＰピクチャを選択することにより、有効なシーケンスは、ＩＰＩＰＰまたはＩＰＰＩＰとなり、最長デコード時間は、５フレーム分のデコードにかかる時間となる。また、４枚のＰピクチャのうちの２枚のみをＰＩ変換した場合、変換するＰピクチャができるだけ連続しないようにＩピクチャに変換されるＰピクチャを選択することにより、有効なシーケンスは、ＩＰＩＩＰ、ＩＩＰＩＰ、または、ＩＰＩＰＩとなり、最長デコード時間は、４フレーム分のデコードにかかる時間となる。
【０２８６】
なお、４枚のＰピクチャのうちの１枚のみをＰＩ変換した場合、および、４枚のＰピクチャのうちの２枚のみをＰＩ変換した場合において、最長デコード時間が短くなるのは、変換するＰピクチャができるだけ連続しないようにＩピクチャに変換されるＰピクチャを選択した場合、すなわち、図２４に示される有効なシーケンスにおける場合のみであり、例えば２ピクチャをＰＩ変換する場合であれば、変換後のシーケンスにおいてＰピクチャが２フレーム連続しないように変換されるＰピクチャを選んだ場合であり、１ピクチャをＰＩ変換する場合であれば、変換後のシーケンスにおいてＰピクチャが３フレーム連続しないように変換されるＰピクチャを選んだ場合である。
【０２８７】
次に、図２５乃至図２９を参照して、変換する対象のＰピクチャを全て変換するのでなく、一定数に減らした場合の具体的なデコード処理について説明する。
【０２８８】
図２５を参照して、４枚のＰピクチャのうちの１枚のみをＰＩ変換し、有効シーケンスをＩＰＩＰＰとした場合のデコード処理について説明する。
【０２８９】
図２５Ａに示されるように、ディスプレイオーダにおいて、Ｂ０，Ｂ１，Ｉ２，Ｂ３，Ｂ４，Ｐ５，Ｂ６，Ｂ７，Ｐ８，Ｂ９・・・と並んでいる１５枚のフレームに含まれる４枚のＰピクチャのうちのＰ８ピクチャをＩピクチャに変換して、プロクシファイルとしてＩ８ピクチャを用意した場合、デコード時間が最長になるのはＢ０またはＢ１をデコードする場合であり、そのときにデコードする必要があるのは、図２５Ｂに示されるように、参照画像であるＩ８，Ｐ１１，Ｐ１４，Ｉ２に加えて、Ｂ０またはＢ１（図２５Ｂにおいては、Ｂ０と図示されている）の５ピクチャ分である。
【０２９０】
次に、図２６を参照して、同様に４枚のＰピクチャのうちの１枚のみをＰＩ変換し、有効シーケンスをＩＰＰＩＰとした場合のデコード処理について説明する。
【０２９１】
図２６Ａに示されるように、ディスプレイオーダにおいて、Ｂ０，Ｂ１，Ｉ２，Ｂ３，Ｂ４，Ｐ５，Ｂ６，Ｂ７，Ｐ８，Ｂ９・・・と並んでいる１５枚のフレームに含まれる４枚のＰピクチャのうちのＰ１１ピクチャをＩピクチャに変換して、プロクシファイルとしてＩ１１ピクチャを用意した場合、デコード時間が最長になるのはＢ９またはＢ１０をデコードする場合であり、そのときにデコードする必要があるのは、図２６Ｂに示されるように、参照画像であるＩ２，Ｐ５，Ｐ８，Ｉ１１に加えて、Ｂ９またはＢ１０（図２６Ｂにおいては、Ｂ９と図示されている）の５ピクチャ分である。
【０２９２】
なお、４枚のＰピクチャのうちの１枚のみをＰＩ変換した全ての場合において最長デコード時間が５ピクチャ分になるわけでない。すなわち、最長デコード時間が５ピクチャ分になるのは、図２５および図２６に示されるように、変換後のＰピクチャが３枚連続しないようにした場合のみである。それ以外の場合、例えば、変換後のシーケンスがＩＩＰＰＰとなった場合やＩＰＰＰＩとなった場合などは、最長デコード時間が６ピクチャ分必要なケースが発生してしまい、ＰＩ変換の効果が減少してしまう。
【０２９３】
次に、図２７を参照して、４枚のＰピクチャのうちの２枚をＰＩ変換し、有効シーケンスをＩＰＩＩＰとした場合のデコード処理について説明する。
【０２９４】
図２７Ａに示されるように、ディスプレイオーダにおいて、Ｂ０，Ｂ１，Ｉ２，Ｂ３，Ｂ４，Ｐ５，Ｂ６，Ｂ７，Ｐ８，Ｂ９・・・と並んでいる１５枚のフレームに含まれる４枚のＰピクチャのうちのＰ８ピクチャおよびＰ１１ピクチャをＩピクチャに変換して、プロクシファイルとしてＩ８ピクチャおよびＩ１１ピクチャを用意した場合、デコード時間が最長になるのはＢ６またはＢ７、もしくは、Ｂ０またはＢ１をデコードする場合であり、そのときにデコードする必要があるのは、図２７Ｂに示されるように、参照画像であるＩ２，Ｐ５，Ｉ８に加えて、Ｂ６またはＢ７（図２７Ｂにおいては、Ｂ６と図示されている）の４ピクチャ分となるか、参照画像であるＩ１１，Ｐ１４，Ｉ２に加えて、Ｂ０またはＢ１（図２７Ｂにおいては、Ｂ０と図示されている）の４ピクチャ分となる。
【０２９５】
同様に、図２８は、４枚のＰピクチャのうちの２枚をＰＩ変換し、有効シーケンスをＩＩＰＩＰとした場合のデコード処理について説明するための図であり、図２９は、４枚のＰピクチャのうちの２枚をＰＩ変換し、有効シーケンスをＩＰＩＰＩとした場合のデコード処理について説明するための図である。
【０２９６】
図２８Ａに示されるように、ディスプレイオーダにおいて、Ｂ０，Ｂ１，Ｉ２，Ｂ３，Ｂ４，Ｐ５，Ｂ６，Ｂ７，Ｐ８，Ｂ９・・・と並んでいる１５枚のフレームに含まれる４枚のＰピクチャのうちのＰ５ピクチャおよびＰ１１ピクチャをＩピクチャに変換して、プロクシファイルとしてＩ５ピクチャおよびＩ１１ピクチャを用意した場合、デコード時間が最長になるのはＢ９またはＢ１０、もしくは、Ｂ０またはＢ１をデコードする場合であり、そのときにデコードする必要があるのは、図２８Ｂに示されるように、参照画像であるＩ５，Ｐ８，Ｉ１１に加えて、Ｂ９またはＢ１０（図２８Ｂにおいては、Ｂ９と図示されている）の４ピクチャ分となるか、参照画像であるＩ１１，Ｐ１４，Ｉ２に加えて、Ｂ０またはＢ１（図２８Ｂにおいては、Ｂ０と図示されている）の４ピクチャ分となる。
【０２９７】
また、図２９Ａに示されるように、ディスプレイオーダにおいて、Ｂ０，Ｂ１，Ｉ２，Ｂ３，Ｂ４，Ｐ５，Ｂ６，Ｂ７，Ｐ８，Ｂ９・・・と並んでいる１５枚のフレームに含まれる４枚のＰピクチャのうちのＰ８ピクチャおよびＰ１４ピクチャをＩピクチャに変換して、プロクシファイルとしてＩ８ピクチャおよびＩ１４ピクチャを用意した場合、デコード時間が最長になるのはＢ６またはＢ７、もしくは、Ｂ１２またはＢ１３をデコードする場合であり、そのときにデコードする必要があるのは、図２９Ｂに示されるように、参照画像であるＩ２，Ｐ５，Ｉ８に加えて、Ｂ６またはＢ７（図２９Ｂにおいては、Ｂ６と図示されている）の４ピクチャ分となるか、参照画像であるＩ８，Ｐ１１，Ｉ１４に加えて、Ｂ１２またはＢ１３（図２９Ｂにおいては、Ｂ１２と図示されている）の４ピクチャ分となる。
【０２９８】
なお、この場合においても同様に、４枚のＰピクチャのうちの２枚をＰＩ変換した全ての場合において最長デコード時間が４ピクチャ分になるわけでない。すなわち、最長デコード時間が４ピクチャ分になるのは、図２７乃至図２９に示されるように、変換後のＰピクチャが２枚連続しないようにした場合のみである。それ以外の場合、例えば、変換後のシーケンスがＩＩＰＰＩとなった場合やＩＰＰＩＩとなった場合などは、ＰＩ変換の効果が減少してしまう。
【０２９９】
また、図２５乃至図２９においては、ＩピクチャまたはＰピクチャの間のＢピクチャの数がそれぞれ２である場合について説明したが、ＩピクチャまたはＰピクチャの間のＢピクチャの数が２以上のいかなる数であっても、連続するＢピクチャのデコードのために必要となる参照画像の枚数は同一であるので、それぞれの場合における最長デコード時間は同様であることは言うまでもない。
【０３００】
次に、図３０のフローチャートを参照して、変換するＰピクチャの設定処理について説明する。
【０３０１】
ステップＳ２８１において、図１５を用いて説明した場合と同様のデコード可能フレーム数算出処理が実行されて、デコード可能フレーム数が求められる。
【０３０２】
なお、変換装置３１１のビットストリーム解析部３３２は、例えば、デコード可能フレーム数が、予め定められていたり、上位アプリケーションから指定されるようになされている場合、ステップＳ２８１においてデコード可能フレーム数算出処理を実行することなく、予め定められている、または、上位アプリケーションから指定されるデコード可能フレーム数を取得するようにすればよい。
【０３０３】
ステップＳ２８２において、変換装置３１１のビットストリーム解析部３３２は、ビットストリーム取得部３３１により取得されるビットストリームの１ＧＯＰ中のＰピクチャの数をＮ、デコード可能フレーム数をＸとして、Ｎ＋３＞Ｘであるか否かを判断する。
【０３０４】
ステップＳ２８２において、Ｎ＋３＞Ｘではないと判断された場合、ステップＳ２８３において、ビットストリーム解析部３３２は、ＰＩ変換を行わないものとして、処理が終了される。
【０３０５】
Ｎ＋３≦Ｘである場合、ＰＩ変換を行わないビットストリームにおいて最もデコード時間がかかってしまうフレームのデコード処理のために必要となる時間は、デコード可能フレーム数Ｘをデコードするために必要となる時間よりも短い。すなわち、このような場合は、ＰＩ変換を行う必要がない。
【０３０６】
ステップＳ２８２において、Ｎ＋３＞Ｘであると判断された場合、換言すれば、ＰＩ変換を行わないビットストリームにおいて最もデコード時間がかかってしまうフレームのデコード処理のために必要となる時間は、デコード可能フレーム数Ｘをデコードするために必要となる時間よりも長いと判断された場合、ステップＳ２８４において、ビットストリーム解析部３３２は、ＰＩ変換後のシーケンスにおいてデコード処理が間に合うＰピクチャの最大連続数であるＰＩスキップ数Ｓを、仮に、Ｘ−３とする。
【０３０７】
ステップＳ２８５において、ビットストリーム解析部３３２は、Ｓ＝Ｘ−３である場合において、Ｎ／Ｓ＞１であるか否かを判断する。
【０３０８】
ステップＳ２８５において、Ｎ／Ｓ＞１であると判断された場合、ステップＳ２８６において、ビットストリーム解析部３３２は、ＰＩスキップ数Ｓを、Ｘ−３とする。
【０３０９】
ステップＳ２８５において、Ｎ／Ｓ＞１ではないと判断された場合、ステップＳ２８７において、ビットストリーム解析部３３２は、ＰＩスキップ数Ｓを、Ｎ／２（ただし、整数でない場合は、近い値の整数）とする。
【０３１０】
ステップＳ２８６またはステップＳ２８７の処理の終了後、ステップＳ２８８において、ビットストリーム解析部３３２は、ＰＩスキップ数Ｓを基に、変換するＰピクチャを設定し、処理が終了される。
【０３１１】
このような処理により、デコード可能フレーム数と１ＧＯＰ中のＰピクチャの数を基に、ＰＩ変換後のシーケンスにおいてデコード処理が間に合うＰピクチャの最大連続数であるＰＩスキップ数が求められ、これを基に、Ｉピクチャに変換されるＰピクチャが設定される。このようにして、ＰＩ変換されるＰピクチャの数をできるだけ減少させた場合、すべてのＰピクチャをＩピクチャに返還する場合と比較して、プロクシファイルを生成するための時間を削減することが可能となる。
【０３１２】
図３１を用いて、Ｉピクチャに変換されるＰピクチャの具体的な設定の例、すなわち、１ＧＯＰに含まれるＰピクチャの数ＮがＮ＝１１である場合におけるデコード可能フレーム数Ｘと、ＰＩスキップ数Ｓとの関係、および、Ｉピクチャに変換されるＰピクチャの設定について説明する。
【０３１３】
例えば、Ｘ＝４，Ｓ＝１の場合、ＰＩ変換後のＰピクチャは連続して存在してはいけないため、ＰＩ変換後のシーケンスは、ＩＰＩＰＩＰＩＰＩＰＩＰとなる。また、例えば、Ｘ＝５，Ｓ＝２の場合、ＰＩ変換後のＰピクチャは２枚しか連続させることができないため、ＰＩ変換後のシーケンスは、ＩＰＰＩＰＰＩＰＰＩＰＰとなる。また、例えば、Ｘ＝６，Ｓ＝３の場合、ＰＩ変換後のＰピクチャは３つまでしか連続させることができないため、ＰＩ変換後のシーケンスは、ＩＰＰＰＩＰＰＰＩＰＰＰとなる。
【０３１４】
また、例えば、Ｘ＝７，Ｓ＝４の場合、ＰＩ変換後のＰピクチャは４枚まで連続させることができるため、ＰＩ変換後のシーケンスは、単純には、ＩＰＰＰＰＩＰＰＰＰＩＰとしてもよく、Ｐピクチャの連続数が４枚以下で、かつ、Ｉピクチャへの変換数が２枚以下であれば、これ以外のシーケンス（例えば、ＩＰＰＰＰＩＰＰＰＩＰＰなど）としてもよい。ただし、連続するＰピクチャの数は、できるだけ少ないほうが好ましいため、Ｘ＝７，Ｓ＝４における場合は、Ｘ＝６，Ｓ＝３における場合と同様にして、有効シーケンスをＩＰＰＰＩＰＰＰＩＰＰＰとしたほうが、ＰＩ変換されるピクチャ数が同一であって最長のデコード時間をより短縮することができ、好適である。
【０３１５】
また、例えば、Ｘ＝８，Ｓ＝５の場合、ＰＩ変換後のＰピクチャは５枚まで連続させることができるため、ＰＩ変換後のシーケンスは、ＩＰＰＰＰＰＩＰＰＰＰＰとなる。更に、例えば、Ｘ＝９，Ｓ＝５の場合、上述したステップＳ２８５において、Ｎ／Ｓ＞１であると判断されるので、ビットストリーム解析部３３２は、ＰＩスキップ数Ｓを、Ｎ／２（ただし、整数でない場合は、近い値の整数）よりＳ＝５とする。なお、１４（＝Ｎ＋３）＞Ｘ≧１０の場合においても、上述したステップＳ２８５においてＮ／Ｓ＞１であると判断されるので、ビットストリーム解析部３３２は、ＰＩスキップ数ＳをＳ＝５とする。このとき、ＰＩ変換後のシーケンスは、ＩＰＰＰＰＰＩＰＰＰＰＰとなる。
【０３１６】
また、Ｘ≧１４（＝Ｎ＋３）である場合、ＰＩ変換の必要はないと判断される。
【０３１７】
次に、図３２のフローチャートを参照して、図１６を用いて説明した変換装置３１１、または、図９および図２２を用いて説明したパーソナルコンピュータのＣＰＵ２２１において実行されるプロクシファイル生成処理２について説明する。
【０３１８】
ステップＳ３３１乃至ステップＳ３３６において、図２３を用いて説明したステップＳ２２１乃至ステップＳ２２６と同様の処理が実行される。
【０３１９】
すなわち、ビットストリーム取得部３３１（ＣＰＵ２２１）は、オリジナルのビットストリームを取得し、ビットストリーム解析部３３２（ＣＰＵ２２１のビットストリーム解析部３３２）に供給する。ビットストリーム解析部３３２（ＣＰＵ２２１のビットストリーム解析部３３２）は、供給されたオリジナルのビットストリームのうちの１ピクチャを読み込んで解析する。すなわち、ビットストリーム解析部３３２は、図１７を用いて説明したインデックスファイルのうちの対応するピクチャの情報を取得する。
【０３２０】
そして、ビットストリーム解析部３３２（ＣＰＵ２２１のビットストリーム解析部３３２）は、読み込んだピクチャは、ＩピクチャまたはＰピクチャであるか否かを判断する。ＩピクチャまたはＰピクチャではない、すなわち、Ｂピクチャであると判断された場合、処理は、後述するステップＳ３４１に進む。
【０３２１】
ＩピクチャまたはＰピクチャであると判断された場合、ビットストリーム解析部３３２（ＣＰＵ２２１のビットストリーム解析部３３２）は、読み込んだＩピクチャまたはＰピクチャをデコーダ３３４に供給する。デコーダ３３４は、供給されたＩピクチャまたはＰピクチャをデコードして、参照画像用メモリ３３５に格納する。
【０３２２】
そして、デコーダ３３４（ＣＰＵ２２１のデコーダ３３４）は、デコードされたピクチャは、Ｐピクチャであるか否かを判断する。デコードされたピクチャは、Ｐピクチャではない、すなわち、Ｉピクチャであると判断された場合、処理は、後述するステップＳ３４１に進む。
【０３２３】
ステップＳ３３６において、デコードされたピクチャは、Ｐピクチャであると判断された場合、ステップＳ３３７において、デコーダ３３４（ＣＰＵ２２１のデコーダ３３４）は、ビットストリーム解析部３３２の制御に基づいて、そのＰピクチャは、上述した、変換するＰピクチャの設定処理においてＩピクチャへ変換されると設定された、変換の必要なＰピクチャであるか否かを判断する。ステップＳ３３７において、変換の必要なＰピクチャではないと判断された場合、処理は、後述するステップＳ３４１に進む。
【０３２４】
ステップＳ３３７において、変換の必要なＰピクチャであると判断された場合、ステップＳ３３８において、デコーダ３３４（ＣＰＵ２２１のデコーダ３３４）は、デコードしたＰピクチャに対応する非圧縮画像フレームをエンコーダ３３６（ＣＰＵ２２１のエンコーダ３３６）に供給する。エンコーダ３３６は、供給された非圧縮画像フレームをＩピクチャとしてエンコードし、プロクシファイル記憶部３３７（記憶装置２０４、外部映像記録再生装置２０５、または、ＨＤＤ２２６のうちのいずれかの領域に対応するプロクシファイル記憶部３３７）に供給する。
【０３２５】
ステップＳ３３９において、プロクシファイル記憶部３３７（記憶装置２０４、外部映像記録再生装置２０５、または、ＨＤＤ２２６のうちのいずれかの領域に対応するプロクシファイル記憶部３３７）は、エンコードされて生成されたＩピクチャにより構成されるプロクシファイルを記憶する。
【０３２６】
ステップＳ３４０において、エンコーダ３３６は、生成されたＩピクチャに関する符号化情報として、ピクチャサイズ（Proxy File Picture Size）と、それらのフレームのアドレス（Proxy File Address）とのインデックス情報、すなわち、プロクシインデックスを、プロクシインデックス記憶部３３８に供給する。プロクシインデックス記憶部３３８は、該当するピクチャのプロクシインデックスを記憶する。
【０３２７】
ステップＳ３３４において、読み込んだピクチャはＩピクチャまたはＰピクチャではない、すなわち、Ｂピクチャであると判断された場合、ステップＳ３３６において、デコードされたピクチャは、Ｐピクチャではない、すなわち、Ｉピクチャであると判断された場合、ステップＳ３３７において、変換の必要なＰピクチャではないと判断された場合、または、ステップＳ３４０の処理の終了後、ステップＳ３４１において、ビットストリーム解析部３３２（ＣＰＵ２２１）は、全てのピクチャの処理が終了したか否かを判断する。ステップＳ３４１において、全てのピクチャの処理が終了していないと判断された場合、処理は、ステップＳ３３２に戻り、それ以降の処理が繰り返される。
【０３２８】
ステップＳ３４１において、全てのピクチャの処理が終了したと判断された場合、ステップＳ３４２において、ビットストリーム解析部３３２（ＣＰＵ２２１のビットストリーム解析部３３２）は、それぞれのピクチャの解析結果と、プロクシインデックス記憶部３３８に記憶されている、エンコーダ３３６によってＩピクチャとしてエンコードされたフレーム、すなわち、ＰピクチャからＩピクチャに変換されたフレームのピクチャサイズ（Proxy File Picture Size）とアドレス（Proxy File Address）を基に、図１７を用いて説明したインデックスファイルを生成し、インデックスファイル記憶部３３３（記憶装置２０４、外部映像記録再生装置２０５、または、ＨＤＤ２２６のうちのいずれかの領域に対応するインデックスファイル記憶部３３３）に供給して記憶させ、処理が終了される。
【０３２９】
このような処理により、オリジナルのビットストリームにおけるＰピクチャのうち、Ｉピクチャへ変換されると設定されたＰピクチャがデコードされたのち、Ｉピクチャとしてエンコードされることによって生成されたＩピクチャによるプロクシファイルと、オリジナルのビットストリームおよびプロクシファイルに含まれるＩピクチャ（オリジナルのビットストリームではＰピクチャ）に関する情報が記載されたインデックスファイルとが生成される。
【０３３０】
なお、ここでは、プロクシファイルは、図１３のステップＳ１２９の処理において代替表示が実行される場合に利用可能であるものとして説明したが、例えば、図１１のステップＳ４４または図１３のステップＳ１２４の処理において、近傍のIピクチャおよびＰピクチャを用いて、または、Ｉピクチャのみを用いてデコード処理が実行されると決定された場合にも、プロクシファイルは利用可能であることは言うまでもない。更に、代替表示が実行されずに、参照画像のデコードが実行されて、所望のフレームが再生出力されるような場合も、適宜、プロクシファイルを利用することにより、デコードにかかる時間が短縮されて、スクラブ再生などにおける高速デコード処理が可能となる。
【０３３１】
なお、ここでは、主に、Ｉピクチャ、Ｐピクチャ、および、ＢピクチャからなるMPEG2 LongGOPにおける場合について説明したが、本発明は、フレーム間参照によりデコードされた圧縮符号化データを再生する場合に適用可能である。
【０３３２】
上述した一連の処理は、上述したように、ハードウエアにより実行させることもできるし、ソフトウェアにより実行させることもできる。
【０３３３】
一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウエアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、ネットワークや記録媒体からインストールされる。
【０３３４】
この記録媒体は、図９に示されるように、装置本体とは別に、ユーザにプログラムを提供するために配布される、プログラムが記録されている磁気ディスク（フロッピディスクを含む）、光ディスク（CD-ROM（Compact Disk-Read Only Memory)，DVD（Digital Versatile Disk）を含む）、光磁気ディスク（ＭＤ（Mini-Disk）を含む）、もしくは半導体メモリなどよりなるリムーバブルメディア２０６により構成されるだけでなく、装置本体に予め組み込まれた状態でユーザに提供される、プログラムが記録されているROM２２２や、ＨＤＤ２２６に含まれるハードディスクなどで構成される。
【０３３５】
なお、本明細書において、記録媒体に記録されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【０３３６】
なお、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。
【０３３７】
なお、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
【図面の簡単な説明】
【０３３８】
【図１】従来の再生装置の構成を示すブロック図である。
【図２】従来のデコード処理について説明するためのフローチャートである。
【図３】従来の再生装置におけるスクラブ再生について説明するための図である。
【図４】本発明を適用した再生装置の構成を示すブロック図である。
【図５】編集画面について説明するための図である。
【図６】インデックステーブルについて説明するための図である。
【図７】図４の再生装置におけるスクラブ再生について説明するための図である。
【図８】図４のベースバンドメモリ管理部が管理する情報について説明するための図である。
【図９】パーソナルコンピュータの構成を示すブロック図である。
【図１０】図９のパーソナルコンピュータにおいて実現される機能について説明するための機能ブロック図である。
【図１１】デコード処理１について説明するためのフローチャートである。
【図１２】深さ情報算出処理について説明するためのフローチャートである。
【図１３】デコード処理２について説明するためのフローチャートである。
【図１４】デコード切り替え決定処理について説明するためのフローチャートである。
【図１５】デコード可能フレーム数算出処理について説明するためのフローチャートである。
【図１６】変換装置の構成を示すブロック図である。
【図１７】インデックスファイルについて説明するための図である。
【図１８】Ｉピクチャのビットレートを固定にする場合について説明するための図である。
【図１９】Ｉピクチャのビットレートを変動にする場合について説明するための図である。
【図２０】Ｐピクチャをランダム再生する場合について説明するための図である。
【図２１】Ｂピクチャをランダム再生する場合について説明するための図である。
【図２２】図９のパーソナルコンピュータにおいて実現される機能について説明するための機能ブロック図である。
【図２３】プロクシファイル生成処理１について説明するためのフローチャートである。
【図２４】ＰＩ変換数を変更した場合について説明するための図である。
【図２５】最小デコード数について説明するための図である。
【図２６】最小デコード数について説明するための図である。
【図２７】最小デコード数について説明するための図である。
【図２８】最小デコード数について説明するための図である。
【図２９】最小デコード数について説明するための図である。
【図３０】変換するＰピクチャの設定処理について説明するためのフローチャートである。
【図３１】変換するＰピクチャの設定について説明するための図である。
【図３２】プロクシファイル生成処理２について説明するためのフローチャートである。
【符号の説明】
【０３３９】
２１  操作入力取得部，  ２４  インデックス管理部，  ３１  ベースバンド画像データ用メモリ，  ３２  ベースバンド信号処理部，  ６１  再生装置，  ７１  ＧＵＩ表示制御部，  ７２  デコード制御部，  ７３  ベースバンドメモリ管理部，  ７４  ストリーム供給制御部，  ７５  参照画像指示部，  ７６  デコード処理部，  ７７  ベースバンド画像データ用メモリ制御部，  １２１  スクラブバー，  １３１  タイムライン，  ２０１  パーソナルコンピュータ，  ２０２  マウス，  ２０３  キーボード，  ２０４  記憶装置，  ２０５  外部映像記録再生装置，  ２２１  ＣＰＵ，  ２２２  ＲＯＭ，  ２２３  ＲＡＭ，  ２２６  ＨＤＤ，  ２２９  ディスプレイ，  ２５１  ＧＵＩ制御部，  ２５２  ストリーム供給制御部，  ２５３  参照画像指示部
【図１】
2006319962.tif 000003
【図２】
2006319962.tif 000004
【図３】
2006319962.tif 000005
【図４】
2006319962.tif 000006
【図５】
2006319962.tif 000007
【図６】
2006319962.tif 000008
【図７】
2006319962.tif 000009
【図８】
2006319962.tif 000010
【図９】
2006319962.tif 000011
【図１０】
2006319962.tif 000012
【図１１】
2006319962.tif 000013
【図１２】
2006319962.tif 000014
【図１３】
2006319962.tif 000015
【図１４】
2006319962.tif 000016
【図１５】
2006319962.tif 000017
【図１６】
2006319962.tif 000018
【図１７】
2006319962.tif 000019
【図１８】
2006319962.tif 000020
【図１９】
2006319962.tif 000021
【図２０】
2006319962.tif 000022
【図２１】
2006319962.tif 000023
【図２２】
2006319962.tif 000024
【図２３】
2006319962.tif 000025
【図２４】
2006319962.tif 000026
【図２５】
2006319962.tif 000027
【図２６】
2006319962.tif 000028
【図２７】
2006319962.tif 000029
【図２８】
2006319962.tif 000030
【図２９】
2006319962.tif 000031
【図３０】
2006319962.tif 000032
【図３１】
2006319962.tif 000033
【図３２】
2006319962.tif 000034