(57)【要約】【課題】ビデオデコーダが復号処理を行う際に必要となるメモリからの単位時間当たりのデータ転送量の最大値を抑えることで、低コスト化された復号装置、および、メモリをＣＰＵ等のモジュールと共有していても、ユーザ操作などの外部からのイベントに対して優れた応答性を得ることができる復号装置を提供すること。【解決手段】各々が符号化種別を有する複数の符号化単位を含むデータ列に基づき、複数の符号化単位の符号化種別構成を検出する符号化種別検出手段と、符号化種別毎に固有のメモリアクセス量に基づき、データ列を復号する際の単位時間当たりメモリアクセス量が、時間方向に平準化されるように各符号化単位の復号処理時間を求める復号制御手段と、算出した復号処理時間に従い、符号化単位を復号する復号手段とを備えることを特徴とする復号装置。【選択図】図２
2008141311.tif 000002
【特許請求の範囲】
【請求項１】
各々が符号化種別を有する複数の符号化単位を含むデータ列について、前記複数の符号化単位の符号化種別構成を検出し、符号化種別毎に固有のメモリとの間の単位時間当たりのデータ転送量に基づき、前記データ列を復号する際のメモリとの間の単位時間当たりのデータ転送量が、時間方向に平準化されるように各符号化単位の復号処理速度を求める復号制御手段と、
前記算出した復号処理速度に従い、前記符号化単位を復号する復号手段と
を備えることを特徴とする復号装置。
【請求項２】
前記データ列との同期情報を有する第２のデータ列を復号し、前記同期情報に従い、前記第２のデータ列の復号結果を前記復号手段による前記データ列の復号結果と同期させて出力する第２の復号手段と
を備えることを特徴とする請求項１に記載の復号装置。
【請求項３】
前記符号化単位は動画像を構成する画像であるピクチャであり、前記符号化種別は符号化の際に参照する画像の最大数を判別可能なピクチャタイプであることを特徴とする請求項１また請求項２に記載の復号装置。
【請求項４】
前記符号化種別検出手段は、前記データ列が有する提示時刻情報および復号時刻情報に基づき、該データ列が有するピクチャのピクチャタイプ構成を検出することを特徴とする請求項３に記載の復号装置。
【請求項５】
各々が符号化種別を有する複数の符号化単位からなるデータ列を復号する復号装置における復号方法において、
前記復号装置が、前記データ列に基づき、前記複数の符号化単位の符号化種別構成を検出する第１の過程と、
前記復号装置が、符号化種別毎に固有のメモリとの間の単位時間当たりのデータ転送量に基づき、前記データ列を復号する際のメモリとの間の単位時間当たりのデータ転送量が、時間方向に平準化されるように各符号化単位の復号処理速度を求める第２の過程と、
前記復号装置が、前記算出した復号処理速度に従い、前記符号化単位を復号する第３の過程と
を備えることを特徴とする復号方法。
【請求項６】
符号化種別を有する符号化単位を含むデータ列を復号する復号装置であって、
前記データ列を復号する際のメモリとの間の単位時間当たりのデータ転送量が、平準化されることを特徴とする復号装置。
【請求項７】
符号化種別を有する符号化単位を含む第１のデータ列と第２のデータ列とを復号する復号装置であって、
前記第１のデータ列を復号する際のメモリとの間の単位時間当たりのデータ転送量が、平準化され、
前記第１のデータ列の復号処理結果と前記第２のデータ列の復号処理結果とが同期出力されることを特徴とする復号装置。
【請求項８】
前記符号化単位はピクチャ、前記符号化種別はピクチャタイプであることを特徴とする請求項６または請求項７記載の復号装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、復号装置および復号方法、特にＭＰＥＧ（Moving Picture Experts Group）１、ＭＰＥＧ２、ＭＰＥＧ４等に代表されるデジタルの動画像符号化方式で符号化（圧縮）処理されたデータ列を復号する復号装置および復号方法に関する。
【背景技術】
【０００２】
近年、ＭＰＥＧ１、ＭＰＥＧ２、ＭＰＥＧ４、Ｈ．２６３、Ｈ．２６４等の動画像符号化方式が、ＤＶＤ（Digital Versatile Disk）、デジタル放送、テレビ電話等、様々な装置に利用されるようになっている。これらの符号化方式が普及した理由としては、蓄積、放送、通信の何れのメディアにおいても、利用上問題となる程に巨大な動画像データのサイズを、１／３０〜１／８０にまで圧縮することが可能である点が挙げられる。これらの動画像符号化方式においては、その圧縮率を高めるための一技術として、動画を構成する静止画（以降、ピクチャと呼ぶ）間の相関を利用する「動き補償」の技術が用いられている。この「動き補償」の基本的な考え方を、以下に述べる。
【０００３】
説明のために図２０を用いる。図２０における現在のピクチャ１７１０の中の領域１７１５と過去のピクチャ１７００中の領域１７０５とが似た画であったとすれば、領域１７１５は領域１７０５に少しだけ修正したものと考えることができる。その修正に必要なデータは、前記領域１７０５と領域１７１５の相関が高い程少なくて済む。そこで、現在のピクチャ１７１０の領域１７１５の符号化では、過去のピクチャ１７００の領域１７０５の領域１７１５に対する相対位置と、領域１７１５と領域１７０５との差分データを求め、それらを符号化する。
【０００４】
そして、ピクチャ１７１０の領域１７１５の復号は、前記相対位置から得られる過去のピクチャ１７００の領域１７０５のデータに、前記差分データを加算することにより行われる。つまり、「動き補償」を利用した動画像符号化方式で符号化されたストリームを復号する際には、復号するピクチャのストリームに加え、既に復号済みの、符号化時に使用した他のピクチャのデータを参照する必要が生じる。また、現在のピクチャ１７１０の中の領域１７１５と未来のピクチャ１７２０の中の領域１７２５とが似た画であったときも、同様である。
【０００５】
ところで、前記の現在主流となっている動画像符号化では、ピクチャは、その符号化の方法によって、以下の３種類の符号化種別（ピクチャタイプ）に分類されている。それ自身の情報のみで符号化された、故にそれ自身の符号化データのみから復号が可能なＩ（Intra）ピクチャ、過去のピクチャ１枚から動き補償予測を使用して符号化した、即ち、復号時には符号化の際に使用したピクチャ１枚を参照する必要があるＰ（Predictive）ピクチャ、過去と未来のピクチャ１枚もしくは２枚から動き補償予測を使用して符号化した、即ち、復号時には符号化の際に使用したピクチャ１枚もしくは２枚を参照する必要があるＢ（ＭＰＥＧ１／２／４、Ｈ．２６３では、Bi-directional predictive（双方向予測）を意味し、Ｈ．２６４では、Bi-predictive Prediction（双予測）を意味する）ピクチャの３種類である。Ｂピクチャについては、Ｈ．２６４とそれ以前の動画像符号化規格で定義が異なるが、復号時のピクチャの参照枚数に限って言えば、最大２枚を参照するという点は共通である。なお、Ｐピクチャ及びＢピクチャにも、Ｉピクチャと同様に、他のピクチャを参照しない部分が含まれることはある。
【０００６】
ここで、デジタルＴＶに用いられる動画像の復号装置の構成例を示した概略ブロック図を図２１に示す。この復号装置は、ビデオデコーダ１８００、メモリ１８１０、ＣＰＵ１８２０、表示処理部１８３０、表示装置１８４０、オーディオデコーダ１８５０、チューナ１８６０、ストリーム処理部１８７０、バス１８８０、音声出力装置１８９０で構成されている。この例では、ストリーム処理部１８７０、ＣＰＵ１８２０、メモリ１８１０、ビデオデコーダ１８００、オーディオデコーダ１８５０、表示処理部１８３０が、バス１８８０に接続されて、バス１８８０を共有している。
【０００７】
以下、図２１に示す動画像復号装置の動作を説明する。チューナ１８６０はデジタルＴＶチューナであり、受信した放送波を復調処理して、オーディオ、ビデオ、セクションその他の情報が格納されたデータ列（ストリーム）を取り出す。前記ストリームはストリーム処理部１８７０へと送られる。ストリーム処理部１８７０は、前記ストリームをビデオストリーム、オーディオストリーム、セクション等に分類し、それぞれメモリ１８１０へと書き込む。ビデオデコーダ１８００は、前記ビデオストリームをメモリ１８１０から読み出し、復号処理を行って、その復号処理の結果であるピクチャデータをメモリ１８１０へと書き込む。ＰピクチャやＢピクチャの復号処理時には、復号処理中に、前記「動き補償」処理のために、復号処理済みのピクチャデータの参照が必要となるため、メモリ１８１０から前記復号処理済みのピクチャデータの読み出しが随時行われる。オーディオデコーダ１８５０は、前記オーディオストリームをメモリ１８１０から読み出し、復号処理を行って、その復号処理の結果であるオーディオデータを音声出力装置１８９０へと出力する。
【０００８】
ＣＰＵ１８２０は、前記セクションをメモリ１８１０から読み出し、データ放送や番組情報の復号を行い、復号結果の画像データをメモリ１８１０へと書き込む。表示処理部１８３０は、前記ビデオデコーダ１８００がメモリ１８１０に書き込んだピクチャデータを読み出し、画質調整処理等を行ったり、前記ＣＰＵ１８２０がメモリ１８１０に書き込んだ画像データにスケール調整等を行ったりし、さらには、双方の重ね合わせ処理等を行って、表示装置１８４０へと出力する。なお、ビデオデコーダ１８００、オーディオデコーダ１８５０、表示処理部１８３０の動作タイミングは、ストリーム中に含まれる時間パラメータに基づき、制御が行われる。ストリームを復号した結果の表示／出力タイミングを制御する方法の詳細については、非特許文献２、非特許文献３を参照されたい。
【０００９】
従って、上記図２１に示したようなシステムでは、バス１８８０（ひいてはメモリ１８１０）は、ストリーム処理部１８７０、ＣＰＵ１８２０、ビデオデコーダ１８００、オーディオデコーダ１８５０、表示処理部１８３０が使用する帯域の合計を上回る帯域を持たねばならないことになる。なお、本明細書中において、「帯域」は「単位時間当たりのデータ転送量（＝データ転送速度）」を意味するものとする。
一方で、ビデオデコーダ１８００がメモリ１８１０に対するアクセスで使用する帯域は復号を行うピクチャタイプ（符号化種別）毎に変化する。実際には、符号化時の動き補償処理でどれだけ他のピクチャを参照するかによって変動するが、各ピクチャタイプにおいて最も多く参照する（使用する帯域が多い）場合を考えると、図２２に示すようになる。
【００１０】
ビデオデコーダ１８００がバス１８８０を介してメモリ１８１０に行うアクセスは、大きく３つに分類される。即ち、（１）メモリ１８１０からビデオストリームを読み出す（図２２、１９００、１９２０、１９５０）、（２）メモリ１８１０に復号結果のピクチャデータを書き込む（図２２、１９１０、１９３０、１９６０）、（３）メモリ１８１０から参照用のピクチャデータを読み出す（図２２、１９４０、１９７０、１９８０）である。
（１）のケースは、前記ＭＰＥＧ２等のデジタルの動画像符号化方式においては、符号化されたビデオストリームが、元画像の１／３０〜１／８０のサイズにまで圧縮されていることを考えると、（２）、（３）のケースに比べて、非常に少ない帯域となる（全ての種類のピクチャで同一の帯域という訳ではないが使用する帯域の総量からするとわずかであるということは共通する）。
【００１１】
（２）のケースは、Ｉピクチャ、Ｐピクチャ、Ｂピクチャの何れの場合でも必ず１ピクチャ分の書き込みが行われる。従って、いずれのタイプのピクチャでも同じ帯域が使用される。
（３）のケースは、ＰピクチャとＢピクチャでのみ発生し、Ｐピクチャでは最大１ピクチャ分、Ｂピクチャでは最大２ピクチャ分の読み出しが行われる。
即ち、各タイプのピクチャの復号処理に使用される帯域を比較すると、Ｂピクチャが最も使用する帯域が多くなり、次がＰピクチャ、最も少ない帯域で済むのがＩピクチャとなる。
【特許文献１】特開平０８−２１２７０１号公報
【非特許文献１】大久保  榮監修、「Ｈ．２６４／ＡＶＣ教科書」、株式会社インプレス
【非特許文献２】亀山  渉、花村  剛監修、「改訂版デジタル放送教科書（上）」、株式会社インプレス
【非特許文献３】藤原  洋著、「最新ＭＰＥＧ教科書」、アスキー出版局
【発明の開示】
【発明が解決しようとする課題】
【００１２】
以上述べたように、ビデオデコーダはピクチャタイプ毎にメモリに対するアクセスで使用する最大帯域が変化し、最大帯域が最も多くなるのはＢピクチャの復号処理時となる。従って、ビデオデコーダが接続されるバスやビデオデコーダが復号処理に使用するメモリには、Ｂピクチャの復号処理に必要となる帯域以上の帯域が要求される。該要求を満たすためには、高性能のメモリやバスを使用する必要があり、高コストとなってしまうという問題がある。
【００１３】
特に、これらのバスやメモリを、他のオーディオデコーダやＣＰＵ等のモジュールと共有する場合には、各々の行う処理でそれぞれ帯域が必要とされるため、前記バスやメモリに必要とされる帯域は、前記ビデオデコーダが必要とする最大の帯域に、前記ビデオデコーダ以外のモジュールが使用する帯域を加えた帯域となるため、さらに大きな帯域となってしまう。
【００１４】
また、デジタルＴＶのような機器において、これらのバスやメモリをＣＰＵ等のモジュールと共有する場合には、ビデオデコーダによる復号処理以外にも、外部からの非定常的に発生するイベント（例えばユーザの操作）に対する処理も行う必要があるが、ビデオデコーダが多くの帯域を使用する処理を行っている時は、ユーザの操作等の外部からもたらされるイベントに対する応答時間が長くなってしまう（ユーザの操作への応答性が悪くなる）という問題がある。
【００１５】
本発明は、このような事情に鑑みてなされたもので、その目的は、ビデオデコーダが復号処理を行う際に必要となるメモリの最大の帯域を抑えることで、低コスト化された復号装置、および、メモリをＣＰＵ等のモジュールと共有していても、ユーザ操作などの外部からのイベントに対して優れた応答性を得ることができる復号装置を提供することにある。
【課題を解決するための手段】
【００１６】
この発明は上述した課題を解決するためになされたもので、本発明の復号装置は、各々が符号化種別を有する複数の符号化単位を含むデータ列について、前記複数の符号化単位の符号化種別構成を検出し、符号化種別毎に固有のメモリとの間の単位時間当たりのデータ転送量に基づき、前記データ列を復号する際のメモリとの間の単位時間当たりのデータ転送量が、時間方向に平準化されるように各符号化単位の復号処理速度を求める復号制御手段と、前記算出した復号処理速度に従い、前記符号化単位を復号する復号手段とを備えることを特徴とする。
【００１７】
これにより、復号処理の際のメモリとの間の単位時間当たりのデータ転送量の最大値が抑制され、結果として、より少ない帯域のバスやメモリを用いて復号処理を行うことができるため、低コスト化された復号装置を提供することができる。また、その他に、復号手段が復号処理に用いるメモリを、ＣＰＵ等のモジュールと共有していても、ユーザ操作などの外部からのイベントに対して優れた応答性を得ることができる。
【００１８】
また、本発明の復号装置は、上述の復号装置であって、前記データ列との同期情報を有する第２のデータ列を復号し、前記同期情報に従い、前記第２のデータ列の復号結果を前記復号手段による前記データ列の復号結果と同期させて出力する第２の復号手段を備えることを特徴とする。
【００１９】
また、本発明の復号装置は、上述のいずれかの復号装置であって、前記符号化単位は動画像を構成する画像であるピクチャであり、前記符号化種別は符号化の際に参照する画像の最大数を判別可能なピクチャタイプであることを特徴とする
【００２０】
また、本発明の復号装置は、上述の復号装置であって、前記符号化種別検出手段は、前記データ列が有する提示時刻情報および復号時刻情報に基づき、該データ列が有するピクチャのピクチャタイプ構成を検出することを特徴とする。
【００２１】
これにより、各ピクチャのデータを参照することなくピクチャタイプ構成を検出できるので、ピクチャタイプ構成検出による遅延時間を少なくすることができる。
【００２２】
また、本発明の復号方法は、各々が符号化種別を有する複数の符号化単位からなるデータ列を復号する復号装置における復号方法において、前記復号装置が、前記データ列に基づき、前記複数の符号化単位の符号化種別構成を検出する第１の過程と、前記復号装置が、符号化種別毎に固有のメモリとの間の単位時間当たりのデータ転送量に基づき、前記データ列を復号する際のメモリとの間の単位時間当たりのデータ転送量が、時間方向に平準化されるように各符号化単位の復号処理速度を求める第２の過程と、前記復号装置が、前記算出した復号処理速度に従い、前記符号化単位を復号する第３の過程とを備えることを特徴とする。
【００２３】
また、本発明の復号装置は、符号化種別を有する符号化単位を含むデータ列を復号する復号装置であって、前記データ列を復号する際のメモリとの間の単位時間当たりのデータ転送量が、平準化されることを特徴とする。
【００２４】
また、本発明の復号装置は、符号化種別を有する符号化単位を含む第１のデータ列と第２のデータ列とを復号する復号装置であって、前記第１のデータ列を復号する際のメモリとの間の単位時間当たりのデータ転送量が、平準化され、前記第１のデータ列の復号処理結果と前記第２のデータ列の復号処理結果とが同期出力されることを特徴とする。
【００２５】
また、本発明の復号装置は、上述のいずれかの復号装置であって、前記符号化単位はピクチャ、前記符号化種別はピクチャタイプであることを特徴とする。
【発明の効果】
【００２６】
本発明によれば、復号処理の際の単位時間当たりメモリアクセス量の最大値が抑制され、結果として、より少ない帯域のバスやメモリを用いて復号処理を行うことができるため、低コスト化された復号装置を提供することができる。また、その他の効果としては、復号手段が復号処理に用いるメモリを、ＣＰＵ等のモジュールと共有していても、ユーザ操作などの外部からのイベントに対して優れた応答性を得ることができる。
【発明を実施するための最良の形態】
【００２７】
［第１の実施形態］
以下、本発明の第１の実施形態について、図１から図１５、図２３を用いて説明する。図１は、本実施形態による復号装置であるデジタルＴＶ１０００の構成を示した概略ブロック図である。チューナ６００はデジタルＴＶチューナであり、アンテナにて受信した放送波を復調処理して、オーディオ、ビデオ、セクションその他の情報が格納されたストリームを取り出して、ストリーム処理部１００へ送る。ストリーム処理部１００は、入力されたストリームをビデオストリーム、オーディオストリーム、セクション等に分類し、それぞれメモリ４００へと書き込む。ビデオデコーダ１３０は、前記ビデオストリームをメモリ４００から読み出し、復号処理を行って、その復号処理の結果であるピクチャデータをメモリ４００へと書き込む。ビデオデコーダ１３０は、ＰピクチャやＢピクチャの復号処理中に、前記「動き補償」処理のために、復号処理済みのピクチャデータの参照が必要となるため、メモリ４００から前記復号処理済みのピクチャデータの読み出しを随時行う。オーディオデコーダ１７０は、前記オーディオストリームをメモリ４００から読み出し、復号処理を行って、その復号処理の結果であるオーディオデータを音声出力装置７００へと出力する。音声出力装置７００は、入力されたオーディオデータに従い、スピーカなどにより音声、楽音などを出力する。
【００２８】
ＣＰＵ３１０は、前記セクションをメモリ４００から読み出し、データ放送や番組情報の復号を行い、復号結果の画像データをメモリ４００へと書き込む。また、制御部３００は、ビデオデコーダ１３０の復号速度比（後述）および復号開始時刻、ビデオデコーダ１３０による復号結果の表示開始時刻、オーディオデコーダ１７０の出力開始時刻を求め、各々、ビデオデコーダ１３０、表示処理部５００、オーディオデコーダ１７０に供給する。表示処理部５００は、前記ビデオデコーダ１３０がメモリ４００に書き込んだピクチャデータを読み出し、画質調整処理等を行ったり、ＣＰＵ３１０がメモリ４００に書き込んだ画像データにスケール調整等を行ったりし、さらには、前述のピクチャデータと画像データとの重ね合わせ処理等を行って生成した画像データを、表示装置８００へと出力する。表示装置８００は、入力された画像データに従い画像を表示する。なお、ビデオデコーダ１３０、オーディオデコーダ１７０、表示処理部５００の動作タイミングは、同期情報としてストリーム中に含まれる時間パラメータ（後述する）に基づき、制御が行われる。バス９００は、ストリーム処理部１００、ＣＰＵ３１０、制御部３００、メモリ４００、ビデオデコーダ１３０、オーディオデコーダ１７０、表示処理部５００の間のデータの受け渡しを仲介するバスである。
【００２９】
図２は、図１のデジタルＴＶ１０００から復号処理に関連した構成を抜き出し、復号処理手順に準じた配置を示した概略ブロック図である。なお、図２においては、ストリーム処理部１００、メモリ４００、制御部３００、ビデオデコーダ（復号手段）１３０、オーディオデコーダ（第２の復号手段）１７０、表示処理部５００、ＣＰＵ３１０の間を接続するバス９００は図示を省略する。実装において、コストや設計上の制約の観点から、図１のように制御部３００やメモリ４００を各種の機能が共有する形態を採ることは、本発明の如き装置ではしばしば行われることである。また、ＣＰＵ３１０も、本実施形態の説明に必要がないため、図示を省略する。
図２に示した装置を図１に適用する場合、メモリ４００は、ビデオストリームバッファ１１０、ビデオ位相調整バッファ１２０、フレームバッファ１４０、オーディオストリームバッファ１５０、オーディオ位相調整バッファ１６０を含む。制御部３００は、オーディオタイミング検出部１８０、タイミング制御部１９０、復号制御部（復号制御手段）２００、フレーム周期検出部２１０、ストラクチャ検出部２２０、を含む。
【００３０】
以下、図２を参照して、入力された多重化ストリーム（ＭＰＥＧ２−ＴＳ（Transport Stream））を処理する手順を説明する。ストリーム処理部１００は、前記入力されたＭＰＥＧ２−ＴＳからビデオＥＳ（Elementally Stream：エレメンタリストリーム）、オーディオＥＳ、ＴＳヘッダ、ビデオＥＳを格納したＰＥＳ（Packetized Elementary Stream：パケット化エレメンタリストリーム）パケットのヘッダ部分（以下ビデオＰＥＳヘッダと表記する）、オーディオＥＳを格納したＰＥＳパケットのヘッダ部分（以下オーディオＰＥＳヘッダと表記する）を抽出し、それぞれ、ビデオＥＳをビデオストリームバッファ１１０、フレーム周期検出部２１０、ストラクチャ検出部２２０へ、オーディオＥＳをオーディオストリームバッファ１５０へ、ＴＳヘッダをタイミング制御部１９０へ、ビデオＰＥＳヘッダを復号制御部２００へ、オーディオＰＥＳヘッダをオーディオタイミング検出部１８０へと分配する。
【００３１】
ここで、前記ストリーム処理部１００が各ブロックへと送るデータの内容について簡単に説明する。ＭＰＥＧ２−ＴＳの構造を、図３に示す。ＭＰＥＧ２−ＴＳは、ビデオストリーム、オーディオストリーム、データ放送、制御情報等の様々な要素を構成要素とすることができるが、図３は、本発明に関係する要素である、ビデオストリームとオーディオストリームのみを含むＭＰＥＧ２−ＴＳを例示している。
【００３２】
図３において、ＴＳパケットＶＴ３００、Ｔ３１０、Ｔ３３０は、ビデオストリームを運ぶためのＴＳパケットであり、ＴＳパケットＡＴ３２０、Ｔ３４０はオーディオストリームを運ぶためのＴＳパケットである。図３に例示するＭＰＥＧ２−ＴＳは、これらのＴＳパケットによって構成されている。ＴＳパケットは固定長パケットであり、１８８バイトの長さを持つ。各ＴＳパケットは、ＴＳヘッダＴ３５０、Ｔ３７０、Ｔ３９０、Ｔ４１０とＴＳペイロードＴ３６０、Ｔ３８０、Ｔ４００、Ｔ４２０に分割することができる。これらのＴＳヘッダＴ３５０、Ｔ３７０、Ｔ３９０、Ｔ４１０が、前記した、ストリーム処理部１００がタイミング制御部１９０へと送るものである。ＴＳパケットＶＴ３００、Ｔ３１０、Ｔ３３０とＴＳパケットＡＴ３２０、Ｔ３４０は、前記ＴＳヘッダ内のパラメータによりビデオストリームを運ぶためのＴＳパケットであるかオーディオストリームを運ぶためのＴＳパケットであるかを判別することが可能である。前記ＴＳペイロードには、ビデオストリームやオーディオストリームをＰＥＳパケット化したものが分割され、格納されている。即ち、ＴＳパケットＶＴ３１０、Ｔ３３０のＴＳペイロードＴ３６０、Ｔ３８０には、ビデオＰＥＳパケットを分割したものが、ＴＳパケットＡＴ３２０、Ｔ３４０のＴＳペイロードＴ４００、Ｔ４２０には、オーディオＰＥＳパケットを分割したものが格納されている。
【００３３】
ＰＥＳパケットは、ビデオやオーディオの符号化されたデータである要素ストリームＥＳをパケット化したものであり、ビデオＰＥＳパケットは、ビデオＰＥＳヘッダ（Ｔ４３０またはＴ４５０）とビデオＥＳ（Ｔ４４０またはＴ４６０）とから、オーディオＰＥＳパケットは、オーディオＰＥＳヘッダ（Ｔ４７０またはＴ４９０）とオーディオＥＳ（Ｔ４８０またはＴ５００）とから構成される。前記ビデオＰＥＳヘッダＴ４３０、Ｔ４５０が、ストリーム処理部１００が復号制御部２００に送るものである。また、前記ビデオＥＳＴ４４０、Ｔ４６０が、ストリーム処理部１００がビデオストリームバッファ１１０、フレーム周期検出部２１０、ストラクチャ検出部２２０へと送るものである。また、前記オーディオＰＥＳヘッダＴ４７０、Ｔ４９０が、ストリーム処理部１００が、オーディオタイミング検出部１８０へと送るものである。また、前記オーディオＥＳＴ４８０、Ｔ５００が、ストリーム処理部１００がオーディオストリームバッファ１５０へと送るものである。
【００３４】
ここで、図２による多重化ストリームの処理手順の説明に戻る。ビデオストリームバッファ１１０は、動画像符号化の規格によってその容量を定められたバッファである。ビデオＥＳを蓄積し、その入力と出力の速度の違いを吸収する役目を持つ。また、オーディオストリームバッファ１５０は、同様に、オーディオＥＳを蓄積し、その入力と出力の速度の違いを吸収するためのバッファである。
【００３５】
ビデオストリームバッファ１１０に入力されたビデオＥＳは、ビデオ位相調整バッファ１２０に空きがある限り、順次ビデオ位相調整バッファ１２０に移動させられる。図２では、利用目的の違いを明確にするために、ビデオストリームバッファ１１０とビデオ位相調整バッファ１２０を個別に設けているが、両者を一つのバッファにまとめた構成としてもよい。オーディオストリームバッファ１５０とオーディオ位相調整バッファ１６０の関係も、前記ビデオストリームバッファ１１０とビデオ位相調整バッファ１２０の関係と同様である。オーディオストリームバッファ１５０に入力されたオーディオＥＳは、オーディオ位相調整バッファ１６０に空きがある限り、順次オーディオ位相調整バッファ１６０へと移動させられる。従って、同様に、オーディオストリームバッファ１５０とオーディオ位相調整バッファ１６０を一つのバッファにまとめた構成としてもよい。
【００３６】
フレーム周期検出部２１０は、入力されたビデオＥＳから、動画のフレーム周期Ｔの演算を行う。演算のための処理手順は動画像符号化アルゴリズムにより異なるが、基本的にはビデオＥＳ中に含まれるフレームレートに関連するパラメータを抜き出して、これからフレーム周期を算出する。一例として、動画像符号化アルゴリズムにＭＰＥＧ２が用いられている場合を以下に示す。ＭＰＥＧ２のビデオＥＳの構成は、図４のように６層構造となっている。最上層がシーケンス層、第２層がＧＯＰ（Group Of Picture：グループオブピクチャ）層、第３層がピクチャ層、第４層がスライス層、第５層がマクロブロック層、第６層がブロック層である。
【００３７】
シーケンス層は、１つ以上のＧＯＰを管理するための層であり、シーケンスヘッダと、１以上のＧＯＰと、１つのシーケンスの終了を示すシーケンス終了コードとからなる。ＧＯＰ層は、シーケンスへのランダムアクセスのための層であり、ＧＯＰヘッダとそれに続くＩピクチャ（Ｉ）、Ｂピクチャ（Ｂ）、Ｐピクチャ（Ｐ）とからなる。ＧＯＰ層は存在しないこともある。ピクチャ層は、符号化の基本単位であるピクチャを構成する層であり、ピクチャヘッダとそれに続くスライスとからなる。スライス層は、エラー発生時の再同期単位のための層であり、スライスヘッダとそれに続くマクロブロックとからなる。マクロブロック層は、動き補償の単位を構成する層であり、マクロブロックヘッダとそれに続くブロックとからなる。ブロック層は、ＤＣＴ処理等の符号化処理の基本単位を構成する層であり、ブロックヘッダとそれに続くデータとからなる。
【００３８】
前記ビデオＥＳの最上層、シーケンス層のシーケンスヘッダには、ｆｒａｍｅ＿ｒａｔｅ＿ｃｏｄｅ、ｆｒａｍｅ＿ｒａｔｅ＿ｅｘｔｅｎｓｉｏｎ＿ｎ（以下、ＦＲＥｎ）、ｆｒａｍｅ＿ｒａｔｅ＿ｅｘｔｅｎｓｉｏｎ＿ｄ（以下、ＦＲＥｄ）というパラメータが含まれており、これらからフレームレートＦを求めることが可能である。具体的には、ｆｒａｍｅ＿ｒａｔｅ＿ｃｏｄｅを図５に示したｆｒａｍｅ＿ｒａｔｅ＿ｃｏｄｅの各値とｆｒａｍｅ＿ｒａｔｅ＿ｖａｌｕｅ（以下、ＦＲＶ）との対応関係を格納した表を用いて変換することにより、ＦＲＶが求まり、これを式（１）に代入することにより、フレームレートＦが求まる。
【００３９】
【数１】
2008141311.tif 000003
【００４０】
なお、対象とするＭＰＥＧ２プロファイルにおいて、ｆｒａｍｅ＿ｒａｔｅ＿ｅｘｔｅｎｓｉｏｎ＿ｎ及びｆｒａｍｅ＿ｒａｔｅ＿ｅｘｔｅｎｓｉｏｎ＿ｄは０と規定されている場合や、復号しようとするビデオＥＳにｆｒａｍｅ＿ｒａｔｅ＿ｅｘｔｅｎｓｉｏｎ＿ｎやｆｒａｍｅ＿ｒａｔｅ＿ｅｘｔｅｎｓｉｏｎ＿ｄが含まれていない場合には、以下の式（１）’を用いる。
【００４１】
【数２】
2008141311.tif 000004
【００４２】
フレーム周期検出部２１０は、以上のように式（１）あるいは式（１）’を用いて求めたフレームレートＦの逆数を取り、フレーム周期Ｔを求め、前記フレーム周期Ｔを復号制御部２００に送る。
【００４３】
ストラクチャ検出部２２０は、入力されたビデオＥＳから、ピクチャ構造を表すストラクチャ種別Ｓを検出する。具体的な検出方法は動画像符号化アルゴリズムによって異なるが、前記フレーム周期Ｔの場合と同様に、動画像符号化アルゴリズムとしてＭＰＥＧ２が用いられている場合を以下に示す。前記ビデオＥＳの第３層、ピクチャ層のピクチャヘッダには、ｐｉｃｔｕｒｅ＿ｓｔｒｕｃｔｕｒｅというパラメータが含まれており、この値によって、ストラクチャ種別Ｓ（フレームストラクチャかフィールドストラクチャか）の判定が可能である。ストラクチャ検出部２２０は、前記判定結果であるストラクチャ種別Ｓを復号制御部２００に送る。この時、ストラクチャ検出部２２０は、復号制御部２００に対し、ストラクチャ種別Ｓの判定結果が確定したことを示す信号も出力する。ここで、フレームストラクチャとは、１フレームの画像が、プログレッシブ走査による１枚のピクチャ１枚で構成されるフレーム構造を言い、フィールドストラクチャとは、１フレームの画像が、インターレース走査による奇数ラインのみで構成されるピクチャ（奇数フィールド）と偶数ラインのみで構成されるピクチャ（偶数フィールド）の２枚のピクチャで構成されるフレーム構造を言う。
【００４４】
復号制御部２００は、前記ビデオＥＳ中のピクチャ（符号化単位）のピクチャタイプ（符号化種別：ＩピクチャまたはＰピクチャまたはＢピクチャ）の並び方（符号化種別構成）を検出する。復号制御部２００はまた、前記符号化種別構成（ピクチャタイプの並び方）とピクチャタイプ毎に固有の最大メモリアクセス量によって、各ピクチャを復号する際の単位時間当たりメモリアクセス量が、時間方向に平準化されるように各ピクチャの復号開始時刻と復号速度比（１ピクチャの表示時間を１ピクチャの復号時間で割った値、即ち、この値の逆数を１ピクチャの表示時間をかけると１ピクチャの復号時間が求まる）を算出する。ここでは、ＭＰＥＧ２−ＴＳにおいて、表示及び復号の時間情報として、ＰＴＳ（Ｐｒｅｓｅｎｔａｔｉｏｎ  Ｔｉｍｅ  Ｓｔａｍｐ、提示時刻情報）とＤＴＳ（Ｄｅｃｏｄｉｎｇ  Ｔｉｍｅ  Ｓｔａｍｐ、復号時刻情報）が用いられている場合の復号制御部２００による処理方法を以下に示す。
【００４５】
復号制御部２００は、ストリーム処理部１００から与えられるビデオＰＥＳヘッダに含まれる提示時刻情報ＰＴＳ及び復号時刻情報ＤＴＳ、フレーム周期検出部２１０から与えられるフレーム周期Ｔ、及び、ストラクチャ検出部２２０から与えられるストラクチャ種別Ｓを用いて、符号化種別構成を検出し、該符号化種別構成に基づき、各ピクチャについて、ビデオデコーダ１３０の復号開始時刻Ｔｄｓ及び復号速度比Ｔｄｒを算出する。以下、その詳細な動作について、図６のフローチャートを用いて説明する。
【００４６】
まず、ステップＳ１００で、復号制御部２００は、パラメータｎ及びパラメータｆを０にセットする。パラメータｎは、処理を完了したフレーム数をカウントする変数であり、パラメータｆは、本実施形態における動画像復号処理時のメモリに対するアクセスで使用する帯域（すなわち、単位時間当たりのメモリアクセス量）を平準化する手法を用いるかどうか、つまり、ピクチャタイプにより差異の発生する、メモリアクセスに使用する帯域の平準化処理を行うかどうかを示す変数である。パラメータｆ＝０は前記帯域の平準化処理を行わないことを、パラメータｆ＝１は前記帯域の平準化処理を行うことを示す。また、パラメータｎは１フィールドを０．５フレームとしてカウントする。
【００４７】
続いて、ステップＳ１２０では、復号制御部２００が、ストリーム処理部１００から与えられたビデオＰＥＳヘッダＰ６００（図７に構成を示す）から、ＰＴＳ・ＤＴＳフラグＰ６４５を抽出し、提示時刻情報ＰＴＳ、復号時刻情報ＤＴＳの有無を検出し、その検出結果が、提示時刻情報ＰＴＳのみ「有り」であった場合は、提示時刻情報ＰＴＳＰ６６１を、提示時刻情報ＰＴＳ、復号時刻情報ＤＴＳ共に「有り」であった場合には、提示時刻情報ＰＴＳＰ６６１と復号時刻情報ＤＴＳＰ６６２とを抽出する。以下、図６のフローチャートの説明においては、特に断りがない限り、提示時刻情報ＰＴＳ、復号時刻情報ＤＴＳは、前記ステップＳ１２０で抽出した提示時刻情報ＰＴＳＰ６６１、復号時刻情報ＤＴＳＰ６６２を表すものとする。
【００４８】
次のステップＳ１３０では、復号制御部２００が、ストラクチャ検出部２２０から、ストラクチャ種別Ｓ及びストラクチャ種別の判定結果が確定したことを示す信号が送られてくるのを待つ。前記信号が送られてきたら、ステップＳ１４０へと進む。ステップＳ１４０では、復号制御部２００は、前記ステップＳ１２０における復号時刻情報ＤＴＳ有無の検出結果によって分岐処理を行う。復号時刻情報ＤＴＳが有った場合は、ステップＳ１５０へと進み、復号時刻情報ＤＴＳが無かった場合にはＳ２３０へと進む。ステップＳ１５０では、ピクチャ構成検出部２００は、前記抽出した提示時刻情報ＰＴＳ、復号時刻情報ＤＴＳ及びフレーム周期検出部２１０から送られてきたフレーム周期Ｔを用い、以下の式（２）により、デコードしたピクチャを何フレーム後に表示するかを示す値Ｍを算出し、ステップＳ１６０へと進む。
【００４９】
【数３】
2008141311.tif 000005
【００５０】
提示時刻情報ＰＴＳと復号時刻情報ＤＴＳは式（２）の演算結果が整数となるような値であるとは限らないため、そのような場合、値Ｍは、右辺の演算結果に最も近い整数を取るものとする。また、ストラクチャ種別Ｓがフィールドストラクチャである場合は、ｎ≠０でステップＳ１５０の処理が行われることがあるが、その場合は、Ｍは以前の値（ｎ＝０の時に算出した値を）をそのまま保持するようにしても良い。
【００５１】
この値Ｍの説明のために、まず、図８に、復号処理による遅延時間が０の、即ち、復号処理と同時に表示を行うことが可能である理想的なビデオデコーダにビデオＥＳが入力された時の、前記ビデオデコーダにより復号処理が行われる期間と復号結果が表示される期間を示す。なお、この図８では、提示時刻情報ＰＴＳと復号時刻情報ＤＴＳにより復号処理及び表示処理のタイミングが制御されていることを前提としている。上段のＴ７００〜Ｔ７２５は、各々、前記ビデオデコーダが入力されたビデオＥＳを１ピクチャ分復号処理する期間を示している。但し、Ｔ７００〜Ｔ７２５の示す期間は、復号処理に使用可能な期間であるということを示しているのであり、その期間全てを復号処理に使用しなければならないということではない。この復号処理期間Ｔ７００〜Ｔ７２５中の符号（Ｉ１、Ｂ２、Ｂ３、Ｐ４、Ｂ５、Ｂ６）は、アルファベットが復号処理中のピクチャ種別を示し、数字がその入力順を示す。
【００５２】
また、下段のＴ７３０〜Ｔ７５５は前記入力されたビデオＥＳの復号結果の表示期間を示しており、中の符号（Ｂ２、Ｂ３、Ｉ１、Ｂ５、Ｂ６、Ｐ４）は、上段のＴ７００〜Ｔ７２５内の符号と対応している。図の最下部に記されている符号ＤＴＳ１、ＤＴＳ４およびＰＴＳ１〜ＰＴＳ６は、数字部分の一致するピクチャに付けられている提示時刻情報ＰＴＳ、復号時刻情報ＤＴＳの値を表している。例えば、ＤＴＳ１は、ピクチャＩ１の復号時刻情報ＤＴＳを、ＰＴＳ２は、ピクチャＢ２の提示時刻情報ＰＴＳを表す。
【００５３】
従って、この図８から、前記値Ｍは、あるＰ（またはＩ）ピクチャの復号処理開始から（例えばＤＴＳ１）、表示開始まで（例えばＰＴＳ１）の時間をフレーム数で示していると同時に、あるＰ（またはＩ）ピクチャ（Ｉ１）から次のＰ（またはＩ）ピクチャ（Ｐ４）までのフレーム数を示しているとも言える。また、そのように考えると、値Ｍ−１はあるＰ（またはＩ）ピクチャから次のＰ（またはＩ）ピクチャまでの間のＢピクチャのフレーム数を示していると言える。
なお、図８は、ストラクチャ種別がフレームストラクチャの場合の処理タイミング図である。ストラクチャ種別がフィールドストラクチャの場合の処理タイミング図を考えると、図２３のようになる。この図２３から、フィールドストラクチャの場合は、前記値Ｍは、ある奇数フィールドのＰ（またはＩ）ピクチャ（Ｉ１）から次の奇数フィールドのＰ（またはＩ）ピクチャ（Ｐ７）までのフレーム数を示すことになるが、これをフレームを単位として考えると、値Ｍは、ＩまたはＰピクチャを構成要素とするフレームから次のＩまたはＰピクチャを構成要素とするフレームまでのフレーム数を示していることになり、フレームストラクチャの場合と同様に考えることが可能であることがわかる。また、値Ｍ−１も、フレームストラクチャの場合と同様に、あるＰ（またはＩ）ピクチャから次のＰ（またはＩ）ピクチャまでの間のＢピクチャのフレーム数を示していると言える。
そこで、式（２）で求めた値Ｍを、本実施形態におけるピクチャの構成（符号化種別構成）を示す値とし、以降、Ｐ−Ｐ間フレーム数と呼ぶこととする。
【００５４】
図６のフローチャートの説明に戻る。ステップＳ１６０では、復号制御部２００は、ステップＳ１５０で算出したＰ−Ｐ間フレーム数Ｍを、予め設定された所定の閾値Ｍｍａｘと比較し、Ｍ≦Ｍｍａｘであった場合には、ステップＳ１７０へ、Ｍ＞Ｍｍａｘであった場合には、ステップＳ２６０へ進む。ここでは、前記使用帯域の平準化処理を行うか否かの判定を行っている。前記Ｐ−Ｐ間フレーム数Ｍの値が大きくなると、Ｐ（またはＩ）ピクチャとＰ（またはＩ）ピクチャの間のＢピクチャ数が多くなるため、使用する帯域の最大値を下げる効果は低くなるのに対して、必要なバッファの量が増加する（詳細後述）というデメリットがあるため、前記使用帯域の平準化処理を行うか否かをＭｍａｘという閾値により判定する。従って、このステップＳ１６０は省略し（その場合、ステップＳ２６０も不要となる）、常にステップＳ１７０へ進むとしてもよい。
【００５５】
ステップＳ１７０では、復号制御部２００は、前記使用帯域の平準化処理を行う場合のＰ（またはＩ)ピクチャの復号開始時刻Ｔｄｓと復号速度比Ｔｄｒを算出する。それには、以下の式（３）、（４）を用いる。また、前記使用帯域の平準化を行うか否かを示す変数ｆに、平準化を行うことを表す「１」を設定する。
【００５６】
【数４】
2008141311.tif 000006
【００５７】
以下、式（３）、（４）の導出方法について説明する。本発明の目的は、動画像復号処理における、メモリ帯域使用量の最大値を抑えることにある。既に述べたように、ＭＰＥＧ２等の一般的な動画像符号化方式を用いた場合、動画を構成する静止画（＝ピクチャ）は、符号化のアルゴリズムによって、Ｉピクチャ、Ｐピクチャ、Ｂピクチャの３種類のピクチャに大別される。前記各ピクチャは、復号処理の際に参照するピクチャの枚数が異なり、Ｉピクチャは０枚、Ｐピクチャは最大１枚、Ｂピクチャは最大２枚のピクチャを参照する。加えて、一般的に、復号後のピクチャはそのデータ量の多さ故に、サイズの小さいローカルなメモリに置くことができず、システムが共有する大容量の共有メモリ（本実施形態では、メモリ４００）上に置かれることになる。
【００５８】
従って、復号処理時に使用されるシステムの共有メモリの帯域は、復号処理中のピクチャの種類によって異なることになり、Ｉピクチャ復号処理に使用する最大帯域（ピクチャ１枚を復号するのに発生するメモリアクセス量をそのピクチャ１枚を表示するのにかかる時間で割った値とする）（以下ＢＷｉと呼ぶ）と、Ｐピクチャ復号処理に使用する最大帯域（以下ＢＷｐと呼ぶ）と、Ｂピクチャ復号処理に使用する最大帯域（以下ＢＷｂと呼ぶ）との関係は、ＢＷｂ＞ＢＷｐ＞ＢＷｉとなる。従って、各ピクチャの復号処理時間の長さが同じとしている限り、使用する帯域はピクチャタイプによって差異が生じ、Ｂピクチャの場合に最大の使用帯域幅ＢＷｂとなるが、本発明では、各ピクチャの復号処理時間を各ピクチャの最大帯域の値（ＢＷｉ、ＢＷｐ、ＢＷｂ）に応じて変えることで復号処理時の使用帯域を平準化して、復号処理全体での使用する帯域の最大値を小さくする。以下、復号制御部２００で行われる、使用帯域を平準化するための復号処理時間の算出方法について説明する。
【００５９】
さて、Ｐ−Ｐ間フレーム数Ｍは、前記ステップＳ１５０で復号制御部２００により得られたので、これを用いれば、１フレーム分のＰ（またはＩ）ピクチャとＭ−１フレーム分のＢピクチャから構成されるＭフレーム分のピクチャを復号するときの使用帯域の合計ＢＷｔｏｔａｌは、以下の（５）式で表される。但し、本実施形態による方法では、Ｍフレーム分のピクチャに含まれる非ＢピクチャがＩピクチャであるか、Ｐピクチャであるかは判別できないため、非Ｂピクチャのピクチャ種別は、常にＩピクチャよりは使用帯域の多いＰピクチャとして扱うものとする。
【００６０】
【数５】
2008141311.tif 000007
【００６１】
前記Ｍフレーム分のピクチャの復号処理において、Ｍフレーム周期分の時間でＭフレーム分のピクチャの復号を完了することを条件として、使用帯域を平準化すると、平準化した使用帯域ＢＷａｖｅは、式（６）のようになる。
【００６２】
【数６】
2008141311.tif 000008
【００６３】
ここで、ＰピクチャとＢピクチャの復号における最大使用帯域が、図９に示されるような比率であると仮定する。即ち、Ｐピクチャでは、復号結果のメモリへの書き込みと参照画像１面のメモリからの読み出しで計２ピクチャ分の帯域を使用し、Ｂピクチャでは、復号結果のメモリへの書き込みと参照画像２面のメモリからの読み出しで計３ピクチャ分の帯域を使用するものとする。すると、前述の使用帯域ＢＷｐ、ＢＷｂの比は、ＢＷｐ：ＢＷｂ＝２：３である。なお、この使用する帯域の比率の仮定は一例であり、適用しようとする復号装置に適した比率とすれば良い。すると、前記式（６）は、式（７）と書ける。
【００６４】
【数７】
2008141311.tif 000009
【００６５】
式（７）は、復号に使用する帯域を平準化するためには、Ｐ（またはＩ）ピクチャの復号時の使用帯域、つまり、Ｐ（またはＩ）ピクチャの復号の速度を、１フレーム分の復号を１フレームの表示時間で復号する場合の（３Ｍ−１）／２Ｍ倍にする必要があることを意味する。また、Ｂピクチャの復号時の使用帯域、つまり、Ｂピクチャの復号の速度は、１フレーム分の復号を１フレームの表示時間で復号する場合の（３Ｍ−１）／３Ｍ倍にする必要があることを意味する。
【００６６】
これを図示したものが、図１０、図１１である。この図１０、図１１は、ストラクチャ種別がフレームストラクチャである場合、すなわち、１ピクチャ＝１フレームである場合を示した図である。従来の動画像復号処理、すなわち、１ピクチャを１フレーム周期で復号する場合における、ピクチャタイプ毎の帯域使用量と１ピクチャの復号処理時間を示したものが図１０であり、本実施形態の使用帯域を平準化する動画像復号処理における、ピクチャタイプ毎の帯域使用量と１ピクチャの復号処理時間を示したものが図１１である。
【００６７】
図１０に示すように、従来の動画像復号処理では、Ｐピクチャ、Ｂピクチャとも１フレーム周期Ｔ毎に復号処理を行うため、Ｐピクチャ復号時の使用帯域はＢＷｐであり、Ｂピクチャ復号時の使用帯域はＢＷｂである。これに対し、図１１に示すように、本実施形態の動画像復号処理では、従来の動画像復号処理に比べ、Ｐ（またはＩ）ピクチャでは、帯域使用量が（３Ｍ−１）／２Ｍ倍となる代わりに、復号に要する時間が２Ｍ／（３Ｍ−１）倍となり、Ｂピクチャでは、帯域使用量が（３Ｍ−１）／３Ｍ倍となる代わりに、復号に要する時間が３Ｍ／（３Ｍ−１）倍となる。なお、図１０、図１１では、ストラクチャ種別がフレームストラクチャとして説明したが、フィールドストラクチャの場合にも復号に要する時間の比率は、フレームストラクチャの場合と同じ式で表される。
【００６８】
ステップＳ１７０は、復号時刻情報ＤＴＳが存在する場合にのみ行われる処理である、つまり、Ｐ（またはＩ）ピクチャに対しての処理であるので、復号に要する時間は２Ｍ／（３Ｍ−１）倍となる。従って、復号速度比Ｔｄｒは、その逆数となり、式（４）で表されることになる。
【００６９】
次に、復号開始時刻Ｔｄｓが式（３）によって求められることを、図１２及び図１３を用いて説明する。図１２は、ストラクチャ種別Ｓがフレームストラクチャである場合の、従来及び本実施形態における動画像復号処理の動作タイミングを示す図であり、図１３は、ストラクチャ種別Ｓがフィールドストラクチャである場合の、従来及び本実施形態における動画像復号処理の動作タイミングを示す図である。両図とも、動画像復号処理にかかる時間は０とした場合の図である。
【００７０】
前記図１２及び図１３は、「デコーダ入力」、「従来復号処理」、「従来表示」、「本実施形態復号処理」、「本実施形態表示」の５段に分かれており、各処理のタイミングを示している。図８同様、図中の矩形は１ピクチャ分の処理を行っていることを意味し、矩形内部の符号は、１文字目のアルファベットがピクチャタイプを、２文字目の数字がピクチャの入力順を示している。図の最下部に記されているＤＴＳ１，ＰＴＳ２といった符号は、数字が一致するピクチャに付加された提示時刻情報ＰＴＳ、復号時刻情報ＤＴＳが指し示す時間である。
【００７１】
「デコーダ入力」は、ビデオデコーダに入力されるビデオＥＳを示している。この「デコーダ入力」は従来と本実施形態に共通のものである。「従来復号処理」は、従来のビデオデコーダに前述の「デコーダ入力」が入力された場合に、ピクチャが復号処理される様子を示している。「従来表示」は、従来のビデオデコーダにて前述の「従来復号処理」の処理が行われた場合に、ピクチャが表示処理される様子を示している。「本実施形態復号処理」は、本実施形態におけるビデオデコーダ１３０に前述の「デコーダ入力」が入力された場合に、ピクチャが復号処理される様子を示している。「本実施形態表示」は、本実施形態におけるビデオデコーダ１３０にて前述の「本実施形態復号処理」の処理が行われた場合に、ピクチャが表示処理される様子を示している。
【００７２】
図中の符号Ｔは、前記フレーム周期検出部２１０で検出されたフレーム周期Ｔを示している。また符号Ｅは、本実施形態のビデオデコーダ１３０において、復号処理がビデオＥＳの入力を追い越さないために必要とされる最低限の時間であり、復号開始時刻の遅延量を表す。つまり、本実施形態の復号装置１０００においては、この遅延時間Ｅで示される時間分のビデオＥＳ、オーディオＥＳを蓄積して復号処理の開始を遅延させるバッファが必要となり、そのバッファが、ビデオ位相調整バッファ１２０及びオーディオ位相調整バッファ１６０である。遅延時間Ｅの値は、式（８）で表される。つまり遅延時間Ｅは、Ｐ−Ｐ間フレーム数Ｍの最大値Ｍｍａｘの値によって最低限必要な値が決まる。
【００７３】
【数８】
2008141311.tif 000010
【００７４】
Ｐ−Ｐ間フレーム数Ｍに上限を設定しない場合は、Ｍｍａｘが無限大であることと同義なので、式（８）は、以下の式（９）のようになり、１／３フレーム時間以上であれば良いこととなる。
【００７５】
【数９】
2008141311.tif 000011
【００７６】
本発明の効果はＰ−Ｐ間フレーム数Ｍが大きくなることによって小さくなるため、Ｐ−Ｐ間フレーム数Ｍは適当に上限を設定した方が良い。例えば、Ｐ−Ｐ間フレーム数Ｍの上限を５と設定した場合には、Ｍｍａｘ＝５を式（８）に代入することにより、式（１０）が求まり、Ｅの値は、２／７フレームに相当する時間以上あれば良いことがわかる。
【００７７】
【数１０】
2008141311.tif 000012
【００７８】
前記遅延時間Ｅは、本実施形態の動画像復号システムのオーディオタイミング検出部１８０及び復号制御部２００に定数として供給される。
【００７９】
さて、ステップＳ１７０は、Ｐ（またはＩ）ピクチャに対しての処理であるので、図１２「本実施形態復号処理」の段のＩ１や図１３の「本実施形態復号処理」の段のＩ１、Ｐ２の処理タイミングを考える。これらの図からすると、Ｉ１の復号開始時刻は、Ｉ１の入力から遅延時間Ｅが経過した時点、つまり時刻ＤＴＳ１＋Ｅとなる。一方、Ｐ２の復号開始時刻は、元々Ｐ２の復号開始時刻として与えられているＤＴＳ２から、ｎ＝０の時の復号開始時刻、即ち、Ｉ１の復号開始時刻であるＤＴＳ１＋Ｅ（に相当する時刻）を求め、かつ、それに、Ｉ１の復号処理に要した時間を加算する必要がある。図１３におけるＰ２の復号開始時刻は、Ｐ２に与えられたＤＴＳ、つまりＤＴＳ２にＥを加算した上で、ＤＴＳ１とＤＴＳ２の差分に相当するｎ×Ｔ（＝Ｔ／２）を減じ、Ｐ（またはＩ）ピクチャの１フィールド分の復号処理に必要となる式（１１）にて表される時間を加算することになる。
【００８０】
【数１１】
2008141311.tif 000013
【００８１】
以上の内容を、あらゆるＰ（またはＩ）ピクチャに適用できるようにすると、復号開始時刻Ｔｄｓは、式（３）で表されることになる。
【００８２】
なお、ステップ１７０における復号開始時刻Ｔｄｓの算出方法としては、ｎ＝０の際の復号時刻情報ＤＴＳの値を記憶しておき、これを用いるという方法もある。この場合、前記ｎ＝０の時の復号時刻情報ＤＴＳの値をＤＴＳｉとすると、式（３）は式（３）’のようになる。
【００８３】
【数１２】
2008141311.tif 000014
【００８４】
ステップＳ１７０において、復号制御部２００による復号開始時刻Ｔｄｓと復号速度比Ｔｄｒの算出が完了したら、ステップＳ１７５へと進む。
【００８５】
一方、ステップＳ２６０では、復号制御部２００は、復号開始時刻Ｔｄｓと復号速度比Ｔｄｒを、以下の式（１２）、（１３）により算出する。これは、メモリ使用帯域の平準化を行わずに復号処理を行うことを表す。
【００８６】
【数１３】
2008141311.tif 000015
【００８７】
このとき、使用帯域の平準化を行うかどうかを示す変数ｆは０にする。
復号開始時刻Ｔｄｓが式（１２）のように遅延時間Ｅを加算した形となる点が従来システムと異なるが、これは、使用帯域を平準化する処理が行われる場合と行われない場合が、復号処理の途中で切り換わっても、復号処理を継続できるようにするためである。式（１２）、（１３）により、復号開始時刻Ｔｄｓ、復号速度比Ｔｄｒの算出が完了したら、ステップＳ１７５へと進む。
【００８８】
ここで、ステップＳ１４０で復号制御部２００が復号時刻情報ＤＴＳが存在しないと判定した場合のフローの説明に移る。ステップＳ２３０では、復号制御部２００は、使用帯域を平準化する処理を行うかどうかを示す変数ｆが０であるかどうかを判定する。ｆが０である場合、使用帯域を平準化する処理は行わないため、Ｓ２５０へ進み、ｆが１である場合は、使用帯域を平準化する処理を行うためにＳ２４０へと進む。
【００８９】
ステップＳ２４０では、復号制御部２００は、復号開始時刻Ｔｄｓと復号速度比Ｔｄｒを、以下の式（１４）、（１５）により算出する。
【００９０】
【数１４】
2008141311.tif 000016
【００９１】
以下、式（１４）、（１５）の導出方法について説明する。
式（１４）は、図１２、図１３から以下の式（１６）のように求められる。
【００９２】
【数１５】
2008141311.tif 000017
【００９３】
式（１６）の右辺の第１項から第３項は、基準の位置（ｎ＝０の時の復号処理開始位置ＤＴＳｉ＋Ｅに相当する）を決定する項である。また、第４項は、Ｐ（またはＩ）ピクチャの復号に要した時間を表す。第５項は、これまでに復号したＢピクチャの復号に要した時間を表している。式（１４）は、この式（１６）を変形したものである。
第１項と第３項の部分を、ｎ＝０の時のＤＴＳの値ＤＴＳｉを用いて置き換えることが可能なので、復号開始時刻Ｔｄｓは、式（１４）’のようにも書ける。
【００９４】
【数１６】
2008141311.tif 000018
【００９５】
式（１５）は、図１１に示したＢピクチャの復号処理時間から求めている。本実施形態の動画像復号処理では、Ｂピクチャでは、使用帯域が（３Ｍ−１）／３Ｍ倍となる代わりに、復号に要する時間が３Ｍ／（３Ｍ−１）倍となる。従って、本実施形態の動画像復号処理のＢピクチャにおける復号速度比Ｔｄｒは、前記復号に要する時間比の逆数となり、式（１５）で表されることになる。
【００９６】
ステップＳ２４０は、復号時刻情報ＤＴＳが存在しない場合にのみ行われる処理である、つまり、Ｂピクチャに対しての処理であるので、復号速度比Ｔｄｒは（１５）式で表されることになる。ステップＳ２４０において、復号制御部２００は、復号開始時刻Ｔｄｓと復号速度比Ｔｄｒの算出が完了したら、ステップＳ１７５へと進む。
ステップＳ２５０では、復号制御部２００は、復号開始時刻Ｔｄｓと復号速度比Ｔｄｒを、以下の式（１７）、（１８）により算出する。
【００９７】
【数１７】
2008141311.tif 000019
【００９８】
式（１７）、（１８）は、ステップＳ２５０が使用帯域の平準化を行わない場合の処理であるため、基本的には従来のシステムと同様の処理を行うことを示す式となっている。Ｔｄｓが式（１７）のようにＥを加算した形となる点が従来システムと異なるが、これは、ステップＳ２６０の処理の場合と同様に、使用帯域を平準化する処理が行われる場合と行われない場合が、復号処理の途中で切り換わっても、復号処理を継続できるようにするためである。式（１７）、（１８）により、復号開始時刻Ｔｄｓ、復号速度比Ｔｄｒの算出が完了したら、ステップＳ１７５へと進む。
【００９９】
ステップＳ１７５では、復号制御部２００は、表示開始時刻Ｔｐｓを以下の式（１９）から求め、ステップＳ１８０へと進む。式（１９）は、復号開始時刻Ｔｄｓが最大でＥだけ遅れることがあるため、表示開始時刻Ｔｐｓも少なくともＥだけ遅らせる必要があるということを意味している。
【０１００】
【数１８】
2008141311.tif 000020
【０１０１】
ステップＳ１８０では、復号制御部２００は、求めた復号開始時刻Ｔｄｓ、復号速度比Ｔｄｒ、表示開始時刻Ｔｐｓをタイミング制御部１９０へと出力し、ステップＳ１９０へと進む。ステップＳ１９０では、ステップＳ１３０で入手したストラクチャ種別Ｓの値に基づき復号制御部２００が分岐処理を行う。ストラクチャ種別Ｓがフレームストラクチャであった場合には、ステップＳ２００へと進み、フィールドストラクチャであった場合には、ステップＳ２１０へと進む。
【０１０２】
ステップＳ２００では、復号制御部２００は、フレーム数ｎに１を加算して、ステップＳ２２０へと進む。ステップＳ２１０では、復号制御部２００は、フレーム数ｎに０．５を加算して、ステップＳ２２０へと進む。ステップＳ２２０では、復号制御部２００は、フレーム数ｎの値によって条件分岐処理を行う。ｎ＝Ｍであれば、ステップＳ１００へ、それ以外の場合は、ステップＳ１２０へと進む。
復号制御部２００は、以上のようにして、算出した復号開始時刻Ｔｄｓ、復号速度比Ｔｄｒ及び表示開始時刻Ｔｐｓを、順次タイミング制御部１９０へと供給する。
【０１０３】
次に、オーディオタイミング検出部１８０は、式（２０）に示されるように、ストリーム処理部１００から与えられるオーディオＰＥＳヘッダに含まれる提示時刻情報ＰＴＳの値（ＰＴＳａとする）に前記遅延時間Ｅを加算することにより、オーディオの復号開始時刻Ｔｄｓａを算出し、このＴｄｓａをタイミング制御部１９０へと送る。
【０１０４】
【数１９】
2008141311.tif 000021
【０１０５】
但し、上述の復号制御部２００及びオーディオタイミング検出部１８０の説明においては、ビデオデコードとオーディオデコード間のシステム上発生する時間差Ｐａｖが０であるものとして述べている。前記Ｐａｖが０で無い場合については、ビデオの復号開始時刻Ｔｄｓまたはオーディオの復号開始時刻Ｔｄｓａに対し、前記Ｐａｖを加算もしくは減算する必要がある。
【０１０６】
タイミング制御部１９０は、ストリーム処理部１００から送られてきたＴＳヘッダから、パラメータＰＣＲ（Ｐｒｏｇｒａｍ  Ｃｌｏｃｋ  Ｒｅｆｅｒｅｎｃｅ）を抽出し、システム基準時間ＳＴＣ（Ｓｙｓｔｅｍ  Ｔｉｍｅ  Ｃｌｏｃｋ）の合わせ込みを行う。タイミング制御部１９０はまた、復号制御部２００から受け取った復号開始時刻Ｔｄｓと復号速度比Ｔｄｒを用いて、ビデオデコーダ（復号手段）１３０の動作タイミング制御を、表示開始時刻Ｔｐｓを用いてビデオデコーダ１３０の復号結果の出力タイミング制御を、オーディオタイミング検出部１８０から受け取ったオーディオ復号開始時刻Ｔｄｓａを用いて、オーディオデコーダ（第２の復号手段）１７０の動作タイミング（兼出力タイミング）の制御を行う。前記制御の手順について、以下説明する。
【０１０７】
タイミング制御部１９０は、復号制御部２００から受け取った復号開始時刻Ｔｄｓと復号速度比Ｔｄｒを、図１４に示すように両者を対応付けて記録するテーブルＡを持つ。前記復号開始時刻Ｔｄｓ及び復号速度比Ｔｄｒが復号制御部２００から送られてきたら、順次、前記テーブルＡ上に書き込む。そして、前記テーブルＡ上の復号開始時刻Ｔｄｓのうち、最初に格納されたＴｄｓの値が、タイミング制御部１９０内部でカウントされているＳＴＣの値と一致した（またはＳＴＣがＴｄｓの値を超えた）ことを検出したら、復号開始のトリガ信号と、前記検出に用いられたＴｄｓに対応した復号速度比Ｔｄｒの値を、ビデオデコーダ１３０に供給する。この処理が完了した時点で、前記検出に使用した復号開始時刻Ｔｄｓとそれに対応した復号速度比Ｔｄｒを前記テーブルＡから削除する。前記テーブルＡのサイズは、ビデオストリームバッファ１１０及びビデオ位相調整バッファ１２０に蓄積可能なビデオストリーム長に対し、最大付加され得る提示時刻情報ＰＴＳの個数以上が格納できるサイズであれば良い。
【０１０８】
一方で、タイミング制御部１９０は、復号制御部２００から受け取った表示開始時刻Ｔｐｓを記録するテーブルＢを持つ。前記表示開始時刻Ｔｐｓが復号制御部２００から送られてきたら、既にテーブルＢ上の書き込まれている全ての表示開始時刻Ｔｐｓを読み出し、前記送られてきた表示開始時刻Ｔｐｓを含めた全ての表示開始時刻Ｔｐｓを昇順にソートし直して、前記テーブルＢ上に書き込む。そして、前記テーブルＢ上に格納されている表示開始時刻Ｔｐｓのうち、先頭に格納された、即ち、最も小さい値を持つＴｐｓの値が、タイミング制御部１９０内部でカウントされているＳＴＣの値と一致した（またはＳＴＣがＴｐｓの値を超えた）ことを検出したら、表示開始のトリガ信号をフレームバッファ１４０に送る。この処理が完了した時点で、前記検出に使用した表示開始時刻Ｔｐｓを前記テーブルＢから削除する。前記テーブルＢのサイズは、ビデオストリームバッファ１１０及びビデオ位相調整バッファ１２０に蓄積可能なビデオストリーム長に対し、最大付加され得る提示時刻情報ＰＴＳの個数以上が格納できるサイズであれば良い。
【０１０９】
また、タイミング制御部１９０は、オーディオタイミング検出部１８０から受け取ったオーディオ復号開始時刻Ｔｄｓａを記録するテーブルＣを持つ。前記オーディオ復号開始時刻Ｔｄｓａがオーディオタイミング検出部１８０から送られてきたら、順次、前記テーブルＣ上に書き込む。そして、前記テーブルＣ上に格納されているオーディオ復号開始時刻Ｔｄｓａのうち、最初に格納されたＴｄｓａの値が、タイミング制御部１９０内部でカウントされているＳＴＣの値と一致した（またはＳＴＣがＴｄｓａの値を超えた）ことを検出したら、デコード開始のトリガ信号をオーディオデコーダ１７０に送る。この処理が完了した時点で、前記検出に使用した復号開始時刻ＴｄｓａをテーブルＣから削除する。前記テーブルＣのサイズは、オーディオストリームバッファ１５０及びオーディオ位相調整バッファ１６０に蓄積可能なオーディオストリーム長に対し、最大付加され得る提示時刻情報ＰＴＳの個数以上が格納できるサイズであれば良い。タイミング制御部１９０は、上記動作を繰り返すことにより、ビデオデコーダ１３０、オーディオデコーダ１７０及びフレームバッファ１４０のタイミング制御を行う。
【０１１０】
ビデオデコーダ１３０は、タイミング制御部１９０からの復号開始時刻Ｔｄｓに基づくトリガ信号により、１ピクチャ分のビデオ復号処理を開始する。ビデオ位相調整バッファ１２０に蓄積されたビデオストリームを順次読み出し、復号し、その結果をフレームバッファ１４０に出力する。その復号処理速度は、タイミング制御部１９０から与えられる復号速度比Ｔｄｒの値により制御される。
【０１１１】
前記ビデオデコーダ１３０の前記復号速度比Ｔｄｒによる復号処理速度の変更の方法としては、様々な方法が考えられるが、ＭＰＥＧ２により符号化されたストリームを復号する場合の例を幾つか以下に述べる。
第一にある単位毎の処理の間隔を変更する方法がある。ＭＰＥＧ２の復号処理はマクロブロック単位やブロック単位での復号処理の繰り返し処理と見做せるので、マクロブロックやブロックの処理の間隔を制御することにより、結果として１ピクチャの処理時間を制御することが可能である。そして、前記復号速度比Ｔｄｒは、１ピクチャの表示時間を１ピクチャの復号時間で割った値であると同時に、１単位の表示に要する時間（１ピクチャの表示時間をピクチャを構成する１単位（マクロブロック、ブロック等）の数で割った値）を、ピクチャを構成するある１単位（マクロブロック、ブロック等）の復号時間で割った値でもある。図１５は処理速度の変更方法の基本的な考え方を示した図である。図中のマクロブロック処理間隔Ｔｍｂは、復号速度比Ｔｄｒ＝１、即ち、１ピクチャ分の復号処理を１ピクチャ分の表示時間で行う場合において、１マクロブロックの復号処理に使用可能な時間を示している（全てのマクロブロックに同じ処理時間を与える場合）。例えば、１ピクチャが１９２０ドット×１０８８ドットで３０フレーム／秒のＨＤ（High Definition）動画の場合のマクロブロック処理間隔Ｔｍｂは、１／３０秒で８１６０個のマクロブロックを処理する必要があるので、式（２１）より、約４．０８μｓとなる。
【０１１２】
【数２０】
2008141311.tif 000022
【０１１３】
また、図中の矩形は、本実施形態のビデオデコーダ１３０が、１マクロブロックの復号処理に要する時間であるマクロブロック処理時間Ｔｍｂｒを示している。入力されたストリームを復号できるためには、前記マクロブロック処理時間Ｔｍｂｒは、前記入力されたストリームのマクロブロック処理間隔Ｔｍｂよりも短い時間である必要があるが、さらに本実施形態においては、前記マクロブロック処理時間Ｔｍｂｒは、後述するように、復号速度比Ｔｄｒに反比例してマクロブロック処理間隔Ｔｍｂが短縮／延長されることがあるため、その短縮／延長された時間よりも短い時間でなければならない、即ち、式（２２）の条件を満たす必要がある。
【０１１４】
【数２１】
2008141311.tif 000023
【０１１５】
さて、ＰピクチャとＢピクチャの最大で使用する帯域の比がほぼ２：３であり、Ｐ−Ｐ間フレーム数Ｍの値に前記Ｍｍａｘによる制約がないとする時、本実施形態におけるマクロブロック処理時間Ｔｍｂｒに必要とされる条件を考えてみる。すると、次の式（２３）から、Ｔｍｂｒ≦２Ｔｍｂ／３が必要であることになる。
【０１１６】
【数２２】
2008141311.tif 000024
【０１１７】
以下では、上記の条件は成立するということを前提に、ビデオデコーダ１３０が、マクロブロック毎の復号処理の間隔を調整して、復号処理速度の変更を行う方法を述べる。ビデオデコーダ１３０は、まず、入力されたビデオＥＳのシーケンスヘッダ（図４参照）内のパラメータｈｏｒｉｚｏｎｔａｌ＿ｓｉｚｅ＿ｖａｌｕｅ及びｈｏｒｉｚｏｎｔａｌ＿ｓｉｚｅ＿ｅｘｔｅｎｓｉｏｎから水平方向画像サイズＨＳを、ｖｅｒｔｉｃａｌ＿ｓｉｚｅ＿ｖａｌｕｅ及びｖｅｒｔｉｃａｌ＿ｓｉｚｅ＿ｅｘｔｅｎｓｉｏｎから、垂直方向画像サイズＶＳを求め、前記水平方向画像サイズＨＳ、垂直方向画像サイズＶＳから、式（２４）により、１フレーム内のマクロブロック数ＭＢを算出する。
【０１１８】
【数２３】
2008141311.tif 000025
【０１１９】
また、ビデオデコーダ１３０は、前記ビデオＥＳのシーケンスヘッダからフレームレートＦｄを、ピクチャヘッダからストラクチャ種別Ｓｄを求め（フレーム周期検出部２１０及びストラクチャ検出部２２０において、フレームレートＦとストラクチャ種別Ｓを検出するのと同等の処理）、１ピクチャの復号に１ピクチャの表示時間を使用する場合の１マクロブロック当たりに割り当てられるマクロブロック処理間隔Ｔｍｂを算出する。ストラクチャ種別Ｓｄがフレームストラクチャを示す場合は、マクロブロック処理間隔Ｔｍｂは式（２５）で表され、ストラクチャ種別Ｓｄがフィールドストラクチャを示す場合は、マクロブロック処理間隔Ｔｍｂは式（２６）で表される。
【０１２０】
【数２４】
2008141311.tif 000026
【０１２１】
最終的に、ビデオデコーダ１３０は、式（２５）または式（２６）により得られたマクロブロック処理間隔Ｔｍｂと、前記復号速度比Ｔｄｒを用いて、次式（２７）により、マクロブロック処理時間Ｔｍｂｖを求め、１マクロブロックの処理を、このマクロブロック処理時間Ｔｍｂｖ毎に行うことにより、復号処理の速度、即ち、１ピクチャの復号にかかる時間の制御を行う。
【０１２２】
【数２５】
2008141311.tif 000027
【０１２３】
図１５には、復号速度比Ｔｄｒの値が１、４／３、５／６の時のマクロブロックの復号処理の様子が示されている。以上、マクロブロックの処理時間を変更することにより、ビデオデコーダ１３０による復号処理速度を変更方法する第一の方法について述べた。
【０１２４】
前記第一の方法をブロック処理に適用することにより、ブロックの処理間隔を変更し、復号処理速度を変更することも同様に可能である。これが復号処理速度を変更する第二の方法である。第三の復号処理速度を変更する方法として、ビデオデコーダ１３０の動作クロックを復号速度比Ｔｄｒに比例させる方法がある。無段階にクロック周波数を変更する方法、予め用意しておいた何種類かのクロック周波数を復号速度比Ｔｄｒに応じて段階的に切り換える方法等が考えられる。
【０１２５】
フレームバッファ１４０は、タイミング制御部１９０から復号開始時刻Ｔｐｓに基づくトリガ信号を受け取ると、ビデオデコーダ１３０により書き込まれた復号ビデオストリームのうち最も出力順が早いピクチャを出力する。ピクチャ出力順は各ピクチャに対応する提示時刻情報ＰＴＳの値によって決定される。その具体的な方法については、本発明に特有の要素ではないためここでは言及しない。出力結果は、表示処理部５００に供給される。
【０１２６】
オーディオデコーダ１７０は、復号開始時刻Ｔｄｓａに基づくタイミング制御部１９０からのトリガ信号により、１アクセスユニット分（提示時刻情報ＰＴＳ１個分）の復号処理を開始する。オーディオ位相調整バッファ１６０に蓄積されたオーディオＥＳを順次読み出し、復号し、その復号結果を音声出力装置７００に出力する。
【０１２７】
以上、入力されるデータ列が、ＭＰＥＧ２−ＴＳの場合についての本発明の処理手順について説明したが、他の符号化方式により符号化されたデータ列や他のフォーマットのデータ列であっても、Ｐ（またはＩ）ピクチャとＢピクチャがデータ列中でどのように配置されているかを算出するためのパラメータ（Ｐ−Ｐ間フレーム数Ｍを算出可能な提示時刻情報ＰＴＳ、復号時刻情報ＤＴＳのようなパラメータ）、フレーム周期Ｔを算出するためのパラメータ、ストラクチャ構造Ｓ（フレーム構造かフィールド構造か）を判定することができるデータ列であれば、本実施形態と同様な処理を行うことにより、少ない遅延時間（本実施形態では最大でフレーム周期Ｔ／３）で、ビデオデコーダが使用する帯域（すなわち、単位時間当たりのデータ転送量）の時間方向の平準化を図り、メモリ４００、バス９００の最大使用帯域を少なく抑えることができる。これにより。メモリ４００、バス９００に要求される性能が抑えられ、コスト低下が可能となる。また、ユーザ操作などの外部からのイベントに対する処理をＣＰＵ３１０が行う際に、ビデオデコーダ１３０の使用帯域に圧迫されて発生する処理遅延を抑えることができる。
【０１２８】
例えば、ＭＰＥＧ２−ＰＳ（Program Stream）の場合、以下の２点を変更することにより、本実施形態と同様のシステムが実現できる。１）ストリーム処理部１００からタイミング制御部１９０へは、ＴＳヘッダの代わりにＰＳパックヘッダを送る。２）タイミング制御部１９０は、ＴＳヘッダ内のパラメータＰＣＲの代わりにＰＳパックヘッダ内のパラメータＳＣＲ（Ｓｙｓｔｅｍ  Ｃｌｏｃｋ  Ｒｅｆｅｒｅｎｃｅ）により、システム基準時間ＳＴＣの合わせ込みを行う。
【０１２９】
［第２の実施形態］
以下、本発明の第２の実施形態について、図１６乃至図１９、図４、図７、図１４を用いて詳細に説明する。図１６は、本実施形態による復号装置であるデジタルＴＶ１００１の構成を示した概略ブロック図である。同図において、図１の各部に対応する部分には同一の符号を付け、その説明を省略する。１４００は、入力されたストリームをビデオストリーム、オーディオストリーム、セクション等に分類し、それぞれメモリ４０１へと書き込むストリーム処理部である。３０１は、ビデオデコーダ１３０およびオーディオデコーダ１７０の復号速度比および復号開始時刻と、ビデオデコーダ１３０による復号結果の表示開始時刻を求める制御部である。
【０１３０】
図１７は、図１６のデジタルＴＶ１００１から復号処理に関連した構成を抜き出し、復号処理手順に準じた配置を示した概略ブロック図である。なお、図１７においては、ストリーム処理部１４００、メモリ４０１、制御部３０１、ビデオデコーダ（復号手段）１３０、オーディオデコーダ（第２の復号手段）１７０、表示処理部５００、ＣＰＵ３１０の間を接続するバス９００は図示を省略する。
図１７に示した装置を図１６に適用する場合、メモリ４０１は、ビデオストリームバッファ１１０、解析待ち用ビデオバッファ１４１０、フレームバッファ１４０、オーディオストリームバッファ１５０、解析待ち用オーディオバッファ１４２０を含む。制御部３０１は、オーディオタイミング検出部１８０、タイミング制御部１９０、フレーム周期検出部２１０、ストラクチャ検出部２２０、ピクチャタイプ検出部１４３０、シーケンス変化検出部１４５０、復号制御部（復号制御手段）１４４０、ＦＩＦＯ１４６０を備える。
【０１３１】
以下、図１７を参照して、入力された多重ストリーム（ＭＰＥＧ２−ＴＳ（Transport Stream））を処理する手順を説明する。ストリーム処理部１４００は、前記入力されたＭＰＥＧ２−ＴＳからビデオＥＳ、オーディオＥＳ、ＴＳヘッダ、ビデオＰＥＳヘッダ、オーディオＰＥＳヘッダを抽出し、ビデオＥＳをビデオストリームバッファ１１０、フレーム周期検出部２１０、ストラクチャ検出部２２０、ピクチャタイプ検出部１４３０、シーケンス変化検出部１４５０へ、オーディオＥＳをオーディオストリームバッファ１５０へ、ＴＳヘッダをタイミング制御部１９０へ、ビデオＰＥＳヘッダを復号制御部１４４０へ、オーディオＰＥＳヘッダをオーディオタイミング検出部１８０へと分配する。
【０１３２】
ビデオストリームバッファ１１０、オーディオストリームバッファ１５０は、第１の実施形態と同様に、ビデオＥＳ及びオーディオＥＳの入出力の速度の違いを吸収するためのバッファである。解析待ち用ビデオバッファ１４１０及び解析待ち用オーディオバッファ１４２０は、復号制御部１４４０が、後述する入力ビデオＥＳのピクチャの構成を検出するのに要する時間分のビデオＥＳまたはオーディオＥＳを一時的に貯めておくためのバッファである。
【０１３３】
ビデオストリームバッファ１１０に入力されたビデオＥＳは、解析待ち用ビデオバッファ１４１０に空きがある限り、順次、解析待ち用ビデオバッファ１４１０に移動させられる。図１７では、利用目的の違いを明確にする目的で、ビデオストリームバッファ１１０と解析待ち用ビデオバッファ１４１０を個別に設けているが、両者を一つのバッファにまとめた構成としてもよい。オーディオストリームバッファ１５０と解析待ち用オーディオバッファ１４２０の関係も、前記ビデオストリームバッファ１１０と解析待ち用ビデオバッファ１４１０の関係と同様である。オーディオストリームバッファ１５０に入力されたオーディオストリームは、解析待ち用オーディオバッファ１４２０に空きがある限り、順次解析待ち用オーディオバッファ１４２０へと移動させられる。また、オーディオストリームバッファ１５０と解析待ち用オーディオバッファ１４２０を一つのバッファにまとめた構成としてもよい。
【０１３４】
フレーム周期検出部２１０の動作は、第１の実施形態と同様である。但し、検出結果のフレーム周期Ｔは、復号制御部１４４０へと送られる。ストラクチャ検出部２２０の動作も、第１の実施形態と同様である。検出結果のストラクチャ種別Ｓは、復号制御部１４４０へと送られる。ピクチャタイプ検出部１４３０は、ストリーム処理部１４００から与えられるビデオＥＳからピクチャタイプ（Ｉピクチャ、Ｐピクチャ、Ｂピクチャのいずれであるかを示すパラメータ）を検出する。図４に示したＭＰＥＧ２ビデオＥＳの第三層、ピクチャ層のピクチャヘッダ内には、ピクチャタイプを示すパラメータｐｉｃｔｕｒｅ＿ｃｏｄｉｎｇ＿ｔｙｐｅが含まれるため、このパラメータを検出する。前記検出結果（ＰＴとする）は、復号制御部１４４０へと送られる。
【０１３５】
シーケンス変化検出部１４５０は、ストリーム処理部１４００から与えられるビデオＥＳのシーケンスヘッダ（図４の第一層）内のパラメータのうち、画像のサイズやフレームレート、色差フォーマット等、ビデオデコーダ１３０の復号処理においてメモリの使用帯域に影響を及ぼすパラメータ値に変化があったかどうかを検出する。変化があった場合には、その旨を示す信号を復号制御部１４４０へと送る。復号制御部１４４０は、ストリーム処理部１４００から与えられるビデオＰＥＳヘッダに含まれるＰＴＳとＤＴＳ、フレーム周期検出部２１０から与えられるフレーム周期Ｔ、ストラクチャ検出部２２０から与えられるストラクチャ種別Ｓ、ピクチャタイプ検出部１４３０から与えられるピクチャタイプＰＴを用いて、復号開始時刻Ｔｄｓ、復号速度比Ｔｄｒ及び表示開始時刻Ｔｐｓを算出する。以下、その詳細な動作について、図１８のフローチャートを用いて説明する。
【０１３６】
復号制御部１４４０は、動作開始後、まずステップＳ１５００で、パラメータｔ及びパラメータｋを０にセットする。パラメータｔは時間を示すパラメータであり、ステップＳ１５００で０にセットされた後は、図１８の処理フローとは別個に、時間の経過に同期してカウントアップされる。このパラメータには、例えば同期カウンタの出力を用いる。パラメータｋは、フレーム数をカウントする変数である。１フィールドは０．５フレームとしてカウントされる。
【０１３７】
ステップ１５０５では、復号制御部１４４０は、ストリーム処理部１４００から与えられたビデオＰＥＳヘッダ（図７、６００）から、ＰＴＳ・ＤＴＳフラグ（図７、６４５）を抽出して提示時刻情報ＰＴＳ、復号時刻情報ＤＴＳの有無を検出し、その検出結果が、提示時刻情報ＰＴＳのみ有りであった場合は、提示時刻情報ＰＴＳ（図７、６６１）を、提示時刻情報ＰＴＳ、復号時刻情報ＤＴＳ共に有りであった場合には、復号時刻情報ＤＴＳ（図７、６６２）を抽出し、ＦＩＦＯ１４６０に書き込む。ここで書き込んだものを以下デコード開始基準時刻ＤＢＴと呼ぶこととする。また、ＰＴＳ・ＤＴＳフラグの検出結果にかかわらず、提示時刻情報ＰＴＳを抽出し、この提示時刻情報ＰＴＳをＦＩＦＯ１４６０に書き込む。ここで書き込んだ提示時刻情報ＰＴＳを以下表示開始基準時刻ＰＢＴと呼ぶこととする。
【０１３８】
続くステップＳ１５１０では、復号制御部１４４０は、ピクチャタイプ検出部１４３０からピクチャタイプＰＴが送られてくるのを待ち、送られてきたピクチャタイプＰＴを、ＦＩＦＯ１４６０に書き込む。ステップＳ１５２０では、復号制御部１４４０は、ストラクチャ検出部２２０からストラクチャ種別Ｓが送られてくるのを待ち、送られてきたストラクチャ種別ＳをＦＩＦＯ１４６０に書き込む。ここでは、デコード開始基準時刻ＤＢＴ、表示開始基準時刻ＰＢＴ、ピクチャタイプＰＴ、ストラクチャ種別Ｓを個別にＦＩＦＯ１４６０に書き込むように述べているが、これらを一つにまとめてＦＩＦＯ１４６０に書き込むようにしても良い。また、一つのＦＩＦＯではなく、各々に専用のＦＩＦＯバッファを用意してもよい。
【０１３９】
次のステップＳ１５３０では、復号制御部１４４０は、前記ストラクチャ種別Ｓの値によって、分岐処理を行う。即ち、ストラクチャ種別Ｓがフレームストラクチャを示す場合には、ステップＳ１５４０へ進み、フィールドストラクチャを示す場合には、ステップＳ１５５０へと進む。ステップＳ１５４０では、復号制御部１４４０は、フレーム数ｋに１を加算し、ステップＳ１５６０へと進む。ステップＳ１５５０では、復号制御部１４４０は、フレーム数ｋに０．５を加算し、ステップＳ１５６０へと進む。ステップＳ１５６０では、復号制御部１４４０は、シーケンス変化検出部１４５０から信号が送られてきたかどうか、つまりビデオＥＳのシーケンスヘッダのパラメータに、ビデオデコーダ１３０の復号処理において使用する帯域に影響を与えるような変化があったかどうかによって、分岐処理を行う。信号が送られてきていた（変化があった）場合には、ステップＳ１５８０へ進み、信号が送られてきていなかった（変化がなかった）場合には、ステップＳ１５７０へと進む。ステップＳ１５７０では、復号制御部１４４０は、パラメータｔの値が一定の基準値を超えているかどうかの判定を行い、分岐処理を行う。この判定は、以下の式（２８）により行う。
【０１４０】
【数２６】
2008141311.tif 000028
【０１４１】
ここで、Ｄは、本実施形態におけるシステムのストリーム入力からデコード開始までに許容される最大遅延時間を示している。これは、解析待ち用ビデオバッファ１４１０または解析待ち用オーディオバッファ１４２０にビデオＥＳまたはオーディオＥＳを蓄積し続けることのできる時間、即ち、復号制御部１４４０が、動画像復号処理に使用する帯域を平準化するために使用するピクチャタイプを収集することのできる最大の時間を示す。従って、Ｄは、解析待ち用ビデオバッファ１４１０の容量と入力ビデオストリームの最大ビットレートまたは解析待ち用オーディオバッファ１４２０の容量と入力オーディオストリームの最大ビットレートによって決まる。
【０１４２】
ところで、式（２８）は、前記解析待ち用ビデオバッファ１４１０または前記解析待ち用オーディオバッファ１４２０に、次のピクチャのパラメータを取るだけの容量が残っているか否かの判定を行うための式である。つまり、ステップＳ１５０５に戻って、次のピクチャに対する処理を行うには、少なくともビデオストリーム１ピクチャ分の容量が、前記解析待ち用ビデオバッファ１４１０及び前記解析待ち用オーディオバッファ１４２０に確保できている状態でないとならない。式（２８）のαは、このビデオストリーム１ピクチャ分の容量が残っているかどうかの指標となる値とする。予めシステムで扱うことになる最大値（固定値）をαとしても良いし、フレーム周期Ｔから随時ビデオストリーム１ピクチャ分の容量を演算してαとしても良い。
【０１４３】
パラメータｔが式（２８）を満たす場合にはステップＳ１５８０へと進み、そうでない場合にはステップＳ１５０５へと戻る。ステップＳ１５８０では、復号制御部１４４０は、前記ＦＩＦＯ１４６０に蓄積されたｋフレーム分のデコード開始基準時刻ＤＢＴ、表示開始基準時刻ＰＢＴ、ピクチャタイプＰＴ、ストラクチャタイプＳを全て読み出す。その際、読み出した数（＝ピクチャの枚数）ｐを計数しておく。以下では、読み出した（＝書き込んだ）順番ｊ（ｊは１以上ｐ以下の整数）を用いて、デコード開始基準時刻をＤＢＴ［ｊ］、表示開始基準時刻をＰＢＴ［ｊ］、ピクチャタイプをＰＴ［ｊ］、ストラクチャタイプをＳ［ｊ］と表記する。
【０１４４】
続くステップＳ１５９０では、復号制御部１４４０は、ステップＳ１５８０で読み出したｋフレーム分のピクチャタイプＰＴ［ｊ］及びストラクチャタイプＳ［ｊ］から、Ｉピクチャ、Ｐピクチャ、Ｂピクチャのフレーム数、ｋｉ、ｋｐ、ｋｂを算出する。ストラクチャタイプＳがフレームストラクチャの場合は、１ピクチャを１フレーム分と計数し、ストラクチャタイプＳがフィールドストラクチャの場合は、１ピクチャを０．５フレーム分と計数する。ｋｉ、ｋｐ、ｋｂとｋの関係は、式（２９）のようになる。
【０１４５】
【数２７】
2008141311.tif 000029
【０１４６】
Ｓ１６００では、復号制御部１４４０は、前記ｋｉ、ｋｐ、ｋｂ、ｋからＩピクチャ、Ｐピクチャ、Ｂピクチャの復号速度比Ｔｄｒｉ、Ｔｄｒｐ、Ｔｄｒｂを式（３０）〜（３２）により算出する。
【０１４７】
【数２８】
2008141311.tif 000030
【０１４８】
ここで、前記式（３０）〜（３２）の導出方法について説明する。第１の実施形態でも述べたように、Ｉピクチャ、Ｐピクチャ、Ｂピクチャは、復号処理の際に参照可能なピクチャの枚数が異なり、Ｉピクチャは０枚、Ｐピクチャは最大１枚、Ｂピクチャは最大２枚のピクチャを参照可能である。それ故、各ピクチャの復号処理時間を１フレーム周期Ｔとしたときには、３種のピクチャは復号時におけるメモリの使用帯域が異なり、Ｉピクチャが復号時に使用する最大帯域ＢＷｉ、Ｐピクチャが復号時に使用する最大帯域ＢＷｐ、Ｂピクチャが復号時に使用する最大帯域ＢＷｂの関係は、ＢＷｂ＞ＢＷｐ＞ＢＷｉとなる。従って、ｋフレーム分のピクチャの平均最大使用帯域ＢＷａｖｅは、式（３３）のように表される。
【０１４９】
【数２９】
2008141311.tif 000031
【０１５０】
ここで、Ｉピクチャ、Ｐピクチャ、Ｂピクチャの最大使用帯域が、図９に示されるような比率であると仮定する。即ち、Ｉピクチャでは、復号結果のメモリへの書き込みで計１ピクチャ分の帯域を使用し、Ｐピクチャでは、復号結果のメモリへの書き込みと参照画像１面の読み出しで計２ピクチャ分の帯域を使用し、Ｂピクチャでは、復号結果のメモリへの書き込みと参照画像２面の読み出しで計３ピクチャ分の帯域を使用するものと仮定すると、ＢＷｉ：ＢＷｐ：ＢＷｂ＝１：２：３となる。なお、この仮定はあくまでも一例であり、適用しようとする動画像復号システムに適した比率とすれば良い。すると、前記式（３３）は、式（３４）〜（３６）のように書ける。
【０１５１】
【数３０】
2008141311.tif 000032
【０１５２】
全てのピクチャの復号処理における最大使用帯域をＢＷａｖｅにしようとする場合、その復号速度比は、使用帯域に比例させれば良い。従って、前記各ピクチャの復号速度比Ｔｄｒｉ、Ｔｄｒｐ、Ｔｄｒｂは、式（３０）〜（３２）のようになる。
【０１５３】
ステップＳ１６１０では、ステップＳ１５８０において読み出した値から、復号開始時刻Ｔｄｓ［ｊ］と復号速度比Ｔｄｒ［ｊ］（ｊは１以上ｐ以下の整数）を求める。Ｔｄｒ［ｊ］はｊ枚目のピクチャの復号速度比を表し、ＰＴ［ｊ］が示すｊ枚目のピクチャのピクチャタイプに合わせて、Ｔｄｒｉ、Ｔｄｒｐ、Ｔｄｒｂの何れかが代入される。また、ｊ枚目のピクチャの復号開始時刻Ｔｄｓ［ｊ］は、ｊ＝１の場合は式（３７）で、ｊ≧２の場合は式（３８）で求める。
【０１５４】
【数３１】
2008141311.tif 000033
【０１５５】
なお、Ｄは前述した通り、ストリーム入力からデコード開始までに供される最大遅延時間を示し、Ｔはフレーム周期検出部２１０から与えられるフレーム周期Ｔを示す。
ここで、ステップＳ１６００及びステップＳ１６１０における復号制御部１４４０の具体的な処理内容について、図１９を用いて説明する。図１９における矩形内の符号については、Ｉ１はＩピクチャを、Ｐ４はＰピクチャを、Ｂ２、Ｂ３、Ｂ５、Ｂ６はＢピクチャを示している。なお、前記符号の数字部は、ピクチャの入力順を示している。また、最下段に示されているＤＴＳ１、ＰＴＳ２等の符号は、数字部が一致する各ピクチャに付けられている復号時刻情報ＤＴＳや提示時刻情報ＰＴＳが示す時刻を表している。図１９においては、Ｄ＝４Ｔのシステムを想定しており、ピクチャＩ１からピクチャＰ４の４フレーム分（ｋ＝４）のパラメータを用いて、復号開始時刻Ｔｄｓ［ｊ］、復号速度比Ｔｄｒ［ｊ］が求められる場合を考える。この時、Ｉピクチャ１フレーム分（ｋｉ＝１）、Ｐピクチャ１フレーム分（ｋｐ＝１）、Ｂピクチャ２フレーム分（ｋｂ＝２）である。各ピクチャ種別毎の復号速度比Ｔｄｒｉ、Ｔｄｒｐ、Ｔｄｒｂは、式（３０）〜（３２）により、以下の式（３９）〜（４１）のようになる。
【０１５６】
【数３２】
2008141311.tif 000034
【０１５７】
最初のピクチャＩ１のデコード開始基準時刻ＤＢＴ［１］は、図１９からわかるように、ＤＴＳ１であるので、Ｉ１の復号開始時刻Ｔｄｓ［１］は、式（３７）より、式（４２）のようになる。
【０１５８】
【数３３】
2008141311.tif 000035
【０１５９】
以下、ピクチャＢ２、Ｂ３、Ｐ４の復号開始時刻Ｔｄｓ［２］〜Ｔｄｓ［４］は、式（３８）から各々式（４３）〜式（４５）のようになる。
【０１６０】
【数３４】
2008141311.tif 000036
【０１６１】
全ての復号開始時刻Ｔｄｓ［ｊ］と復号速度比Ｔｄｒ［ｊ］を算出したら、ステップＳ１６１５に進む。
ステップＳ１６１５では、復号制御部１４４０は、ステップＳ１５８０において読み出した値から、表示開始時刻Ｔｐｓ［ｊ］（ｊは１以上ｐ以下の整数）を式（４６）により求める。
【０１６２】
【数３５】
2008141311.tif 000037
【０１６３】
全ての表示開始時刻Ｔｐｓ［ｊ］を算出したら、ステップＳ１６２０へと進む。
ステップＳ１６２０では、復号制御部１４４０は、ステップＳ１６１０及びステップＳ１６１５で得られた、復号開始時刻Ｔｄｓ［ｊ］と復号速度比Ｔｄｒ［ｊ］を１組にして、ｊ＝１からｐまで、順番にタイミング制御部１９０へと出力する。また、１〜ｐまでの表示開始時刻Ｔｐｓ［ｊ］を、順にタイミング制御部１９０へと出力する。両者共ｐまでの出力が完了したら、ステップＳ１５００へと戻る。
【０１６４】
オーディオタイミング検出部１８０は、基本的には第１の実施形態と同様の動作をするが、ストリーム入力からデコード開始までの遅延時間が第１の実施形態とは異なるため、オーディオの復号開始時刻Ｔｄｓａは、式（４７）に示されるものとなる。オーディオの提示時刻ＰＴＳａは、ストリーム処理部１４００から与えられるオーディオＰＥＳヘッダに含まれる提示時刻情報ＰＴＳの値であり、Ｄは前記した通り、ストリーム入力からデコード開始までのシステムの最大遅延時間である。
【０１６５】
【数３６】
2008141311.tif 000038
【０１６６】
オーディオタイミング検出部１８０が算出したオーディオの復号開始時刻Ｔｄｓａは、タイミング制御部１９０へと送られる。
【０１６７】
タイミング制御部１９０は、復号制御部１４４０が送ってきた復号開始時刻Ｔｄｓ［ｊ］と復号速度比Ｔｄｒ［ｊ］を、図１４のように対応付けて格納するためのテーブルをローカルメモリ上に持っており、送られてきた順に格納する。そして第１の実施形態と同様にしてビデオデコーダ１３０に対し、タイミング制御を行う。タイミング制御部１９０はまた、復号制御部１４４０が送ってきた表示開始時刻Ｔｐｓ［ｊ］を格納するためのテーブルをローカルメモリ上に持っており、送られてきた全ての表示開始時刻Ｔｐｓを昇順にソートし直して、順にこのローカルメモリ上に格納する。そして、第１の実施形態と同様にしてフレームバッファ１４０に対し、タイミング制御部を行う。タイミング制御部１９０はさらに、オーディオタイミング検出部１８０が送ってきた復号開始時刻Ｔｄｓを格納するためのテーブルをローカルメモリ上に持っており、送られてきた順に格納する。そして、第１の実施形態と同様にしてオーディオデコーダ１７０に対し、タイミング制御を行う。ビデオデコーダ１３０、フレームバッファ１４０、オーディオデコーダ１７０は、第１の実施形態と同様に、タイミング制御部１９０によるタイミング制御に従い、ビデオＥＳとオーディオＥＳの復号処理及び、復号結果の出力を行う。
【０１６８】
これにより、第１の実施形態のように提示時刻情報ＰＴＳおよび復号時刻情報ＤＴＳといったパラメータから符号化種別構成を算出するのではなく、各符号化単位の符号化種別を検出することで、符号化種別構成を把握して、ビデオデコーダが使用するメモリ帯域の時間方向の平準化を図り、メモリ４０１、バス９００の最大使用帯域を抑えることができる。これにより、メモリ４０１、バス９００に要求される性能が抑えられ、コスト低下が可能となる。また、ユーザ操作などの外部からのイベントに対する処理をＣＰＵ１８２０が行う際に、ビデオデコーダ１３０の使用帯域に圧迫されて発生する処理遅延を抑えることができる。
【０１６９】
なお、本第２の実施形態も、第１の実施形態と同様にＭＰＥＧ２−ＰＳに対応したシステムとすることが可能である。
以上、本第２の実施形態においては、ピクチャ毎にそのピクチャタイプを判定し、前記ピクチャタイプにより、ストリーム中のピクチャ構成を得て、前記ピクチャ構成に基づいてビデオデコーダの復号処理速度を制御することにより、復号処理に使用するメモリ帯域を平準化する方法について述べた。
【０１７０】
また、図２におけるストリーム処理部１００、ビデオデコーダ１３０、オーディオデコーダ１７０、タイミング制御部１９０、復号制御部２００、フレーム周期検出部２１０、ストラクチャ検出部２２０、オーディオタイミング検出部１８０、および、図１７におけるストリーム処理部１４００、ビデオデコーダ１３０、オーディオデコーダ１７０、タイミング制御部１９０、フレーム周期検出部２１０、ストラクチャ検出部２２０、オーディオタイミング検出部１８０、ピクチャタイプ検出部１４３０、復号制御部１４４０、シーケンス変化検出部１４５０、ＦＩＦＯ１４６０の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより各部の処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものとする。
【０１７１】
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含むものとする。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
【０１７２】
以上、この発明の実施形態を図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【産業上の利用可能性】
【０１７３】
本発明は、デジタルテレビ、ＤＶＤプレーヤ、携帯電話等、ＭＰＥＧ２、Ｈ．２６４等の動画像復号機能を搭載した機器に用いて好適であるが、これに限定されない。
【図面の簡単な説明】
【０１７４】
【図１】本発明の第１の実施形態による復号装置であるデジタルＴＶ１０００の構成を示した概略ブロック図である。
【図２】同実施形態におけるデジタルＴＶ１０００から復号処理に関連した構成を抜き出し、復号処理手順に準じた配置を示した概略ブロック図である。
【図３】ＭＰＥＧ２−ＴＳの構造を示した図である。
【図４】ＭＰＥＧ２のビデオＥＳの構成を示した図である。
【図５】ＭＰＥＧ２におけるｆｒａｍｅ＿ｒａｔｅ＿ｃｏｄｅとｆｒａｍｅ＿ｒａｔｅ＿ｖａｌｕｅとの対応関係を示した表である。
【図６】第１の実施形態における復号制御部２００の動作を説明するフローチャートである。
【図７】ＭＰＥＧ２のＰＥＳヘッダの構成を示した図である。
【図８】ストラクチャ種別Ｓがフレームストラクチャである場合の、復号処理による遅延時間が０の理想的なビデオデコーダにビデオＥＳが入力されるタイミングと該ビデオデコーダによる復号結果が表示されるタイミングを示した図である。
【図９】各種別のピクチャを復号する際の最大使用帯域を示した図である。
【図１０】１ピクチャを１フレーム周期で復号する場合における、ピクチャタイプ毎の帯域使用量と１ピクチャの復号処理時間を示した図である。
【図１１】第１の実施形態におけるピクチャタイプ毎の帯域使用量と１ピクチャの復号処理時間を示した図である。
【図１２】ストラクチャ種別Ｓがフレームストラクチャである場合の、従来及び第１の実施形態における動画像復号処理の動作タイミングを示す図である。
【図１３】ストラクチャ種別Ｓがフィールドストラクチャである場合の、従来及び第１の実施形態における動画像復号処理の動作タイミングを示す図である。
【図１４】第１の実施形態におけるタイミング制御部１９０が備えるテーブルＡの記憶内容例を示した図である。
【図１５】マクロブロックやブロックの処理の間隔を制御することによる処理速度の変更方法の基本的な考え方を示した図である。
【図１６】第２の実施形態による復号装置であるデジタルＴＶ１００１の構成を示した概略ブロック図である。
【図１７】同実施形態におけるデジタルＴＶ１００１から復号処理に関連した構成を抜き出し、復号処理手順に準じた配置を示した概略ブロック図である。
【図１８】同実施形態における復号処理部１４４０の動作を説明するフローチャートである。
【図１９】ストラクチャ種別Ｓがフレームストラクチャである場合の、従来及び第２の実施形態における動画像復号処理の動作タイミングを示す図である。
【図２０】動画を構成するピクチャ間の相関を説明する図である。
【図２１】従来のデジタルＴＶに用いられる動画像の復号装置の構成例を示した概略ブロック図である。
【図２２】各種別のピクチャをビデオデコーダ１８００が復号する際のメモリ１８１０に対するアクセスの使用帯域を示した図である。
【図２３】ストラクチャ種別Ｓがフィールドストラクチャである場合の、復号処理による遅延時間が０の理想的なビデオデコーダにビデオＥＳが入力されるタイミングと該ビデオデコーダによる復号結果が表示されるタイミングを示した図である。
【符号の説明】
【０１７５】
１００、１４００、１８７０…ストリーム処理部
１１０…ビデオストリームバッファ
１２０…ビデオ位相調整バッファ
１３０、１８００…ビデオデコーダ
１４０…フレームバッファ
１５０…オーディオストリームバッファ
１６０…オーディオ位相調整バッファ
１７０、１８５０…オーディオデコーダ
１８０…オーディオタイミング検出部
１９０…タイミング制御部
２００、１４４０…復号制御部
２１０…フレーム周期検出部
２２０…ストラクチャ検出部
３００、３０１…制御部
３１０、１８２０…ＣＰＵ
４００、４０１、１８１０…メモリ
５００、１８３０…表示処理部
６００、１８６０…チューナ
７００、１８９０…音声出力装置
８００、１８４０…表示装置
９００、１８８０…バス
１０００、１００１…デジタルＴＶ
１４１０…解析待ち用ビデオバッファ
１４２０…解析待ち用オーディオバッファ
１４３０…ピクチャタイプ検出部
１４５０…シーケンス変化検出部
１４６０…ＦＩＦＯ
【図１】
2008141311.tif 000039
【図２】
2008141311.tif 000040
【図３】
2008141311.tif 000041
【図４】
2008141311.tif 000042
【図５】
2008141311.tif 000043
【図６】
2008141311.tif 000044
【図７】
2008141311.tif 000045
【図８】
2008141311.tif 000046
【図９】
2008141311.tif 000047
【図１０】
2008141311.tif 000048
【図１１】
2008141311.tif 000049
【図１２】
2008141311.tif 000050
【図１３】
2008141311.tif 000051
【図１４】
2008141311.tif 000052
【図１５】
2008141311.tif 000053
【図１６】
2008141311.tif 000054
【図１７】
2008141311.tif 000055
【図１８】
2008141311.tif 000056
【図１９】
2008141311.tif 000057
【図２０】
2008141311.tif 000058
【図２１】
2008141311.tif 000059
【図２２】
2008141311.tif 000060
【図２３】
2008141311.tif 000061