(57)【要約】【課題】  画像フレーム内のスライスが任意順序で符号化されている場合、復号時にスライスの順序を並べ替える必要がある。【解決手段】  ヘッダ解析部１４は、ＳＲＡＭ７０に転送された符号化フレームのヘッダ情報を解析し、フレーム内のスライスの符号化順序と各スライスのデータ長の情報を取得し、各スライスがＳＲＡＭ７０に格納されている位置を示す開始アドレスを算出する。ヘッダ解析部１４は、各スライスの開始アドレスとデータ長をスライステーブル７２に格納する。メイン解析部１６は、スライステーブル７２を参照して、ラスタスキャン順にＳＲＡＭ７０からスライスを読み出して、各スライスのデータの解析を行う。【選択図】        図２
2006279574.tif 000002
【特許請求の範囲】
【請求項１】
動画像のフレームが符号化された動画像ストリームを復号する復号装置であって、
動画像のフレーム内の複数のスライスが任意順序で符号化された符号化フレームを保持するメモリと、
前記メモリに保持された前記符号化フレームのヘッダ情報を解析して、前記メモリにおける各スライスの格納位置を算出するヘッダ解析部と、
前記ヘッダ解析部により算出された前記格納位置を参照することにより、前記符号化フレームの前記複数のスライスをラスタスキャン順に前記メモリから読み出して解析するメイン解析部とを含むことを特徴とする復号装置。
【請求項２】
前記ヘッダ解析部は、前記ヘッダ情報を解析して得られた前記複数のスライスの符号化順序と各スライスのデータ長にもとづいて、前記メモリにおける各スライスの格納位置を算出することを特徴とする請求項１に記載の復号装置。
【請求項３】
前記ヘッダ解析部により算出された各スライスの前記メモリにおける前記格納位置を前記フレーム内のラスタスキャン順に付けられたスライス番号に対応づけて格納したテーブルをさらに含み、
前記メイン解析部は、前記テーブルを参照することにより、前記複数のスライスをラスタスキャン順に前記メモリから読み出すことを特徴とする請求項１または２に記載の復号装置。
【請求項４】
動画像のフレームが符号化された動画像ストリームを復号する復号装置であって、
動画像のフレーム内の複数のスライスが任意順序で符号化された符号化フレームを保持する第１のメモリと、
前記符号化フレームの前記複数のスライスの順序を入れ替えて保持する第２のメモリと、
前記第１のメモリに保持された前記符号化フレームのヘッダ情報を解析することにより、前記複数のスライスを前記第１のメモリから読み出して、前記第２のメモリにラスタスキャン順で並ぶように格納するヘッダ解析部と、
前記第２のメモリの先頭から順に前記複数のスライスを順次読み出して解析するメイン解析部とを含むことを特徴とする復号装置。
【請求項５】
前記ヘッダ解析部は、前記ヘッダ情報を解析して得られた前記複数のスライスの符号化順序と各スライスのデータ長にもとづいて、前記第１のメモリにおける各スライスの格納位置を算出し、算出された前記格納位置を参照することにより、前記複数のスライスを前記第１のメモリからラスタスキャン順に読み出して前記第２のメモリに先頭から順次格納することを特徴とする請求項４に記載の復号装置。
【請求項６】
メモリに保持された、動画像のフレーム内の複数のスライスが任意順序で符号化された符号化フレームのヘッダ情報を解析して、前記複数のスライスの符号化順序と各スライスのデータ長を取得し、前記メモリにおける各スライスの格納位置を算出することにより、前記符号化フレームの前記複数のスライスのデータをラスタスキャン順に前記メモリから読み出して解析することを特徴とする復号方法。
【請求項７】
第１のメモリに保持された、動画像のフレーム内の複数のスライスが任意順序で符号化された符号化フレームのヘッダ情報を解析して、前記複数のスライスの符号化順序と各スライスのデータ長を取得することにより、前記第１のメモリにおける各スライスの格納位置を算出し、算出された各スライスの格納位置を参照することにより、前記複数のスライスを前記第１のメモリから読み出して、第２のメモリにラスタスキャン順で並ぶように格納し、前記第２のメモリの先頭から順に前記複数のスライスのデータを順次読み出して解析することを特徴とする復号方法。
【請求項８】
動画像のフレームが符号化された動画像ストリームを復号する復号装置であって、
動画像のフレーム内の複数のスライスが任意順序で符号化された符号化フレームを保持する第１のメモリと、
前記符号化フレームの前記複数のスライスの順序を入れ替えて出力するための第２のメモリと、
前記複数のスライスを前記第１のメモリから読み出して、前記第２のメモリに順次格納すると同時に、前記符号化フレームのヘッダ情報を解析して、前記第２のメモリにおける各スライスの格納位置を算出するヘッダ解析部と、
前記ヘッダ解析部により算出された前記格納位置を参照することにより、前記符号化フレームの前記複数のスライスをラスタスキャン順に前記第２のメモリから読み出して解析するメイン解析部とを含むことを特徴とする復号装置。
【請求項９】
前記ヘッダ解析部は、前記ヘッダ情報を解析して得られた前記複数のスライスの符号化順序と各スライスのデータ長にもとづいて、前記第２のメモリにおける各スライスの格納位置を算出することを特徴とする請求項８に記載の復号装置。
【請求項１０】
前記ヘッダ解析部により算出された各スライスの前記第２のメモリにおける前記格納位置を前記フレーム内のラスタスキャン順に付けられたスライス番号に対応づけて格納したテーブルをさらに含み、
前記メイン解析部は、前記テーブルを参照することにより、前記複数のスライスをラスタスキャン順に前記第２のメモリから読み出すことを特徴とする請求項８または９に記載の復号装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、符号化された動画像を復号する復号装置および方法に関する。
【背景技術】
【０００２】
ブロードバンドネットワークが急速に発展しており、高品質な動画像を利用したサービスに期待が集まっている。また、ＤＶＤなど大容量の記録媒体が利用されており、高画質の画像を楽しむユーザ層が広がっている。動画像を通信回線で伝送したり、記録媒体に蓄積するために不可欠な技術として圧縮符号化がある。動画像圧縮符号化技術の国際標準として、ＭＰＥＧ４の規格やＨ．２６４／ＡＶＣ規格がある。また、１つのストリームにおいて高画質のストリームと低画質のストリームを併せもつＳＶＣ（Scalable Video Codec）のような次世代画像圧縮技術がある。
【０００３】
ＭＰＥＧ−２／４では、伝送路の誤りが画像フレーム全体に伝搬するのを防ぐために、画像フレーム内をスライスという領域に分割して各スライスを独立に可変長符号化することが行われる。スライスが独立に符号化されているため、あるスライスで発生した誤りが他のスライスに影響することがない。ＭＰＥＧ−２／４では、画像フレーム内のスライスをラスタスキャン順に符号化して符号化ストリームを生成する。
【０００４】
一方、Ｈ．２６４／ＡＶＣでは、画像フレーム内のスライスを任意の順序で可変長符号化することが可能であり、任意スライス順序（ＡＳＯ；Arbitrary Slice Order）と呼ばれている。これにより、画像に合わせて様々なスライス形状を取ることができるように柔軟性が確保されている（たとえば、非特許文献１参照）。
【非特許文献１】ITU-T Recommendation H.264, "Advanced Video Coding for generic audiovisual services", 2003.
【発明の開示】
【発明が解決しようとする課題】
【０００５】
任意スライス順序でスライスが符号化された符号化フレームを復号する際、必要なスライスがストリームのどの位置にあるかが事前にわからないため、符号化フレームの先頭から順にスライスを辿って、必要なスライスを探す必要がある。そのため、フレームメモリからストリームデータを読み直すことが多くなり、メモリ帯域を消費する。また、復号装置の各構成に任意スライス順序に対応するための専用の機能をもたせることが必要になり、機能構成が複雑になり、回路規模が大きくなるという問題が生じる。
【０００６】
本発明はこうした状況に鑑みてなされたもので、その目的は、任意スライス順序で符号化された動画ストリームを効率良く復号することのできる動画像の復号技術を提供することにある。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、本発明のある態様の復号装置は、動画像のフレームが符号化された動画像ストリームを復号する復号装置であって、動画像のフレーム内の複数のスライスが任意順序で符号化された符号化フレームを保持するメモリと、前記メモリに保持された前記符号化フレームのヘッダ情報を解析して、前記メモリにおける各スライスの格納位置を算出するヘッダ解析部と、前記ヘッダ解析部により算出された前記格納位置を参照することにより、前記符号化フレームの前記複数のスライスをラスタスキャン順に前記メモリから読み出して解析するメイン解析部とを含む。
【０００８】
この態様によると、符号化フレームからスライスをラスタスキャン順に読み出して復号処理することができる。
【０００９】
本発明の別の態様もまた、復号装置である。この装置は、動画像のフレームが符号化された動画像ストリームを復号する復号装置であって、動画像のフレーム内の複数のスライスが任意順序で符号化された符号化フレームを保持する第１のメモリと、前記符号化フレームの前記複数のスライスの順序を入れ替えて保持する第２のメモリと、前記第１のメモリに保持された前記符号化フレームのヘッダ情報を解析することにより、前記複数のスライスを前記第１のメモリから読み出して、前記第２のメモリにラスタスキャン順に並ぶように格納するヘッダ解析部と、前記第２のメモリの先頭から順に前記複数のスライスを順次読み出して解析するメイン解析部とを含む。
【００１０】
この態様によると、スライスがラスタスキャン順に並べ替えられた符号化フレームをメモリに形成して復号処理することができる。
【００１１】
本発明のさらに別の態様もまた、復号装置である。この装置は、動画像のフレームが符号化された動画像ストリームを復号する復号装置であって、動画像のフレーム内の複数のスライスが任意順序で符号化された符号化フレームを保持する第１のメモリと、前記符号化フレームの前記複数のスライスの順序を入れ替えて出力するための第２のメモリと、前記複数のスライスを前記第１のメモリから読み出して、前記第２のメモリに順次格納すると同時に、前記符号化フレームのヘッダ情報を解析して、前記第２のメモリにおける各スライスの格納位置を算出するヘッダ解析部と、前記ヘッダ解析部により算出された前記格納位置を参照することにより、前記符号化フレームの前記複数のスライスをラスタスキャン順に前記第２のメモリから読み出して解析するメイン解析部とを含む。
【００１２】
本発明のさらに別の態様は、復号方法である。この方法は、メモリに保持された、動画像のフレーム内の複数のスライスが任意順序で符号化された符号化フレームのヘッダ情報を解析して、前記複数のスライスの符号化順序と各スライスのデータ長を取得し、前記メモリにおける各スライスの格納位置を算出することにより、前記符号化フレームの前記複数のスライスのデータをラスタスキャン順に前記メモリから読み出して解析する。
【００１３】
本発明のさらに別の態様もまた、復号方法である。この方法は、第１のメモリに保持された、動画像のフレーム内の複数のスライスが任意順序で符号化された符号化フレームのヘッダ情報を解析して、前記複数のスライスの符号化順序と各スライスのデータ長を取得することにより、前記第１のメモリにおける各スライスの格納位置を算出し、算出された各スライスの格納位置を参照することにより、前記複数のスライスを前記第１のメモリから読み出して、第２のメモリにラスタスキャン順に並ぶように格納し、前記第２のメモリの先頭から順に前記複数のスライスのデータを順次読み出して解析する。
【００１４】
なお、以上の構成要素の任意の組み合わせ、本発明の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。
【発明の効果】
【００１５】
本発明によれば、動画像の復号の処理効率を向上することができる。
【発明を実施するための最良の形態】
【００１６】
図１は、実施の形態に係る復号装置１００の構成図である。これらの構成は、ハードウエア的には、任意のコンピュータのＣＰＵ、メモリ、その他のＬＳＩで実現でき、ソフトウエア的にはメモリにロードされた画像復号機能のあるプログラムなどによって実現されるが、ここではそれらの連携によって実現される機能ブロックを描いている。したがって、これらの機能ブロックがハードウエアのみ、ソフトウエアのみ、またはそれらの組み合わせによっていろいろな形で実現できることは、当業者には理解されるところである。
【００１７】
本実施の形態の復号装置１００は、国際標準化機関であるＩＳＯ（International Organization for Standardization）／ＩＥＣ（International Electrotechnical Commission）によって標準化されたＭＰＥＧ（Moving Picture Experts Group）シリーズの規格（ＭＰＥＧ−１、ＭＰＥＧ−２およびＭＰＥＧ−４）、電気通信に関する国際標準機関であるＩＴＵ−Ｔ（International Telecommunication Union-Telecommunication Standardization Sector）によって標準化されたＨ．２６ｘシリーズの規格（Ｈ．２６１、Ｈ．２６２およびＨ．２６３）、もしくは両方の標準化機関によって合同で標準化された最新の動画像圧縮符号化標準規格であるＨ．２６４／ＡＶＣ（両機関における正式勧告名はそれぞれMPEG-4 Part 10: Advanced Video CodingとH.264）に準拠して動画像の復号を行う。
【００１８】
復号装置１００は、符号化ストリームの入力を受け取り、符号化ストリームを復号して出力画像を生成する。入力された符号化ストリームはフレームメモリ８０に格納される。
【００１９】
可変長復号部１０は、フレームメモリ８０に格納された符号化ストリームを可変長復号し、復号された画像データを逆量子化部２０に供給し、動きベクトル情報を動き補償部６０に供給する。
【００２０】
逆量子化部２０は、可変長復号部１０により復号された画像データを逆量子化し、逆ＤＣＴ部３０に供給する。逆量子化部２０により逆量子化された画像データはＤＣＴ係数である。逆ＤＣＴ部３０は、逆量子化部２０により逆量子化されたＤＣＴ係数を逆離散コサイン変換（ＩＤＣＴ）することにより、元の画像データを復元する。逆ＤＣＴ部３０により復元された画像データは、動き補償部６０に供給される。
【００２１】
動き補償部６０は、過去または未来の画像フレームを参照画像として利用し、可変長復号部１０から供給される動きベクトル情報を用いて予測画像を生成し、逆ＤＣＴ部３０から供給される差分画像と加算することにより、元の画像データを復元し、出力する。
【００２２】
図２は、可変長復号部１０の構成を説明する図である。フレームメモリ８０と可変長復号部１０は、ストリームインタフェース（ＳＴＩＦ）８２を介して接続されている。フレームメモリ８０に保持された符号化ストリームはＳＴＩＦ８２を介してＳＲＡＭ７０に転送される。
【００２３】
可変長復号部１０は、ＳＲＡＭ７０、ストリーム解析部１２、およびストリーム復号部１８を有する。ストリーム解析部１２は、フレームメモリ８０に保持された符号化ストリームをフレーム単位でＳＲＡＭ７０に転送する。
【００２４】
フレームメモリ８０は、一例として大容量のＳＤＲＡＭで構成され、ＳＴＩＦ８２を介してアクセスされる。一方、ＳＲＡＭ７０は、ストリーム解析部１２と同一の集積回路内に形成されており、ストリーム解析部１２から高速にアクセスすることが可能である。ＳＲＡＭ７０はフレームメモリ８０に比べて容量が限られており、フレームメモリ８０に対する高速なキャッシュメモリとして機能する。ＳＲＡＭ７０はデータ転送が高速であるから、ストリーム解析部１２がＳＲＡＭ７０内のストリームデータを参照して、ストリームを解析するのに適している。なお、読み出しポート数を増やすために、複数枚のＳＲＡＭ７０が設けられてもよい。
【００２５】
ストリーム解析部１２は、ＳＲＡＭ７０に転送された符号化フレームのストリームデータを解析し、解析結果をストリーム復号部１８に与える。ストリーム復号部１８は、ストリーム解析部１２による解析結果にもとづいて符号化フレームのストリームデータを復号し、逆量子化部２０に出力する。
【００２６】
本実施の形態の復号装置１００に入力される符号化ストリームは、一例として、Ｈ．２６４／ＡＶＣ規格の任意スライス順序で符号化されたストリームであり、符号化フレーム内のスライスの符号化順序は任意である。
【００２７】
図３（ａ）、（ｂ）を参照して任意スライス順序について説明する。図３（ａ）は、画像フレーム２００のスライスを説明する図である。画像フレーム２００は、６個のスライスＳ１〜Ｓ６に分割されている。ＭＰＥＧ−２／４では、ラスタスキャン順、すなわち画像フレーム２００の左上から右下に向かって、スライスＳ１、Ｓ２、Ｓ３、Ｓ４、Ｓ５、Ｓ６の順に可変長符号化がなされるが、Ｈ．２６４／ＡＶＣでは、６個のスライスＳ１〜Ｓ６を任意の順序で可変長符号化することができる。
【００２８】
図３（ｂ）は、図３（ａ）の画像フレーム２００の６個のスライスＳ１〜Ｓ６の符号化順序の一例を示す図である。各スライス番号の後の括弧内に符号化順序を示した。この例では、スライスＳ４、Ｓ１、Ｓ６、Ｓ５、Ｓ２、Ｓ３の順に可変長符号化して符号化フレーム２１０が生成される。
【００２９】
図４は、ＳＲＡＭ７０に転送された符号化フレームを説明する図である。図３（ｂ）で例示した符号化順序でスライスが符号化された符号化フレーム２１０がフレームメモリ８０からＳＲＡＭ７０に転送された場合を説明する。符号化フレーム２１０が転送されるとき、符号化された順でスライスのデータが転送されるため、ＳＲＡＭ７０には、記憶領域の先頭から符号化順と同じスライスＳ４、Ｓ１、Ｓ６、Ｓ５、Ｓ２、Ｓ３の順で各スライスのデータが格納される。
【００３０】
図４において、各スライスＳ１〜Ｓ６のデータが割り当てられたＳＲＡＭ７０の記憶領域の開始アドレスＡ１〜Ａ６とデータ長Ｌ１〜Ｌ６を図示している。
【００３１】
図２に戻り、ストリーム解析部１２の構成を説明する。ストリーム解析部１２は、ヘッダ解析部１４、メイン解析部１６、およびスライステーブル７２を有する。
【００３２】
ヘッダ解析部１４は、ＳＲＡＭ７０に転送された符号化フレームのストリームのヘッダ情報のみを復号して解析し、符号化フレーム内の複数のスライスの符号化順序と各スライスのデータ長の情報を取得し、各スライスがＳＲＡＭ７０に格納されている位置を示す開始アドレスを算出する。ヘッダ解析部１４は、ストリームのヘッダ情報にデータ長が含まれていれば、ヘッダ情報からデータ長を取得し、そうでない場合は、ストリームにおいてヘッダの存在する位置からデータ長を計算により求める。ヘッダ解析部１４は、ＳＲＡＭ７０内における各スライスのデータ配置を調べ、ＳＲＡＭ７０における各スライスのデータの開始アドレスを算出する。
【００３３】
たとえば、図４を参照して、スライスＳ６の格納位置を算出する方法を説明する。スライスＳ６の符号化順序は、Ｓ４、Ｓ１に次ぐ３番目である。スライスＳ４のデータ長Ｌ４、スライスＳ１のデータ長Ｌ１はストリームのヘッダ情報から取得される。スライスＳ４の開始アドレスＡ４をベースアドレスとして、ベースアドレスＡ４にスライスＳ４のデータ長Ｌ４とスライスＳ１のデータ長Ｌ１を加算した値Ａ４＋Ｌ４＋Ｌ１がスライスＳ６の開始アドレスＡ６である。
【００３４】
ヘッダ解析部１４は、このように、符号化フレーム内の複数のスライスの符号化順序にしたがって、符号化順で前にあるスライスのデータ長をベースアドレスに加算することにより、特定のスライスの開始アドレスを算出する。ヘッダ解析部１４は、算出された各スライスの開始アドレスをスライステーブル７２に格納する。
【００３５】
図５は、スライステーブル７２を説明する図である。スライス番号１〜６に対応づけて、そのスライスの開始アドレスＡ１〜Ａ６とデータ長Ｌ１〜Ｌ６が格納されている。スライスＳ１〜Ｓ６の開始アドレスＡ１〜Ａ６は、図４に示したＳＲＡＭ７０内の各スライスのデータ配置から明らかなように、スライスの符号化順序と各スライスのデータ長にもとづいて以下のように算出することができる。なお、スライスＳ４の開始アドレスＡ４は、当該符号化フレームが格納されているＳＲＡＭ７０内の記憶領域のベースアドレスである。
【００３６】
Ａ１＝Ａ４＋Ｌ４
Ａ２＝Ａ４＋Ｌ４＋Ｌ１＋Ｌ６＋Ｌ５
Ａ３＝Ａ４＋Ｌ４＋Ｌ１＋Ｌ６＋Ｌ５＋Ｌ２
Ａ４＝（ベースアドレス）
Ａ５＝Ａ４＋Ｌ４＋Ｌ１＋Ｌ６
Ａ６＝Ａ４＋Ｌ４＋Ｌ１
【００３７】
メイン解析部１６は、このスライステーブル７２を参照して、ラスタスキャン順、すなわちスライスＳ１、Ｓ２、Ｓ３、Ｓ４、Ｓ５、Ｓ６の順にＳＲＡＭ７０からスライスデータを読み出して、各スライスデータの解析を行う。メイン解析部１６は、スライステーブル７２から最初のスライスＳ１の開始アドレスＡ１とデータ長Ｌ１を取得し、ＳＲＡＭ７０の開始アドレスＡ１からデータ長Ｌ１だけ読み出すことにより、最初のスライスＳ１のデータを得る。次に、メイン解析部１６は、ＳＲＡＭ７０の開始アドレスＡ２からデータ長Ｌ２だけ読み出すことで次のスライスＳ２のデータを得る。以下、同様にスライスＳ３、Ｓ４、Ｓ５、Ｓ６のデータをＳＲＡＭ７０から読み出す。
【００３８】
スライステーブル７２は、次の符号化フレームの処理を開始するときに、ヘッダ解析部１４により更新される。
【００３９】
ストリーム復号部１８は、メイン解析部１６によりラスタスキャン順に並べ替えて読み出されたスライスデータを受け取り、スライス毎に可変長復号を行い、復号されたスライスデータを順に並べることで画像フレーム全体の可変長復号を行い、復号された画像フレームを逆量子化部２０に出力する。
【００４０】
なお、ストリーム復号部１８の機能をメイン解析部１６に含め、ストリーム復号部１８をメイン解析部１６と一体に構成してもよい。その場合、メイン解析部１６が、ＳＲＡＭ７０からラスタスキャン順にスライスデータを読み出し、ヘッダ以外の残りのデータを可変長復号して、復号された画像フレームを逆量子化部２０に出力する。
【００４１】
図６は、ストリーム解析部１２の別の構成を説明する図である。ストリーム解析部１２は、スライスの順序を並べ替えるために順序変更用ＳＲＡＭ７４を有する。
【００４２】
ヘッダ解析部１４は、ＳＲＡＭ７０に転送された符号化フレームのストリームのヘッダ情報を解析し、符号化フレーム内の複数のスライスの符号化順序と各スライスのデータ長の情報を取得する。
【００４３】
ヘッダ解析部１４は、スライスの順序を符号化順からラスタスキャン順に並べ替えるために、各スライスがＳＲＡＭ７０に格納されている位置を示す開始アドレスを算出する。ヘッダ解析部１４は、符号化フレームのストリームのヘッダ情報から各スライスの符号化順序とデータ長を取得しているから、図４のＳＲＡＭ７０内のスライスのデータ配置を参照して、前述のように、各スライスのＳＲＡＭ７０内の格納位置を示す開始アドレスを算出することができる。
【００４４】
次に、ヘッダ解析部１４は、算出された各スライスの開始アドレスをもとに、ラスタスキャン順でスライスのデータをＳＲＡＭ７０から読み取り、順序変更用ＳＲＡＭ７４の記憶領域の先頭からラスタスキャン順で読み出されたスライスのデータを順番に格納していく。
【００４５】
図７（ａ）、（ｂ）は、ヘッダ解析部１４により、符号化フレーム内のスライスの順序が符号化順からラスタスキャン順に変換される様子を説明する図である。
【００４６】
図７（ａ）は、図４で示したＳＲＡＭ７０内の符号化フレーム２１０のスライスＳ１〜Ｓ６の配置を示す。図７（ｂ）は、順序変更用ＳＲＡＭ７４に格納された符号化フレーム２１０のスライスＳ１〜Ｓ６の配置を示す。ヘッダ解析部１４は、ラスタスキャン順であるスライスＳ１、Ｓ２、Ｓ３、Ｓ４、Ｓ５、Ｓ６の順で図７（ａ）に示すＳＲＡＭ７０からスライスデータを読み取り、図７（ｂ）に示すように、順序変更用ＳＲＡＭ７４の記憶領域の先頭から順に、ＳＲＡＭ７０から読み出したスライスＳ１、Ｓ２、Ｓ３、Ｓ４、Ｓ５、Ｓ６を格納していく。
【００４７】
図７（ｂ）に示すように、順序変更用ＳＲＡＭ７４においては、スライスＳ１〜Ｓ６がラスタスキャン順に並べ替えられるため、メイン解析部１６は、順序変更用ＳＲＡＭ７４の先頭からスライスのデータを順次読み出すことにより、ラスタスキャン順にスライスデータの解析を進めることができる。
【００４８】
このように、ヘッダ解析部１４がＳＲＡＭ７０からラスタスキャン順にスライスを読み出し、いったん順序変更用ＳＲＡＭ７４に書き込むことで、順序変更用ＳＲＡＭ７４内ではラスタスキャン順に並べ替えられたスライスデータが形成される。
【００４９】
上記の説明では、ヘッダ解析部１４は、ＳＲＡＭ７０からラスタスキャン順にスライスを読み出し、順序変更用ＳＲＡＭ７４の記憶領域の先頭から順次書き込んだが、別の方法として、ヘッダ解析部１４は、ＳＲＡＭ７０から符号化順にスライスを読み出し、順序変更用ＳＲＡＭ７４のラスタスキャン順の格納位置に書き込んでもよい。以下、この方法を図８を参照しながら、説明する。
【００５０】
ヘッダ解析部１４は、ＳＲＡＭ７０から符号化順にスライスＳ４、Ｓ１、Ｓ６、Ｓ５、Ｓ２、Ｓ３を読み出す。ヘッダ解析部１４が最初に読み出したスライスＳ４は、ラスタスキャン順では、スライスＳ１、Ｓ２、Ｓ３に次ぐ４番目のスライスであるから、スライスＳ４を順序変更用ＳＲＡＭ７４に格納すべき位置は、順序変更用ＳＲＡＭ７４の記憶領域のベースアドレスＢ１にスライスＳ１、Ｓ２、Ｓ３のデータ長Ｌ１、Ｌ２、Ｌ３を加算したアドレスＢ４である。ヘッダ解析部１４は、この格納アドレスＢ４（＝Ｂ１＋Ｌ１＋Ｌ２＋Ｌ３）にスライスＳ４を格納する。
【００５１】
ヘッダ解析部１４が２番目に読み出したスライスＳ１は、ラスタスキャン順では、最初のスライスであるから、スライスＳ１を順序変更用ＳＲＡＭ７４に格納すべき位置は、順序変更用ＳＲＡＭ７４の記憶領域のベースアドレスＢ１である。ヘッダ解析部１４は、このベースアドレスＢ１にスライスＳ１を格納する。
【００５２】
ヘッダ解析部１４が３番目に読み出したスライスＳ６は、ラスタスキャン順では、最後のスライスであるから、スライスＳ６を順序変更用ＳＲＡＭ７４に格納すべき位置は、順序変更用ＳＲＡＭ７４の記憶領域のベースアドレスＢ１にスライスＳ１〜Ｓ５のデータ長Ｌ１〜Ｌ５を加算したアドレスＢ６である。ヘッダ解析部１４は、この格納アドレスＢ６（＝Ｂ１＋Ｌ１＋Ｌ２＋Ｌ３＋Ｌ４＋Ｌ５）にスライスＳ６を格納する。
【００５３】
以下、ヘッダ解析部１４が４番目以降に読み出したスライスＳ５、Ｓ２、Ｓ３についても同様に、ラスタスキャン順でそのスライスよりも前のスライスのデータ長を順序変更用ＳＲＡＭ７４の記憶領域のベースアドレスＢ１に加算することにより、そのスライスの格納アドレスを求め、求めた格納アドレスにスライスを格納する。
【００５４】
図９は、ストリーム解析部１２のさらに別の構成を説明する図である。この構成では、ストリーム解析部１２は、符号化フレームの複数のスライスの順序を入れ替えて出力するための順序変更用ＳＲＡＭ７４と、順序変更用ＳＲＡＭ７４におけるスライスの格納位置をラスタスキャン順に付けられたスライス番号に対応づけて格納したスライステーブル７２とを有する。
【００５５】
ヘッダ解析部１４は、符号化フレーム内の複数のスライスをＳＲＡＭ７０から符号化順に読み出し、ヘッダ情報を解析し、読み出したスライスのデータを順序変更用ＳＲＡＭ７４に先頭から順次格納する。ＳＲＡＭ７０に保持された符号化フレームの複数のスライスは、ヘッダ解析部１４による解析を経て、順序変更用ＳＲＡＭ７４に符号化順でコピーされていくことになる。ヘッダ解析部１４は、符号化フレームのストリームのヘッダ情報を復号して解析し、符号化フレーム内の複数のスライスの符号化順序と各スライスのデータ長の情報を取得し、各スライスが順序変更用ＳＲＡＭ７４に格納されている位置を示す開始アドレスを算出する。ヘッダ解析部１４は、算出された各スライスの開始アドレスをスライステーブル７２に格納する。スライステーブル７２の生成方法は、図２〜図５で述べた方法と同様である。
【００５６】
メイン解析部１６は、このスライステーブル７２を参照して、ラスタスキャン順、すなわちスライスＳ１、Ｓ２、Ｓ３、Ｓ４、Ｓ５、Ｓ６の順に順序変更用ＳＲＡＭ７４からスライスデータを読み出して、各スライスデータの解析を行う。
【００５７】
この構成では、順序変更用ＳＲＡＭ７４は、ＳＲＡＭ７０から転送した符号化フレームの複数のスライスを保持し、符号化フレームの複数のスライスの順序を入れ替えてメイン解析部１６に出力するためのバッファとして機能する。
【００５８】
ＳＲＡＭ７０とは別に順序変更用ＳＲＡＭ７４を設けたことの利点を説明する。ヘッダ解析部１４は、ＳＲＡＭ７０から読み出した符号化フレームのスライスのヘッダ情報の解析が終わると、順序変更用ＳＲＡＭ７４にスライスのデータを格納するとともに、順序変更用ＳＲＡＭ７４内のスライスの開始アドレスをスライステーブル７２に格納する。一方、メイン解析部１６は、スライステーブル７２を参照して、ラスタスキャン順でスライスを読み出すが、順序変更用ＳＲＡＭ７４にラスタスキャン順で読み出すべきスライスのデータが既に格納されていれば、そのスライスのデータを読み出して、解析を進めることができる。
【００５９】
このように、メイン解析部１６は、ヘッダ解析部１４が符号化フレームのすべてのスライスのヘッダ情報を解析し終わるのを待つことなく、順序変更用ＳＲＡＭ７４からスライスのデータを読み出して解析を進めることが可能である。ヘッダ解析部１４によるヘッダ情報の解析と並行して、メイン解析部１６によるスライスデータのメイン部分の解析、さらには、ストリーム復号部１８による復号を進めることができるため、復号処理の高速化を図ることができる。
【００６０】
なお、これまで説明した図２、図６、図９のいずれのストリーム解析部１２においても、ヘッダ解析部１４によってストリームのヘッダ情報の解析が終了しているため、メイン解析部１６に入力されるデータは、ヘッダ情報以降の残りのデータであってもよい。したがって、図２のスライステーブル７２の開始アドレスは、ヘッダ情報の後の残りのデータの先頭を指すアドレスであってもよい。また、図６および図８の順序変更用ＳＲＡＭ７４に転送されるデータについても、ヘッダ情報の後の残りのデータであってもよい。
【００６１】
以上述べたように、本実施の形態の復号装置１００では、ストリーム解析部１２が、符号化ストリームのヘッダ情報から符号化フレーム内のスライスの符号化順序を取得し、スライスの順序を元のラスタスキャン順に戻す処理をするため、ストリーム解析以降の処理では、通常のラスタスキャン順を前提として符号化ストリームの処理を進めることができる。したがって、復号装置１００内に、ストリーム解析部１２以外に、任意スライス順序に対応するための特別な構成を設ける必要はなく、復号装置の回路の簡略化して、回路規模を抑えることができる。また、スライス順序を元に戻すことから、必要なスライスのデータを参照するために、フレームメモリ８０からストリームを再読込する必要がなくなり、フレームメモリ８０からＳＴＩＦ８２を介したデータ転送を減らすことができる。
【００６２】
以上、本発明を実施の形態をもとに説明した。実施の形態は例示であり、それらの各構成要素や各処理プロセスの組み合わせにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【００６３】
上記の説明では、符号化フレーム一枚分のスライスのデータがＳＲＡＭ７０あるいは順序変更用ＳＲＡＭ７４に格納されたが、ＳＲＡＭに容量制限や使用制限がある場合、符号化フレームの一部のスライスのデータだけを格納するようにしてもよい。また、一部のスライスのデータをＳＤＲＡＭなどに退避しておき、必要に応じてＳＤＲＡＭからＳＲＡＭに読み出すように構成してもよい。
【００６４】
ＳＲＡＭ７０および順序変更用ＳＲＡＭ７４は、複数枚設けられもよい。たとえば、ＳＲＡＭを２枚設けて、現在処理中の符号化フレームを１枚目のＳＲＡＭに保持し、次に処理される符号化フレームを２枚目のＳＲＡＭに前もって転送しておくことで、データ転送にかかる待ち時間をなくして、連続して符号化フレームの復号処理が可能となる。
【００６５】
上記の説明では、復号装置１００に入力される符号化ストリームが任意スライス順序で符号化されたストリームであるとして、ストリーム解析部１２の構成と動作を説明したが、入力される符号化ストリームは、通常のラスタスキャン順でスライスが符号化されたストリームであってもかまわない。ストリーム解析部１２は、入力された符号化ストリームが任意スライス順序であるかどうかをストリームのヘッダ情報から判定することができる。ストリーム解析部１２は、ストリームが任意スライス順序ではなく、通常のラスタスキャン順で符号化されていると判定した場合、ヘッダ解析部１４とメイン解析部１６を直結し、ヘッダ解析部１４がＳＲＡＭ７０から読み込んだスライスのヘッダを解析した後、そのままメイン解析部１６がそのスライスのデータを解析するように切り替え制御してもよい。
【図面の簡単な説明】
【００６６】
【図１】実施の形態に係る復号装置の構成図である。
【図２】図１の可変長復号部の構成を説明する図である。
【図３】任意スライス順序で符号化された符号化フレームを説明する図である。
【図４】図２のＳＲＡＭに転送された符号化フレームを説明する図である。
【図５】図２のスライステーブルを説明する図である。
【図６】図２のストリーム解析部の別の構成を説明する図である。
【図７】符号化フレーム内のスライスの順序が符号化順からラスタスキャン順に変換される様子を説明する図である。
【図８】符号化フレーム内のスライスの順序が符号化順からラスタスキャン順に変換される様子を説明する図である。
【図９】図２のストリーム解析部のさらに別の構成を説明する図である。
【符号の説明】
【００６７】
１０  可変長復号部、  １２  ストリーム解析部、  １４  ヘッダ解析部、  １６  メイン解析部、  １８  ストリーム復号部、  ２０  逆量子化部、  ３０  逆ＤＣＴ部、  ６０  動き補償部、  ７０  ＳＲＡＭ、  ７２  スライステーブル、  ７４  順序変更用ＳＲＡＭ、  ８０  フレームメモリ、  ８２  ＳＴＩＦ、  １００  復号装置。
【図１】
2006279574.tif 000003
【図２】
2006279574.tif 000004
【図３】
2006279574.tif 000005
【図４】
2006279574.tif 000006
【図５】
2006279574.tif 000007
【図６】
2006279574.tif 000008
【図７】
2006279574.tif 000009
【図８】
2006279574.tif 000010
【図９】
2006279574.tif 000011