(57)【要約】【課題】多様な規格により多様に符号化されたビットストリームを同一の情報認識方式で復号化することができるビットストリーム復号化装置及び方法を提供する。【解決手段】本発明に係る復号化装置は、ビットストリームを解析するためのスキーマ情報が入力され、前記ビットストリームを意味のあるデータに変換して出力するパーサーと、前記データを用いたビットストリーム復号化を行って動画データを出力する復号化ソリューションと、を含むことを特徴とする。
2010525653.tif 000002
【特許請求の範囲】
【請求項１】
ビットストリームを解析するためのスキーマ情報が入力され、前記ビットストリームを意味のあるデータに変換して出力するパーサーと、
前記データを用いたビットストリーム復号化を行って動画データを出力する復号化ソリューションと、
を含む復号化装置。
【請求項２】
予め指定されたプロセスをそれぞれ行うように実現された１つ以上の機能部を含むツールボックスと、
前記ビットストリームに対応する連結制御情報の入力を受けて前記ツールボックスに含まれている１つ以上の機能部の連結関係を設定し、前記復号化ソリューションにロードするように制御する復号化器形成部と、をさらに含む請求項１に記載の復号化装置。
【請求項３】
前記復号化器形成部は、前記パーサーから前記データを受けて前記復号化ソリューションに提供することを特徴とする請求項２に記載の復号化装置。
【請求項４】
復号化器ディスクリプションの入力を受けて前記スキーマ情報と前記連結制御情報とに分離し、それぞれ出力する分離部をさらに含む請求項２に記載の復号化装置。
【請求項５】
前記復号化ソリューションは、入力された前記データを対応する機能部に提供するか、対応する機能部が前記データを読み出し可能とするデータインターフェースを備えることを特徴とする請求項２に記載の復号化装置。
【請求項６】
前記スキーマ情報は、前記ビットストリームに含まれているシンタックス情報の細目に関する情報であって、シンタックス情報の長さ、シンタックス情報の意味、シンタックス情報の出現条件、及び反復出現回数のうちの少なくとも１つを含むことを特徴とする請求項１に記載の復号化装置。
【請求項７】
前記スキーマ情報が、ＸＭＬ文法で記述されることを特徴とする請求項１に記載の復号化装置。
【請求項８】
前記連結制御情報が、ＣＡＬＭＬで記述されることを特徴とする請求項２に記載の復号化装置。
【請求項９】
前記ツールボックスが、適用される規格により区分された機能部の集合であるサブツールボックスで構成されることを特徴とする請求項２に記載の復号化装置。
【請求項１０】
前記復号化ソリューションは、１つ以上の機能部がロードされ動作するようにするための作業メモリを含むことを特徴とする請求項２に記載の復号化装置。
【請求項１１】
前記ツールボックスが、前記復号化器形成部の一構成要素であることを特徴とする請求項２に記載の復号化装置。
【請求項１２】
前記復号化ソリューションにロードされた機能部が、前記データ、先行のプロセスを行った機能部による出力データのうちの少なくとも１つを入力データとする予め指定されたプロセスを行うことを特徴とする請求項２に記載の復号化装置。
【請求項１３】
（ａ）入力されたスキーマ情報を用いてビットストリームを意味のあるデータに変換して出力するステップと、
（ｂ）入力された連結制御情報を用いて機能部の順次動作順序を設定するステップと、
（ｃ）前記機能部により、前記データを用いたビットストリームの復号化が行われるステップと、を含む復号化方法。
【請求項１４】
前記ステップ（ｂ）は、復号化器形成部が前記連結制御情報を用いてツールボックスに含まれている複数の機能部のうちの少なくとも１つの機能部に対するプロセス実行順序を設定することを特徴とする 請求項１３に記載の復号化方法。
【請求項１５】
前記スキーマ情報及び前記連結制御情報が統合された復号化器ディスクリプションが入力される場合、それぞれの情報に分離して出力するステップが前記ステップ（ａ）に先行することを特徴とする請求項１３に記載の復号化方法。
【請求項１６】
前記スキーマ情報が、前記ビットストリームに含まれたシンタックス情報の細目に関する情報であって、シンタックス情報の長さ、シンタックス情報の意味、シンタックス情報の出現条件、及び反復出現回数のうちの少なくとも１つを含むことを特徴とする請求項１３に記載の復号化方法。
【請求項１７】
前記スキーマ情報が、ＸＭＬ文法で記述されることを特徴とする請求項１３に記載の復号化方法。
【請求項１８】
前記連結制御情報が、ＣＡＬＭＬで記述されることを特徴とする請求項１３に記載の復号化方法。
【請求項１９】
前記機能部が、前記データ、先行のプロセスを行った機能部による出力データのうちの少なくとも１つを入力データとする予め指定されたプロセスを行うことを特徴とする請求項１４に記載の復号化方法。
【請求項２０】
復号化方法を行うために復号化装置で実行可能な命令語のプログラムが類型的に実現されており、前記復号化装置により読み取り可能なプログラムが記録された記録媒体において、
入力されたスキーマ情報を用いてビットストリームを意味のあるデータに変換して出力するステップと、
入力された連結制御情報を用いて機能部の順次動作順序を設定するステップと、
前記機能部により、前記データを用いたビットストリーム復号化が行われるステップと、を実行することを特徴とするプログラムを記録した記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ビットストリーム復号化方法及び装置に関するもので、より詳細には、ＢＳＤＬスキーマ（Schema）を用いたビットストリーム復号化方法及び装置に関する。
【背景技術】
【０００２】
一般的に動画は符号化器（encoder）でビットストリーム（Bit-stream）の形態に変換される。このとき、ビットストリームは符号化器の制約条件を満たす符号化の類型に応じて格納される。
【０００３】
ＭＰＥＧはビットストリームの制約条件として、シンタックス（syntax）及びセマンティックス（semantics）を要求する。
【０００４】
シンタックスは、データの構造や形式及び長さを示し、データがどんな順序で表現されるかを示す。すなわち、シンタックスは符号化（encoding）／復号化（decoding）作業のために文法を合わせるためのものであって、ビットストリームに含まれている各要素（elements）の順序及び長さ、データ形式などを定義する。
【０００５】
セマンティックスはデータを構成する各ビットの意味を示す。すなわち、セマンティックスはビットストリーム内の各要素の意味を示す。
【０００６】
したがって、符号化器の符号化条件または適用された規格（またはコーデック）に応じて、多様な形態のビットストリームが生成できる。一般的に各規格（例えば、ＭＰＥＧ−１、ＭＰＥＧ−２、ＭＰＥＧ−４、ＭＰＥＧ−４ＡＶＣなど）は、各々異なるビットストリームシンタックスを有する。
【０００７】
したがって、各規格や符号化条件に応じて、符号化されたビットストリームは、それぞれ異なる形式（すなわち、シンタックス及びセマンティックス）を有するといえ、当該ビットストリームを復号化するためには符号化器に対応する復号化器を使用しなくてはならない。
【０００８】
上述したように、従来のビットストリーム復号化器は符号化器の制約条件を満たさなくてはならなく、このような制限は複数の規格に対応する統合復号化器の実現を難しくする原因となる。
【発明の概要】
【発明が解決しようとする課題】
【０００９】
本発明は上述した問題点を解決するためになされたものであって、各規格（例えば、ＭＰＥＧ−１、ＭＰＥＧ−２、ＭＰＥＧ−４、ＭＰＥＧ−４ＡＶＣなど）に応じて多様な形式（シンタックス、セマンティックス）で符号化されたビットストリームを同一の情報認識方式により復号化できるビットストリーム復号化装置及び方法を提供することを目的とする。
【００１０】
本発明の他の目的は、多様な符号化方式で圧縮されたビットストリームを同一の情報分析方法によりパーシング（parsing）し、パーシングされたデータを用いて復号化するための各機能部（ＦＵ、Functional Unit）を有機的に制御できるビットストリーム復号化装置及び方法を提供することにある。
【００１１】
本発明のまた他の目的は、多様な形態のビットストリームを復号化するためのシンタックス解析方法を共通に適用できるビットストリーム復号化装置及び方法を提供することにある。
【００１２】
本発明のまた他の目的は、シンタックス要素の変更や追加、削除時にも、復号化器が容易にビットストリームを復号化できるビットストリーム復号化装置及び方法を提供することにある。
【００１３】
本発明のまた他の目的は、解析されたシンタックスの要素情報（element information、すなわち、シンタックスパーシングによる結果物）を、 ビットストリーム復号化に用いられる構成要素にも共有できるようにするビットストリーム復号化装置及び方法を提供することにある。
【００１４】
本発明のまた他の目的は、解析されたシンタックスの要素情報を後続のビットストリームシンタックス要素の解析にも利用できるビットストリーム復号化装置及び方法を提供することにある。
【００１５】
本発明のまた他の目的は、多様な規格（コーデック）による多様な復号化方法を構成する機能を、各々機能部（ＦＵ
）単位で実現してツールボックスに備えたビットストリーム復号化装置及び方法を提供することにある。
【００１６】
本発明のまた他の目的は、多様な形態で符号化されたビットストリームを復号化するためにツールボックスから必要とされる機能部だけを選別してロード（load）することにより、予め指定されたプロセスが行われるようにするビットストリーム復号化装置及び方法を提供することにある。
【００１７】
本発明のまた他の目的は、ツールボックスに備えられた機能部の変更や追加、削除が可能であるビットストリーム復号化装置及び方法を提供することにある。
【００１８】
本発明のまた他の目的は、ビットストリーム復号化のためのコーデック統合に関する概念及び構造に関する国際標準化にあり、
本発明のその他の目的は以下に記載された実施例によりさらに明確になるだろう。
【課題を解決するための手段】
【００１９】
上述した目的を達成するために、本発明の一実施形態によれば、多様な規格に汎用的に利用できる符号化器／復号化器、及び／または統合コーデック装置が提供される。
【００２０】
本発明の一実施例による復号化装置は、ビットストリームを解析するためのスキーマ情報が入力され、上記ビットストリームを意味のあるデータに変換して出力するパーサー（parser）と、上記データを用いたビットストリーム復号化を行って動画データを出力する復号化ソリューションと、を含むことができる。
【００２１】
上記復号化装置は、予め指定されたプロセスをそれぞれ行うように実現された１つ以上の機能部を含むツールボックスと、上記ビットストリームに対応する連結制御情報の入力を受けて上記ツールボックスに含まれている１つ以上の機能部の連結関係を設定し、上記復号化ソリューションにロードするように制御する復号化器形成部と、をさらに含むことができる。
【００２２】
上記復号化器形成部は上記パーサーから上記データを受けて上記復号化ソリューションに提供することができる。
【００２３】
上記復号化装置は、復号化器ディスクリプションの入力を受けて上記スキーマ情報と上記連結制御情報とに分離し、それぞれ出力する分離部をさらに含むことができる。
【００２４】
上記復号化ソリューションは、入力された上記データを対応する機能部に提供するか、対応する機能部が上記データを読み出し可能とするデータインターフェースを備えることができる。
【００２５】
上記スキーマ情報は、上記ビットストリームに含まれているシンタックス情報の細目に関する情報であって、シンタックス情報の長さ、シンタックス情報の意味、シンタックス情報の出現条件、及び反復出現回数のうちの少なくとも１つを含むことができる。
【００２６】
上記スキーマ情報は、ＸＭＬ文法で記述されることができる。
【００２７】
上記連結制御情報は、ＣＡＬＭＬ（CAL Markup Language）で記述されることができる。
【００２８】
上記ツールボックスは、適用される規格により区分された機能部の集合であるサブツールボックスから構成されてもよい。
【００２９】
上記復号化ソリューションは、１つ以上の機能部がロードされ動作するようにする作業メモリを含むことができる。
【００３０】
上記ツールボックスは、上記復号化器形成部の一構成要素であってもよい。
【００３１】
上記復号化ソリューションにロードされた機能部は、上記データ、先にプロセスを行った機能部による出力データのうちの少なくとも１つを入力データとする予め指定されたプロセスを行うことができる。
【００３２】
上述した目的を達成するために、本発明の他の実施形態によれば、多様な規格に汎用的に利用できる復号化方法／符号化方法、及び／またはその方法を実行するためのプログラムが記録された記録媒体が提供される。
【００３３】
本発明の一実施例による復号化方法は、（ａ）入力されたスキーマ情報を用いてビットストリームを意味のあるデータに変換して出力するステップと、（ｂ）入力された連結制御情報を用いて機能部の順次動作順序を設定するステップと、（ｃ）上記機能部により、上記データを用いたビットストリーム復号化が行われるステップと、を含むことができる。
【００３４】
上記ステップ（ｂ）は、復号化器形成部が上記連結制御情報を用いてツールボックスに含まれている複数の機能部のうちの少なくとも１つの機能部に対するプロセスの実行順序を設定することであってもよい。
【００３５】
上記スキーマ情報及び上記連結制御情報が統合された復号化器ディスクリプションが入力される場合、それぞれの情報に分離して出力するステップが上記ステップ（ａ）に先行されてもよい。
【００３６】
上記スキーマ情報は、上記ビットストリームに含まれたシンタックス情報の細目に関する情報であって、シンタックス情報の長さ、シンタックス情報の意味、シンタックス情報の出現条件、及び反復出現回数のうちの少なくとも１つを含むことができる。
【００３７】
上記スキーマ情報は、ＸＭＬ文法で記述されることができる。
【００３８】
上記連結制御情報は、ＣＡＬＭＬで記述されることができる。
【００３９】
上記機能部は、上記データ、先にプロセスを行った機能部による出力データのうちの少なくとも１つを入力データとする予め指定されたプロセスを行うことができる。
【００４０】
本発明の他の実施例によれば、復号化方法を行うために復号化装置で実行可能な命令語のプログラムが類型的に実現されており、上記復号化装置により読み取り可能なプログラムが記録された記録媒体において、入力されたスキーマ情報を用いてビットストリームを意味のあるデータに変換して出力するステップと、入力された連結制御情報を用いて機能部の順次動作順序を設定するステップと、上記機能部により、上記データを用いたビットストリーム復号化が行われるステップと、を実行することを特徴とするプログラムを記録した記録媒体が提供される。
【発明の効果】
【００４１】
上述したように、本発明による統合コーデック装置及び方法は、各規格（例えば、ＭＰＥＧ−１、ＭＰＥＧ−２、ＭＰＥＧ−４、ＭＰＥＧ−４ＡＶＣなど）に従う多様な形式（シンタックス、セマンティックス）により符号化されたビットストリームを同じ情報認識方式で復号化できる効果がある。
【００４２】
また、本発明によれば、多様な符号化方式により圧縮されたビットストリームを同じ情報分析方法でパーシングし、パーシングされたデータを用いて復号化のための各機能部を有機的に制御できる効果がある。
【００４３】
また、本発明によれば、多様な形式のビットストリームを復号化するためのシンタックス解析方法を共通に適用できる効果がある。
【００４４】
また、本発明によれば、シンタックス要素の変更や追加時にも、復号化器がビットストリームを容易に復号化できる効果がある。
【００４５】
また、本発明によれば、解析されたシンタックスの要素情報、すなわちシンタックスパーシングによる結果物を、ビットストリーム復号化に用いられる構成要素にも共有できるようにする効果がある。
【００４６】
また、本発明によれば、解析されたシンタックスの要素情報を、後続のビットストリームシンタックス要素の解析に利用できる効果がある。
【００４７】
また、本発明によれば、ＭＰＥＧ−１、ＭＰＥＧ−２、ＭＰＥＧ−４、ＭＰＥＧ−４ＡＶＣ以外のブロック単位を処理する動画データ、静止画コーデックの統合時に使用できる効果がある。
【００４８】
また、本発明によれば、多様な規格（コーデック）から提案される多様な復号化方法を構成する機能を、それぞれ機能部（ＦＵ ）単位で実現してツールボックスに備えることができる効果がある。
【００４９】
また、本発明によれば、多様な形式で符号化されたビットストリームを復号化するためにツールボックスから必要とされる機能部だけを選別してロードし復号化するようにできる効果がある。
【００５０】
また、本発明によれば、ツールボックスに備えられた機能部の変更、追加、削除が容易であるという効果がある。
【図面の簡単な説明】
【００５１】
【図１】一般的な復号化器の構成を概略的に示す図面である。
【図２】一般的な符号化器の構成を概略的に示す図面である。
【図３】本発明の一実施例に係る復号化器の構成を概略的に示す図面である。
【図４】本発明の一実施例に係る復号化ユニットにおけるビットストリームの処理過程を具体的に示す図面である。
【図５】本発明の他の実施例に係る復号化器ディスクリプション入力過程を示す図面である。
【図６】本発明のまた他の実施例に係る復号化器ディスクリプションの入力過程を示す図面である。
【図７】本発明のまた他の実施例に係る復号化ユニットの構成を示す図面である。
【図８】本発明のまた他の実施例に係るＢＳＤＬパーサーの構成を示す図面である。
【発明を実施するための形態】
【００５２】
本発明は多様な変換を加えることができ、様々な実施例を有することができるため、本願では特定実施例を図面に例示し、詳細に説明する。しかし、これは本発明を特定の実施形態に限定するものではなく、本発明の思想及び技術範囲に含まれるあらゆる変換、均等物及び代替物を含むものとして理解されるべきである。
【００５３】
「第１」、「第２」などの用語は、多様な構成要素を説明するために用いられるに過ぎなく、前記構成要素が前記用語により限定されるものではない。前記用語は一つの構成要素を他の構成要素から区別する目的だけに用いられる。例えば、本発明の権利範囲内における第１構成要素は第２構成要素であると命名されることができ、同様に第２構成要素も第１構成要素であると命名されることができる。「及び／または」という用語は、複数の関連のある記載項目の組合または複数の関連のある記載項目のうち何れかの項目を含む。
【００５４】
ある構成要素が他の構成要素に「連結」あるいは「接続」されていると記載された時には、その他の構成要素に直接的に連結されているか、または接続されていることができ、中間に他の構成要素が存在することもできると理解しなければならない。反面、ある構成要素が他の構成要素に「直接連結」あるいは「直接接続」されていると記載された時には、中間に他の構成要素が存在しないと理解しなければならない。
【００５５】
本願で用いた用語は、ただ特定の実施例を説明するために用いたものであって、本発明を限定するものではない。単数の表現は、文の中で明らかに表現しない限り、複数の表現を含む。本願において、「含む」または「有する」などの用語は明細書上に記載された特徴、数字、段階、動作、構成要素、部品、またはこれらを組み合わせたものの存在を指定するものであって、一つまたはそれ以上の他の特徴や数字、段階、動作、構成要素、部品、またはこれらを組み合わせたものの存在または付加可能性を予め排除するものではないと理解しなくてはならない。
【００５６】
その他、定義しない限り、技術的または科学的な用語を含んで、ここで用いられる全ての用語は、本発明が属する技術分野で通常の知識を有する者であれば一般的に理解される
用語と同一の意味を有する。一般的に用いられる予め定義しているような用語は、関連技術の文脈上の意味と一致する意味を有すると解釈すべきで、本願で明らかに定義しない限り、理想的または過度に形式的な意味として解釈しない。
【００５７】
以下、添付図面を参照しながら、本発明による統合コーデック方法及び装置の好ましい実施例を詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の図面符号を付することにより重複説明を省略する。
【００５８】
図１は、一般的な復号化器の構成を概略的に示す図面であり、図２は、一般的な符号化器の構成を概略的に示す図面である。
【００５９】
図１に示すように、一般的にＭＰＥＧ−４復号化器１００は、可変長復号化部（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）を生成する。
【００６５】
動画復元部１３５は、逆ＤＣＴ部１３０から生成されたＶＯＰを用いて動画信号を復元して出力する。
【００６６】
図２に示すように、一般的にＭＰＥＧ−４符号化器２００は、ＤＣＴ部２１０、量子化部２１５、ＤＣ／ＡＣ予測部２２０、スキャン部２３０、可変長符号化部２３５を含む。
【００６７】
符号化器２００に含まれている各構成要素は、それぞれ対応する復号化器１００の構成要素の逆機能を行い、これは当業者にとって自明なことである。簡単に説明すれば、符号化器２００は、動画信号、すなわち、デジタル映像ピクセル値を離散余弦変換、量子化などを通して周波数値に変換して符号化を行い、これを情報の頻度数に応じてビットの長さを差別化する可変長符号化を行って圧縮ビットストリーム状態で出力する。
【００６８】
図３は、本発明の一実施例に係る復号化器の構成を概略的に示す図面であり、図４は、本発明の一実施例に係る復号化ユニットにおけるビットストリームの処理過程を具体的に示す図面である。
【００６９】
図３に示す復号化器ディスクリプション及び映像ビットストリームは、例えば、符号化器により生成され提供される情報であってもよい。
【００７０】
図３に示すように、復号化器３００は、復号化ユニット３０５及び分離部３１０を含む。復号化ユニット３０５は、ＢＳＤＬパーサー３２０、復号化器形成部３３０、ツールボックス３３５、及び復号化ソリューション３４０を含む。
【００７１】
ＢＳＤＬパーサー３２０は、分離部３１０から入力されたＢＳＤＬスキーマを用いて外部から入力された映像ビットストリームのシンタックス情報を解析する。ＢＳＤＬパーサー３２０に入力される映像ビットストリームは、任意の符号化方式（例えば、ＭＰＥＧ−４、ＡＶＳなど）で符号化されたデータである。本明細書により、ＢＳＤＬパーサー３２０そのものがＢＳＤＬスキーマを解析できることや、または外部アルゴリズムにより構成できることは当業者によって容易に理解できよう。
【００７２】
ＢＳＤＬパーサー３２０は、ＸＭＬ文法で記述されたＢＳＤＬスキーマを読み込んでＢＳＤＬパーサー３２０の構造を再定義するための内部処理部であるＢＳＤＬ解析処理部３２５を含む。
【００７３】
ＢＳＤＬスキーマを用いて再定義する規則は製作者の適用方法により様々であるため、以下にはその基本的な目的だけを説明する。第１に、ＢＳＤＬスキーマ上に記録されているビットストリームの長さ及び意味に関する情報を認識するためのものである。第２に、ＢＳＤＬスキーマ上に定義された反復構造及び条件実行構造を読み込んで同一の反復または条件文により実際に動作するプログラム的なルーチンを実現するためのものである。したがって、再定義する前のＢＳＤＬパーサー３２０は、上記のような目的を達成するための機能だけが実現された状態といえ、上述したパーシング機能を活用して実際に駆動するＢＳＤＬパーサー３２０を実現する過程を再定義過程といえる。
【００７４】
ＢＳＤＬパーサー３２０は、ＢＳＤＬ解析処理部３２５の制御によりデータの流れを
流動的に構成するプログラムで実現され、例えば、ＣＡＬ（Caltrop Actor Language）、Ｃ、Ｃ＋＋、Ｊａｖａ（登録商標）などのプログラム言語を用いて実現可能である。
【００７５】
ＢＳＤＬ内部処理部３２５及びＢＳＤＬパーサー３２０は、復号化器の設計者の設計基準に応じて、制限されることなく実現できる。勿論ＢＳＤＬレファレンスソフトウェアのように既に公開されているＢＳＤＬ運用プログラムを応用することもできる。ＢＳＤＬレファレンスソフトウェアは、ＭＰＥＧ標準化団体により標準化されたＢＳＤＬの円滑な運用のために製作された公式ソフトウェアであって、ＢＳＤＬスキーマが入力されるＢＳＤＬパーサー３２０も、このようなソフトウェアリソースを用いてより容易に実現できることは明らかである。
【００７６】
上述したように、ＢＳＤＬパーサー３２０の基本的な構造は、復号化器の設計者が選択した多様な方法で設計可能である。具体的に、復号化器の設計者は、ＢＳＤＬパーサー３２０の指定された機能を行うための詳細なアルゴリズムの適用及び設計を自律的に選択することができる。ただし、ＢＳＤＬパーサー３２０はＢＳＤＬスキーマを読み込んだ結果により再定義され、再定義された結果物が復号化ユニット３０５の他の構成要素と連携（例えば、通信など）しなければならない。
【００７７】
ＢＳＤＬパーサー３２０に入力されるＢＳＤＬスキーマにはビットストリームに含まれているシンタックス情報に関する詳細な細目が記述され、この細目には、例えばシンタックス情報の長さ、シンタックス情報の意味、シンタックス情報の出現条件、及び反復出現回数などが含まれ得る。ここで、情報の長さは、ビットストリーム上で特定情報が占めるビットの長さを意味し、シンタックス情報は、当該情報がどんな意味を有するかを示す。例えば、任意の機能部がＡという情報を要請した場合、どちらが情報Ａであるかを区別するのに必要となることもあるからである。また、出現条件や反復出現回数は、１つのＢＳＤＬスキーマを用いて同一の規格の動画ビットストリームを処理する場合であっても、ビットストリームの属性に応じて一部のシンタックス情報の出現や反復回数などが異なり得るため、このような場合を定義するためにＢＳＤＬスキーマに添付可能な情報である。例えば、出現条件は、イントラフレームの処理時にはモーションベクトルの情報を読み込まないようにするのに必要となることがあり、反復出現回数は、当該マクロブロックが同じ構造のブロックを６個有している場合、当該ブロックを反復するのに使用できる。
【００７８】
図４に示すように、ＢＳＤＬ解析処理部３２５は、詳細な細目について解読した結果情報をＢＳＤＬパーサー３２０に伝達し、ＢＳＤＬパーサー３２０がＢＳＤＬスキーマに指定された順序でビットストリームに含まれている情報を読み込むように支援する。
【００７９】
ＢＳＤＬパーサー３２０は、ＢＳＤＬ解析処理部３２５から提供された結果情報を参照して、入力されたビットストリームの内容を意味のあるデータに変換し復号化器形成部３３０及び／または復号化ソリューション３４０に提供する。また、ＢＳＤＬパーサー３２０が復号化器形成部または／及び復号化ソリューション３４０に提供する意味のあるデータには、例えば、予め指定されたマクロブロックサイズの符号化された映像データ、イントラコーディングされたマクロブロックに対するＡＣ予測フラグ（ACpred_flag）、ＭＣＢＰＣ（ＭＢタイプ & coded block pattern for chrominance）、ＣＢＰＹ（coded block pattern for luminance）などが含まれ得る。このようなデータ提供過程は、復号化器形成部３３０や復号化ソリューション３４０が駆動されるか否かにかかわらず行なわれることも可能である。
【００８０】
本発明によれば、復号化器が復号化器ディスクリプションを用いてビットストリームを復号化するが、これは、復号化器ディスクリプションがＢＳＤＬ言語体系及びこれと連動可能なＸＭＬ基盤の書式を用いる構造で実現されるようにするためである。本明細書により、復号化器ディスクリプションがＢＳＤＬ、ＣＡＬＭＬなどのＸＭＬ書式を有し得、ＢＳＤＬスキーマはシンタックスパーシング過程に用いられ、ＣＡＬＭＬは機能部間の連結制御のために用いられるようにその役割を区分できることを当業者であれば容易に理解できよう。
【００８１】
ＢＳＤＬ言語はビットストリームの構造と構成方式に関する情報を含むＸＭＬ文書またはＸＭＬスキーマ形式で記述される。この言語はそれぞれが１つ以上の映像ビットストリームの構造を表現できるように製作される。ＢＳＤＬ言語を用いることにより、復号化器は従来のＭＰＥＧ規格で検証され用いられているビットストリームの技術方式をそのまま適用しても、他の技術との互換性を高く確保できる。ＢＳＤＬに関連した言語書式及び文法はＭＰＥＧ−Ｂ  Ｐａｒｔ５に記述されているため、これに関する詳細な説明は省略する。
【００８２】
ＢＳＤＬとＸＭＬを用いたＢＳＤＬスキーマと連結制御情報の構成例を下記に示す。しかし、ＢＳＤＬスキーマと連結制御情報の構成形式がこれに制限されることではない。
2010525653.tif 000003
2010525653.tif 000004
【００８３】
本明細書では、復号化器ディスクリプション３６０、符号化されたビデオデータ３８０などの情報が外部から入力される場合を仮定して説明するが、その中の１つ以上の情報が復号化ユニット３０５の任意の構成要素内に既に内蔵され実現できることは明らかである。
【００８４】
再び図３を参照すると、復号化器形成部３３０は、分離部３１０から入力された連結制御情報または／及びＢＳＤＬパーサー３２０から入力されたビットストリームデータの一部（例えば、予め指定されたマクロブロックサイズの符号化された映像データ、イントラコーディングされたマクロブロックに対するＡＣ予測フラグ（ACpred_flag）、ＭＣＢＰＣ、ＣＢＰＹなどのうちの１つ以上）を用いて復号化ソリューション３４０が実現されるように制御する。
【００８５】
すなわち、復号化器形成部３３０は、連結制御情報などを用いてツールボックス３３５に備えた機能部の一部またはすべてが有機的な連結関係をもって復号化ソリューション３４０内にロードされて整列されるように制御する。ここで、連結制御情報はＣＡＬＭＬで作成できる。ＣＡＬＭＬとはＭＰＥＧ標準化団体で現在議論中であるＣＡＬ言語（Caltrop Markup Language）方式の復号化器構成を記述できるＸＭＬフォーマットである。ＣＡＬ言語はプログラムオブジェクトのアクターと各アクター間の連結関係から構成され、このようなＣＡＬ言語の構造をＸＭＬ書式で表現したものである。これに対する表現例は、上述したＢＳＤＬスキーマと連結制御情報の表現例で既に説明した。
【００８６】
具体的に、復号化器形成部３３０は、様々な機能部の組み合わせで構成されたツールボックス３３５にアクセスする権限を有し、ツールボックス３３５に備えた機能部間の入力／出力の連結を設定してその結果物に該当する復号化ソリューション３４０を構成する。このとき、機能部間の入力／出力の連結構造及び実行順序は連結制御情報を参照して設定される。また、入力されたビットストリームの種類を区別するための一部情報をＢＳＤＬパーサー３２０から受けて機能部の連結過程に参照することができる。機能部間の連結構造が全て確定されると、その連結構造は、外部からの持続的なデータ入力を前提として、当該復号化器ディスクリプションの製作者が意図したあらゆる映像のビットストリームを解析、復号化することができる独立した復号化器であると看做すことができる。このとき、この完成された機能部の連結構造を復号化ソリューション３４０と命名することができる。
【００８７】
ツールボックス３３５は、予め指定されたプロセスを行うようにそれぞれ実現された複数の機能部を含む。それぞれの機能部はプログラムコードの組み合わせにより実現されることもできる。
【００８８】
ツールボックス３３５に含まれる各機能部は、適用される用途別に区分された複数の細部ツールボックスに細分化できる。例えば、ＭＰＥＧ用機能部が含まれる第１ツールボックス、ＭＰＥＧ用機能部以外の機能部が含まれる第２ツールボックスなどに細分化でき、あるいは、ＭＰＥＧ−２用機能部の組み合わせである第１ツールボックス、ＭＰＥＧ−４用機能部の組み合わせである第２ツールボックス、中国でのデジタルＴＶ圧縮標準であるＡＶＳ用機能部の組み合わせである第３ツールボックスなどに細分化できる。
【００８９】
勿論、ツールボックス３３５そのものが複数で具現されて復号化器形成部３３０及び復号化ソリューション３４０と独立した連結関係を有することもできる。この場合、図示されていないが、上述した第１ツールボックス、第２ツールボックスなどが独立したツールボックスで具現され得る。
【００９０】
ただし、以下では説明の便宜のために、１つのツールボックス３３５内に複数の細部ツールボックスが含まれるか、全ての機能部が組み合わせを構成することなく、散在して含まれる場合を中心に説明する。
【００９１】
ツールボックス３３５はそれぞれの機能、すなわち予め設定されたプロセスを行うように実現された機能部（ＦＵ）が含まれる領域であって、各機能部は復号化器形成部３３０の連結制御により復号化ソリューション３４０にロードされて順次に連結動作関係を形成することで、映像ビットストリーム３８０に含まれている符号化された映像データを復号化された映像データとして出力する。
【００９２】
ツールボックス３３５は、例えば、ＤＦ（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）する機能部である。ＤＣＲ機能部はＤＣ値の逆予測及び逆量子化を行う機能部である。
【０１００】
復号化ソリューション３４０は、復号化器形成部３３０で生成された結果物であり、ＢＳＤＬパーサー３２０からシンタックス情報単位で分離されたビットストリームデータ（または予め指定されたマクロブロックサイズの符号化された映像データ）の入力を受ける。
【０１０１】
図４に示すように、入力されたビットストリームデータは、データを入力／出力するための有形、無形のデータインターフェースを介して入力できる。データインターフェースは、ソフトウェアの場合には特定のメモリバッファや、資料の流れを定義する仮想ポート（Port）、またはプログラム上のパラメータであってもよく、ハードウェアの場合には回路上の連結線であってもよく、以外にも様々に具現可能である。
【０１０２】
データの入力は、該当インターフェースを介して持続的に、特定機能部のプロセス実行に関係なく持続的に入力（例えば、並列処理が可能なように入力）されることができる。復号化ソリューション３４０は、入力されるデータを処理して復号化された映像データとして出力する。図４に示すように、データはデータインターフェースから始まって各機能部に伝達されることができ、機能部は当該データを加工して後続の機能部に伝達することができる。これらのデータの流れはすべて復号化器形成部３３０で、予め定義された通りに処理される。
【０１０３】
復号化ソリューション３４０は、ＢＳＤＬパーサー３２０から提供されたデータ（例えば、ビットストリームのシンタックスパーシングにより抽出された情報など）、各機能部の処理結果データを格納するための格納部を含むことができる。復号化器形成部３３０の制御によりロードされた各機能部は、ＢＳＤＬパーサー３２０から提供されたデータ及び先行の機能部の結果データのうちの少なくとも１つのデータを用いて指定されたプロセスを行うことができる。この場合、後続のプロセスを行う機能部は、先行する機能部の動作完了を認識しなければならない。このために、復号化器形成部３３０は、各機能部の動作が完了されたか否かを持続的にモニターリングして、後続の機能部の動作の開始可否を制御することができる。また、格納部内に各機能部別に独立した領域を具備して、先行の機能部の処理結果データを復号化器形成部３３０の制御により後続の機能部のための格納領域に格納することで、後続の機能部は自分の格納領域にプロセスの実行のために必要とされるデータを格納すると同時にプロセスを行うことができるようにもなる。以外にも、機能部間の処理開始時点を制御するための様々な方法を用いることができることは明らかである。
【０１０４】
当該格納部は復号化器形成部３３０内に備えられてもよく、復号化器形成部３３０は現在プロセスを行う機能部に、ＢＳＤＬパーサー３２０から提供されたデータ（例えば、ビットストリームのシンタックスパーシングにより抽出された情報など）、各機能部の処理結果データを提供することもできる。
【０１０５】
以下、図４を参照して復号化ユニット３０５の動作過程を簡略に説明する。
【０１０６】
外部から入力映像ビットストリームとＢＳＤＬスキーマが入力されると（ビットストリームの任意地点に情報Ａと情報Ｂが存在すると仮定する）、ＢＳＤＬパーサー３２０はＢＳＤＬスキーマを読み込んで、情報Ａに該当する地点に５ｂｉｔのＭＢタイプデータが存在し、情報Ｂに該当する地点に２ｂｉｔのＣＢＰＹデータが存在することを認識する。
【０１０７】
続きに、ＢＳＤＬパーサー３２０は、認識した情報を用いて各地点から指定された数だけのビットを読み込み、読み込んだ情報を、付与された意味に応じて復号化ソリューション３４０に伝達する。
【０１０８】
復号化ソリューション３４０は、ＢＳＤＬパーサー３２０からＭＢタイプとＣＢＰＹと命名されたデータの提供を受けて、処理する。復号化ソリューション３４０は、復号化器形成部３３０の連結制御により各機能部がロードされ実現されることは上述した通りである。
【０１０９】
復号化ソリューション３４０に存在するデータインターフェースは、外部から伝達されたデータを受け取り、連結制御情報により予め構成された機能部の連結関係を参照して当該データを要求する機能部に伝達する。
【０１１０】
各機能部も、予め指定された連結関係（すなわち、データ処理のための連結関係）に応じて復号化過程を行う。全てのデータの流れと機能部間の連結関係は、復号化器形成部３３０が予め構成した細目による。各機能部の順次処理により出力映像フレームが外部に出力される。
【０１１１】
上述したように、復号化器形成部３３０または／及び復号化ソリューション３４０内には格納部を備えることができる。これにより、ＢＳＤＬパーサー３２０からデータが提供されるに当たって、その伝達過程に中断されることなく、また復号化過程と並列してデータを提供することができるからである。また、各機能部は必要とされるデータを格納部から読み出して用いることもできる。
【０１１２】
また、ＢＳＤＬパーサー３２０は、符号化された映像データの復号化処理のために、対応するデータを復号化器形成部３３０に提供して復号化器形成部３３０が復号化ソリューション３４０に提供するようにしたり、ＢＳＤＬパーサー３２０が直接当該データを復号化ソリューション３４０に提供することもできる。
【０１１３】
再び図３を参照すると、分離部３１０は、入力された復号化器ディスクリプション３６０をそれぞれの情報に分離して復号化ユニット３０５に入力する。分離部３１０に入力された復号化器ディスクリプション３６０は、ビットストリームの構造を記述するためのＢＳＤＬスキーマ３６５とビットストリームの復号化過程を記述するためのＣＡＬＭＬデータ３７０とを含むことができる。上述した２種類のデータは、それぞれ独立してＸＭＬ文法で記述されてもよく、効率的な復号化器の運用のために２種類のデータを統合して転送してもよい。
【０１１４】
図５は、本発明の他の実施例に係る復号化器ディスクリプションの入力過程を示す図面である。
【０１１５】
図５に示すように、復号化器３００はディスクリプション復号化器５１０をさらに含むことができる。ディスクリプション復号化器５１０は、入力された符号化された復号化器ディスクリプション５２０を復号化処理して復号化器ディスクリプション３６０を生成し、分離部３１０に提供することができる。
【０１１６】
復号化器ディスクリプション３６０を符号化して送受信することにより、送受信されるデータ量を低減できる効果がある。
【０１１７】
図６は、本発明のまた他の実施例による復号化器ディスクリプションの入力過程を示す図面である。
【０１１８】
前では、図３を参照して、復号化器ディスクリプション３６０と映像ビットストリームが復号化ユニット３０５に入力される場合や、図５を参照して、符号化された復号化器ディスクリプション５２０と映像ビットストリーム３８０が復号化ユニット３０５に入力される場合について説明した。
【０１１９】
しかし、復号化器ディスクリプション３６０の構成情報がそれぞれ分離されて、図６に示すように、復号化ユニット３０５に入力できることは明らかである。この場合には、上述した分離部３１０、復号化器ディスクリプション３６０などが省略できることは明らかである。
【０１２０】
図７は、本発明のまた他の実施例による復号化ユニットの構成を示す図面である。
【０１２１】
前では、図３から図６を参照して、ツールボックス３３５及び復号化器形成部３３０が分離され実現された復号化ユニット３０５について説明した。
【０１２２】
しかし、図７に示すように、ツールボックス３３５が復号化器形成部３３０の一構成要素として含まれて実現されることもできる。
【０１２３】
この場合、復号化器形成部３３０は、機能部間の連結構造制御機能だけでなく、用いられる機能部の選別機能まで含むことができ、これにより、実現可能な復号化ソリューション３４０の類型を多様化される。
【０１２４】
図８は、本発明のまた他の実施例によるＢＳＤＬパーサーの構成を示す図面である。
【０１２５】
前では、図３を参照して、ＢＳＤＬ解析処理部３２５を含むＢＳＤＬパーサー３２０について説明した。
【０１２６】
しかし、本発明によるＢＳＤＬパーサー３２０は、ビットストリームの復号化を開始する前に、復号化器３００の外部から予め定義されて提供されることもできる。したがって、上述したＢＳＤＬ解析処理部３２５が省略可能である。このとき、ＢＳＤＬパーサー製作器８１０は、ＢＳＤＬレファレンスソフトウェアのような既存アプリケーションを活用して構成されることができる。
【０１２７】
以上、ＢＳＤＬパーサーが独立した構成要素として指定された動作を処理する場合を中心に説明した。また、ＢＳＤＬパーサーは、ツールボックス内に含まれる１つの機能部として実現されてもよく、復号化ソリューション内に独立した構成要素として予め含まれるように実現されてもよい。ＢＳＤＬパーサーがツールボックス内に含まれる場合、復号化器形成部は連結制御情報を用いてＢＳＤＬパーサーがビットストリームを復号化するために機能部が動作する前に、プロセスを行うようにロード及び制御しなければならない。同様に、ＢＳＤＬパーサーが復号化ソリューションに予め含まれる場合、復号化器形成部はロードした各機能部のプロセス実行開始の前に、先ずＢＳＤＬパーサーがプロセスを行うように制御しなければならない。いずれの場合においても、ＢＳＤＬパーサーの動作及び機能は、先に図面を参照して説明したことと同様であるため、詳細な説明は省略する。単に、ＢＳＤＬスキーマまたは／及びビットストリームを初期に入力を受ける主体が復号化器形成部または／及び復号化ソリューションに変更される必要があることもある。
【０１２８】
上述したように本発明による復号化装置及び方法は、１つの規格（またはコーデック）内で、または他の規格（またはコーデック）間にシンタックス要素の解析及び機能部の連結制御を容易にする。具体的に、特定の規格により生成されるビットストリーム内のシンタックス要素の順序を変更したり、新しいシンタックス要素を挿入したり、既存シンタックス要素を削除したりすることに特に問題はない。
【０１２９】
また、従来技術によれば、このようなシンタックス要素の操作時に、復号化器では当該ビットストリームを正常に復号化することができないという問題点があった。例えば、ＡＢＣのビットストリームの情報を、ＡＣＢに順序を変更してビットストリームを構成し転送すると、復号化器はこれを認識せず、正常な復号化が不可能となる。また、新規のＦを挿入してＡＢＦＣに構成したり、Ｂを削除してＡＣのビットストリームを構成したりする場合にも同様である。
【０１３０】
しかし、本発明に係る復号化装置及び方法を用いると、拡張ビットストリームに含まれるか、または独立したデータとして復号化器ディスクリプション情報が提供されるため、復号化器３００の円滑な復号化動作が可能となる。
【０１３１】
以上、本発明による復号化装置及びビットストリームを復号化するためのシンタックス解析方法をＭＰＥＧ−４ＡＶＣを基準として説明したが、ＭＰＥＧ−１、ＭＰＥＧ−２、ＭＰＥＧ−４、ＡＶＳ、及びそれ以外の動画の符号化／復号化規格に何ら制限なく適用できることは明らかである。
【０１３２】
また、連結制御情報に含まれる情報も１つの規格による復号化実行のための機能部の連結関係、当該機能部に要求される処理プロセスなどに関する情報だけで記述されなく、複数の規格による復号化実行のための情報で記述できることは明らかである。
【０１３３】
例えば、映像ビットストリームの初期の複数のフレームはＭＰＥＧ−２で符号化され、後続の複数のフレームはＭＰＥＧ−４で符号化され、残りのフレームはＭＰＥＧ−１で符号化されたと仮定する。この場合、符号化された映像データの復号化のための連結制御情報は、符号化方法の異なる各フレームが、ツールボックス３３５に含まれている各規格による機能部の有機的結合により動作するように定義されることは明らかである。
【０１３４】
以上、本発明を実施の形態を用いて説明したが、本技術分野の通常の知識を有する者であれば、これから多様な変形及び均等の他の実施例が可能であることを理解できよう。また、本発明の技術的保護範囲は添付した特許請求の範囲の技術的思想により決めるべきである。
【産業上の利用可能性】
【０１３５】
本発明は、動画コーデックに適用可能である。
【図１】
2010525653.tif 000005
【図２】
2010525653.tif 000006
【図３】
2010525653.tif 000007
【図４】
2010525653.tif 000008
【図５】
2010525653.tif 000009
【図６】
2010525653.tif 000010
【図７】
2010525653.tif 000011
【図８】
2010525653.tif 000012
【国際調査報告】
2010525653.tif 000013
2010525653.tif 000014