(57)【要約】【課題】各規格により多様に符号化されたビットストリームを同一の情報認識方式により復号化することができるビットストリーム復号化装置及び方法を提供する。【解決手段】本発明に係る復号化装置は、予め設定されたプロセスを独立的に行うように実現された、それぞれの固有の識別情報により区分される複数の機能部を含むツールボックスと、識別情報を用いて少なくとも１つの機能部を選択的にロードしてビットストリームを動画データに復号化するように制御する連結制御部と、を含むことを特徴とする。【選択図】図３
2010525654.tif 000002
【特許請求の範囲】
【請求項１】
予め設定されたプロセスが独立的に行なわれるように実現され、それぞれの固有の識別情報で区分される複数の機能部を含むツールボックスと、
前記識別情報を用いて少なくとも１つ以上の機能部を選択的にロードしてビットストリームを動画データに復号化するように制御する連結制御部と、
を含む復号化装置。
【請求項２】
各機能部の識別情報は、適用規格項目（STANDARD）、複数の適用規格を特定するリスト項目（LIST）、機能の区分による役割項目（ROLE）、機能部の実行アルゴリズムに対応付けられた名称項目（NAME）、機能部の特性またはプロセスに関する情報を表示する特性項目（PROPERTY）、機能部が処理するブロックサイズを表示するサイズ項目（SIZE）、機能部の実行に関する付加情報を表示する実行項目（IMPLEMENTATION）のうちの２つ以上の組み合わせにより付与されることを特徴とする請求項１に記載の復号化装置。
【請求項３】
前記ツールボックスは、前記適用規格の項目を基準として構成された機能部の集合であるサブツールボックスで構成されることを特徴とする請求項２に記載の復号化装置。
【請求項４】
前記ツールボックスは、前記ビットストリームのシンタックスパーシングを行う少なくとも１つのパーシング機能部と、前記ビットストリームの復号化処理のための複数の復号化機能部と、を備えることを特徴とする請求項１に記載の復号化装置。
【請求項５】
ディスクリプション格納部に格納された部分復号化器ディスクリプションを用いて、ＣＳＣＩ制御情報及び連結制御情報を生成して出力する復号化器形成部をさらに含み、
前記連結制御部は前記ＣＳＣＩ制御情報及び前記連結制御情報のうちの少なくとも１つを用いて前記ツールボックスに備えられた複数の機能部が選択的にロードされるように制御することを特徴とする請求項１に記載の復号化装置。
【請求項６】
前記復号化器形成部は、
任意の部分復号化器ディスクリプションに記述されている複数の機能部が前記ツールボックスに備えられているか否かを判断するＦＵ確認部と、
前記部分復号化器ディスクリプションを用いて前記ＣＳＣＩ制御情報及び連結制御情報を生成する情報加工部と、を含む請求項５に記載の復号化装置。
【請求項７】
復号化ソリューションをさらに含み、前記復号化ソリューションは、
前記複数の機能部のうちの少なくとも１つの機能部がプロセスを行い、前記ビットストリームのシンタックスパーシングにより生成された複数の要素情報が格納されるＣＳＣＩ格納部と、
前記連結制御部と、を含むことを特徴とする請求項５に記載の復号化装置。
【請求項８】
前記復号化ソリューションは、
前記ＣＳＣＩ制御情報により前記ビットストリームのシンタックスパーシングを行う少なくとも１つのパーシング機能部をさらに含み、
前記ツールボックスは前記ビットストリームの復号化処理のための複数の復号化機能部を備える請求項７に記載の復号化装置。
【請求項９】
前記復号化ソリューションは、少なくとも１つの機能部がロードされて動作するようにする作業メモリを含むことを特徴とする請求項７に記載の復号化装置。
【請求項１０】
前記機能部のうちの一部またはすべての動作制御のための部分復号化器ディスクリプションが格納されているディスクリプション格納部と、
前記ビットストリームに対応するように入力された符号化された復号化器ディスクリプションを用いて少なくとも１つの部分復号化器ディスクリプションを生成して前記ディスクリプション格納部に格納するか、前記ディスクリプション格納部に予め格納されている複数の部分復号化器ディスクリプションのうちの少なくとも１つを指定するディスクリプション復号化器と、をさらに含む請求項１に記載の復号化装置。
【請求項１１】
復号化器形成部をさらに含み、前記復号化器形成部は、
少なくとも１つの機能部がプロセスを行うことにより生成されたＣＳＣＩ情報、復号化処理のためのデータのうちの少なくとも１つを格納する格納部と、
前記連結制御部と、を含むことを特徴とする請求項１または１０に記載の復号化装置。
【請求項１２】
前記復号化器形成部の制御によりロードされた任意の機能部のプロセスを行うための作業メモリは、前記復号化器形成部に含まれるか、前記復号化器形成部に結合されて含まれることを特徴とする請求項１１に記載の復号化装置。
【請求項１３】
前記符号化された復号化器ディスクリプションと前記ビットストリームとが統合された統合ビットストリームで入力される場合、前記符号化された復号化器ディスクリプションと前記ビットストリームとを分離して出力する分離部をさらに含む請求項１０に記載の復号化装置。
【請求項１４】
前記連結制御部によりロードされた機能部は、予め指定された要素情報、直前にロードされた機能部による出力データのうちの少なくとも１つを入力データとする予め指定されたプロセスを行うことを特徴とする請求項１に記載の復号化装置。
【請求項１５】
前記パーシング機能部は、前記ＣＳＣＩ制御情報を用いて要素情報を生成することを特徴とする請求項４に記載の復号化装置。
【請求項１６】
（ａ）入力された復号化器ディスクリプションに対応する複数の部分復号化器ディスクリプションを生成して格納するステップと、
（ｂ）前記部分復号化器ディスクリプションを用いてＣＳＣＩ制御情報及び連結制御情報を生成するステップと、
（ｃ）前記ＣＳＣＩ制御情報を用いてビットストリームのシンタックスパーシングにより生成された複数の要素情報を格納部に格納するステップと、
（ｄ）前記連結制御情報及び前記要素情報を用いて前記ビットストリームの符号化されたビデオデータを動画データに復号化して出力するステップと、を含む復号化方法。
【請求項１７】
前記ステップ（ｃ）及び（ｄ）は、前記ＣＳＣＩ制御情報または前記連結制御情報を参照して、連結制御部がツールボックスに備えられている複数の機能部のうちの選択的にロードした機能部によりそれぞれ行われ、
前記機能部のそれぞれが、固有の識別情報で区分されることを特徴とする請求項１６に記載の復号化方法。
【請求項１８】
各機能部の識別情報は、適用規格項目（STANDARD）、複数の適用規格を特定するリスト項目（LIST）、機能の区分による役割項目（ROLE）、機能部の実行アルゴリズムに対応付けられた名称項目（NAME）、機能部の特性またはプロセスに関する情報を表示する特性項目（PROPERTY）、機能部が処理するブロックサイズを表示するサイズ項目（SIZE）、機能部の実行に関する付加情報を表示する実行項目（IMPLEMENTATION）のうちの少なくとも２つ以上の組み合わせにより付与されることを特徴とする請求項１７に記載の復号化方法。
【請求項１９】
前記ステップ（ｄ）は、前記連結制御部の選択的ロードにより動作の開始された複数の機能部のプロセス実行による結果が前記動画データになるまで繰り返し行われることを特徴とする請求項１７に記載の復号化方法。
【請求項２０】
順次ロードされる複数の機能部のうち、先行の機能部の結果データが、後行する機能部によりアクセスできるバッファメモリに記録されることを特徴とする請求項１９に記載の復号化方法。
【請求項２１】
前記連結制御部は、順次ロードされる複数の機能部のうち、先行の機能部の結果データを後行の機能部の入力データとして提供することを特徴とする請求項１９に記載の復号化方法。
【請求項２２】
前記復号化器ディスクリプションは、前記ビットストリームと統合された統合ビットストリームの形態で入力されることを特徴とする請求項１６に記載の復号化方法。
【請求項２３】
復号化方法を行うために復号化装置で実行可能な命令語のプログラムが類型的に実現されており、前記復号化装置により読み取り可能なプログラムが記録された記録媒体において、
入力された復号化器ディスクリプションに対応する複数の部分復号化器ディスクリプションを生成して格納するステップと、
前記部分復号化器ディスクリプションを用いてＣＳＣＩ制御情報及び連結制御情報を生成するステップと、
前記ＣＳＣＩ制御情報を用いてビットストリームのシンタックスパーシングにより生成された複数の要素情報を格納部に格納するステップと、
前記連結制御情報及び前記要素情報を用いて前記ビットストリームの符号化されたビデオデータを動画データに復号化して出力するステップと、を実行することを特徴とするプログラムを記録した記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ビットストリーム復号化方法及び装置に関するもので、より詳細には、復号化ソリューションを備えたビットストリーム復号化方法及び装置に関する。
【背景技術】
【０００２】
一般的に動画は符号化器（encoder）でビットストリーム（Bit-stream）の形態に変換される。このとき、ビットストリームは符号化器の制約条件を満たす符号化の類型に応じて格納される。
【０００３】
ＭＰＥＧはビットストリームの制約条件として、シンタックス（syntax）及びセマンティックス（semantics）を要求する。
【０００４】
シンタックスは、データの構造や形式及び長さを示し、データがどんな順序で表現されるかを示す。すなわち、シンタックスは符号化（encoding）／復号化（decoding）作業のために文法を合わせるためのものであって、ビットストリームに含まれている各要素（elements）の順序及び長さ、データ形式などを定義する。
【０００５】
セマンティックスはデータを構成する各ビットの意味を示す。すなわち、セマンティックスはビットストリーム内の各要素の意味を示す。
【０００６】
したがって、符号化器の符号化条件または適用された規格（またはコーデック）に応じて、多様な形態のビットストリームが生成できる。一般的に各規格（例えば、ＭＰＥＧ−１、ＭＰＥＧ−２、ＭＰＥＧ−４、ＭＰＥＧ−４ＡＶＣなど）は、各々異なるビットストリームシンタックスを有する。
【０００７】
したがって、各規格や符号化条件に応じて、符号化されたビットストリームは、それぞれ異なる形式（すなわち、シンタックス及びセマンティックス）を有するといえ、当該ビットストリームを復号化するためには符号化器に対応する復号化器を使用しなくてはならない。
【０００８】
上述したように、従来のビットストリーム復号化器は符号化器の制約条件を満たさなくてはならなく、このような制限は複数の規格に対応する統合復号化器の実現を難しくする原因となる。
【発明の概要】
【発明が解決しようとする課題】
【０００９】
本発明は上述した問題点を解決するためになされたものであって、各規格（例えば、ＭＰＥＧ−１、ＭＰＥＧ−２、ＭＰＥＧ−４、ＭＰＥＧ−４ＡＶＣなど）に応じて多様な形式（シンタックス、セマンティックス）で符号化されたビットストリームを同一情報認識方式により復号化できるビットストリーム復号化装置及び方法を提供することを目的とする。
【００１０】
本発明の他の目的は、多様な符号化方式で圧縮されたビットストリームを同一の情報分析方法によりパーシング（parsing）し、パーシングされたデータを用いて復号化するための各機能部（ＦＵ、Functional Unit）を有機的に制御できるビットストリーム復号化装置及び方法を提供することにある。
【００１１】
本発明のまた他の目的は、ツールボックス（Tool-box）内の各機能部を独立したＩＤまたは／及び名前（Name）で区分及び管理できるビットストリーム復号化装置及び方法を提供することにある。
【００１２】
本発明のまた他の目的は、多様な形態のビットストリームを復号化するためのシンタックス解析方法を共通に適用できるビットストリーム復号化装置及び方法を提供することにある。
【００１３】
本発明のまた他の目的は、シンタックス要素の変更や追加、削除時にも、復号化器が容易にビットストリームを復号化できるビットストリーム復号化装置及び方法を提供することにある。
【００１４】
本発明のまた他の目的は、解析されたシンタックスの要素情報（element information、すなわち、シンタックスパーシングによる結果物）を、ビットストリーム復号化に用いられる構成要素にも共有できるようにするビットストリーム復号化装置及び方法を提供することにある。
【００１５】
本発明のまた他の目的は、解析されたシンタックスの要素情報を後続のビットストリームシンタックス要素の解析にも利用できるビットストリーム復号化装置及び方法を提供することにある。
【００１６】
本発明のまた他の目的は、多様な規格（コーデック）の様々な復号化方法を構成する機能を、それぞれ機能部（ＦＵ
）単位で実現してツールボックスに備えたビットストリーム復号化装置及び方法を提供することにある。
【００１７】
本発明のまた他の目的は、多様な形態で符号化されたビットストリームを復号化するためにツールボックスから必要とされる機能部だけを選別してロード（load）することにより、予め指定されたプロセスが行われるようにするビットストリーム復号化装置及び方法を提供することにある。
【００１８】
本発明のまた他の目的は、ツールボックスに備えられた機能部の変更や追加、削除が可能であるビットストリーム復号化装置及び方法を提供することにある。
【００１９】
本発明のまた他の目的は、ビットストリーム復号化のためのコーデック統合に関する概念及び構造に関する国際標準化にあり、本発明のその他の目的は以下に記載された実施例によりさらに明確になるだろう。
【課題を解決するための手段】
【００２０】
上述した目的を達成するために、本発明の一実施形態によれば、多様な規格に汎用的に利用できる符号化器／復号化器、及び／または統合コーデック装置が提供される。
【００２１】
本発明の一実施例に係る復号化装置は、予め設定されたプロセスが独立的に行われるように実現され、それぞれの固有の（unique）識別情報で区分される複数の機能部を含むツールボックスと、上記識別情報を用いて１つ以上の機能部を選択的にロードしてビットストリームを動画データに復号化するように制御する連結制御部とを含むことができる。
【００２２】
各機能部の識別情報は、適用規格項目（STANDARD）、複数の適用規格を特定するリスト項目（LIST）、機能の区分による役割項目（ROLE）、機能部の実行アルゴリズムに対応付けられた名称項目（NAME）、機能部の特性またはプロセスに関する情報を表示する特性項目（PROPERTY）、機能部が処理するブロックのサイズを表示するサイズ項目（SIZE）、機能部の実行に関する付加情報を表示する実行項目（IMPLEMENTATION）のうちの２つ以上を組み合わせることにより付与できる。
【００２３】
上記ツールボックスは、上記適用規格の項目を基準として構成された機能部の集合であるサブツールボックスで構成されることができる。
【００２４】
上記ツールボックスは、上記ビットストリームのシンタックスパーシングを行う少なくとも１つのパーシング機能部と、上記ビットストリームの復号化処理のための複数の復号化機能部とを備えることができる。
【００２５】
上記復号化装置は、ディスクリプション格納部に格納された部分復号化器ディスクリプション（partial decoder descriptions）を用いて、ＣＳＣＩ制御情報及び連結制御情報を生成して出力する復号化器形成部をさらに含むことができる。上記連結制御部は、上記ＣＳＣＩ制御情報及び上記連結制御情報のうちの少なくとも１つを用いて上記ツールボックスに備えられた複数の機能部が選択的にロードされるように制御することができる。
【００２６】
上記復号化器形成部は、任意の部分復号化器ディスクリプションに記述されている複数の機能部が上記ツールボックスに備えられているか否かを判断するＦＵ確認部と、上記部分復号化器ディスクリプションを用いて上記ＣＳＣＩ制御情報及び連結情報を生成する情報加工部と、を含むことができる。
【００２７】
上記復号化装置は、復号化ソリューションをさらに含むことができる。上記復号化ソリューションは、上記複数の機能部のうちの少なくとも１つの機能部がプロセスを行い、上記ビットストリームのシンタックスパーシング（syntax parsing）により生成された複数の要素情報が格納されるＣＳＣＩ（Control Signal/Context Information）格納部と、上記連結制御部と、を含むことができる。
【００２８】
上記復号化ソリューションは、上記ＣＳＣＩ制御情報により上記ビットストリームのシンタックスパーシングを行う少なくとも１つのパーシング機能部をさらに含むことができる。上記ツールボックスは上記ビットストリームを復号化するための複数の復号化機能部を備えることができる。
【００２９】
上記復号化ソリューションは、少なくとも１つの機能部がロードされ動作するようにする作業メモリを含むことができる。
【００３０】
上記復号化装置は、上記機能部のうちの一部またはすべての動作制御のための部分復号化器ディスクリプションが格納されているディスクリプション格納部と、上記ビットストリームに対応するように入力された符号化された復号化器ディスクリプションを用いて少なくとも１つの部分復号化器ディスクリプションを生成して上記ディスクリプション格納部に格納するか、上記ディスクリプション格納部に予め格納されている複数の部分復号化器ディスクリプションのうちの少なくとも１つを指定するディスクリプション復号化器と、をさらに含むことができる。
【００３１】
上記復号化装置は復号化器形成部をさらに含み、上記復号化器形成部は、少なくとも１つの機能部がプロセスを行なうことにより生成されたＣＳＣＩ情報、復号化処理のためのデータのうちの少なくとも１つを格納する格納部と、上記連結制御部と、を含むことができる。
【００３２】
上記復号化器形成部の制御によりロードされた任意の機能部のプロセスを行うための作業メモリは、上記復号化器形成部に含まれるか、上記復号化器形成部に結合されて含まれることができる。
【００３３】
上記復号化装置は、上記符号化された復号化器ディスクリプションと上記ビットストリームとが統合された統合ビットストリームで入力される場合、
上記符号化された復号化器ディスクリプションと上記ビットストリームとを分離して出力する分離部をさらに含むことができる。
【００３４】
上記連結制御部によりロードされた機能部は、予め指定された要素情報、直前にロードされた機能部による出力データのうちの少なくとも１つを入力データとする予め指定されたプロセスを行うことができる。
【００３５】
上記パーシング機能部は、上記ＣＳＣＩ制御情報を用いて要素情報を生成することができる。
【００３６】
上述した目的を達成するために本発明の他の実施形態によれば、多様な規格に汎用的に利用できる復号化方法／符号化方法、及び／またはその方法を実行するためのプログラムが記録された記録媒体が提供される。
【００３７】
本発明の一実施例に係る復号化方法は、（ａ）入力された復号化器ディスクリプションに対応する複数の部分復号化器ディスクリプションを生成して格納するステップと、（ｂ）上記部分復号化器ディスクリプションを用いてＣＳＣＩ制御情報及び連結制御情報を生成するステップと、（ｃ）上記ＣＳＣＩ制御情報を用いてビットストリームのシンタックスパーシングにより生成された複数の要素情報を格納部に格納するステップと、（ｄ）上記連結制御情報及び上記要素情報を用いて上記ビットストリームの符号化されたビデオデータを動画データに復号化して出力するステップと、を含むことができる。
【００３８】
上記ステップ（ｃ）及び（ｄ）は、上記ＣＳＣＩ制御情報または上記連結制御情報を参照して、連結制御部がツールボックスに備えられている複数の機能部の中から選択的にロードした機能部によりそれぞれ行われることができる。ここで、上記機能部のそれぞれは、固有の識別情報で区分できる。
【００３９】
各機能部の識別情報は適用規格項目（STANDARD）、複数の適用規格を特定するリスト項目（LIST）、機能の区分による役割項目（ROLE）、機能部の実行アルゴリズムに対応付けられた名称項目（NAME）、機能部の特性またはプロセスに関する情報を表示する特性項目（PROPERTY）、機能部が処理するブロックサイズを表示するサイズ項目（SIZE）、機能部の実行に関する付加情報を表示する実行項目（IMPLEMENTATION）のうちの２つ以上の組み合わせにより付与できる。
【００４０】
上記ステップ（ｄ）は、上記連結制御部の選択的ロードにより動作の開始された複数の機能部のプロセス実行による結果が上記動画データになるまで繰り返し行われることができる。
【００４１】
順次ロードされる複数の機能部のうち、先行の機能部の結果データが後行する機能部のアクセスできるバッファメモリに記録されることができる。
【００４２】
上記連結制御部は順次ロードされる複数の機能部のうち、先行の機能部の結果データを後行する機能部の入力データとして提供することができる。
【００４３】
上記復号化器ディスクリプションは上記ビットストリームと統合された統合ビットストリームの形態で入力されることができる。
【００４４】
本発明の他の実施例によれば、復号化方法を行うために復号化装置で実行可能な命令語のプログラムが類型的に実現されており、上記復号化装置により読み取り可能なプログラムが記録された記録媒体において、入力された復号化器ディスクリプションに対応する複数の部分復号化器ディスクリプションを生成して格納するステップと、上記部分復号化器ディスクリプションを用いてＣＳＣＩ制御情報及び連結制御情報を生成するステップと、上記ＣＳＣＩ制御情報を用いてビットストリームのシンタックスパーシングにより生成された複数の要素情報を格納部に格納するステップと、上記連結制御情報及び上記要素情報を用いて上記ビットストリームの符号化されたビデオデータを動画データに復号化して出力するステップとを実行することを特徴とするプログラムを記録した記録媒体が提供される。
【発明の効果】
【００４５】
上述したように、本発明に係る統合コーデック装置及び方法は、各規格（例えば、ＭＰＥＧ−１、ＭＰＥＧ−２、ＭＰＥＧ−４、ＭＰＥＧ−４ＡＶＣなど）に従う多様な形式（シンタックス、セマンティックス）により符号化されたビットストリームを同じ情報認識方式で復号化できる効果がある。
【００４６】
また、本発明によれば、ツールボックス内の各機能部を独立したＩＤまたは／及び名前で区分及び管理できる効果がある。
【００４７】
また、本発明によれば、多様な符号化方式により圧縮されたビットストリームを同じ情報分析方法でパーシングし、パーシングされたデータを用いて復号化のための各機能部を有機的に制御できる効果がある。
【００４８】
また、本発明によれば、多様な形式のビットストリームを復号化するためのシンタックス解析方法を共通に適用できる効果がある。
【００４９】
また、本発明によれば、シンタックス要素の変更や追加時にも、復号化器がビットストリームを容易に復号化できる効果がある。
【００５０】
また、本発明によれば、解析されたシンタックスの要素情報、すなわちシンタックスパーシングによる結果物を、ビットストリーム復号化に用いられる構成要素にも共有できるようにする効果がある。
【００５１】
また、本発明によれば、解析されたシンタックスの要素情報を、後続のビットストリームシンタックス要素の解析に利用できる効果がある。
【００５２】
また、本発明によれば、ＭＰＥＧ−１、ＭＰＥＧ−２、ＭＰＥＧ−４、ＭＰＥＧ−４ＡＶＣ以外のブロック単位を処理する動画データ、静止画コーデックの統合時に使用できる効果がある。
【００５３】
また、本発明によれば、多様な規格（コーデック）から提案される多様な復号化方法を構成する機能を、それぞれ機能部（ＦＵ）単位で実現してツールボックスに備えることができる効果がある。
【００５４】
また、本発明によれば、多様な形式で符号化されたビットストリームを復号化するためにツールボックスから必要とされる機能部だけを選別してロードし復号化するようにできる効果がある。
【００５５】
また、本発明によれば、ツールボックスに備えられた機能部の変更、追加、削除が容易であるという効果がある。
【図面の簡単な説明】
【００５６】
【図１】一般的な復号化器の構成を概略的に示す図面である。
【図２】一般的な符号化器の構成を概略的に示す図面である。
【図３】本発明の一実施例に係る復号化器の構成を概略的に示す図面である。
【図４】本発明の一実施例に係る拡張ビットストリーム（extendedbit-stream）の構成を簡略に示す図面である。
【図５】本発明の第１実施例に係る復号化処理ユニットの構成を概略的に示す図面である。
【図６】本発明の第２実施例に係る復号化処理ユニットの構成を概略的に示す図面である。
【図７】本発明の一実施例に係るツールボックスの構成を例示する図面である。
【図８】本発明の一実施例に係る機能部名称（FU name）の区分例を示す図面である。
【図９】本発明の一実施例に係る部分復号化器ディスクリプションの構成例を示す図面である。
【図１０】本発明の一実施例に係る部分復号化器ディスクリプションの構成例を示す図面である。
【図１１】本発明の一実施例に係る部分復号化器ディスクリプションの構成例を示す図面である。
【図１２】本発明の一実施例に係る部分復号化器ディスクリプションの構成例を示す図面である。
【図１３】本発明の一実施例に係る部分復号化器ディスクリプションの構成例を示す図面である。
【図１４】本発明の一実施例に係る部分復号化器ディスクリプションの構成例を示す図面である。
【図１５】本発明の一実施例に係る部分復号化器ディスクリプションの構成例を示す図面である。
【図１６】本発明の一実施例に係る部分復号化器ディスクリプションの構成例を示す図面である。
【図１７】本発明の一実施例に係る部分復号化器ディスクリプションの構成例を示す図面である。
【図１８】本発明の一実施例に係る部分復号化器ディスクリプションの構成例を示す図面である。
【図１９】本発明の一実施例に係る部分復号化器ディスクリプションの構成例を示す図面である。
【図２０】本発明の一実施例に係る部分復号化器ディスクリプション構成のための命令語を例示した図面である。
【図２１】本発明の第３実施例に係る復号化処理ユニットの構成を概略的に示す図面である。
【図２２】本発明の第４実施例に係る復号化処理ユニットの構成を概略的に示す図面である。
【図２３】本発明の一実施例に係る符号化器のブロック構成図面である。
【発明を実施するための形態】
【００５７】
本発明は多様な変換を加えることができ、様々な実施例を有することができるため、本願では特定実施例を図面に例示し、詳細に説明する。しかし、これは本発明を特定の実施形態に限定するものではなく、本発明の思想及び技術範囲に含まれるあらゆる変換、均等物及び代替物を含むものとして理解されるべきである。
【００５８】
「第１」、「第２」などの用語は、多様な構成要素を説明するために用いられるに過ぎなく、前記構成要素が前記用語により限定されるものではない。前記用語は一つの構成要素を他の構成要素から区別する目的だけに用いられる。例えば、本発明の権利範囲内における第１構成要素は第２構成要素であると命名されることができ、同様に第２構成要素も第１構成要素であると命名されることができる。「及び／または」という用語は、複数の関連のある記載項目の組合または複数の関連のある記載項目のうち何れかの項目を含む。
【００５９】
ある構成要素が他の構成要素に「連結」あるいは「接続」されていると記載された時には、その他の構成要素に直接的に連結されているか、または接続されていることができ、中間に他の構成要素が存在することもできると理解しなければならない。反面、ある構成要素が他の構成要素に「直接連結」あるいは「直接接続」されていると記載された時には、中間に他の構成要素が存在しないと理解しなければならない。
【００６０】
本願で用いた用語は、ただ特定の実施例を説明するために用いたものであって、本発明を限定するものではない。単数の表現は、文の中で明らかに表現しない限り、複数の表現を含む。本願において、「含む」または「有する」などの用語は明細書上に記載された特徴、数字、段階、動作、構成要素、部品、またはこれらを組み合わせたものの存在を指定するものであって、一つまたはそれ以上の他の特徴や数字、段階、動作、構成要素、部品、またはこれらを組み合わせたものの存在または付加可能性を予め排除するものではないと理解しなくてはならない。
【００６１】
その他、定義しない限り、技術的または科学的な用語を含んで、ここで用いられる全ての用語は、本発明が属する技術分野で通常の知識を有する者であれば、一般的に理解される用語と同一の意味を有する。一般的に用いられる予め定義しているような用語は、関連技術の文脈上の意味と一致する意味を有すると解釈すべきで、本願で明らかに定義しない限り、理想的または過度に形式的な意味として解釈しない。
【００６２】
以下、添付図面を参照しながら、本発明に係る統合コーデック方法及び装置の好ましい実施例を詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の図面符号を付することにより、重複説明を省略する。
【００６３】
図１は、一般的な復号化器の構成を概略的に示す図面であり、図２は、一般的な符号化器の構成を概略的に示す図面である。
【００６４】
図１に示すように、一般的に、ＭＰＥＧ−４復号化器１００は、可変長復号化部（Variable Length Decoding）１１０、逆スキャン部（Inverse Scan）１１５、逆ＤＣ／ＡＣ予測部（Inverse DC/AC Prediction）１２０、逆量子化部（Inverse Quantization）１２５、逆ＤＣＴ部（Inverse Discrete Cosine Transform、逆離散余弦変換部ともいう）１３０、動画復元部（VOP Reconstruction）１３５を含む。復号化器１００の構成は適用される規格に応じて異なり得ることは自明であり、また、一部の構成要素を他の構成要素に代替することも可能である。
【００６５】
伝達されたビットストリーム１０５がシンタックスパーシングされ、ヘッダ情報と符号化された映像データ（encoded video data）とが抽出されると、可変長復号化部１１０は、予め設定されたハフマンテーブル（Huffman Table）を用いて量子化したＤＣＴ係数を作り、逆スキャン部１１５は、逆スキャンを行って動画１４０と同一の順序のデータを生成する。すなわち、逆スキャン部１１５は、符号化したときの様々な方法でスキャンされた順序の逆順で、値を出力する。符号化するとき、量子化（Quantization）を行った後に周波数帯域値の分布によりスキャン方向が定義されることができる。一般的には、ジグザグのスキャン方法が用いられるが、コーデック別に様々な種類のスキャン方式がある。
【００６６】
シンタックスパーシングは、可変長復号化部１１０にて統合的に行われるか、または可変長復号化部１１０に先行してビットストリーム１０５を処理する任意の構成要素にて行われることができる。この場合、シンタックスパーシングは、符号化器と復号化器とに適用される規格が同じであるため、当該規格に対応するように予め指定されている基準によってのみ処理される。
【００６７】
逆ＤＣ／ＡＣ予測部１２０は、周波数帯域でＤＣＴ係数の大きさを用いて予測のための参照ブロックの方向性を決める。
【００６８】
逆量子化部１２５は、逆スキャンされたデータを逆量子化する。すなわち、符号化時に指定された量子化値（ＱＰ、Quantization Parameter）を用いてＤＣとＡＣ係数を還元する。
【００６９】
逆ＤＣＴ部１３０は、逆離散余弦変換（Inverse Discrete Cosine Transform）を行い、実際の動画ピクセル値を求めてＶＯＰ（Video Object Plane）を生成する。
【００７０】
動画復元部１３５は、逆ＤＣＴ部１３０から生成されたＶＯＰを用いて動画信号を復元して出力する。
【００７１】
図２に示すように、一般的にＭＰＥＧ−４符号化器２００は、ＤＣＴ部２１０、量子化部２１５、ＤＣ／ＡＣ予測部２２０、スキャン部２３０、可変長符号化部２３５を含む。
【００７２】
符号化器２００に含まれている各構成要素は、それぞれ対応する復号化器１００の構成要素の逆機能を行い、これは当業者にとって自明なことである。簡単に説明すれば、符号化器２００は、動画信号、すなわち、デジタル映像ピクセル値を離散余弦変換、量子化などを通して周波数値に変換して符号化を行い、これを情報の頻度数に応じてビット長を差別化する可変長符号化を行って圧縮ビットストリーム状態で出力する。
【００７３】
図３は、本発明の一実施例に係る復号化器の構成を概略的に示す図面であり、図４は、本発明の一実施例に係る拡張ビットストリームの構成を簡略に示す図面である。
【００７４】
図３に示すように、本発明に係る復号化器３００は従来の復号化器（図１参照）とは異なる構成を有する。
【００７５】
すなわち、本発明に係る符号化／復号化方法を行うために、復号化器３００に、ビットストリームと共に復号化器ディスクリプション（decoder description）が提供される。復号化器ディスクリプションは、符号化されたビデオデータとそれぞれ独立したデータで復号化器３００に提供されてもよく、図３に示すように、復号化器ディスクリプションとビットストリームが統合されて拡張ビットストリーム３０５の形態で復号化器３００に提供されてもよい。勿論、復号化器３００の特定の格納部に復号化器ディスクリプションに対応する情報が予め格納されている場合であれば、復号化器ディスクリプションの提供は省略可能である。ただし、以下では当該データが拡張ビットストリーム内に含まれて復号化器３００に提供される場合を中心に説明する。
【００７６】
本発明の一実施例に係る復号化器３００は、分離部３１０及び復号化処理ユニット３２０を含む。図示された復号化器３００の構成要素（例えば、分離部３１０、復号化処理ユニット３２０そのものまたは復号化処理ユニット３２０に含まれている一つ以上の構成要素など）のうちの少なくとも１つは、後述する機能を行うように実現されたソフトウェアプログラム（またはプログラムコードの組み合わせ）により実現できることは自明である。
【００７７】
分離部３１０は、入力された拡張ビットストリーム３０５を、符号化された復号化器ディスクリプション（Encoded Decoder Description）３１３と一般的なビットストリーム３１６（以下、従来ビットストリームという）とに分離して復号化処理ユニット３２０にそれぞれ入力する。
【００７８】
分離部３１０は、符号化された復号化器ディスクリプション３１３をディスクリプション復号化器５０５に入力し、従来ビットストリーム３１６は復号化器形成部５２０に入力できる。上述したように、符号化された復号化器ディスクリプション３１３と従来ビットストリーム３１６とがそれぞれ独立したデータとして入力される場合には、分離部３１０を省略できる。また、従来ビットストリーム３１６は、上述した図１のビットストリーム１０５と同一または類似のデータであってよい。
【００７９】
拡張ビットストリーム３０５の一例が図４に示されている。図４を参照すると、拡張ビットストリーム３０５は、符号化された復号化器ディスクリプション３１３と従来ビットストリーム３１６を含むことができる。図４の拡張ビットストリーム３０５及び符号化された復号化器ディスクリプション３１３に対する例示は単に説明及び理解のためのものであって、本発明の拡張ビットストリーム３０５及び／または符号化された復号化器ディスクリプション３１３の形式がこれに制限されることはない。
【００８０】
符号化された復号化器ディスクリプション３１３のディスクリプション復号化器５０５により復号化処理された復号化器ディスクリプション５９０は、多様な符号化方式により符号化されたビットストリーム及び／または様々な機能のうちユーザが選択した機能を用いて符号化されたビットストリームを共通の解析方式によりパーシングするために、従来ビットストリーム３１６の構成情報、従来ビットストリーム３１６の符号化方式（または機能部（ＦＵ）間の連結情報）、特定の機能部に対する入出力データの特定などに関する情報である。復号化器ディスクリプション５９０は、テキスト記述（textual description）やバイナリ記述（binary description）などの記述方式で記述されることができる。勿論、符号化された復号化器ディスクリプション３１６がディスクリプション復号化器５０５の処理なしで復号化器形成部５２０により認識できるように実現された場合であれば、ディスクリプション復号化器５０５は省略可能である。
【００８１】
復号化器ディスクリプション５９０は、ＦＬ（Functional unit List）４１０、Ｆ−ＲＴ（Functional unit Rule Table）４２０、ＦＵ−ＣＳＣＩＴ（Functional Unit CSCIT）４３０、ＣＳＣＩＴ（Control Signal and Context Information Table）４４０、ＳＥＴ（Syntax Element Table）４５０、Ｓ−ＲＴ（Syntax-Rule Table）４６０、ＤＶＴ（Default Value Table）４７０などの部分復号化器ディスクリプションに分離されてディスクリプション格納部５１０に格納されることができる。復号化器ディスクリプションを構成するための各部分復号化器ディスクリプションの順序を多様に変更できることは自明である。
【００８２】
ここで、ＦＬ４１０、Ｆ−ＲＴ４２０、ＦＵ−ＣＳＣＩＴ４３０、ＣＳＣＩＴ４４０などは、各機能部（ＦＵ）の連結関係（connection）を設定するために用いることができる（当該部分復号化器ディスクリプションは、必要により「第１復号化器ディスクリプション」と称してもよい）。
【００８３】
この中、ＦＵ−ＣＳＣＩＴ４４０は、ツールボックス５１５内の各機能部（すなわち、復号化処理のための機能部）とＣＳＣＩ格納部５３２に格納された要素情報の間のマッピング（mapping）のための部分復号化器ディスクリプションであってもよい。この場合、要素情報は、ツールボックス５１５内の各機能部（すなわち、復号化処理のための機能部または／及びシンタックスパーシングのための機能部）に対する制御変数として機能することができる。
【００８４】
また、ＣＳＣＩＴ４４０、ＳＥＴ４５０、Ｓ−ＲＴ４６０、ＤＶＴ４７０などは従来ビットストリーム３１６のパーシングのために用いることができる（該当部分復号化器ディスクリプションは、必要により「第２復号化器ディスクリプション」と称してもよい）。各部分復号化器ディスクリプションの形態及び機能については後述する。
【００８５】
ディスクリプション復号化器５０５は、分離部３１０から入力された符号化された復号化器ディスクリプション３１３を復号化して復号化器ディスクリプション３１４を生成した後に、復号化器形成部５２０（または復号化ソリューション５３０）で認識できる形態の複数の部分復号化器ディスクリプションに分離し、ディスクリプション格納部５１０に格納する。
【００８６】
ディスクリプション格納部５１０に格納される各部分復号化器ディスクリプションは、必ずしも一般的な形態のテーブルである必要はなく、復号化器形成部５２０（または復号化ソリューション５３０）で認識可能な情報形態であればよい。
【００８７】
ディスクリプション復号化器５０５の復号化器ディスクリプション分析によりディスクリプション格納部５１０に格納される部分復号化器ディスクリプションとしては、ＦＬ４１０、Ｆ−ＲＴ４２０、ＦＵ−ＣＳＣＩＴ４４０、ＣＳＣＩＴ４４０、ＳＥＴ４５０、Ｓ−ＲＴ４６０、ＤＶＴ４７０などが含まれ得る。
【００８８】
ディスクリプション復号化器５０５は、例えば、各部分復号化器ディスクリプションを示す領域に含まれたＴＩ（Table Identifier）を参照して各部分復号化器ディスクリプションを区分することができる。復号化器ディスクリプション５９０内には、全ての部分復号化器ディスクリプションに対応する情報が必ずしも含まれる必要はなく、コーデック番号（Codec #）とプロファイル及びレベル番号（Profile and level #）が含まれるか、一部の部分復号化器ディスクリプションに対してのみコーデック番号（Codec #）とプロファイル及びレベル番号（Profile and level #）が含まれてもよい。
【００８９】
コーデック番号（Codec #）とプロファイル及びレベル番号（Profile and level #）が含まれている場合、ディスクリプション復号化器５０５は、全ての部分復号化器ディスクリプションまたは一部の部分復号化器ディスクリプションに対して新しい部分復号化器ディスクリプションを生成しなく、ディスクリプション格納部５１０に予め格納されている部分復号化器ディスクリプションのうち、対応する部分復号化器ディスクリプションが復号化時に用いられるように選択することもできる。また、コーデック番号（Codec #）、プロファイル及びレベル番号（Profile and level #）と修正情報が含まれている場合、ディスクリプション復号化器５０５は、ディスクリプション格納部５１０に予め格納されている部分復号化器ディスクリプションのうち、当該コーデックに対応する部分復号化器ディスクリプションを抽出して修正情報を反映し、新しい部分復号化器ディスクリプションを生成することもできる。勿論、コーデック番号（Codec #）とプロファイル及びレベル番号（Profile and level #）ではなく、部分復号化器ディスクリプションを生成するためのテーブルディスクリプションが含まれている場合、ディスクリプション復号化器５０５は、全ての部分復号化器ディスクリプションまたは一部の部分復号化器ディスクリプションに対して復号化時に用いるための新しい部分復号化器ディスクリプションを生成することもできる。
【００９０】
図５は、本発明の第１実施例に係る復号化処理ユニットの構成を概略的に示す図面であり、図６は、本発明の第２実施例に係る復号化処理ユニットの構成を概略的に示す図面である。図７は、本発明の一実施例に係るツールボックスの構成を例示する図面であり、図８は、本発明の一実施例に係る機能部名称（FU name）の区分例を示す図面である。
【００９１】
図５及び図６に復号化処理ユニット３２０の各実施例が示されている。
【００９２】
復号化処理ユニット３２０の第１実施例を示す図５を参照すると、復号化処理ユニット３２０は、ディスクリプション復号化器５０５、ディスクリプション格納部５１０、ツールボックス５１５、復号化器形成部５２０、及び復号化ソリューション５３０を含むことができる。
【００９３】
復号化器形成部５２０は、ＦＵ確認部５２２、情報加工部５２４、及び情報伝達部５２６を含む。
【００９４】
ＦＵ確認部５２２は、ディスクリプション復号化器５０５の処理により部分復号化器ディスクリプションがディスクリプション格納部５１０に格納されると、部分復号化器ディスクリプション（例えば、ＦＬ４１０など）に記述された機能部がツールボックス５１５にすべて存在するか否かを確認する。若し部分復号化器ディスクリプションに記述された機能部のうちツールボックス５１５に存在しない機能部がある場合には、エラーメッセージがディスプレイ装置を介してディスプレイされるようにするか、当該機能部のアップデートをユーザに要請することができる。当該機能部のアップデートのためのサーバ装置と通信網を介して連結されている場合、ＦＵ確認部５２２は、通信網を介して自動アップデートを実行することもできる。
【００９５】
情報加工部５２４は、ディスクリプション格納部５１０に格納されている各部分復号化器ディスクリプションを役割に応じて分類し、復号化ソリューション５３０が容易に運用できるデータ形態に加工する。これは、ディスクリプション格納部５１０に格納されている部分復号化器ディスクリプションの格納形式（例えば、テーブル形式）が、復号化ソリューション５３０が用いるのに適合しないことがあり、または復号化ソリューション５３０がより効率的に利用する情報が必要となることもあるからである。
【００９６】
各部分復号化器ディスクリプションの機能及び形式は、後で図面を参照しながら具体的に説明し、ここでは加工されたデータ形態に対してのみ簡略に説明する。
【００９７】
情報加工部５２４は、部分復号化器ディスクリプションのそれぞれがＣＳＣＩ（Control Signal/Context Information、制御情報／文脈情報）の生成または格納に利用されているかのことや、機能部の連結に利用されているかのことなどの役割に応じて分類した後、ＣＳＣＩ制御情報と連結制御情報を加工する。例えば、ＣＳＣＩ制御情報を生成するために用いられる部分復号化器ディスクリプションは、ＳＥＴ４５０、Ｓ−ＲＴ４６０、ＣＳＣＩＴ４４０、及びＤＶＴ４７０であってもよく、連結制御情報を生成するために用いられる部分復号化器ディスクリプションは、ＦＬ４１０、Ｆ−ＲＴ４２０、Ｓ−ＲＴ４６０、及びＦＵ−ＣＳＣＩＴ４４０であってもよい。
【００９８】
情報加工部５２４により加工されたＣＳＣＩ制御情報及び連結制御情報は、例えばＸＭＬ基盤のＡＤＭ（Abstract Decoder Model）表現方式により表現でき、これは下記の通りである。しかし、加工されたＣＳＣＩ制御情報及び連結制御情報の表現方式がこれに制限されることはない。
【００９９】
2010525654.tif 000003
【０１００】
2010525654.tif 000004
【０１０１】
情報伝達部５２６は、情報加工部５２４により加工されたＣＳＣＩ制御情報と連結制御情報を復号化ソリューション５３０に伝達する。情報伝達部５２６は、ＣＳＣＩ制御情報を実際にＣＳＣＩ情報の格納と運用を担当するＣＳＣＩ格納部５３２に伝達し、連結制御情報を機能部間の連結を制御する連結制御部５３４に伝達できる。若しＣＳＣＩ格納部５３２が単にＣＳＣＩ情報の格納のみを機能し、ＣＳＣＩ情報の運用が連結制御部５３４により行われる場合であれば、情報伝達部５２４はＣＳＣＩ制御情報と連結制御情報とを連結制御部５３４に伝達できることは自明である。
【０１０２】
復号化ソリューション５３０は、ＣＳＣＩ格納部５３２及び連結制御部５３４を含む。図示されていないが、復号化ソリューション５３０は、連結制御部５３４の呼出により少なくとも１つの機能部がロードされて予め指定されたプロセスを行うようにする作業メモリをさらに含むことができる。
【０１０３】
復号化処理ユニット３２０の第２実施例が示された図６を参照すると、復号化処理ユニット３２０は、ディスクリプション復号化器５０５、ディスクリプション格納部５１０、ツールボックス５１５、復号化器形成部５２０、及び復号化ソリューション５３０を含むことができる。
【０１０４】
図５に比べて図６の復号化処理ユニット３２０の復号化ソリューション５３０は、パーシング機能部６１０をさらに含むことができる。パーシング機能部６１０は、ビットストリームのシンタックスパーシングを行う機能部である。パーシング機能部６１０は、独立した構成要素として復号化ソリューション５３０に含まれることもでき、復号化ソリューション５３０が２つの作業メモリを具備し、連結制御部５３４は、１つの作業メモリにより復号化処理のための機能部だけが専用的にロードされるように制御し、他の作業メモリによりパーシング機能部６１０だけが専用的にロードされるように制御することにより、同じ効果が得られるように実現することもできることは自明である。両方とも、ビットストリームに対するパーシング処理と復号化処理が順次または／及び並列に実行できるという長所を有する。
【０１０５】
また、図５と比べると、パーシング機能部６１０の処理のために、情報加工部５２４はシンタックスパーシング制御情報をさらに加工して復号化ソリューション５３０に提供する。したがって、ＣＳＣＩ制御情報、連結制御情報、及びシンタックスパーシング制御情報を生成するために用いられる部分復号化器ディスクリプションの役割が変更されることができる。
【０１０６】
すなわち、情報加工部５２４は、部分復号化器ディスクリプションのそれぞれがＣＳＣＩ（Control Signal/Context Information、制御情報／文脈情報）の生成または格納に利用されているかのことや、シンタックスパーシングのために利用されているか、機能部の連結に利用されているかのことなどの役割に応じて分類した後、ＣＳＣＩ制御情報、連結制御情報、及びシンタックスパーシング制御情報を加工する。例えば、ＣＳＣＩ制御情報を生成するために利用される部分復号化器ディスクリプションはＣＳＣＩＴ４４０であってもよく、連結制御情報を生成するための部分復号化器ディスクリプションはＦＬ４１０、Ｆ−ＲＴ４２０、及びＦＵ−ＣＳＣＩＴ４４０であってもよく、シンタックスパーシング制御情報を生成するために利用される部分復号化器ディスクリプションはＳＥＴ４５０、Ｓ−ＲＴ４６０、ＣＳＣＩＴ４４０、及びＤＶＴ４７０であってもよい。
【０１０７】
上述したように、情報加工部５２４により加工されたＣＳＣＩ制御情報及び連結制御情報は、例えばＸＭＬ基盤のＡＤＭ表現方式により表現でき、シンタックスパーシング制御情報の表現例は下記の通りである。
【０１０８】
2010525654.tif 000005
【０１０９】
情報伝達部５２６は、情報加工部５２４により加工されたＣＳＣＩ制御情報、連結制御情報、及びシンタックスパーシング制御情報を復号化ソリューション５３０に伝達する。情報伝達部５２６は、ＣＳＣＩ制御情報を実際にＣＳＣＩ情報の格納と運用を担当するＣＳＣＩ格納部に伝達し、連結制御情報を機能部間の連結を制御する連結制御部５３４に伝達し、シンタックスパーシング制御情報をパーシング機能部６１０に伝達できる。若しＣＳＣＩ格納部５３２が単にＣＳＣＩ情報の格納のみを機能し、ＣＳＣＩ情報の運用が連結制御部５３４により行われる場合であれば、情報伝達部５２４はＣＳＣＩ制御情報と連結制御情報とを連結制御部５３４に伝達できることは自明である。また、若しパーシング機能部６１０が連結制御部５３４の制御によりビットストリームのシンタックスパーシングを行う場合であれば、情報伝達部５２４はシンタックスパーシング制御情報を連結制御部５３４に伝達できることも自明である。
【０１１０】
復号化ソリューション５３０は、ＣＳＣＩ格納部５３２、連結制御部５３４、及びパーシング機能部６１０を含む。復号化ソリューション５３０は、連結制御部５３４の呼出により少なくとも１つの機能部がロードされて予め指定されたプロセスを行うようにする少なくとも１つの作業メモリをさらに含むことができる。
【０１１１】
パーシング機能部６１０は、ビットストリームの符号化フォーマットに関係なく、全てのビットストリームに対してシンタックスパーシングが可能な機能部であってもよく、特定類型のビットストリームのシンタックスパーシングのために特定して生成された機能部であってもよい。すなわち、パーシング機能部６１０はシンタックスパーシングを行うための少なくとも１つの機能部であって、後で図面を参照しながら具体的に説明する。
【０１１２】
図５及び図６に示すように、本発明に係る復号化器３００は、ツールボックス５１５内に備えられた機能部（復号化処理を行う復号化機能部または／及びシンタックスパーシングを行うパーシング機能部６１０）を選択的にロードして復号化することにより、入力されたビットストリームの符号化方式を問わずに復号化できるように多様な形態で再組み合わせまたは生成される復号化器の実現が可能となる。
【０１１３】
上述したように、復号化器形成部５２０（または連結制御部５３４）は、入力されたビットストリームを処理するための復号化器を形成する機能を行い、ビットストリームの復号化は復号化器形成部５２０（または連結制御部５３４）の制御により構成された実際の復号化器、すなわち復号化ソリューション５３０により行われる。このように、機能上の因果関係のある２つの処理部を分離することにより、１つの復号化器形成情報を用いて複数の復号化ソリューションを製作できるようになり、復号化器がより効率的な処理を行うことができる。
【０１１４】
以下、図５及び／または図６に示された復号化処理ユニット３２０の各構成要素の機能及び動作について図面を参照しながら説明する。
【０１１５】
ディスクリプション復号化器５０５は、上述したように、入力された符号化された復号化器ディスクリプション３１３を復号化器ディスクリプション５９０に復号化した後、複数の部分復号化器ディスクリプションをディスクリプション格納部５１０に格納する。
【０１１６】
ツールボックス５１０は、予め指定されたプロセスを行うためにそれぞれ実現された複数の機能部を含む。ここで、１つの機能部で実現されるか、複数の機能部の組み合わせで実現されるパーシング機能部６１０は、ツールボックス５１５内に含まれてもよく、復号化ソリューション５３０内に含まれてもよい。パーシング機能部及びそれぞれの機能部は、それぞれプログラムコードの組み合わせで実現されることもできる。
【０１１７】
ツールボックス５１０に含まれる各機能部は、適用される用途別に区分された複数の細部ツールボックスに細分化されてもよい（図７参照）。例えば、ＭＰＥＧ用機能部が含まれる第１ツールボックス、ＭＰＥＧ用機能部以外の機能部が含まれる第２ツールボックスなどに細分化することができる。または、ＭＰＥＧ−２用機能部の集合を第１ツールボックス、ＭＰＥＧ−４用機能部の集合を第２ツールボックス、中国でのデジタルＴＶ圧縮規格であるＡＶＳ用機能部の集合を第３ツールボックスなどに細分化することができる。
【０１１８】
また、ツールボックス５１０そのものを複数で実現し、復号化器形成部５２０及び復号化ソリューション５３０とは独立した連結関係を有することもできる。この場合、図示されていないが、上述した第１ツールボックス、第２ツールボックスなどが独立した形式のツールボックスで実現されることができる。
【０１１９】
ただし、以下では説明の便宜のために、１つのツールボックス５１０内に複数の細部ツールボックスが含まれている場合を中心に説明する。
【０１２０】
ツールボックス５１０はそれぞれの機能（すなわち予め設定されたプロセス）を行うように実現された機能部（ＦＵ）を含む領域であって、各機能部は連結制御部５３４の連結制御により作業メモリにロードされて順次連結動作関係を形成することで、従来ビットストリーム３１６に含まれている符号化されたビデオデータを動画データとして出力する。
【０１２１】
また、図６を参照して説明したように、パーシング機能部６１０は復号化ソリューション５３０に含まれてシンタックスパーシング制御情報を用いることにより、連結制御部５３４の連結制御なしで従来ビットストリーム３１６の解析を行うように設定されることもできる。これは、後行する機能部が、パーシング機能部６１０の解析によりＣＳＣＩ格納部５３２に格納された要素情報及び／またはパーシング機能部６１０から出力されるマクロブロック（ＭＢ）サイズの動画データを用いることができるからである。
【０１２２】
パーシング機能部６１０は、シンタックスパーシング制御情報を用いて入力された従来ビットストリーム３１６を解析してシンタックスパーシングの結果物である要素情報をＣＳＣＩ格納部５３２に格納する。ＣＳＣＩ格納部５３２は、例えばバッファメモリであってもよい。要素情報は、例えばＣＳＣＩ（Control Signal/Context Information、制御情報／文脈情報）であってもよい。パーシング機能部６１０によりパーシングされてＣＳＣＩ格納部５３２に格納された要素情報は、該当ステップのパーシング結果値であり、かつ従来ビットストリーム３１６の後続のシンタックスを決める入力値になることもできる。
【０１２３】
パーシング機能部６１０は、シンタックスパーシングされた従来ビットストリーム３１６のヘッダと映像データに対するエントロピー復号化を行って予め指定されたマクロブロックサイズの動画データを連結制御部５３４の連結制御による後行の機能部（ＦＵ）に出力できる。
【０１２４】
また、パーシング機能部６１０は、マクロブロックサイズの動画データを予め指定されたバッファメモリに格納し、連結制御部５３４のロード（すなわち、連結制御）による後行の機能部が当該バッファメモリからマクロブロックサイズの動画データを読み出して処理した後、後行の機能部の処理のために当該バッファメモリに処理した動画データを格納することもできる。
【０１２５】
すなわち、パーシング機能部６１０は、マクロブロックサイズの動画データをＣＳＣＩ格納部５３２または別途のバッファメモリに格納した後、連結制御部５３４が、格納されたマクロブロックサイズの動画データを選択した機能部に提供するか、選択された機能部がＣＳＣＩ格納部５３２または別途のバッファメモリから当該動画データを読み出すこともできる。ただし、以下ではパーシング機能部６１０が出力するマクロブロックサイズの動画データが、連結制御部５３４の連結制御による機能部に直接入力される場合を仮定して説明する。
【０１２６】
パーシング機能部６１０は１つのソフトウェアプログラム（プログラムコードの組み合わせを含む）で実現できる。複数の規格（例えばＭＰＥＧ−１／２／４／ＡＶＣ、ＡＶＳなど）にそれぞれ対応する複数の機能を行うようにパーシング機能部６１０が実現されてもシンタックスパーシング制御情報を用いて対応する動作を行うことができるからである。勿論パーシング機能部６１０が、図７に示すように、複数の機能部に細分化され実現されてもよく、各機能部がブロック化されたプログラムコードの組み合わせで実現されてもよいことは明らかである。
【０１２７】
以下、図７及び図８を参照しながらツールボックス５１５内の機能部について簡略に説明する。
【０１２８】
図７に示すように、ツールボックス５１０に含まれる各機能部は、適用される用途別の集合で区分された複数の細部ツールボックスに細分化できる。勿論ツールボックス５１０そのものが複数で実現され、復号化器形成部５２０及び復号化ソリューション５３０とは独立した連結関係を有することもできる。
【０１２９】
先ず、図７に示された各機能部、すなわち機能別に区分された機能部のうち、パーシング機能を行うパーシング機能部の機能について説明する。パーシング機能部はツールボックス５１５内に存在し、連結制御部５３４の制御によりロードされて動作するか、復号化ソリューション５３０内に備えられて動作することは上述した通りである。
【０１３０】
機能別に区分されたパーシング機能部は、図７に示されたように、ＮＡＬＰ（Network Abstraction Layer Parsing）機能部７１０、ＳＹＮＰ（syntax parsing）機能部７２０、ＣＴＸ（Context
determination）機能部７３０、ＶＬＤ（Variable Length Decoding）機能部７４０、ＲＬＤ（Run Length Decoding）機能部７５０、ＭＢＧ（Macro Block
Generator）機能部７６０などであってもよい。
【０１３１】
勿論、パーシング機能部にはシンタックスパーシングのための機能部であれば適用される規格を問わずに全て含まれることができ、また技術発展過程でシンタックスパーシングなどのために必要とされる機能部は新規に追加でき、既存機能部の修正も可能であり、不要の機能部は除去できる。また、パーシング機能部として備えられた各機能部は、各規格に独立的に存在せず、規格を問わずに同じ処理が可能な機能部であれば１つの機能部に統合して備えられることもできる。各機能部の機能は当業者にとって自明な事項であるため、簡略に説明する。
【０１３２】
ＮＡＬＰ機能部７１０はＭＰＥＧ−４ＡＶＣのＮＡＬ（Network Abstraction Layer）をパーシングする機能部であり、ＳＹＮＰ機能部７２０はビットストリームのシンタックスをパーシングする機能部である。ＳＹＮＰ機能部７２０がＶＬＤ機能部７４０に含まれることもできる。
【０１３３】
ＣＴＸ機能部７３０はＭＰＥＧ−４ＡＶＣのＶＬＣテーブルを決める機能部であり、ＶＬＤ機能部７４０はエントロピー（Entropy）復号化を行う機能部である。
【０１３４】
ＲＬＤ機能部７５０はＡＣ値をエントロピー復号化する機能部であり、ＭＢＧ機能部７６０はＤＣ値及びＡＣ値を結合して１つのＭＢ（Macro Block）データを生成する機能部である。上で言及したパーシング機能部６１０内の全ての機能部及び一部の機能部は、システムの実現方式によりＶＬＤ機能部７４０にその機能が含まれることができる。
【０１３５】
上述したように、パーシング機能部は１つのソフトウェアプログラムで実現されるか、複数のソフトウェアプログラムで実現（例えば、ＶＬＤ機能部７４０などを独立したソフトウェアプログラムで独立的に実現する）されることができる。パーシング機能部がシンタックスパーシング制御情報を用いて要素情報を抽出または生成してＣＳＣＩ格納部５３２に格納する過程については、後の連結制御部５３４の説明で詳細に説明する。
【０１３６】
次に、図７に示された各機能部、すなわち機能別に区分された機能部のうち、復号化機能を行う復号化機能部の機能について説明する。
【０１３７】
ツールボックス５１５内に備えられている復号化機能部は、連結制御部５３４の選択的ロードにより活性化され予め指定されたプロセスをそれぞれ行うことにより、パーシング機能部により出力された（またはパーシング機能部がバッファメモリに格納した）マクロブロック単位の動画データを復号化して予め指定されたサイズの動画データとして出力する。
【０１３８】
ツールボックス５１５には、各規格に対応して上述した機能を行う機能部（ＦＵ）が含まれることができる。各機能部は、独立した処理ブロック（例えばソフトウェアプログラム、命令語コードの組み合わせ、関数など）で実現されるか、１つの統合された処理ブロックで実現されることができる。復号化機能部が１つの統合された処理ブロックで実現されても連結制御部５３４の連結制御により、対応付けられている処理が行われ得ることは明らかである。
【０１３９】
復号化機能部は、ＤＦ（De-blocking Filter）機能部８１０、ＶＲ（VOP Reconstructor）機能部８１５、ＦＦＲ（Frame Field Reordering）機能部８２０、ＩＰＲ（Intra prediction and Picture Reconstruction）機能部８３０、ＩＴ（Inverse Transform）機能部８３５、ＩＱ（Inverse Quantization）機能部８４５、ＩＡＰ（Inverse AC Prediction）機能部８５５、ＩＳ（Inverse Scan）機能部８６０、ＤＣＲ（DC Reconstruction）機能部８６５などを含むことができる。
【０１４０】
ＩＴ４×４機能部８４０、ＩＱ４×４機能部８５０、及びＤＣＲ４×４機能部８７０は、処理するブロックサイズが４×４であることを特徴とする。これは、ＭＰＥＧ−１／２／４の場合には、変換（Transform）、量子化（Quantization）、予測（Prediction）時に８×８ブロックサイズでデータを処理することに比してＭＰＥＧ−４ＡＶＣは、４×４ブロックサイズでデータを処理することがあるからである。
【０１４１】
ツールボックス５１５にはデータ復号化機能を行う機能部であれば、適用規格を問わずに全て含まれることができ、さらに技術発展過程で必要とされる機能部を追加でき、既存機能部の修正も可能であり、不要の機能部は除去できる。例えば、復号化処理のために４×４のブロックサイズでデータを処理するＩＳ４×４機能部などがさらに必要とされる場合には、当該機能部をツールボックス５１５に追加することができる。また、ＭＰＥＧ−４ＡＶＣでイントラ予測（Intra Prediction）を行うためのＳＰＲ（Special Prediction）機能部（図示せず）などをさらに追加することもできる。
【０１４２】
ツールボックス５１５内に備えられた各機能部は、各規格に対して独立的に存在せず、規格を問わずに同じ処理が可能な機能部であれば、１つの機能部に統合して備えられることもできる。各機能部の機能は当業者にとって自明な事項であるため、簡略に説明する。
【０１４３】
ＤＦ機能部８１０はＭＰＥＧ−４ＡＶＣのデブロッキングフィルタ（de-blocking filter）であり、ＶＲ機能部８１５は復元されたピクセル値を格納する機能部である。
【０１４４】
ＦＦＲ機能部８２０はインターレース（interlaced）モードの機能部であり、ＩＰＲ機能部８３０はＭＰＥＧ−４ＡＶＣのイントラ予測の後に復元されたピクセル値を格納する機能部である。上述したように、ＭＰＥＧ−４ＡＶＣのイントラ予測はＳＰＲ機能部で行われることができる。
【０１４５】
ＩＴ機能部８３５はＤＣ値及びＡＣ値の逆変換（inverse transform）を行う機能部であり、ＩＱ機能部８４５はＡＣ値を逆量子化（inverse quantization）する機能部である。
【０１４６】
ＩＡＰ機能部８５５はＡＣ値を逆予測（inverse AC prediction）する機能部であり、ＩＳ機能部８６０はＡＣ値を逆スキャン（inverse scan）する機能部である。ＤＣＲ機能部８６５はＤＣ値の逆予測及び逆量子化を行う機能部である。
【０１４７】
図７に示された各機能部は機能別の区分による広義の名称で表現されており、本発明は、図８に示すように、広義の名称の機能部に、用途別に細分化された機能部が含まれるように実現されることができる。例えば、ＩＴ機能部はＩＴ４×４、ＩＴ８×８、ＩＴｆｏｒＣｈｒｏｍａなどに多様化でき、ＩＱ機能部も量子化（Quantization）機能部とサチュレーション（Saturation）機能部などに多様化できる。具体的な例として、ＩＳ機能部８６０は複数の機能部、すなわちMPEG4.algo.IS.luma.8×8、MPEG4.algo.IS.chroma.8×8、及びMPEG4.mgnt.ISなどに細分化できる。また、ＩＴ機能部８３５も複数の機能部、すなわちMPEG2.algo.IT.luma.8×8、MPEG4.algo.IT.luma.8×8、及びMPEG4AVC.algo.IT.luma.4×4などに細分化できる。また、ＩＱ機能部８４５も複数の機能部、すなわちMPEG2.algo.quan.luma.8×8、MPEG2.algo.satu.luma.8×8などに細分化できる。
【０１４８】
上述したように、機能部の多様化及び従属機能部（Sub-FU）に区分するために、下記表１及び表２の機能部ＩＤまたは／及び名称付与基準を適用することができる。しかし、これに制限されることはない。
【０１４９】
ツールボックス５１５内の各機能部は、機能別に割り当てられた集合体として広義の名称で表現されることができる。すなわち、実行方法は異なっても同じ役割を行う機能部が１つ以上存在すると仮定すると、これらの同じ機能を行う機能部を１つのグループに合わせることができる。このように１つのグループに合わせる理由は、ＩＤや名称を用いるとき、該当機能部へより速くアクセスできるからである。ＩＤを構成する実施例としては、表１及び表２に示すように、名称（Name）の構成方式に応じて対応するビットが割り当てられるようにできる。機能部の名称（FU
Name）を構成する要素のうち、必須挿入要素である{STANDARD}.{Role}.{Name}に基本的なＩＤを構成でき、その他の追加要素にフラグ（flag）を付与することができる。
【０１５０】
機能部の名称表示のために割り当てられたビット
【表１】
2010525654.tif 000006
【０１５１】
上記以外に、図８に示すように、当該機能部が輝度（Luminance）処理用であるか、クロミナンス（Chrominance）処理用であるかを表示する項目をさらに含むことができる。
【０１５２】
すなわち、機能部の名称表示のためのビット割り当ては機能部の名称表現方法に応じて多様に適用できる。
【０１５３】
他の実施例によれば、機能部の名称表示形態を{STANDARD}.[list].{Role}.{Name}.
[property].[size].[implementation]のように適用することもできる。
【０１５４】
ここで、{STANDARD}は、当該機能部の適用可能な復号化規格を表示するためのものである。例えば、２つ以上の規格に適用できるものであればＧＥＮＥＲＩＣに対応し、特定規格にだけ適用できるものであれば当該規格に対応する。
【０１５５】
[list]は、当該機能部が２つ以上のstandardに対して汎用的に適用可能な場合、これを表示するためのものである。例えば、ＭＰＥＧ２、４、及びＡＶＣに汎用的に利用できる場合、GENERIC.24avc.algo.Interpolation.halfpelのように表現できる。
【０１５６】
{Role}は、当該機能部がアルゴリズムを行うか否かに関する情報を表示するためのものであり、{Name}は当該機能部の処理動作に対応する名称を表示するためのものである。
【０１５７】
[Property]は、当該機能部に対して指定された特性や特定のプロセスを表示するためのものである。例えば、GENERIC.24avc.Interpolation.halfpelのように機能部の名称が指定された場合、「halfpel」は特性を示し、これは補間（interpolation）時、１／２ピクセルまで計算に含めることを意味する。
【０１５８】
[Size]は、当該機能部が処理するマクロブロックサイズを意味する。
【０１５９】
[Implementation]は、当該機能部の実行のための付加的な情報を表示するためのものである。
【０１６０】
機能部ＩＤまたは／及び名称付与基準
【表２】
2010525654.tif 000007
【０１６１】
上述したように、各機能部に特定されたＩＤまたは／及び名称を付与することにより、各機能部を上位グループに従って合わせて管理することができる。すなわち、図７に示されたように、Standard別に各機能部を区分した後、各Standardに含まれている機能部がAlgorithmであるかまたはManagementであるかを区分して管理することができる。
【０１６２】
しかし、上述したパーシング機能部と復号化機能部と間の処理動作が順次に行われる必要がある（すなわち、パーシング機能部の動作終了後に復号化機能部の動作が開始される）とは限らず、連結制御部５３４の連結制御により２つ以上の機能部が作業メモリにロードされるようにすることで、並列的な処理も可能であることは明らかである。例えば、特定復号化機能部の動作のために必要とされる最小限の要素情報のみがパーシング機能部によりＣＳＣＩ格納部５３２に格納されればよい。
【０１６３】
また、図６を参照して説明したように、復号化ソリューション５３０内にパーシング機能部６１０が備えられているか、２つ以上の作業メモリが備えられている場合には、連結制御部５３４の別途の制御がなくても、シンタックスパーシング及び復号化処理の並列処理が可能であることは明らかである。
【０１６４】
ＣＳＣＩ格納部５３２には、パーシング機能部でＣＳＣＩ制御情報（またはシンタックスパーシング制御情報）を用いたシンタックスパーシングによる結果値の要素情報（例えば、ＣＳＣＩ）がＣＳＣＩＴ４４０に対応するように格納される。ＣＳＣＩ格納部５３２は、例えばバッファメモリ（buffer memory）であってもよい。
【０１６５】
ＣＳＣＩ格納部５３２に格納された要素情報は、パーシング機能部によりＳＥＴ４５０のプロセス実行のための入力データとして利用されるか、Ｓ−ＲＴ４６０で後続の連結インデックスを決めるための制御変数として利用されることができる。
【０１６６】
また、ＣＳＣＩ格納部５３２に格納された要素情報は、連結制御部５３４によりＦ−ＲＴ４２０で後続の連結インデックスを決めるための制御変数として利用されるか、ＦＵ−ＣＳＣＩＴ４３０で特定機能部（ＦＵ）の入力ＣＳＣＩをＣＳＣＩ格納部５３２に格納された要素情報とマッピングするために利用されることができる。
【０１６７】
すなわち、ＣＳＣＩ格納部５３２に格納された要素情報は、パーシング機能部と復号化機能部と間を連動させる役割をする。
【０１６８】
連結制御部５３４は、各機能部の選択的なロードを制御することにより、多様な規格で符号化されたビットストリームを復号化する各復号化機能部の連結関係を設定する。すなわち、連結制御部５３４は、機能部間の動作実行順序を制御するために、ツールボックス５１５に含まれている各機能部のうち、適切な機能部を選択的にロードする。このために、連結制御部５３４は、連結制御情報を用いて当該機能部を選択的にロードし、ロードされた復号化機能部は、パーシング機能部から提供された要素情報を用いてマクロブロック単位の動画データを復号化するようにする。
【０１６９】
以下、図５に示された復号化器形成部５２０の情報加工部５２４の動作を中心に各部分復号化器ディスクリプションの機能及び用途を図面を参照しながら説明する。また、連結制御部５３４などの処理動作に、情報加工部５２４で加工された情報が利用されるが、説明及び理解の便宜のために部分復号化器ディスクリプションの内容を参照して説明する。
【０１７０】
情報加工部５２４が連結制御情報を生成するために利用する部分復号化器ディスクリプションには、ＦＬ４１０、Ｆ−ＲＴ４２０、ＦＵ−ＣＳＣＩＴ４３０、及びＣＳＣＩＴ４４０などがある。また、シンタックスパーシングのための各機能部の連結関係を設定するためにＳ−ＲＴ４６０がさらに用いることができる。
【０１７１】
先ず、ＦＬ（FU List）４１０は、表３に示すように、ツールボックス５１５内に備えられた各機能部が含まれるツールボックスのＩＤ、当該機能部のＩＤと名称、当該機能部の入出力データの数などに関する部分復号化器ディスクリプションである。
【０１７２】
ＦＬ（FU List）
【表３】
2010525654.tif 000008
【０１７３】
ＦＬ４１０は、各機能部における入力データのバッファメモリの名称（または当該データの記録アドレスあるいは当該データが記録されたバッファメモリ内のアドレス）と当該機能部による出力データのバッファメモリの名称（または当該データの記録アドレスあるいは当該データが記録されるバッファメモリ内のアドレス）をさらに含むことができる。
【０１７４】
したがって、各機能部はＦＬ４１０を用いて入力データを読み込んで処理した出力データを記録することができる。また、ＦＬ４１０に記録された情報を用いて各機能部間に入出力データが伝達されるようにしたり、連結制御部５３４が各機能部に適切な入力データを提供することもできる。
【０１７５】
しかし、ＦＬ１００には要素情報を生成するパーシング機能部の入力データ及び出力データが記載されていないが、これはパーシング機能部がＳＥＴ４５０などの情報を用いて要素情報を生成し、生成した要素情報を指定の位置に記録するからである。
【０１７６】
連結制御部５３４により作業メモリにロードされた特定機能部は、連結制御部５３４から入力データを受け、予め設定されたプロセスを行って出力データを生成する。ここで、機能部とはツールボックス５１５に含まれ、入力データを予め指定されたプロセスで処理して出力データを生成する一連の処理過程（例えば、機能、アルゴリズムまたは関数など）を意味する。当該機能部は、出力データを後行の機能部（すなわち、後続して連結制御部５３４の制御によりロードされた機能部）の処理のためにバッファメモリに格納することができる。
【０１７７】
復号化処理ユニット３２０は、従来ビットストリーム３１６に含まれている符号化されたビデオデータの復号化のために１つの規格だけを利用すれば十分である場合には、ＦＬ４１０は当該規格に対応する処理を行うための機能部の情報だけを含んでもよい。
【０１７８】
しかし、当該ビデオデータが複数の規格により符号化された場合（例えば、複数のフレーム単位で異なる符号化規格を適用した場合）には、当該符号化されたビデオデータの復号化のために複数の規格による機能部の情報が必要となる。したがって、この場合ＦＬ４１０は、対応する複数の規格によるすべての機能部のうち、符号化されたビデオデータの復号化のために必要とされる複数の規格による機能部の情報を含まなければならない。上述した表３を参照すれば、用いられる機能部の名称からＭＰＥＧ４とＡＶＳの規格が利用されたことが分かる。
【０１７９】
しかし、ビデオデータが複数のフレーム単位で異なる符号化規格を適用したとしても、適用された符号化規格別に複数の従来ビットストリーム３１６及び拡張ビットストリーム３０５が生成され出力されれば、それぞれのＦＬ４１０はそれぞれ対応する規格による機能部の情報だけを含めばよい。
【０１８０】
ＦＬ４１０は、テキスト記述やバイナリ記述（ビット変換されたバイナリコード形態）などの記述方式で記述できるだけでなく、上記部分復号化器ディスクリプションのうち必要とされる最小限のデータが類似スクリプト言語で記述されることもできる。
【０１８１】
次に、Ｆ−ＲＴ（FU-Rule Table）４２０は、入力された従来ビットストリーム３１６を復号化するために用いられる機能部の連結情報を提供する。
【０１８２】
Ｆ−ＲＴ４２０は、表４に示すように、各連結情報（Rule）を区分するインデックス（Index、Ｒ＃）、インデックスに対応して機能部を特定するツールボックスのＩＤ及び機能部のＩＤ、連結制御のために必要な要素情報（Input CS/CI、Ｃ＃）、後行の機能部と連結可能な分岐の数（No. of
branches）、分岐の数だけ必要となる各分岐情報（branch information）（＃１、＃２、＃３…）などを含む。
【０１８３】
Ｆ−ＲＴ（FU Rule Table）
【表４】
2010525654.tif 000009
【０１８４】
表４のインデックスＲ０は、ツールボックスのＩＤが０Ａで、ＦＵのＩＤがＦ００９２であるため、表３に示されたＦＬを参照すると、当該機能部がMPEG4.mgnt.Address.16×16であることが分かる。
【０１８５】
上記表４には、分岐の数が全て１であると例示されており、必要とされる要素情報は言及されていない。しかし、分岐の数が２以上であれば、必要とされる要素情報が言及され、必要とされる要素情報を用いた条件文の判断結果に応じて連結インデックスが変わることになる。すなわち、分岐の数が１である場合には、必要とされる要素情報が存在せず、分岐情報が指示する連結インデックスに進む。当該条件文の後には、後続の連結インデックス（Ｒ）が提示される。
【０１８６】
復号化処理ユニット３２０が、従来ビットストリーム３１６に含まれている符号化されたビデオデータの復号化のために１つの規格だけを利用すれば十分である場合には、Ｆ−ＲＴ４２０は当該規格にだけ対応する処理を行うための機能部の連結関係などを指示する。
【０１８７】
しかし、当該ビデオデータが複数の規格により符号化された場合（例えば、複数のフレーム単位で異なる符号化規格を適用した場合）には、当該符号化されたビデオデータの復号化のために複数の規格による機能部の連結関係などを指定する情報が含まれることは明らかである。これは、後述する各部分復号化器ディスクリプションが複数の規格に適用されるために追加情報及び／または修正などを必要とする場合には、当該情報をさらに含むことも明らかである。
【０１８８】
Ｆ−ＲＴ４２０は、テキスト記述やバイナリ記述（ビット変換されたバイナリコード形態）などの記述方式で記述できるだけでなく、上記部分復号化器ディスクリプションのうち必要とされる最小限のデータが類似スクリプト言語で記述されることもできる。
【０１８９】
次に、ＦＵ−ＣＳＣＩＴ（FU CSCI Table）４３０は、ＣＳＣＩ格納部５３２に格納されている要素情報と各機能部が必要とする要素情報（input CSCI）とを連結するための部分復号化器ディスクリプションである。
【０１９０】
表５に示すように、ＦＵ−ＣＳＣＩＴ４３０は、ツールボックスのＩＤ、ＦＬ４１０のインデックスと要素情報との対で示されるインデックス（Ｆ−Ｃ）、当該要素情報、マッピングのためにＣＳＣＩＴ４４０で用いるインデックス（Ｃ）を含む。以外に、ＦＵ−ＣＳＣＩＴ４３０は、要素情報のデータタイプ（data type）をさらに含むことができる。例えば、データタイプは9-bit integer、1-bit flagなどの形式で記述することができる。
【０１９１】
ＦＵ−ＣＳＣＩＴ
【表５】
2010525654.tif 000010
【０１９２】
ＦＵ−ＣＳＣＩＴ４３０は、テキスト記述やバイナリ記述（ビット変換されたバイナリコード形態）などの記述方式で記述できるだけでなく、上記部分復号化器ディスクリプションのうち必要とされる最小限のデータが類似スクリプト言語で記述されることもできる。
【０１９３】
例えば、Ｆ−ＲＴ４２０からＦ００９８に２つの要素情報が入力されると（表５参照）、ＦＵ−ＣＳＣＩＴ４３０には機能部別の要素情報がリストされる。すなわち、Ｆ００９８−Ｃ１、Ｆ００９８−Ｃ２がリストされ、各要素情報はＣ５６、Ｃ５８であることが分かる。また、当該要素情報はＣＳＣＩＴによりマッピングされる。ここで、Ｃ５６、Ｃ５８などはそれぞれ該当する要素情報が格納されているアドレス（例えば、記録アドレス、バッファメモリの名称またはバッファメモリ内の記録アドレス）として認識され、当該機能部は入力データ及びインデックス（Ｃ）に対応する要素情報を用いて出力データを生成して出力（またはバッファメモリに記録）することができる。
【０１９４】
最後に、ＣＳＣＩＴ４４０は、パーシング機能部６１０がＳＥＴ４５０及びＳ−ＲＴ４６０を用いたプロセスの結果情報である要素情報（例えば、ＣＳＣＩ）の詳細情報が記述されたものである。すなわち、ＣＳＣＩＴ４４０は、従来ビットストリーム３１６から処理されてＣＳＣＩ格納部５３２に格納され、復号化機能部に用いられる全ての意味のある資料（すなわち、要素情報）に関する情報を有する。
【０１９５】
図９に示すように、ＣＳＣＩＴ４４０は当該要素情報の固有番号であって、区分子であるインデックス（Ｃ）、フラグ（flag）、当該要素情報の名前（Element Name）、当該要素情報の構造的な特性を指定する属性（例えば、当該要素情報の格納空間のサイズ、当該要素情報が配列型（Array）であるか否かなど）、当該要素情報がシンタックスパーシング過程にだけ利用されるかまたは全体の復号化過程で利用されるかを示すGlobal/Localなどを含む。
【０１９６】
ＣＳＣＩＴ４４０は、テキスト記述やバイナリ記述（ビット変換されたバイナリコード形態）などの記述方式で記述できるだけでなく、上記部分復号化器ディスクリプションから必要とされる最小限のデータが類似スクリプト言語で記述されることもできる。
【０１９７】
以上、表３から表５を参照しながらＦＬ４１０、Ｆ−ＲＴ４２０、及びＦＵ−ＣＳＣＩＴ４３０について説明した。
【０１９８】
以外にも、ＦＬ４１０、Ｆ−ＲＴ４２０、及びＦＵ−ＣＳＣＩＴ４３０を表現する方法は様々であり、以下にその表現例を例示する。
【０１９９】
ＦＬ４１０、Ｆ−ＲＴ４２０、及びＦＵ−ＣＳＣＩＴ４３０の他の表現例
【０２００】
ＦＬ
【表６】
2010525654.tif 000011
【０２０１】
Ｆ−ＲＴ
【表７】
2010525654.tif 000012
【０２０２】
ＦＵ−ＣＳＣＩＴ
【表８】
2010525654.tif 000013
【０２０３】
ＦＬ４１０、Ｆ−ＲＴ４２０、及びＦＵ−ＣＳＣＩＴ４３０のまた他の表現例
【０２０４】
ＦＬ
【表９】
2010525654.tif 000014
【０２０５】
Ｆ−ＲＴ
【表１０】
2010525654.tif 000015
【０２０６】
ＦＵ−ＣＳＣＩＴ
【表１１】
2010525654.tif 000016
【０２０７】
ＦＬ４１０、Ｆ−ＲＴ４２０、及びＦＵ−ＣＳＣＩＴ４３０のまた他の表現例
【０２０８】
ＦＬ
【表１２】
2010525654.tif 000017
【０２０９】
Ｆ−ＲＴ
【表１３】
2010525654.tif 000018
【０２１０】
ＦＵ−ＣＳＣＩＴ
【表１４】
2010525654.tif 000019
【０２１１】
ＦＬ４１０、Ｆ−ＲＴ４２０、及びＦＵ−ＣＳＣＩＴ４３０のまた他の表現例
【０２１２】
ＦＬ
【表１５】
2010525654.tif 000020
【０２１３】
Ｆ−ＲＴ
【表１６】
2010525654.tif 000021
【０２１４】
ＦＵ−ＣＳＣＩＴ
【表１７】
2010525654.tif 000022
【０２１５】
上述したように、本発明は、各機能部に固有のＩＤまたは／及び名称を付与することにより効率的な機能部管理ができる特徴を有する。ツールボックス５１５は、各機能部のＩＤ（または／及び名称）を用いて直接当該機能部を管理し、ユーザは各機能部に割り当てられたＩＤを用いた復号化器ディスクリプションを通して当該機能部にアクセスできる。例えば、ＭＰＥＧ２のＩＤＣＴを構成する機能部の固有ＩＤが００００１１Ａと仮定すると、ＭＰＥＧ２のＩＤＣＴ機能部を使用しようとするユーザは復号化器ディスクリプションを構成する際に、ただＩＤを通してアクセスするように記述すればよい。すなわち、ユーザは、ツールボックス５１５内の使用しようとする機能部の位置を確認する必要がない。単に、ＩＤあるいは名称（Name）の利用による実行速度や可読性には差が発生することはある。
【０２１６】
上述したように、特定機能部へのアクセスのために用いられるＩＤは、最適化された文字及び数字の組み合わせからなるため、当該機能部への迅速なアクセスが可能となる。ツールボックス５１５も、一部符号の同一である機能部をグループ化して管理することにより、ＩＤを用いた機能部へのアクセス時に、より迅速な検索及びアクセスが可能となる。また、機能部の名称はＩＤの組み合わせにおいてユーザが容易に認知できるようにする情報を提供する。機能部のＩＤと名称（name）は、下記のＦ−ＲＴ４２０の例のように混用して用いることもできる。
【０２１７】
2010525654.tif 000023
【０２１８】
以下には、パーシング機能部６１０（またはツールボックス５１５内のシンタックスパーシングを行う機能部）が従来ビットストリーム３１６から要素情報を抽出または生成してＣＳＣＩ格納部５３２に格納するために利用するＣＳＣＩ制御情報を生成するための部分復号化器ディスクリプションである、ＣＳＣＩＴ４４０、ＳＥＴ４５０、Ｓ−ＲＴ４６０、及びＤＶＴ４７０について説明する。ただし、ＣＳＣＩＴ４４０については、前で図９を参照して説明したので、これに対する説明は省略する。
【０２１９】
先ず、ＳＥＴ４５０は、入力された従来ビットストリーム３１６のシンタックスに関する情報で構成された部分復号化器ディスクリプションである。
【０２２０】
図１０から図１３に示すように、ＳＥＴ４５０は各シンタックスに対するインデックス（index）、要素名称（Element Name）、入力データ（input data）、出力データ（output data）、及びＳＥＴ−プロセス（process by SET-PROC）情報を含む。ここで、インデックスは、Ｓ−ＲＴ４６０で用いられる各シンタックスを区分する区分子（Ｓ）である。要素名称は、シンタックスの名前であって、シンタックスの意味や役割により命名され得る。入力データは、従来ビットストリーム３１６において一度に入力される名目上のビット長である。出力データは、要素情報（すなわち、ＣＳＣＩ情報（Ｃ））であって、獲得したデータを格納する際に参照するＣＳＣＩＴ４４０の目録を示す。ここで、出力データフィールドは、生成された要素情報の記録されるバッファメモリの名称（または当該データの記録アドレスあるいは当該データが記録されたバッファメモリ内のアドレス）であってもよい。これを用いて、今後当該要素情報が入力データとして必要となる場合、ＣＳＣＩ情報（Ｃ）を用いて当該要素情報を読み込む（read）ことができる。ＳＥＴ−プロセスは、各ビットストリームシンタックスの入力を受けて、どのような加工手続きで出力データの要素情報を生成するかの過程を記述する。
【０２２１】
ＳＥＴ４５０は、テキスト記述やバイナリ記述（ビット変換されたバイナリコード形態）などの記述方式で記述できるだけでなく、上記部分復号化器ディスクリプションから必要とされる最小限のデータが類似スクリプト言語で記述されることもできる。
【０２２２】
次に、Ｓ−ＲＴ４６０は、従来ビットストリーム３１６内の各シンタックス間の連結情報を示すものである。すなわち、Ｓ−ＲＴ４６０は各シンタックスを呼び出し、次のシンタックスに移動するように指示する情報を有する。パーシング機能部６１０はＳ−ＲＴ４６０を用いて従来ビットストリーム３１６を読み込んだり、要素情報がＣＳＣＩ格納部５３２に格納及び／または更新される順序を規定する。
【０２２３】
図１４から図１７に示すように、Ｓ−ＲＴ４６０は、インデックス（Ｒ）、シンタックスのインデックス（Ｓ）、入力データ（Ｃ）、分岐の数（No. of branches）、分岐情報を含む。
【０２２４】
インデックス（Ｒ）は、各連結情報（Rule）を区分する。シンタックスのインデックス（Ｓ）は、特定連結インデックスで処理するシンタックスを指定するため、パーシング機能部（またはシンタックスパーシングを行う機能部）は、ＳＥＴ４５０を用いて当該シンタックスに対して指定されたプロセスを行う。
【０２２５】
入力データは、当該連結インデックスにおける連結制御のための条件判断に用いられる要素情報の目録を示す。
【０２２６】
分岐の数は、後続のシンタックスに連結可能な場合の数であって、当該連結インデックスが有する分岐経路の総数を示す。分岐情報は、分岐の数だけ必要とされる分岐情報が存在（＃１、＃２、＃３…など）し、次に処理する連結インデックスを決定する条件判断アルゴリズムである。分岐情報により、どんな順序でどんな内容を読み込むかが直接判断できるようになる。図１４から図１７に示すように、分岐の数が１である場合には入力データが存在せず、分岐情報に指定された連結インデックスを処理するために直ちに進む。しかし、分岐の数が２以上である場合には条件判断が行われ（条件文の後には次の連結情報（Ｒ）で構成される）、対応する連結インデックスを処理するために進む。
【０２２７】
パーシング機能部６１０は、当該連結インデックスで定義したシンタックスを処理してＣＳＣＩ格納部５３２を更新した後、更新されたＣＳＣＩ格納部５３２の要素情報を参照して読み込み、その後分岐条件の判断に活用する。例えば、インデックスＲ０の分岐情報の分岐条件である「Ｃ０＝＝１」でのＣ０はシンタックスＳ０を処理した後の要素情報Ｃ０である。
【０２２８】
Ｓ−ＲＴ４６０は、テキスト記述やバイナリ記述（ビット変換されたバイナリコード形態）などの記述方式で記述できるだけでなく、上記部分復号化器ディスクリプションから必要とされる最小限のデータが類似スクリプト言語で記述されることもできる。
【０２２９】
最後に、ＤＶＴ４７０は、各符号化器／復号化器で用いるハフマンテーブル情報が記録された部分復号化器ディスクリプションである。ＭＰＥＧ−１／２／４／ＡＶＣでは、各符号化の際にエントロピー符号化（entropy coding）を行う。このとき、主にハフマンコーディング（Huffman
coding）方法が利用され、この場合に用いられる情報がハフマンテーブルである。統合コーデックを実現するためには、各復号の際に、当該復号化器に用いられるハフマンテーブルの情報が提供されなければならない。したがって、本発明に係る復号化ディスクリプションには、シンタックスパーシングの際に、各シンタックスに該当するハフマンテーブルの情報を含む。勿論、各規格に対応するハフマンテーブルの情報が既にディスクリプション格納部５１０に記録されている場合には、ＤＶＴ４７０の伝送は省略されるか、コーデック番号（Codec #）とプロファイル及びレベル番号（Profile and level #）のみが含まれてもよい。
【０２３０】
図１８から図１９に示すように、ＤＶＴ４７０は、各ハフマンテーブルにおける名前（name）、ハフマンコーディングにより圧縮され出力される実際値（value）及び圧縮された実際値が従来ビットストリーム３１６に格納される際に用いられるコード値（code）を含む。例えば、ＭＣＢＰＣ値を圧縮して「３」という実際値（value）が得られた場合、ハフマンテーブルのマッピング（Huffman table mapping）作業（例えば、ＳＥＴ４５０のＰＲＯＣＥＳＳ部分）により従来ビットストリーム３１６にはコード値（code）「０１１」が記録される。他の例として、上述したＳＥＴ４５０のインデックスＳ７７のＰＲＯＣＥＳＳ部分にはＶＬＤ［１］と記録されており、ＶＬＤという関数を呼び出す。この関数により、予め指定された長さ（固定長または可変長）分だけ従来ビットストリーム３１６を読み込んでコード値（code）を得た後、ハフマンテーブルのマッピング作業により対応する実際値（value）を得ることができる。このとき、利用されるハフマンテーブルは［１］、すなわち１番目のテーブルのＣＢＰＹである。
【０２３１】
ＤＶＴ４７０は、テキスト記述やバイナリ記述（ビット変換されたバイナリコード形態）などの記述方式で記述できるだけでなく、上記部分復号化器ディスクリプションから必要とされる最小限のデータが類似スクリプト言語で記述されることもできる。
【０２３２】
各部分復号化器ディスクリプションはバイナリで記述されることにより、格納空間が低減され、処理効率が高くなり、復号化ディスクリプションを含んだ拡張ビットストリーム３０５の伝送時間を低減できるという長所がある。
【０２３３】
以下、パーシング機能部６１０及び／または連結制御部５３４に用いられる各部分復号化器ディスクリプション間の連動過程を説明する。
【０２３４】
本発明に係る復号化器３００の復号化処理ユニット３２０の動作開始方法は様々である。この中、いくつかの例だけを提示すれば次の通りである。
【０２３５】
図５に示された復号化処理ユニット３２０に適用できる例であって、連結制御部５３４が、復号化器形成部５２０から受信したＣＳＣＩ制御情報と連結制御情報とを用いてツールボックス５１５内の各機能部の処理関係（例えば、動作順序、連結関係など）を制御する方法が挙げられる。これは上述したＦ−ＲＴ４２０と同様に、ツールボックス５１５内の機能部のうち、パーシング機能部６１０を先にロードして従来ビットストリームをシンタックスパーシングした要素情報がＣＳＣＩ格納部５３２に格納されるようにした後、制御権限が連結制御部５３４に戻る（return）（例えば、Ｓ−ＲＴ４６０のインデックスＲ７２と同じく、制御権限が連結制御部５３４に戻るようにする）と、対応する機能部（ＦＵ）が後続の動作を処理するためにロードされることにより、各機能部の連結関係を制御する。
【０２３６】
次に、図６に示された復号化処理ユニット３２０に適用できる例であって、シンタックスパーシング制御情報を受信したパーシング機能部６１０が独立的に動作を開始して従来ビットストリームに対するシンタックスパーシングを完了すると、連結制御情報を受信した連結制御部５３４が復号化機能部の選択的ロードにより連結関係を制御する方法が挙げられる。この場合、連結制御部５３４は、先ずパーシング機能部６１０が必要とする一部／全体の要素情報がＣＳＣＩ格納部５３２に格納完了されたか否かを認識しなければならない。このために、連結制御部５３４は、必要とする要素情報がＣＳＣＩ格納部５３２に格納されたか否かを持続的に監視するか、要素情報を格納したパーシング機能部６１０がこれを連結制御部５３４に通知（例えば、Ｓ−ＲＴ４６０のインデックスＲ７２と同じく、制御権限が連結制御部５３４に戻るようにする）しなければならない。しかし、連結制御部５３４（または連結制御部５３４の制御によりロードされた任意の機能部）及び／またはパーシング機能部６１０は、必要とされる情報がＣＳＣＩ格納部５３２に格納されたか否かを監視しなく、動作開始した状態で、必要とする情報が当該格納部に格納されるまで待機することもできることは明らかである。
【０２３７】
図５または／及び図６に示された復号化処理ユニット３２０に適用できる例であって、復号化器形成部５２０がＣＳＣＩ制御情報、連結制御情報などを連結制御部５３４及び／またはパーシング機能部６１０に伝達することにより動作開始されるように実現する方法が挙げられる。
【０２３８】
以下、上述した第１実施例を中心にパーシング機能部６１０及び／または連結制御部５３４に用いられる各部分復号化器ディスクリプション間の連動過程を説明する。
【０２３９】
先ず、連結制御部５３４は、ディスクリプション格納部５１０からＦ−ＲＴ４２０の一番目の規則情報（Rule）を読み込んで当該機能部を呼び出す。連結制御部５３４は、Ｆ−ＲＴ４２０に示されたように、一番初めにＦ０（Ｒ０）を読み込み、ツールボックス５１５内のパーシング機能部をロードして処理が開始されるようにする。これは、パーシング機能部６１０に対応するプログラムコードの処理ブロックを活性化させるものであってもよい。ＦＬ４１０により、当該機能部がパーシング機能部であるか否かが分かる。
【０２４０】
パーシング機能部は、Ｓ−ＲＴ４６０の規則情報（Rule）のうち、連結制御部５３４により指定された（すなわち、Ｆ−ＲＴ４２０により指定された）規則情報（これは情報加工部５２４により加工された情報であってもよい）に対応するシンタックスを読み込み、対応する出力値を生成してＣＳＣＩ格納部５３２に格納する。ＣＳＣＩ格納部５３２に格納された当該要素情報が何であるかはＣＳＣＩＴ４４０に記載されている。続いて、パーシング機能部はＣＳＣＩ格納部５３２に格納された要素情報をＳ−ＲＴ４６０の対応する分岐情報に代入し、その結果に対応するインデックスの処理のために進む。例えば、インデックスＲ０に対応する分岐情報は「Ｃ０＝＝１」であるため、これを満たす場合はインデックスＲ１に進み、そうではない場合はエラー処理をする。このような過程は、「ＧＯ  ＲＴ」により制御権限がＦ−ＲＴ４２０（すなわち、連結制御部５３４）に移されるまで続けられる（例えば、Ｓ−ＲＴ４６０のインデックスＲ７２）。
【０２４１】
しかし、パーシング機能部がＳＥＴ４５０を用いて要素情報を生成しＣＳＣＩ格納部５３２に格納する過程において、ＶＬＤ関数が呼び出されると（例えば、ＳＥＴ４５０のインデックスＳ７４）、ＤＶＴ４７０を用いてエントロピー復号化を行う。この過程で要素情報が生成されたら、ＣＳＣＩ格納部５３２に格納する。
【０２４２】
パーシング機能部の処理過程において、「ＧＯ  ＲＴ」により制御権限がＦ−ＲＴ４２０（すなわち、連結制御部５３４）に移されると、連結制御部５３４はＦ−ＲＴ４２０の対応付けられたインデックスの入力値である要素情報をＣＳＣＩ格納部５３２から読み出して分岐情報に代入することにより、以後に処理するインデックスが指定される。
【０２４３】
上述したように、パーシング機能部の処理により全体／一部の要素情報がＣＳＣＩ格納部５３２に格納されると、連結制御部５３４はＦ−ＲＴ４２０の対応付けられた機能部をロードして復号化処理が行われるようにする。連結制御部５３４は、ロードされた任意の機能部が処理を完了したか否かを認識することができ、先行の機能部の処理が完了したら、後行の機能部の処理を指示する。また、先行の機能部は処理したデータを、後行の機能部が動画データの処理のために予め設定されたバッファメモリまたはＣＳＣＩ格納部５３２に格納する。連結制御部５３４が、任意の機能部の処理が完了されたか否かを認識する方法は当業者にとって自明なことであるため、これに対する説明は省略する。
【０２４４】
連結制御部５３４が上述した過程、具体的に、Ｆ−ＲＴ４２０に記述されているインデックス順序及び／または分岐条件によるインデックス順序で処理が行われるように制御することにより、復号化処理ユニット３２０は入力された従来ビットストリーム３１６に対応する動画データを出力することができる。
【０２４５】
上述の説明から分かるように、本発明に係る部分復号化器ディスクリプション間の連動ループ（loop）は大きく２つに分けることができる。具体的に、Ｆ−ＲＴループは、Ｆ−ＲＴ４２０、ＦＬ４１０、ＦＵ−ＣＳＣＩＴ４３０、Ｆ−ＲＴ４２０、ＣＳＣＩＴ（分岐条件の適用など）、Ｆ−ＲＴ（次の番のrule）で構成され、Ｓ−ＲＴループは、Ｓ−ＲＴ４６０、ＳＥＴ４５０、ＣＳＣＩＴ４４０、Ｓ−ＲＴ４６０、ＣＳＣＩＴ（分岐条件の適用など）、Ｓ−ＲＴ（次の番のrule）で構成される。
【０２４６】
また、Ｆ−ＲＴループは、次のように２つに分けることができる。先ず、復号化機能部の実行を指示する場合には、Ｆ−ＲＴ４２０、ＦＬ４１０、ＦＵ−ＣＳＣＩＴ４４０、Ｆ−ＲＴ４２０、ＣＳＣＩＴ（分岐条件の適用など）、Ｆ−ＲＴ（次の番のrule）で構成される。次に、パーシング機能部の実行を指示する場合には、Ｆ−ＲＴ４２０、ＦＬ４１０、（Ｓ−ＲＴループ）、Ｆ−ＲＴ４２０、ＣＳＣＩＴ（分岐条件の適用など）、Ｆ−ＲＴ（次の番のrule）で構成される。
【０２４７】
また、Ｓ−ＲＴループは、次のように２つに分けることができる。次の番の規則情報（rule）に分岐する場合には、Ｓ−ＲＴ４６０、ＳＥＴ４５０、ＣＳＣＩＴ４４０、Ｓ−ＲＴ４６０、ＣＳＣＩＴ（分岐条件の適用）、Ｓ−ＲＴ（次の番のrule）で構成され、Ｆ−ＲＴ４２０に戻る（return）場合には、Ｓ−ＲＴ４６０、ＳＥＴ４５０、ＣＳＣＩＴ４４０、Ｓ−ＲＴ４６０、ＣＳＣＩＴ（分岐条件の適用など）、Ｆ−ＲＴ（呼び出したＦ−ＲＴ４２０のインデックス）で構成される。
【０２４８】
Ｆ−ＲＴ４２０による連結制御部５３４の連結制御により、ツールボックス５１０内に備えられた各機能部の連結関係は変わることができる。
【０２４９】
以下、各部分復号化器ディスクリプションを構成する命令語について詳細に説明する。
【０２５０】
図２０には、シンタックスパーシングのために各部分復号化器ディスクリプションに用いられる命令語が示されている。例示されたそれぞれの命令語を用いてＭＰＥＧ−２／ＭＰＥＧ−４／ＭＰＥＧ−４ＡＶＣのような規格のシンタックスをパーシングするための情報（すなわち、部分復号化器ディスクリプション）を構成することができる。以下では、ＭＰＥＧ−２  ＭＰ（Main Profile）イントラ符号化（Intra coding）されたシンタックスをパーシングするための部分復号化器ディスクリプションの例と各部分復号化器ディスクリプション間の連動関係とを中心に説明する。
【０２５１】
図２０に示すように、各部分復号化器ディスクリプションを構成するための命令語には、ＲＥＡＤ、ＳＥＥＫ、ＦＬＵＳＨ、ＩＦ、ＷＨＩＬＥ、ＵＮＴＩＬ、ＤＯ〜ＷＨＩＬＥ、ＤＯ〜ＵＮＴＩＬ、ＢＲＥＡＫ、ＳＥＴ、ＳＴＯＰ、ＰＵＳＨなどがある。尚、全ての命令語が各部分復号化器ディスクリプション内に必ずしも利用されるとは限らず、各部分復号化器ディスクリプション別に任意の命令語を選択的に用いることができることは明らかである。以下、各命令語の用途を簡略に説明する。
【０２５２】
先ず、ＲＥＡＤは、ビットストリームから一定のビットを読み込むための命令語である。例えば、”READ bits B > CSCI;”のように表現できる。ここで、”bits”は、読み込むビット数を示し、”B”はByte-alignmentフラグであり、”> CSCI”は格納するＣＳＣＩインデックスを示す。”B”と”> CSCI”は、オプション（option）として用いられ、”> CSCI”が指定されない場合は、変数ＩＢＳにだけ格納するように設定される。
【０２５３】
次に、ＳＥＥＫは、ビットストリームから一定のビットを読み込み、ファイルポインタを移動しないようにする命令語である。ファイルポインタとは、一定のビットを読み込むなどの動作時の基準位置を意味する。ＳＥＥＫ命令語のパラメータは、上述したＲＥＡＤと同様に適用することができる。
【０２５４】
続いて、ＦＬＵＳＨは、ビッ トストリームから一定のビット数分だけファイルポインタを移動する命令語である。パラメータは、ＲＥＡＤと類似に適用することができる。
【０２５５】
ＩＦは、”IF(condition){ 〜 } ELSE {〜}”の形態で用いることができ、与えられた条件による分岐を提供する命令語である。
【０２５６】
ＷＨＩＬＥは、”WHILE(condition){ 〜 }”の形態で用いることができ、与えられた条件が真（True）である間には、指定されたブロックを繰り返し行うようにする命令語である。
【０２５７】
ＵＮＴＩＬは”UNTIL(condition){ 〜 }”の形態で用いることができ、与えられた条件が真になるまで、指定されたブロックを繰り返し行うようにする命令語である。
【０２５８】
ＤＯ〜ＷＨＩＬＥは”DO { 〜}
WHILE(condition)”の形態で用いることができ、ＷＨＩＬＥ文を変形して条件判断に先行してブロックを行うようにする命令語である。
【０２５９】
ＤＯ〜ＵＮＴＩＬは”DO { 〜 }
UNTIL(condition)”の形態で用いることができ、ＵＮＴＩＬ文を変形して条件判断に先行してブロックを行うようにする命令語である。
【０２６０】
（〜）（ｃｏｍｐｕｔｅ）という命令語は、例えば”(C11=(V2+3));”の形態で用いられる。すなわち、ＳＥＴ−ＰＲＯＣの全ての計算式が括弧内に記録されるようにでき、四則演算、代入、比較、加算／減算（＋＋／−−）、ビット演算、論理和／論理積、ＣＳＣＩを使用したか否かなどの演算子を用いることができる。
【０２６１】
ＢＲＥＡＫは、最も近いループ構造から離脱するようにする命令語である。
【０２６２】
ＳＥＴは、指定されたＣＳＣＩを使用したか否かのフラグを設定する命令語であって、フラグを指定するＣＳＣＩが並べられ、コンマ（、）により区分（例えば、SET C0、C2;）されることができる。
【０２６３】
ＳＴＯＰは、現在行われているシンタックス要素（Syntax Element）の処理を打ち切って次に進むようにする命令語である。
【０２６４】
ＰＵＳＨは、配列型ＣＳＣＩにおいて、データが記録された最後の地点から与えられたデータを追加するようにする命令語であって、追加された値が並べられ（例えば、PUSH C8 8、16、32;）、コンマにより区分される。
【０２６５】
ＧＯは、指定した位置に分岐するようにする命令語である。例えば、GO R#;;である場合には、Ｒ＃に分岐するという命令であり、GO RTは呼び出したところに復帰（return）するという命令である。
【０２６６】
ＨＥＸは、ＨＥＸ命令語の後の値が１６進数であることを示す命令語である。
【０２６７】
2010525654.tif 000024
【０２６８】
2010525654.tif 000025
【０２６９】
2010525654.tif 000026
【０２７０】
図２１は本発明の第３実施例に係る復号化処理ユニットの構成を概略的に示す図面であり、図２２は本発明の第４実施例に係る復号化処理ユニットの構成を概略的に示す図面である。
【０２７１】
上述の図５及び図６を参照しながら説明した復号化処理ユニットの場合には、情報加工部５２４が、ディスクリプション格納部５１０に格納された部分復号化器ディスクリプションを用いてＣＳＣＩ制御情報及び連結制御情報などを生成し、連結制御部５３４は情報加工部５２４により生成された制御情報を用いてツールボックス５１５内の機能部を選択的にロードすることにより、符号化されたビデオデータ３１６が復号化処理される。
【０２７２】
しかし、図２１及び図２２に示された復号化処理ユニットの場合、連結制御部５３４が、ディスクリプション格納部５１０に格納された部分復号化器ディスクリプションを直接用いてツールボックス５１５に備えられた少なくとも１つの機能部を選択的にロードすることにより、符号化されたビデオデータ３１６が復号化処理される。
【０２７３】
以下、図２１及び図２２に示された復号化処理ユニットについて説明する。ただし、連結制御部５３４が部分復号化器ディスクリプションを解析して対応付けられた連結制御を行うことができるという僅かな差を有するだけで、上述した図５及び図６を参照しながら説明した大部分の内容（例えば、部分復号化器ディスクリプションの構造及び解析など）は同様であるため、これに対する説明は省略する。
【０２７４】
復号化処理ユニット３２０の第３実施例が示された図２１を参照すると、復号化処理ユニット３２０は、ディスクリプション復号化器５０５、ディスクリプション格納部５１０、ツールボックス５１５、及び復号化器形成部５２０を含むことができる。復号化器形成部５２０は、連結制御部５３４及びＣＳＣＩ格納部５３２を含む。図示されていないが、復号化器形成部５２０は、連結制御部５２５の呼出により少なくとも１つの機能部がロードされて予め指定されたプロセスが行われるようにするための作業メモリをさらに含むことができる。
【０２７５】
図２２には、復号化処理ユニット３２０の第４実施例が示されている。図２１の復号化処理ユニット３２０と比較して図２２に示された復号化処理ユニット３２０は、復号化ソリューション５３０をさらに含む。復号化ソリューション５３０は、連結制御部５３４の呼出によりロードされた少なくとも１つの機能部が積載され、予め指定されたプロセスを行うための作業メモリであってもよい。
【０２７６】
図２１及び図２２に示すように、本発明に係る復号化器３００は、ツールボックス５１５内に備えらたれた機能部を選択的にロードして復号化処理するようにすることで、入力されたビットストリームの符号化方式を問わずに復号化できるように、様々な形態で再組み合わせまたは生成される復号化器３００を実現することができる。
【０２７７】
上述したように、本発明に係る復号化器３００におけるツールボックス５１５を他の構成要素と分離して実現することにより、他の構成要素の復号化器設計構造を変更することなく、互いに異なるツールボックスをより容易に適用できるという長所がある。例えば、ＭＰＥＧ規格による処理のためのツールボックスが用いられるように製作された復号化器でも、当該ツールボックスを同一のインターフェースを有する非ＭＰＥＧ規格のツールボックス、または任意的／私的に製作されたツールボックスに代替することがより容易となる。
【０２７８】
図２３は本発明の一実施例に係る符号化器のブロック構成図である。
【０２７９】
本発明に係る符号化器２３００は、上述の図２を参照しながら説明した従来の符号化器２００に比して、拡張ビットストリームの生成及び出力部２３１０をさらに含む。
【０２８０】
拡張ビットストリームの生成及び出力部２３１０は、前段までの処理により生成された従来ビットストリーム３１６の生成過程における制御情報（例えば、使用された機能部の目録及び連結関係、当該機能部の入力データ、シンタックス情報、シンタックス連結情報など）を用いて復号化器ディスクリプションを生成する。また、生成された復号化器ディスクリプション及び従来ビットストリーム３１６を用いて拡張ビットストリーム３０５を生成し、復号化器３００に伝送する。復号化器ディスクリプションの生成方法は、上述の説明により当業者が十分に理解できると思われるので、これに対する説明は省略する。
【０２８１】
また、本明細書での可変長符号化部２３０は、符号化器２３００内において従来ビットストリーム３１６を生成するために最終的に符号化を行う任意の構成要素（例えば、符号化部）を指すことに過ぎず、これに制限されることはなく、また、これにより本発明の権利範囲が制限されることはない。
【０２８２】
また、図２３は復号化器ディスクリプションの情報及び従来ビットストリーム３１６を用いて生成した拡張ビットストリーム３０５が復号化器に提供される場合を仮定した図面である。しかし、上述したように、復号化器ディスクリプションは別途のデータまたはビットストリームなどの形態で復号化器３００に伝達されることもできる。この場合は可変長符号化部２３５の後端に拡張ビットストリームの生成及び出力部２３１０が位置せず、従来の符号化部２００とは独立して復号化器ディスクリプションの生成及び出力部が位置し、独立的に生成した情報を復号化器３００に提供することもできることは自明である。
【０２８３】
以上、本発明に係る統合コーデック装置及び方法について復号化器を中心に説明したが、復号化器と符号化器との間の相互関係が当業者にとって自明なことであり、復号化器に関する詳細な説明だけでも符号化器の構成が容易であることを考慮すると、本発明が復号化器に制限されないことは明らかである。
【０２８４】
上述したように本発明に係る統合コーデック装置及び方法は、１つの規格（またはコーデック）内で、または他の規格（またはコーデック）間でのシンタックス要素の解析及び機能部の連結制御を容易にする。すなわち、特定の規格により生成されるビットストリーム内のシンタックス要素の順序を変更したり、新しいシンタックス要素を挿入したり、既存のシンタックス要素を削除したりすることに特に問題はない。
【０２８５】
また、従来技術によれば、このようなシンタックス要素の操作時、復号化器では当該ビットストリームを正常に復号化できないという問題点があった。例えば、ＡＢＣのビットストリーム情報を、ＡＣＢに順序を変えてビットストリームを構成して伝送すると、復号化器はこれを認識せず、正常な復号化が不可能になる。また、新規にＦを挿入してＡＢＦＣに構成したり、Ｂを削除してＡＣにビットストリームを構成したりする場合も同様である。
【０２８６】
しかし、本発明に係る統合コーデック装置及び方法によれば、拡張ビットストリーム内に含まれるか、または独立したデータとして復号化器ディスクリプション情報が提供されるため、復号化器３００の復号化動作が円滑に行なわれる。
【０２８７】
以上、本発明に係る復号化装置及びビットストリームの復号化のためのシンタックス解析方法をＭＰＥＧ−４ＡＶＣを基準として説明したが、ＭＰＥＧ−１、ＭＰＥＧ−２、ＭＰＥＧ−４、ＡＶＳ、及びそれ以外の動画の符号化／復号化規格に何ら制限なしに同様に適用できることは明らかである。
【０２８８】
また、各部分復号化器ディスクリプションに含まれる情報も１つの規格による復号化の実行のための機能部の連結関係、当該機能部に要求される処理プロセスなどに関する情報のみで記述されることではなく、複数の規格による復号化実行のための情報として記述されることもできる。
【０２８９】
例えば、拡張ビットストリームに含まれている符号化されたビデオデータの初期の複数のフレームはＭＰＥＧ−２で符号化され、後続の複数のフレームはＭＰＥＧ−４で符号化され、残りのフレームはＭＰＥＧ−１で符号化されたと仮定する。この場合、符号化されたビデオデータの復号化のために復号化器ディスクリプションに含まれる部分復号化器ディスクリプション情報は、符号化方法の異なる各フレームがツールボックス３３５に含まれた各規格による機能部の有機的結合により動作されるように実現されることは自明である。
【０２９０】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
【産業上の利用可能性】
【０２９１】
本発明は、動画コーデックに適用することができる。
【図１】
2010525654.tif 000027
【図２】
2010525654.tif 000028
【図３】
2010525654.tif 000029
【図４】
2010525654.tif 000030
【図５】
2010525654.tif 000031
【図６】
2010525654.tif 000032
【図７】
2010525654.tif 000033
【図８】
2010525654.tif 000034
【図９】
2010525654.tif 000035
【図１０】
2010525654.tif 000036
【図１１】
2010525654.tif 000037
【図１２】
2010525654.tif 000038
【図１３】
2010525654.tif 000039
【図１４】
2010525654.tif 000040
【図１５】
2010525654.tif 000041
【図１６】
2010525654.tif 000042
【図１７】
2010525654.tif 000043
【図１８】
2010525654.tif 000044
【図１９】
2010525654.tif 000045
【図２０】
2010525654.tif 000046
【図２１】
2010525654.tif 000047
【図２２】
2010525654.tif 000048
【図２３】
2010525654.tif 000049
【国際調査報告】
2010525654.tif 000050
2010525654.tif 000051