JP2005176355A - グラフィックデータ圧縮に関するメタ表現を用いた入力ファイルの生成方法およびシステムと、afx符号化の方法および装置 - Google Patents

グラフィックデータ圧縮に関するメタ表現を用いた入力ファイルの生成方法およびシステムと、afx符号化の方法および装置 Download PDF

Info

Publication number
JP2005176355A
JP2005176355A JP2004349991A JP2004349991A JP2005176355A JP 2005176355 A JP2005176355 A JP 2005176355A JP 2004349991 A JP2004349991 A JP 2004349991A JP 2004349991 A JP2004349991 A JP 2004349991A JP 2005176355 A JP2005176355 A JP 2005176355A
Authority
JP
Japan
Prior art keywords
file
compression
node
compressed
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2004349991A
Other languages
English (en)
Inventor
Gyeong-Ja Jang
張 敬子
Do-Kyoon Kim
金 道 均
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from KR1020040048663A external-priority patent/KR100695126B1/ko
Application filed by Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of JP2005176355A publication Critical patent/JP2005176355A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/8146Monomedia components thereof involving graphical data, e.g. 3D object, 2D graphics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/23412Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs for generating or manipulating the scene composition of objects, e.g. MPEG-4 objects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/44012Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving rendering scenes according to scene graphs, e.g. MPEG-4 scene graphs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/84Generation or processing of descriptive data, e.g. content descriptors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/8543Content authoring using a description language, e.g. Multimedia and Hypermedia information coding Expert Group [MHEG], eXtensible Markup Language [XML]

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Graphics (AREA)
  • Processing Or Creating Images (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

【課題】 グラフィックデータ圧縮に関するメタ表現を用いた入力ファイル生成方法およびシステムと、AFX符号化方法および装置を提供する。
【解決手段】 圧縮ノードと、圧縮媒介因子、およびビットラーーパーエンコーディングヒントを定義しているXMTスキーマを備える段階と、XMT入力ファイルをXMTスキーマに基づいてsceneファイルへの変換を支援するXMT2BIFSスタイルシートと、XMT入力ファイルを前記XMTスキーマに基づいてmuxファイルへの変換を支援するXMT2MUXスタイルシートを備える段階と、XMT入力ファイルをXMTスキーマとXMT2BIFSスタイルシートおよびXMT2MUXスタイルシートを用いてパージングしてsceneファイルおよびmuxファイルを生成する段階と、生成されたsceneファイルが圧縮されていないグラフィックデータを含んでいるかを判断する段階と、を含む入力ファイル生成方法。
【選択図】 図2

Description

本発明は、グラフィックデータ著作に係り、特に、グラフィックデータ圧縮に関するメタ表現を用いた入力ファイルの生成方法およびシステムと、AFX(Animation Framework eXtentions)符号化の方法および装置に関する。
従来の拡張可能なMPEG−4テキストフォーマット(Extensible MPEG−4 Textual Format:以下、XMTと称する)技術は、MPEG−4プリミティブ(2次元(2D)あるいは3次元(3D)のグラフィック、オーディオ、ビデオなど)に対して著作者の立場で容易でかつ便利に取り扱える表現方法に関するものであった。また、著作者が作ったデータが多様なアプリケーションで再使用でき、データの互換性および移植性を有するようにコンテンツ著作に関するフレームワークを作るものであった。このデータの再使用ならびにデータの互換性および移植性は、既存のXMT技術がMPEG−4プリミティブに対するXML構文(eXtensible Markup Language syntax)を定義して初めて可能となった。
しかし、従来のXMTは、3次元グラフィックデータの圧縮現については扱っていない。そのため、著作者が作った3Dコンテンツに関するアニメーションデータおよび表現データに関する圧縮が必要な場合に圧縮が困難であった。すなわち、3次元グラフィックデータを含むXMTファイルをXMTパーザでパージングできず、BIFS(Binary Format of Scene)符号化器とMP4符号化器とに入力できる入力ファイルを作れなかった。したがって、BIFS符号化器とMP4符号化器との出力ファイル(MP4)をも作れなかった。
本発明が解決しようとする技術的課題は、著作段階でグラフィックデータの圧縮を容易に行うために、MPEG−4 AFXで提案された圧縮表現をXMTで定義してグラフィックデータを圧縮可能にする、グラフィックデータ圧縮に関するメタ表現を用いた入力ファイル生成方法およびシステムを提供することである。
本発明が解決しようとする他の技術的課題は、圧縮されていない客体データ(original data)を含むXMTファイルから生成されたsceneファイルとmuxファイルとを圧縮してBIFS符号化器とMP4符号化器との入力ファイルを生成するAFX符号化装置および方法を提供することである。
前記技術的課題を達成するための本発明によるグラフィックデータ圧縮に関するメタ表現を用いた入力ファイル生成システムは、圧縮する客体データに関する情報を含む圧縮ノードと、圧縮に必要な圧縮媒介因子、および圧縮ビットストリームフォーマットを含むビットラッパーエンコーディングヒント、および伝送されたビットストリームを復号化する時、如何なる復号化器を使用するかに関する情報を含むAFXConfigを定義しているXMTスキーマと、XMT入力ファイルを前記XMTスキーマに基づいてsceneファイルへの変換を支援するXMT2BIFSスタイルシートと、XMT入力ファイルを前記XMTスキーマに基づいてmuxファイルへの変換を支援するXMT2MUXスタイルシートと、XMT入力ファイルを前記XMTスキーマと前記XMT2BIFSスタイルシートおよびXMT2MUXスタイルシートを用いてパージングしてsceneファイルおよびmuxファイルを生成するXMTパーザと、前記XMTパーザのパージングの結果、生成されたsceneファイルが圧縮されていないグラフィック客体データを含んでいるかを判断する圧縮判断部と、前記圧縮判断部の判断の結果、グラフィック客体データが圧縮されていなければ、前記sceneファイルに含まれている圧縮媒介因子(encoding parameter)を使用してグラフィック客体データを圧縮し、圧縮されたビットストリームと修正されたsceneファイルおよび修正されたmuxファイルを生成するAFX符号化器と、を含むことを特徴とする。
前記技術的課題を達成するための本発明によるグラフィックデータ圧縮に関するメタ表現を用いた入力ファイル生成方法は、(a)圧縮する客体データに関する情報を含む圧縮ノードと、圧縮に必要な圧縮媒介因子、および圧縮ビットストリームフォーマットを含むビットラッパーエンコーディングヒント、および伝送されたビットストリームを復号化する時、如何なる復号化器を使用するかに関する情報を含むAFXConfigを定義しているXMTスキーマを備える段階と、(b)XMT入力ファイルを前記XMTスキーマに基づいてsceneファイルへの変換を支援するXMT2BIFSスタイルシートと、XMT入力ファイルを前記XMTスキーマに基づいてmuxファイルへの変換を支援するXMT2MUXスタイルシートを備える段階と、(c)XMT入力ファイルを前記XMTスキーマと前記XMT2BIFSスタイルシートおよびXMT2MUXスタイルシートを用いてパージングしてsceneファイルおよびmuxファイルを生成する段階と、(d)前記パージングの結果、生成されたsceneファイルが圧縮されていないグラフィック客体データを含んでいるかを判断する段階と、(e)前記判断の結果、グラフィック客体データが圧縮されていなければ、前記sceneファイルに含まれている圧縮媒介因子(encoding parameter)を使用してグラフィック客体データを圧縮し、圧縮されたビットストリームと修正されたsceneファイルおよび修正されたmuxファイルを生成する段階と、を含むことを特徴とする。
前記圧縮ノードは、圧縮する客体データを含んでいるノードフィールドと、URLフィールドと相互排他的に使われ、前記ノードの圧縮されたビットストリームをインバンドとして伝送するbufferフィールドと、前記bufferフィールドと相互排他的に使われ、前記ノードの圧縮されたビットストリームをアウトバンドとして伝送するURLフィールドと、ノードフィールドが含む客体データの圧縮方法を選択するtypeフィールドと、を含んでなることが望ましい。
前記インバンドとしての伝送は、前記圧縮ノードを含むXMT入力ファイルがsceneファイルに変換された後、BIFS符号化器を通過してBIFSファイルに最終変換された時、前記圧縮ノード内のノードフィールドの圧縮されたビットストリームがBIFSファイルに含まれて伝送され、前記アウトバンドとしての伝送は、前記圧縮ノードを含むXMT入力ファイルがsceneファイルに変換された後、BIFS符号化器を通過してBIFSファイルに最終変換された時、前記圧縮ノード内のノードフィールドの圧縮されたビットストリームがBIFSファイルと分離されて個別的に伝送される。
前記圧縮媒介因子は、圧縮対象となる客体の頂点座標に対するキーフレームアニメーションデータに関する媒介因子と、3次元メッシュ情報に関する媒介因子と、回転移動キーフレームアニメーションデータに関する媒介因子と、位置移動キーフレームアニメーションデータに関する媒介因子のうち前記圧縮ノードのノードフィールドが含む客体データの圧縮に必要な媒介因子と、を含むことが望ましい。前記ビットラッパーエンコーディングヒントは、前記圧縮ノード内のURLフィールドが記述するURL IDと同じバイナリ IDを有する客体記述子内にあり、圧縮されたビットストリームのファイル名とそのビットストリームの圧縮フォーマット種類に関する情報をさらに備えることが望ましい。前記AFXConfigは、前記圧縮ノードがAFX符号化器を使用してノードフィールドに含まれた客体データの圧縮ビットストリームを作ってURLに伝送し、前記伝送されたビットストリームを復号化する時、如何なる復号化器を使用するかに関する情報をさらに備えることが望ましい。
前記(c)段階は、初期客体記述子を備えるヘッダと、少なくとも1つの圧縮ノードを含むボディーよりなるXMT入力ファイルを受け取る段階と、前記XMTスキーマと前記XMT2BIFSスタイルシートおよびXMT2MUXスタイルシートを用いて前記XMT入力ファイルをパージングしてsceneファイルおよびmuxファイルを生成する段階と、を含むことを特徴とし、前記ヘッダの初期客体記述子は、BIFS符号化器が出力として生成するファイル名を有しているBIFSEncodingHintsを含み、BIFS符号化器から圧縮されるファイルの復号化時に必要な情報を備え、客体間のディスプレーされる時間順序を示す同期化情報を備え、前記ボディーの圧縮ノードは、既に圧縮されたノード名を保存しているノードフィールドと、既に圧縮された客体データファイル名を保存しているバッファフィールドと、を備え、前記sceneファイルは、前記ボディーと同じ、少なくとも1つの圧縮ノードを備え、前記muxファイルは、前記ヘッダと同じ初期客体記述子および前記初期客体記述子内にある、BIFS符号化器が出力として生成するファイルのストリームフォーマット情報を備えることが望ましい。
前記(c)段階は、初期客体記述子を含むヘッダ、および少なくとも1つの圧縮ノードおよび少なくとも1つの客体記述子を含む客体記述子更新を備えるボディーよりなるXMT入力ファイルを受け取る段階と、前記XMTスキーマと前記XMT2BIFSスタイルシートおよびXMT2MUXスタイルシートを用いて前記XMT入力ファイルをパージングしてsceneファイルおよびmuxファイルを生成する段階と、を含んでなることを特徴とし、前記ヘッダの初期客体記述子は、BIFS符号化器が出力として生成するファイル名を有するストリームソースを含み、BIFS符号化器から圧縮されるファイルの復号化時に必要な情報を備え、客体間のディスプレーされる時間順序を示す同期化情報を備え、前記ボディーの圧縮ノードは、既に圧縮された客体データのビットストリームが保存されたファイル名を含むファイルビットラッパーエンコーディングヒントを含む客体記述子更新内の客体記述子のURL IDと同じURL IDを備え、前記ボディーの客体記述子更新内に含まれた客体記述子は、前記ボディーの圧縮ノードにある前記URL IDと同値を有するバイナリ IDをフィールドとして備え、前記圧縮された客体データの復号化時に復号化に使われる情報(AFXConfig)、および圧縮された客体データのビットストリームが保存されたファイル名と前記ビットストリームの圧縮フォーマットの形式を含むビットラッパーエンコーディングヒントを備え、前記sceneファイルは、前記ボディーと同じ、少なくとも1つの圧縮ノードおよびボディーの客体記述子更新内にある客体記述子のURL IDと同じURL IDを有し、ボディーの客体記述子内にある客体記述子のビットラッパーエンコーディングヒントにあるビットストリームファイルを保存するmux ファイルを有する客体記述子を含む客体記述子更新を有し、前記muxファイルは、前記ヘッダと同じ初期客体記述子および前記ボディーの客体記述子更新内にある客体記述子と同じ客体記述子を有することが望ましい。
前記(c)段階は、初期客体記述子を含むヘッダと、少なくとも1つの圧縮ノードを備えるボディーよりなるXMT入力ファイルを受け取る段階と、前記XMTスキーマと前記XMT2BITSスタイルシートおよびXMT2MUXスタイルシートを用いて前記XMT入力ファイルをパージングしてsceneファイルおよびmuxファイルを生成する段階と、を含んでなることを特徴とし、前記ヘッダの初期客体記述子は、BIFS符号化器が出力として生成するファイル名を有しているストリームソースを含み、BIFS符号化器から圧縮されるファイルの復号化時に必要な情報を備え、客体間のディスプレーされる時間順序を示す同期化情報を備え、前記ボディーの圧縮ノードは、圧縮するノード名を保存しているノードフィールド、前記ノードのノードフィールド内にある圧縮する客体データ、前記客体データ圧縮に使われる圧縮媒介因子、および圧縮媒介因子を使用して圧縮された客体データのビットストリームファイル名を保存するバッファフィールドを備え、前記sceneファイルは、前記ボディーと同じ、少なくとも1つの圧縮ノードを含み、前記muxファイルは、前記ヘッダと同じ初期客体記述子および前記初期客体記述子内にある、BIFS符号化器が出力として生成するファイルのストリームフォーマット情報を含むことが望ましい。
前記(c)段階は、初期客体記述子を含むヘッダ、および少なくとも1つの圧縮ノードおよび少なくとも1つの客体記述子を含む客体記述子更新を備えるボディーよりなるXMT入力ファイルを受け取る段階と、前記XMTスキーマと前記XMT2BIFSスタイルシートおよびXMT2MUXスタイルシートを用いて前記XMT入力ファイルをパージングしてsceneファイルおよびmuxファイルを生成する段階と、を含んでなることを特徴とし、前記ヘッダの初期客体記述子は、BIFS符号化器が出力として生成するファイル名を有しているストリームソースを含み、BIFS符号化器から圧縮されるファイルの復号化時に必要な情報を備え、客体間のディスプレーされる時間順序を示す同期化情報を備え、前記ボディーの圧縮ノードは、圧縮するノード名を保存しているノードフィールド、前記ノードのノードフィールド内にある圧縮する客体データ、前記客体データの圧縮に使われる圧縮媒介因子、前記圧縮媒介因子を使用して圧縮された客体データのビットストリームが保存されるファイル名を含むビットラッパーエンコーディングヒントを含む客体記述子更新内の客体記述子のURLIDと同じURLIDが保存されたフィールドを含み、前記ボディーの客体記述子更新に含まれた客体記述子は、ボディーの圧縮ノードの前記URLIDと同値を有するバイナリ IDをフィールドとして備え、前記圧縮された客体データの復号化時に復号化に使われる情報(AFXConfig)、および圧縮された客体データのビットストリームが保存されたファイル名と前記ビットストリームの圧縮フォーマットの形式を含むビットラッパーエンコーディングヒントを備え、前記sceneファイルは、前記ボディーと同じ、少なくとも1つの圧縮ノードおよびボディーの客体記述子更新内にある客体記述子のURLIDと同じURLIDを有し、ボディーの客体記述子更新内にある客体記述子のビットラッパーエンコーディングヒント内にあるビットストリームファイルを保存するmuxファイルを有する客体記述子を含む客体記述子更新を有し、前記muxファイルは、前記ヘッダと同じ初期客体記述子および客体記述子を有することが望ましい。
前記(c)段階は、初期客体記述子を含むヘッダ、およびバッファフィールドを備える少なくとも1つの圧縮ノードと、URLフィールドを備える少なくとも1つの圧縮ノードおよび前記URLフィールドを備える圧縮ノード数と同数の客体記述子を含む客体記述子更新を備えるボディーよりなるXMT入力ファイルを受け取る段階と、前記XMTスキーマと前記XMT2BIFSスタイルシートおよびXMT2MUXスタイルシートを用いて前記XMT入力ファイルをパージングしてsceneファイルおよびmuxファイルを生成する段階と、を含んでなることを特徴とし、前記ヘッダの初期客体記述子は、BIFS符号化器が出力として生成するファイル名を有しているストリームソースを含み、BIFS符号化器から圧縮されるファイルの復号化時に必要な情報を備え、客体間のディスプレーされる時間順序を示す同期化情報を備え、前記ボディーでバッファフィールドを備える圧縮ノードは、圧縮するノード名を保存しているノードフィールドと、前記ノードのノードフィールド内にある圧縮する客体データと、前記客体データ圧縮に使われる圧縮媒介因子と、圧縮媒介因子を使用して圧縮された客体データのビットストリームファイル名を保存するバッファフィールドと、を備え、前記ボディーのURLフィールドを備える圧縮ノードは、圧縮するノード名を保存しているノードフィールドと、前記ノードのノードフィールド内にある圧縮する客体データ、前記客体データの圧縮に使われる圧縮媒介因子と、圧縮媒介因子を使用して圧縮された客体データのビットストリームが保存されるファイル名を含むビットラッパーエンコーディングヒントを含む客体記述子更新内の客体記述子のURL IDと同じURL IDが保存されたフィールドと、を備え、前記ボディーの客体記述子更新に含まれた客体記述子は、ボディーの圧縮ノードのURL IDと同値を有するバイナリ IDをフィールドとして備え、前記圧縮された客体データの復号化時に復号化に使われる情報(AFXConfig)、および圧縮された客体データのビットストリームが保存されたファイル名と前記ビットストリームの圧縮フォーマットの形式を含むビットラッパーエンコーディングヒントを備え、前記sceneファイルは、前記ボディーと同じ圧縮ノードおよびボディーの客体記述子更新内にある客体記述子のURL IDと同じURL IDを有し、ボディーの客体記述子更新内にある客体記述子のビットラッパーエンコーディングヒント内にあるビットストリームファイルを保存するmuxファイルを有する、客体記述子を含む客体記述子更新を有し、前記muxファイルは、前記ヘッダと同じ初期客体記述子および前記ボディーの客体記述子更新の客体記述子と同じ客体記述子を有することが望ましい。
前記(d)段階は、前記パージングの結果、生成されたsceneファイルで少なくとも1つの圧縮(BitWrapper)ノードを探し出す段階と、前記検索された圧縮ノードのノードフィールド内にグラフィック客体データが存在すれば、圧縮されていないデータを含んでいると判断する段階を備えることが望ましい。
前記(e)段階は、(e1)前記判断の結果、グラフィック客体データが圧縮されていないデータを含んでいると判断されれば、sceneファイルの各圧縮ノードに対して前記圧縮ノード内にある客体データを前記圧縮ノード内に含まれた圧縮媒介因子とそれを用いて前記客体データを圧縮できる符号化器を選択して客体データを圧縮してビットストリームを生成する段階と、(e2)前記sceneファイルで各圧縮ノードの客体データと圧縮媒介因子とを削除した修正されたsceneファイル、およびBIFS符号化器が出力として生成するファイル名が前記修正されたsceneファイル名を反映できるように修正されたmuxファイルを生成する段階と、を含んでなることが望ましい。
前記(e1)段階は、(e11)前記判断の結果、グラフィックデータが圧縮されていないと判断されれば、sceneファイルの圧縮ノード内にある客体データと圧縮媒介因子とを保存する段階と、(e12)前記保存された客体データを含んでいる圧縮ノードのノードフィールド内にグラフィック客体と相応する所定の符号化器に前記客体データと圧縮媒介因子とを伝送する段階と、(e13)前記伝送された符号化器で前記圧縮媒介因子を使用して客体データを圧縮してビットストリームとして生成する段階と、を含んでなることが望ましい。
前記(e1)段階の所定の符号化器は、圧縮対象となる客体の頂点座標に対するキーフレームアニメーションデータに関する媒介因子を使用して前記頂点座標に対するキーフレームアニメーションデータを符号化する頂点座標符号化器と、3次元メッシュ情報に関する媒介因子を使用して前記3次元メッシュ情報を符号化するメッシュ符号化器と、回転移動キーフレームアニメーションデータに関する媒介因子を使用して前記回転移動キーフレームアニメーションデータを符号化する回転移動符号化器と、位置移動キーフレームアニメーションデータに関する媒介因子を使用して前記位置移動キーフレームアニメーションデータを符号化する位置移動符号化器のうち少なくとも1つを含むことが望ましい。
前記他の技術的課題を達成するための本発明によるAFX符号化装置は、圧縮(BitWrapper)ノードを含むsceneファイルから少なくとも1つの圧縮ノードを探し出して前記圧縮ノードのノードフィールド内にグラフィック客体データが存在すれば、前記sceneファイルの圧縮ノード内にある、客体データを含んでいるノードおよび圧縮媒介因子を保存させるAFXパーザと、前記AFXパーザにより客体データを保存する客体データ保存部と、前記AFXパーザにより圧縮媒介因子を保存する圧縮媒介因子保存部と、前記保存された客体データに相応する、前記圧縮媒介因子保存部の圧縮媒介因子を使用して前記客体データ保存部の原本データを圧縮してビットストリームとして生成する符号化器と、前記AFXパーザで前記圧縮ノードのノードフィールド内にグラフィック客体データが存在すれば、前記sceneファイルで各圧縮ノードの客体データと圧縮媒介因子を削除した修正されたsceneファイル、およびBIFS符号化器が出力として生成するファイル名が前記修正されたsceneファイル名を反映できるように修正されたmuxファイルを生成する入力ファイル生成器と、を含むことを特徴とする。
前記符号化器は、前記保存された客体データおよび圧縮媒介因子に相応し、圧縮対象となる客体の頂点座標に対するキーフレームアニメーションデータに関する媒介因子を使用して前記頂点座標に対するキーフレームアニメーションデータを符号化する頂点座標符号化器と、前記保存された客体データおよび圧縮媒介因子に相応し、3次元メッシュ情報に関する媒介因子を使用して前記3次元メッシュ情報を符号化するメッシュ符号化器と、前記保存された客体データおよび圧縮媒介因子に相応し、回転移動キーフレームアニメーションデータに関する媒介因子を使用して前記回転移動キーフレームアニメーションデータを符号化する回転移動符号化器と、前記保存された客体データおよび圧縮媒介因子に相応し、位置移動キーフレームアニメーションデータに関する媒介因子を使用して前記位置移動キーフレームアニメーションデータを符号化する位置移動符号化器のうち少なくとも1つを含むことが望ましい。
前記他の技術的課題を達成するための本発明によるAFX符号化方法は、圧縮(BitWrapper)ノードを含むsceneファイルから少なくとも1つの圧縮ノードを探し出す段階と、前記探し出した圧縮ノード内にある、客体データを含んでいるノードおよび圧縮媒介因子を保存する段階と、前記保存された客体データを含んでいるノードに相応する符号化器を通じて、前記符号化器に相応する保存された圧縮媒介因子を使用して前記客体データを圧縮してビットストリームとして生成する段階と、前記sceneファイルで各圧縮ノードの客体データと圧縮媒介因子を削除した修正されたsceneファイル、およびBIFS符号化器が出力として生成するファイル名が前記修正されたsceneファイル名を反映できるように修正されたmuxファイルを生成する段階と、を含むことを特徴とする。
そして、前記に記載の発明をコンピュータで実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体を提供する。
本発明による3次元グラフィックデータ圧縮に関するメタ表現を用いた入力ファイル生成方法およびシステムによれば、著作者が既に圧縮されたビットストリームが含まれた入力ファイルを使用する場合、および圧縮されていないデータと圧縮媒介因子とを含む入力ファイルを使用する場合について、メタ表現方法を使用して3Dコンテンツ著作段階で3次元グラフィックデータの表現および圧縮を容易に調節でき、MPEG−4符号化器に適した入力ファイルを作成することができる。
したがって、著作段階で著作者が3次元グラフィックデータを圧縮できるために、低いネットワーク帯域幅でも3Dグラフィックデータのリアルタイム視覚化またはリアルタイムアニメーションが可能となる。そして、多様な3Dグラフィックデータの製作が可能になる。
以下、添付された図面に基づいて本発明に係る3次元グラフィックデータ圧縮に関するメタ表現を用いた入力ファイル生成システムについて詳細に説明する。
著作者が3次元データの圧縮を容易に行えるようにするためには、著作者が3次元コンテンツを著作する段階から3次元データの表現、操作および圧縮に必要な様々な因子を容易に調節できる方法が必要である。これはXMTを通じて可能である。前記XMTは、オーディオ、ビデオ、2次元グラフィックおよび3次元グラフィックのようなMPEG−4コンテンツ著作についてのフレームワークである。また、前記XMTは、テキスト構文(textual syntax)を用いてMPEG−4ノードでコンテンツの製作を可能にする著作フレームワークである。前記フレームワークを図1に示す。XMTは、コンテンツ著作者によって製作されたコンテンツを、他の著作者、他のツールおよび他のサービス供給者が再使用できるようにする。そして、X3D(Extensible 3D)とSMIL(Synchronized Multimedia Integration Language)ともコンテンツを相互運用できる。
図1に示すように、XMTフォーマットは、SMILプレーヤー、VRML(Vitual Reality Modling Language)プレーヤー、MPEG−4プレーヤーで相互交換が可能で、プレーできる。さらに詳細に説明すれば、XMTフォーマットは、パージングされてSMILプレーヤーでプレーされる。また、XMTフォーマットは、X3Dに対して前処理を行った後、VRMLプレーヤーでプレーされる。また、MPEG−4表現(MP4)に対してコンパイルした後、MPEG−4プレーヤーでプレーされる。
XMTは、2段階構造、すなわち、XMT−AフォーマットとXMT−Ωフォーマットとで構成される。前記XMT−Aは、MPEG−4コンテンツ(オーディオ、ビデオ、2Dあるいは3Dグラフィックデータ表現および圧縮など)のXML基盤バージョンで拡張された3Dグラフィック(X3D)を含む。またXMT−Aに含まれるのは、MPEG−4特性を表現するためにX3DでMPEG−4を拡張したものである。XMT−Aにおいては、テキストフォーマットと二進フォーマットは1:1の比でマッピングされている。
XMT−Ωは、MPEG−4の特徴に対する上位レベルの表現であり、SMILを基盤とする。XMTは、コンテンツ著作者がΩからAへのメカニズムについて知らなくてもXMT−ΩからXMT−Aへのデフォルト(default)マッピングが可能である。XMT−Ωは、ユーザが容易にオーサリングしやすく、かつ便利なインターフェースの表現機能を提供する。実際に、MPEG−4データに関する表現、処理および圧縮はXMT−Aで行われる。
したがって、著作者が3次元グラフィックデータを圧縮するには、著作者が3Dコンテンツを著作する段階から3次元グラフィックデータを表現、操作および圧縮するのに必要な様々な因子を容易に調節するように圧縮に関連した技術をXMT−Aで定義し、これを使用してデータを圧縮可能にする。
すなわち、MPEG−4 AFXで提案されている圧縮表現がXMTで定義されているため、著作者が作った3Dコンテンツに関するアニメーションデータおよび表現データは、圧縮可能である。したがって、著作者は、この定義に基づいて3次元グラフィックデータを圧縮して、圧縮の結果を伝送できる。これは3D(アニメーションおよび表現)データの圧縮に必要な様々な因子を、XMTを使用して媒介因子として定義することによって可能である。したがって、著作者が圧縮を表現するノードを使用して3次元グラフィックデータを圧縮する時、必要な複数の因子をXMT−Aスキーマで定義することが必要である。また、3次元グラフィックデータの圧縮に使われる複数の因子に対するメタ表現方法を提供し、それを使用して圧縮を実行する必要がある。
まず、本発明の全体的な流れを説明する。本発明による3次元グラフィックデータ圧縮に関するメタ表現を用いたMPEG−4符号化器の入力ファイル生成方法は、大きく分けて2つの方法がある。第1は、ユーザが既に圧縮された3Dグラフィック客体データが含まれた入力ファイルを使用する時、MPEG−4符号化器の入力ファイルを生成する方法であり、第2は、ユーザが圧縮されていない3Dグラフィック客体データとその圧縮媒介因子とが含まれた入力ファイルを使用する時、MPEG−4符号化器の入力ファイルを生成する方法である。
第1の方法において、ユーザが既に圧縮された3Dグラフィックス客体データを含むファイルを入力として使用して圧縮しようとする時、XMTパーザ(XMTParser)はXMTファイルを入力し、3Dグラフィックス客体データに関するXMTスキーマとスタイルシートとを参考にして入力ファイルをパージングする。パージングした結果、sceneファイルとmuxファイルとを生成する。前記XMTParserは、単にXMT入力ファイルをsceneに対するファイルとmuxに対するファイルとに分離して出力するが、3Dグラフィックデータが既に圧縮されたビットストリームの形に含まれているので、実行の結果はMPEG−4符号化器に適した入力ファイルの形である。
しかし、第2の方法は、第1の方法と同様にメタ表現に基づいてパージングして作った結果、sceneファイルとmuxファイルとをMPEG−4符号化器の入力として使用できない。その理由は、MPEG−4符号化器が圧縮されたビットストリーム形態の入力ファイルだけを読み取って加工できるからである。したがって、圧縮されていない3Dグラフィック客体データを圧縮媒介因子で圧縮してビットストリームを生成して初めてMPEG−4符号化器に適した入力形態となる。したがって、第2の方法では、別途の圧縮器が必要である。
図2は、MPEG−4 AFXで提案された圧縮表現をXMTで定義して3次元グラフィックデータを圧縮可能にする、3次元グラフィックデータ圧縮に関するメタ表現を用いた入力ファイル生成システムの構成を示すブロック図である。
図2に示されたように、ユーザが圧縮されていない3Dグラフィックス客体データとその圧縮媒介因子とを含むXMTファイル200を圧縮しようとする時、XMTパーザ210はXMTファイル200を入力し、3Dグラフィックス客体データに関するXMTスキーマ230とスタイルシート220、240とを参考にして入力キーワードをパージングする。パージングした結果、sceneファイルとmuxファイルとを生成する。AFX符号化器260は、sceneファイルとmuxファイルとを入力として受け取り、圧縮されていない客体データを圧縮してビットストリームを作り、BIFS符号化器270とMP4符号化器280とに適した入力ファイルを作る。その結果、ビットストリームがBIFS符号化器270とMP4符号化器280に入力されると、MP4ファイル290がMP4符号化器280から出力される。
本発明による3次元グラフィックデータ圧縮に関するメタ表現を用いた入力ファイル生成システムは、XMTスキーマ230、XMT2BIFSスタイルシート240、XMT2MUXスタイルシート220、XMTパーザ210、圧縮判断部250およびAFX符号化器260を含む。
前記XMTスキーマ230は、圧縮する客体データに関する情報を含んでいる圧縮ノードと、圧縮に必要な媒介因子、および圧縮ビットストリームフォーマットを含むBitWrapperEncodingHints、および伝送されたビットストリームを復号化する時、如何なる復号化器を使用するかに関する情報を含むAFXConfigを定義している。
前記XMTスキーマが定義している圧縮ノードは、ノードフィールド、バッファフィールド、URLフィールドおよびノードフィールドが含む客体データの圧縮方法を選択するtypeフィールドを備える。前記ノードフィールドは、圧縮する客体データを含んでいる。前記バッファフィールドは、前記URLフィールドと相互排他的に使われ、前記ノードの圧縮されたビットストリームをインバンドとして伝送する。前記URLフィールドは、前記bufferフィールドと相互排他的に使われ、前記ノードの圧縮されたビットストリームをアウトバンドとして伝送する。前記インバンドとしての伝送は、前記圧縮ノードを含むXMT入力ファイルがsceneファイルに変換された後、BIFS符号化器を通過してBIFSファイルに最終変換された時、前記圧縮ノード内のノードフィールドの圧縮されたビットストリームがBIFSファイルに含まれて伝送され、前記アウトバンドとしての伝送は前記圧縮ノードを含むXMT入力ファイルがsceneファイルに変換された後、BIFS符号化器を通過してBIFSファイルに最終変換された時、前記圧縮ノード内のノードフィールドの圧縮されたビットストリームがBIFSファイルと分離されて個別的に伝送される。
前記XMTスキーマが定義している前記圧縮媒介因子は、圧縮対象となる客体の頂点座標に対するキーフレームアニメーションデータに関する媒介因子と、3次元メッシュ情報に関する媒介因子と、回転移動キーフレームアニメーションデータに関する媒介因子と、位置移動キーフレームアニメーションデータに関する媒介因子のうち少なくとも何れか1つを含んでいる。
前記XMTスキーマが定義している前記BitWrapperEncodingHintsは、前記圧縮ノード内のURLフィールドが記述するURL IDと同じバイナリIDを有する客体記述子内にあり、圧縮されたビットストリームのファイル名とそのビットストリームの圧縮フォーマット種類に関する情報をさらに備える。
前記XMTスキーマが定義している前記AFXConfigは、前記圧縮ノードがAFX符号化器260を使用してノードフィールドに含まれた客体データの圧縮ビットストリームを作ってURLに伝送し、この伝送されたビットストリームを復号化する時、必要な情報、すなわち、如何なる復号化器を使用するかに関する情報をさらに備える。
前記XMT2BIFSスタイルシート240は、前記XMTスキーマ230に基づくXMT入力ファイル200からsceneファイルへの変換を支援する。前記XMT2MUXスタイルシート220は、前記XMTスキーマ230に基づくXMT入力ファイルからmuxファイルへの変換を支援する。
XMTパーザ210は、XMT入力ファイル200を前記XMTスキーマ230と前記XMT2BIFSスタイルシート240およびXMT2MUXスタイルシート220を用いてパージングしてsceneファイルおよびmuxファイルを生成する。
前記圧縮判断部250は、前記XMTパーザ210のパージング結果として生成されたsceneファイルが圧縮されていないグラフィック客体データを含んでいるか判断し、圧縮ノード検索部300および圧縮データ判断部350を備える。図3は、前記圧縮判断部250のより詳細な構成を示すブロック図であって、前記圧縮ノード検索部300は、前記パージングの結果として生成されたsceneファイルから少なくとも1つの圧縮(BitWrapper)ノードを探し出す。前記圧縮データ判断部350は、前記検索された圧縮ノードのノードフィールド内にグラフィック客体データが存在すれば、圧縮されていない客体データを含んでいると判断する。
前記AFX符号化器260は、入力ファイルをキーワード(ノード名)単位でパージングしつつ、前記圧縮判断部250の判断の結果、グラフィック客体データが圧縮されていないと判断されれば、前記sceneファイルに含まれている圧縮媒介因子(encoding parameter)を使用してグラフィック客体データを圧縮し、圧縮されたビットストリームと修正されたsceneファイルおよび修正されたmuxファイルを生成する。
図4は、前記AFX符号化器260のさらに細部の構成を示すブロック図であって、AFXパーザ400、入力ファイル生成器420、客体データ保存部440、圧縮媒介因子保存部460および内部符号化器480を備える。
前記AFXパーザ400は、圧縮(BitWrapper)ノードを含むsceneファイルから少なくとも1つの圧縮ノードを探し出して、前記圧縮ノードのノードフィールド内にグラフィック客体データが存在すれば、前記sceneファイルの圧縮ノード内にある、客体データと前記圧縮ノード内に含まれる圧縮媒介因子とを保存する。より詳細に説明すれば、AFXパーザ400は、圧縮されていない客体データが含まれたsceneファイルとmuxファイルとを入力として受け取る。sceneファイルは、場面情報と圧縮されていない3Dグラフィック客体データとを含む。muxファイルは、データが如何なるバッファサイズで伝送され、伝送されたビットストリームを如何なる復号化器で復号化するかに関する情報とデータ間に如何なる時間差をおいてプレーされるか否かのような同期化(synchronization)情報とを含む。このため、前記AFXパーザ400は、sceneファイルとmuxファイルとで使われるノードと圧縮媒介因子(encodingparameter)とをキーワードで保存して置き、これに基づいて入力ファイルのキーワード単位でsceneファイルとmuxファイルを読込んでパージングする。前記AFXパーザ400は、sceneファイルとmuxファイルとをパージングしつつ圧縮する客体データを含むノードが出ると、そのノードの圧縮する客体データと圧縮に必要な圧縮媒介因子の値とを圧縮媒介因子保存部に保存する。前記圧縮媒介因子保存部460に保存された値はノード別に区分され、内部符号化器480内に適した符号化器に渡される。
また、前記AFXパーザ400は、シングル圧縮(BitWrapper)ノードだけでなく多重圧縮(BitWrapper)ノードをサポートする。そして、複数のノードより構成された3Dグラフィック客体データを全てbufferに伝送しても、全てURLに伝送しても、またはbufferとURLとを何れも用いて伝送しても良い。これはユーザが自由に選択することができる。
前記客体データ保存部440は、前記AFXパーザ400から出力される客体データを保存する。
前記圧縮媒介因子保存部460は、前記AFXパーザ400から出力される圧縮媒介因子を保存する。
前記内部符号化器480は、前記保存された客体データを含んでいるノードに相応するMPEG−4 AFXツールに関する符号化器を含む。前記内部符号化器480は、前記圧縮媒介因子保存部460の圧縮媒介因子を使用して前記客体データ保存部440に保存されている客体データを符号化してビットストリームに生成し、頂点座標符号化器482、メッシュ符号化器484、回転移動符号化器486および位置移動符号化器488の内少なくとも1つを備える。しかし、内部符号化器480に含まれる符号化器は制限されず、前記符号化器の他にも拡張が可能である。圧縮する3Dグラフィック客体データを含んでいる圧縮ノード内のノードフィールドの客体によって、適切な符号化器が選択され、この選択された符号化器は、客体データ保存部440に保存された圧縮されていない3Dグラフィック客体データと、圧縮媒介因子保存部460に保存された圧縮に必要な圧縮媒介因子の値とを受け取り、3Dグラフィック客体データを圧縮媒介因子で圧縮してビットストリームを生成する。
前記頂点座標符号化器482は、前記保存された客体データおよび圧縮媒介因子に相応し、圧縮対象となる客体の頂点座標に対するキーフレームアニメーションデータに関する媒介因子を使用して前記頂点座標に対するキーフレームアニメーションデータを符号化する。前記メッシュ符号化器484は、前記保存された客体データおよび圧縮媒介因子に相応し、3次元メッシュ情報に関する媒介因子を使用して前記3次元メッシュ情報を符号化する。
前記回転移動符号化器486は、前記保存された客体データおよび圧縮媒介因子に相応して、回転移動キーフレームアニメーションデータに関する媒介因子を使用して前記回転移動キーフレームアニメーションデータを符号化する。前記位置移動符号化器488は、前記保存された客体データおよび圧縮媒介因子に相応し、位置移動キーフレームアニメーションデータに関する媒介因子を使用して前記位置移動キーフレームアニメーションデータを符号化する。
一方、前記入力ファイル生成器420は、前記AFXパーザ400の前記圧縮ノードのノードフィールド内にグラフィック客体データが存在すれば、前記sceneファイルから各圧縮ノードの客体データと圧縮媒介因子とを削除した修正されたsceneファイル(#modified.sceneファイル)、およびBIFS符号化器270が出力として生成するファイル名が前記修正されたsceneファイル名を反映できるように修正されたmuxファイル(#modified.muxファイル)を生成する。
前述したように、AFX符号化器260を通過した結果、生成されたファイルはBIFS符号化器270とMP4符号化器280とに適した入力ファイルとなる。その入力を使用してBIFS符号化器270とMP4符号化器280とによって、MP4ファイル290が生成される。前記MP4ファイル290をMPEG−4プレイヤーで実行して視覚化された結果を確認することができる。
そして、前記AFXパーザ400と、客体データ保存部440および圧縮媒介因子保存部460を通過して圧縮されていない客体データと圧縮媒介因子値とによって決定された各符号化器に合うように入力値が入力されたか否かに関する検証は、圧縮されたビットストリームの生成で確認することができる。
一方、前記図2のXMT入力ファイル200は5種に大別される。第1は、圧縮されたグラフィック客体データをバッファフィールドを使用してMPEG−4符号化器(図示せず)に伝送する場合、第2は、圧縮されたグラフィック客体データをURLフィールドを使用してMPEG−4符号化器に伝送する場合、第3は、圧縮されていないグラフィック客体データをAFX符号化器260を通じて符号化してバッファフィールドを使用してMPEG−4符号化器に伝送する場合、第4は、圧縮されていないグラフィック客体データをAFX符号化器260を通じて符号化してURLフィールドを使用してMPEG−4符号化器に伝送する場合、第5は、前記第1ないし第4の場合を混用する場合である。そして、前記各場合において、sceneファイルとmuxファイルとが生成される。これを具体的に以下に説明する。
前記第1の場合は次の通りである。
前記XMTパーザ210に入力されるXMTファイル200は、初期客体記述子(Initial Object Descriptor)を備えるヘッダ、および少なくとも1つの圧縮ノードを含むボディーよりなる。前記ヘッダの初期客体記述子は、BIFS符号化器270が出力として生成するファイル名を有するストリームソース(StreamSource)を含み、BIFS符号化器270から圧縮されるファイルの復号化時に必要な情報を備え、客体グラフィックがディスプレーされる時間順序を示す同期化情報を備える。前記ボディーの圧縮ノードは、既に圧縮されたノード名を保存しているノードフィールドと、既に圧縮された客体データファイル名を保存しているバッファフィールドとを備える。前記sceneファイルは、前記ボディーと同じ、少なくとも1つの圧縮ノードを備える。前記muxファイルは、前記ヘッダと同じ初期客体記述子および前記初期客体記述子内にある、BIFS符号化器270が出力として生成するファイルのストリームフォーマット情報を備える。
前記第2の場合は次の通りである。
前記XMTパーザ210に入力されるXMTファイル200は、初期客体記述子を含むヘッダ(Header)、および少なくとも1つの圧縮ノードおよび少なくとも1つの客体記述子(objectDescriptor)を含む客体記述子更新(ObjectDescriptorUpdate)を備えるボディーよりなる。前記ヘッダの初期客体記述子は、BIFS符号化器270が出力として生成するファイル名を有するストリームソース(StreamSource)を含み、BIFS符号化器270から圧縮されるファイルの復号化時に必要な情報を備え、客体グラフィックがディスプレーされる時間順序を示す同期化情報を備える。前記ボディーの圧縮ノードは、既に圧縮された客体データのビットストリームが保存されたファイル名を含むビットラッパーエンコーディングヒント(BitWrapperEncodingHints)を有する客体記述子更新内の客体記述子と同じURL IDを備える。前記ボディーの客体記述子更新内に含まれる客体記述子は、ボディーの圧縮ノードのURL IDと同値を有するバイナリIDをフィールドとして具備し、前記圧縮された客体データの復号化時に復号化に使われる情報(AFXConfig)、および圧縮された客体データのビットストリームが保存されたファイル名と前記ビットストリームの圧縮フォーマットの形式を含むビットラッパーエンコーディングヒント(BitWrapperEncodingHints)を備え、前記sceneファイルは、前記ボディーと同じ、少なくとも1つの圧縮ノードおよびボディーの客体記述子更新内にある客体記述子と同じURL IDを有し、ボディーの客体記述子更新内にある客体記述子のビットラッパーエンコーディングヒント内にあるビットストリームファイルを保存するmuxファイルを有する客体記述子を含む客体記述子更新(ObjectDescriptorUpdate)を有する。前記muxファイルは、前記ヘッダと同じ初期客体記述子および客体記述子を有する。
前記第3の場合は次の通りである。
前記XMTパーザ210に入力されるXMTファイル200は、初期客体記述子を備えるヘッダと、少なくとも1つの圧縮ノードを備えるボディーよりなる。前記ヘッダの初期客体記述子は、BIFS符号化器270が出力として生成するファイル名を有しているストリームソースを含み、BIFS符号化器270から圧縮されるファイルの復号化時に必要な情報を備え、客体グラフィックがディスプレーされる時間順序を示す同期化情報を含む。前記ボディーの圧縮ノードは、圧縮するノード名を保存しているノードフィールド、前記ノードのノードフィールド内にある圧縮する客体データ、前記ノードにある客体データ、前記客体データ圧縮に使われる圧縮媒介因子、および圧縮媒介因子を使用して圧縮された客体データのビットストリームファイル名を保存するバッファフィールドを備える。前記sceneファイルは、前記ボディーと同じ、少なくとも1つの圧縮ノードを含み、前記muxファイルは前記ヘッダと同じ初期客体記述子および前記初期客体記述子内にある、BIFS符号化器が出力として生成するファイルのストリームフォーマット情報を含む。
前記第4の場合は次の通りである。
前記XMTパーザ210に入力されるXMTファイル200は、初期客体記述子を含むヘッダ(Header)、および少なくとも1つの圧縮ノードおよび少なくとも1つの客体記述子(objectDescriptor)を含む客体記述子更新(ObjectDescriptorUpdate)を備えるボディーよりなる。前記ヘッダの初期客体記述子(InitialObjectDescriptor)は、BIFS符号化器270が出力として生成するファイル名を有するストリームソースを含み、BIFS符号化器270から圧縮されるファイルの復号化時に必要な情報を備え、客体グラフィックがディスプレーされる時間順序を示す同期化情報を含む。前記ボディーの圧縮ノードは、圧縮するノード名を保存しているノードフィールド、前記ノードのノードフィールド内にある圧縮する客体データ、前記客体データの圧縮に使われる圧縮媒介因子、および圧縮媒介因子を使用して圧縮された客体データのビットストリームが保存されるファイル名を含むビットラッパーエンコーディングヒントを含む客体記述子更新内にある客体記述子と同じURL IDが保存されたフィールドを含む。前記ボディーの客体記述子更新に含まれた客体記述子は、ボディーの圧縮ノードのURL IDと同値を有するバイナリ IDをフィールドとして備え、前記圧縮された客体データの復号化時に復号化に使われる情報(AFXConfig)、および圧縮された客体データのビットストリームが保存されたファイル名と前記ビットストリームの圧縮フォーマットの形式を含むビットラッパーエンコーディングヒントを備える。前記sceneファイルは、前記ボディーと同じ、少なくとも1つの圧縮ノードおよびボディーの客体記述子更新内にある客体記述子と同じURL IDを有し、ボディーの客体記述子更新内にある客体記述子のビットラッパーエンコーディングヒント内にあるビットストリームファイルを保存するmuxファイルを有する客体記述子を含む客体記述子更新(ObjectDescriptorUpdate)を有する。前記muxファイルは、前記ヘッダと同じ初期客体記述子と、前記ボディーの客体記述子更新の客体記述子と同じ客体記述子と、を有する。
前記第5の場合は次の通りである。
前記XMTパーザ210に入力されるXMTファイル200は、初期客体記述子を含むヘッダ(Header)、およびバッファフィールドを備える少なくとも1つの圧縮ノードと、URLフィールドを備える少なくとも1つの圧縮ノードおよび前記URLフィールドを備える圧縮ノード数と同数の客体記述子(objectDescriptor)を含む客体記述子更新(ObjectDescriptorUpdate)を備えるボディー(body)よりなる。前記ヘッダの初期客体記述子(InitialObjectDescriptor)は、BIFS符号化器270が出力として生成するファイル名を有しているストリームソースを含み、BIFS符号化器270から圧縮されるファイルの復号化時に必要な情報を備え、客体グラフィックがディスプレーされる時間順序を示す同期化情報を含む。前記ボディーでバッファフィールドを備える圧縮ノードは、圧縮するノード名を保存しているノードフィールド、前記ノードのノードフィールド内にある圧縮する客体データ、前記客体データ圧縮に使われる圧縮媒介因子、および圧縮媒介因子を使用して圧縮された客体データのビットストリームファイル名を保存するバッファフィールドを備える。前記ボディーのURLフィールドを備える圧縮ノードは、圧縮するノード名を保存しているノードフィールド、前記ノードのノードフィールド内にある圧縮する客体データ、前記客体データの圧縮に使われる圧縮媒介因子、および圧縮媒介因子を使用して圧縮された客体データのビットストリームが保存されるファイル名を含むビットラッパーエンコーディングヒントを含む客体記述子更新内にある客体記述子のURL identificationと同じURL IDが保存されたフィールドを含む。前記ボディーの客体記述子更新に含まれた客体記述子は、ボディーの圧縮ノードのURL IDと同値を有するバイナリ IDをフィールドとして備え、前記圧縮された客体データの復号化時に復号化に使われる情報(AFXConfig)、および圧縮された客体データのビットストリームが保存されたファイル名と前記ビットストリームの圧縮フォーマットの形式を含むビットラッパーエンコーディングヒントを備える。前記sceneファイルは、前記ボディーと同じ、圧縮ノードおよびボディーの客体記述子更新内にある客体記述子と同じURL IDを有し、ボディーの客体記述子更新内にある客体記述子のビットラッパーエンコーディングヒント内にあるビットストリームファイルを保存するmuxファイルを有する客体記述子を含む客体記述子更新を有し、前記muxファイルは前記ヘッダと同じ初期客体記述子および前記ボディーの客体記述子更新の客体記述子と同じ客体記述子を有する。
図2に示された3次元グラフィックデータ圧縮に関するメタ表現を用いた入力ファイル生成システムをより詳細に説明する。まず、3次元グラフィックデータを圧縮するノードとその媒介因子のXMT−Aスキーマを使用して圧縮を実行する方法および構造を説明する。
既存のXMT技術は、3次元グラフィックデータを圧縮する表現に対するXMT−Aスキーマが定義されていないために、3次元グラフィックデータ圧縮についてのXMTファイルが入力されても、パージングできなかった。しかし、図2に示されたように、3次元グラフィックデータを圧縮するノードとその媒介因子(parameter)をXMT−Aスキーマ230で定義することによって、圧縮ノードを使用した3次元グラフィックデータ圧縮についてのXMTファイル200が入力された時、XMTパーザ210がXMT−Aスキーマ230で定義された内容とXMT2MUXスタイルシート220とXMT2BIFSスタイルシート240とに基づいてパージングする。前記XMTファイルにあるデータが圧縮されたデータであれば、直ちにMPEG−4標準符号化器の入力ファイル(sceneファイル、muxファイル)を作り出す。しかし、前記XMTファイルにあるデータが圧縮されていないオリジナルのデータであれば、AFX符号化器260を通じて符号化した後、MPEG−4標準符号化器の入力ファイル(修正されたsceneファイル、修正されたmuxファイル)を作り出す。
前記MPEG−4標準符号化器は、BIFS符号化器270とMP4符号化器280とより構成される。作成された入力ファイルが、それぞれBIFS符号化器270とMP4符号化器280とに入力されてビットストリーム(MP4)290を作り出し、MPEG−4プレーヤーで視覚化される。
3Dグラフィックデータを圧縮するノードと、その媒介因子に関するメタ表現、すなわち、XMT−Aスキーマ230とを使用すれば、著作段階で著作者がメタ表現の選択如何によって圧縮するか否かを決定する。また圧縮を選択する場合、圧縮しようとする3次元グラフィックデータに対して圧縮媒介因子に関するメタ表現を行うことができる。
著作者が圧縮を選択する場合、圧縮しようとする3次元グラフィックデータを、その媒介因子を調節して、大きく2つに分けられる方法から選択される方法によってMPEG−4標準符号化器に伝送することができる。第1は、オリジナルのデータをAFX符号化器260を通じて圧縮してビットストリームに伝送する方法と、第2は、既に圧縮されたビットストリームを含んでMPEG−4標準符号化器に伝送する方法とがある。
前記2つの方法をさらに細分化すれば、合計で5つの伝送方法となる。第1は、既に圧縮されたビットストリームの形で"バッファ(buffer)"を使用して伝送する方法である。第2は、既に圧縮されたビットストリームの形で"URL"を使用して伝送する方法である。第3は、客体データを媒介因子でビットストリームに作り、"バッファ"を用いて伝送する方法である。第4は、客体データを媒介因子を使用してビットストリームに作り、"URL"に伝送する方法である。第5は、前記第1ないし第4の方法のうち少なくとも2つの方法を混用する方法である。
次いで、3次元グラフィックデータ圧縮に使われる複数の因子に関するメタ表現方法(XMT)について説明する。前記メタ表現方法は、3次元グラフィックデータの圧縮に必要なノードとその媒介因子とをメタ表現する方法である。ここで、3次元グラフィックデータの圧縮に必要なノードであるビットラッパー(BitWrapper)ノードとその媒介変数とを実例を挙げて説明する。
Figure 2005176355
1. ビットラッパーノードについてのXMT−Aスキーマ
1.1 ビットラッパーノードのBIFS構文(Syntax)
まず、ビットラッパーについて簡略に説明すれば次の通りである。
ビットラッパーノードの機能は、"ノード(node)"フィールドのデータをビットストリームに圧縮し、このビットストリームをインバンド(in-band)またはアウトバンド(out-band)を使用して伝送することである。"URL"フィールドは、アウトバンドビットストリームを伝送し、"バッファ"フィールドはBIFSビットストリームのようにインバンドビットストリームを伝送する。
もし、著作者がデータを圧縮してビットラッパーノードを通じて伝送しようとすれば、著作者はビットストリームを生成するための媒介因子を調節しなければならない。それは、XMT−Aスキーマ構文(Syntax)で可能である。しかし、この媒介因子は、特定の符号化器で使用されるパラメータではない。その代りに、この媒介因子はデコーダ構文(syntax)に関連する。このパラメータは圧縮する間に調整される。現在、ビットラッパーノードは、3つの3次元キーフレームアニメーション(CoordinateInterpolator、OrientationInterpolator、PositionInterpolator)と3次元メッシュ情報(IndexedFaceSet)とについての圧縮ツールに関する圧縮されたビットストリームの伝送をサポートする。
次いで、ビットラッパーノードと3つの3次元キーフレームアニメーションデータ(CoordinateInterpolator、OrientationInterpolator、PositionInterpolator)ノードの媒介因子と3次元メッシュ情報(IndexedFaceSet)ノードの媒介因子に関するXMT−Aスキーマ構文について説明する。
1.2 BitWrapperノードに関するXMT−Aスキーマ
1.2.1 構文
<annotation>
<documentation>
**************************************
* Declaration of BitWrapper *
**************************************
</documentation>
</annotation>
<complexType name="BitWrapperType">
<all>
<element ref="XMTa:IS" minOccurs="0"/>
<element name="node" form="qualified" minOccurs="0">
<complexType>
<group ref="XMTa:SFWorldNodeType" minOccurs="0" />
</complexType>
</element>
<element ref="XMTa:BitWrapperEncodingParameter"/>
</all>
<attribute name="type" type="XMTa:SFInt32" use="optional" default="0"/>
<attribute name="url" type="XMTa:MFUrl" use="optional"/>
<attribute name="buffer" type="XMTa:SFString" use="optional" default ="&quot;&quot;"/>
<attributeGroup ref="XMTa:DefUseGroup"/>
</complexType>
<element name="BitWrapper" type="XMTa:BitWrapperType"/>
<element name="BitWrapperEncodingParameter">
<complexType>
<choice>
<element name="CoordinateInterpolatorEncodingParameter" minOccurs="0" maxOccurs="1">
<complexType>
<attribute name="keyQBits" type="XMTa:numOfKeyQBits" use="optional" default="8"/>
<attribute name="keyValueQBits" type="XMTa:numOfKeyValueQBits" use="optional" default="16"/>
<attribute name="transpose" type="XMTa:transposeType" use="optional" default="&quot;ON&quot;"/>
<attribute name="linearKeycoder" type="XMTa:linearKeycoderType" use="optional"
default="&quot;LINEAR&quot;"/>
</complexType>
</element>
<element name="IndexedFaceSetEncodingParameter" minOccurs="0" maxOccurs="1">
<complexType>
<attribute name="coordQBits" type="XMTa:numOfCoordQBits" use="optional" default="10"/>
<attribute name="normalQBits" type="XMTa:numOfNormalQBits" use="optional" default="9"/>
<attribute name="colorQBits" type="XMTa:numOfColorQBits" use="optional" default="6"/>
<attribute name="texCoordQBits" type="XMTa:numOftexCoordQBits" use="optional" default="10"/>
<attribute name="coordPredMode" type="XMTa:coordPredType" use="optional" default="2"/>
<attribute name="normalPredMode" type="XMTa:normalPredType" use="optional" default="0"/>
<attribute name="colorPredMode" type="XMTa:colorPredType" use="optional" default="0"/>
<attribute name="texCoordPredMode" type="XMTa:texCoordPredType" use="optional" default="0"/>
<attribute name="errorResilience" type="XMTa:errorResilienceType" use="optional"
default="&quot;OFF&quot;"/>
<attribute name="bitsPerPacket" type="XMTa:SFInt32" use="optional" default="180"/>
<attribute name="boundaryPrediction" type="XMTa:boundaryPredictionType" use="optional"
default="0"/>
</complexType>
</element>
<element name="OrientationInterpolatorEncodingParameter" minOccurs="0" maxOccurs="1">
<complexType>
<attribute name="keyQBits" type="XMTa:numOfKeyQBits" use="optional" default="8"/>
<attribute name="keyValueQBits" type="XMTa:numOfKeyValueQBits" use="optional" default="16"/>
<attribute name="preservingMode" type="XMTa:preservingType" use="optional"
default="&quot;KEY&quot;"/>
<attribute name="dpcmMode" type="XMTa:orientationDpcmType" use="optional" default="0"/>
<attribute name="aacMode#X" type="XMTa:aacType" use="optional"
default="&quot;BINARY&quot;"/>
<attribute name="aacMode#Y" type="XMTa:aacType" use="optional"
default="&quot;BINARY&quot;"/>
<attribute name="aacMode#Z" type="XMTa:aacType" use="optional"
default="&quot;BINARY&quot;"/>
<attribute name="linearKeycoder" type="XMTa:linearKeycoderType" use="optional"
default="&quot;LINEAR&quot;"/>
</complexType>
</element>
<element name="PositionInterpolatorEncodingParameter" minOccurs="0" maxOccurs="1">
<complexType>
<attribute name="keyQBits" type="XMTa:numOfKeyQBits" use="optional" default="8"/>
<attribute name="keyValueQBits" type="XMTa:numOfKeyValueQBits" use="optional" default="16"/>
<attribute name="preservingMode" type="XMTa:preservingType" use="optional"
default="&quot;KEY&quot;"/>
<attribute name="dpcmMode#X" type="XMTa:positionDpcmType" use="optional" default="0"/>
<attribute name="dpcmMode#Y" type="XMTa:positionDpcmType" use="optional" default="0"/>
<attribute name="dpcmMode#Z" type="XMTa:positionDpcmType" use="optional" default="0"/>
<attribute name="aacMode#X" type="XMTa:aacType" use="optional"
default="&quot;BINARY&quot;"/>
<attribute name="aacMode#Y" type="XMTa:aacType" use="optional"
default="&quot;BINARY&quot;"/>
<attribute name="aacMode#Z" type="XMTa:aacType" use="optional"
default="&quot;BINARY&quot;"/>
<attribute name="linearKeycoder" type="XMTa:linearKeycoderType" use="optional"
default="&quot;LINEAR&quot;"/>
<attribute name="intra#X" type="XMTa:intraType" use="optional" default="0"/>
<attribute name="intra#Y" type="XMTa:intraType" use="optional" default="0"/>
<attribute name="intra#Z" type="XMTa:intraType" use="optional" default="0"/>
</complexType>
</element>
<element name="PointTextureEncodingParameter" minOccurs="0" maxOccurs="1">
<complexType>
<attribute name="codingPercent" type="XMTa:codingPercentType" use="optional" default="100"/>
</complexType>
</element>
</choice>
</complexType>
</element>
1.2.2. 意味(Semantics)
ビットラッパーノードはノード圧縮スキーム専用である。前記圧縮されたデータの表現は、BIFSストリーム内で伝送されるか、BIFSストリームから分離された外のストリームに伝送される。ストリームがBIFSアップデート内で伝送される時、"buffer"フィールドは圧縮された表現を含む。ストリームがBIFSアップデートの外の分離されたストリームに伝送される時、"URL"フィールドはストリームのURLを含む。"buffer"フィールドと"URL"フィールドは互いに排他的に使われる。すなわち、"buffer"フィールドが使われれば、"URL"フィールドは使われず、"URL"フィールドが使われれば、"buffer"フィールドは使われない。"node"フィールドは、圧縮された表現を有するノードを含む。ビットラッパーノードは、"no-de"の位置で使われる。"type"フィールドは、ノード圧縮スキームが使われねばならないことを示す。0が"type"フィールド値のデフォルト値である。"type"フィールド値は未来のノード圧縮スキームが開発されることを考慮して示したものである。これについてデフォルトスキームを定義する。
"CoordinateInterpolatorEncodingParameter"フィールドは、客体のあらゆる頂点座標に対するキーフレームアニメーションデータ(CoordinateInterpolatorノードデータ)を圧縮するために使われる媒介因子を含む。この場合、"node"フィールドはCoordinateInterpolatorノードである。
"IndexedFaceSetEncodingParameter"フィールドは、3次元メッシュ情報(IndexedFaceSetノードデータ)の圧縮に使われる媒介因子を含む。この場合に"node"フィールドはIndexedFaceSetノードである。
"OrientationInterpolatorEncodingParameter"フィールドは、回転移動キーフレームアニメーションデータ(OrientationInterpolatorノードデータ)を圧縮するために使われる媒介因子を含む。この場合に"node"フィールドはOrientationInterpolatorノードである。
"PositionInterpolatorEncodingパラメータ"フィールドは、位置移動キーフレームアニメーションデータ(PositionInterpolatorノードデータ)を圧縮するために使われる媒介因子を含む。この場合に"node"フィールドはPositionInterpolatorノードである。媒介因子を使用しない時、媒介因子がファイル中に必ずしも明示せねばならないものではない。媒介因子を使用して圧縮が実行される時、媒介因子フィールドは排他的に使われねばならない。その理由は、"node"フィールドが一回に圧縮されるノードデータの一類型(type)だけ含むからである。また、媒介因子フィールドが"<choice>"エレメントでグルーピング(grouping)されたからである。各パラメータフィールドにおいて"attribute"は次の節で説明する。
圧縮された表現が分離されたストリームに含まれて伝送される時、ノードデコータは所定の形に合わせて形成されねばならない。
客体記述子ストリーム(objectdescriptorstream)でノードデコータは、streamType0x03とobjectTypeIndication0x05とについてのDecoderConfigdescriptorに現れなければならない。デコータはAFXConfigdescriptorで形成される。
1.3.numOfKeyQBits
1.3.1構文
<simpleType name="numOfKeyQBits">
<restriction base="int">
<minInclusive value="0">
<maxInclusive value="31"/>
</restriction>
</simpleType>
1.3.2 意味
numOfKeyQBitsは、keyデータの量子化ビットサイズ(quantizationbitsize)を示す。これは整数(integer)タイプである。numOfKeyQBitsの最小値は、0であり、最大値は31である。
1.4 numOfKeyValueQBits
1.4.1 構文
<simpleType name="numOfKeyValueQBits">
<restriction base="int"> <minInclusive value="0"/>
<maxInclusive value="31"/>
</restriction>
</simpleType>
1.4.2 意味
numOfKeyValueQBitsは、keyValueデータの量子化ビットサイズ(quantizationbitsize)を示す。これはintegerタイプである。numOfKeyQBitsの最小値は0であり、最大値は31である。
1.5 linearKeycoderType
1.5.1 構文
<simpleType name="linearKeycoderType">
<restriction base="string">
<enumeration value="&quot;LINEAR&quot;"/>
<enumeration value="&quot;NOLINEAR&quot;"/>
</restriction>
</simpleType>
1.5.2 意味
linearKeycoderTypeは、stringタイプである。linearKeycoderTypeは、linearkeycoderが使われているか否かを示す。
1.6 preservingType
1.6.1 構文
<simpleType name="preservingType">
<restriction base="string">
<enumeration value="&quot;KEY&quot;"/>
<enumeration value="&quot;PATH&quot;"/>
</restriction></simpleType>
1.6.2 意味
preservingTypeは、stringタイプである。preservingTypeは現在モードがkey preservingモードであるか、path preservingモードであるかを示す。
1.7 aacType
1.7.1 構文
<simpleType name="aacType">
<restriction base="string">
<enumeration value="&quot;BINARY&quot;"/> <enumeration value="&quot;UNARY&quot;"/>
</restriction>
</simpleType>
1.7.2 意味
aacTypeは、stringタイプである。aacTypeは、各keyValueコンポーネント(X,Y,Z,(Theta - OrientationInterpolator))についての現在モードがBinaryAACモードか、UnaryAACモードかを示す。
1.8 orientationDpcmType
1.8.1 構文
<simpleType name="orientationDpcmType"> <restriction base="int">
<enumeration value="0"/>
<enumeration value="1"/>
<enumeration value="2"/>
</restriction>
</simpleType>
1.8.2 意味
orientationDpcmTypeは、各keyValueコンポーネント(X,Y,Z,(Theta - OrientationInterpolator))について使われたDPCM次数を示す。これは整数タイプである。前記orientationDpcmTypeが有しうる値は、0、1、2である。orientationDpcmType値が0であれば、1次DPCMを使用するという意味であり、orientationDpcmType値が1であれば、2次DPCMを使用するという意味であり、orientationDpcmType値が2であれば、SmartDPCMを使用するという意味である。Orientation interpolator encoderが自動でDPCM次数を決定するとする時、orientationDpcmType値が2である。
1.9 positionDpcmType
1.9.1 構文
<simpleType name="positionDpcmType">
<restriction base="int">
<enumeration value="0"/>
<enumeration value="1"/>
<enumeration value="2"/>
</restriction>
</simpleType>
1.9.2 意味
positionDpcmTypeは各keyValueコンポーネント(X,Y,Z)に対して使われたDPCM次数を示す。これは整数タイプである。DPCM次数が"1"ならば、フラッグは0にセットされる。DPCM次数が"2"ならば、1にセットされる。SADが使われれば、2にセットされる。SADは[2]に詳細に説明されている。
1.10 intraType
1.10.1 構文
<simpleType name="intraType">
<restriction base="int"> <enumeration value="0"/>
<enumeration value="1"/>
</restriction>
</simpleType>
1.10.2 意味
IntraTypeは、Position Interpolator Compressionに使われる。intraTypeは、各keyValueコンポーネント(X,Y,Z)についてintracodingモードが使われたか否かを示す。
1.11 transposeType
1.11.1 構文
<simpleType name="transposeType">
<restriction base="string">
<enumeration value="&quot;ON&quot;"/>
<enumeration value="&quot;OFF&quot;"/>
</restriction>
</simpleType>
1.11.2 意味
transposeTypeはtransposeモードまたはvertexモードについてのフラッグである。もし、valueが"ON"にセットされたならば、transposeモードが使われ、そうでなければ、vertexモードが使われる。
1.12 numOfCoordQBits
1.12.1 構文
<simpleType name="numOfCoordQBits">
<restriction base="int">
<minInclusive value="1"/>
<maxInclusive value="24"/>
</restriction>
</simpleType>
1.12.2 意味
numOfCoordQBitsは、geometryについての量子化ステップ(quantizationstep)を示す。numOfCoordQBitsの最小値が1であり、最大値は24である。
1.13 numOfNormalQBits
1.13.1 構文
<simpleType name="numOfNormalQBits">
<restriction base="int">
<minInclusive value="3"/>
<maxInclusive value="31"/>
</restriction>
</simpleType>
1.13.2 意味
numOfNormalQBitsは、normalについての量子化ステップ(quantizationstep)を示す。numOfNormalQBitsの最小値が3であり、最大値は31である。
1.14 numOfColorQBits
1.14.1 構文
<simpleType name="numOfColorQBits"> <restriction base="int">
<minInclusive value="1"/>
<maxInclusive value="16"/>
</restriction>
</simpleType>
1.14.2 意味
numOfColorQBitsは、colorについての量子化ステップ(quantizationstep)を示す。numOfColorQBitsの最小値が1であり、最大値は16である。
1.15 numOfTexCoordQBits
1.15.1 Syntax
<simpleType name="numOftexCoordQBits">
<restriction base="int">
<minInclusive value="1"/>
<maxInclusive value="16"/>
</restriction>
</simpleType>
1.15.2 意味
NumOftexCoordQBitsは、texturecoordinatesについての量子化ステップ(quantizations tep)を示す。NumOftexCoordQBitsの最小値が1であり、最大値は16である。
1.16 coordPredType
1.16.1 構文
<simpleType name="coordPredType">
<restriction base="int">
<enumeration value="0"/>
<enumeration value="2"/>
</restriction>
</simpleType>
1.16.2 意味
CoordPredTypeは、メッシュのvertex coordinatesを再構成するために使われるprediction typeである。no#predictionが使われれば、CoordPredType値は0にセットされる。parallelogram#predictionが使われれば、2にセットされる。
1.17 normalPredType
1.17.1 構文
<simpleType name="normalPredType">
<restriction base="int">
<enumeration value="0"/>
<enumeration value="1"/>
<enumeration value="2"/>
</restriction>
</simpleType>
1.17.2 意味
NormalPredTypeはどのようにnormal valuesが予測(predict)されうるかを示す。no#predictionが使われれば、値が0にセットされ、tree#predictionが使われれば、1にセットされ、parallelogram#predictionが使われれば、2にセットされる。
1.18 colorPredType
1.18.1 構文
<simpleType name="colorPredType">
<restriction base="int">
<enumeration value="0"/>
<enumeration value="1"/>
<enumeration value="2"/>
</restriction>
</simpleType>
1.18.2 意味
colorPredTypeは、どのようにcolorsが予測(predict)されうるかを表す。no#predictionが使われれば、値は0にセットされ、tree#predictionが使われれば、1にセットされ、parallelogram#predictionが使われれば、2にセットされる。
1.19 texCoordPredType
1.19.1 構文
<simpleType name="texCoordPredType">
<restriction base="int">
<enumeration value="0"/>
<enumeration value="2"/>
</restriction>
</simpleType>
1.19.2 意味
texCoordPredTypeはどのようにcolorsが予測(predict)されうるかを表す。no#predictionが使われれば、値は0にセットされ、parallelogram#predictionが使われれば、2にセットされる。
1.20 errorResilienceType
1.20.1 構文
<simpleType name="errorResilienceType">
<restriction base="string">
<enumeration value="&quot;ON&quot;"/>
<enumeration value="&quot;OFF&quot;"/>
</restriction>
</simpleType>
1.20.2 意味
ErrorResilienceTypeはエラー強じん性(Error Resilience)モードが使われたか否かを表す。エラー強じん性が使われていなければ、"OFF"にセットされ、エラー強じん性が使われれば、"ON"にセットされる。もし、"ON"になった場合にのみ、boundaryPredictionTypeとbitsPerPacketとが使われうる。
1.21 boundaryPredictionType
1.21.1 構文
<simpleType name="boundaryPredictionType">
<restriction base="int">
<enumeration value="0"/>
<enumeration value="1"/>
</restriction>
</simpleType>
1.21.2 意味
BoundaryPredictionTypeはboundarypredictionのタイプを示す。値が0ならば、制限された予測(restrictedprediction)が使われ、値1が使われるならば、拡張予測(extendedprediction)が使われる。
1.22 bitsPerPacket
1.22.1 構文
bitsPerPacketの構文はSFInt32タイプと同じである。
<simpleType name="SFInt32">
<restriction base="int"/>
</simpleType>
1.22.2 意味
BitsPerPacketはエラー強靭ビットストリーム(error resiliant bitstream)に対するパケットサイズを示す。この値は、エラー強靭モードで各部分の大きさを決定する。bitsPerPacketのタイプはSFInt32である。デフォルト値は360である。
2. ビットラッパーエンコーディングヒントに対するXMT−Aスキーマ
2.1 構文
次は、ビットラッパーエンコーディングヒントの構文である。
<element name="StreamSource">
<complexType>
<choice minOccurs="0" maxOccurs="unbounded">
<element ref="XMTa:BitWrapperEncodingHints"/>
</choice>
</complexType>
</element>

<element name="BitWrapperEncodingHints">
<complexType>
<choice>
<element name="BitWrapper3DMCEncodingHints">
<complexType>
<sequence>
<element name="sourceFormat">
<complexType>
<sequence>
<element ref="XMTa:param" minOccurs="0" maxOccurs="unbounded"/>
</sequence>
</complexType>
</element>
<element name="targetFormat">
<complexType>
<sequence>
<element ref="XMTa:param" minOccurs="0" maxOccurs="unbounded"/>
</sequence>
</complexType>
</element>
</sequence>
</compleType>
</element>
<element name="BitWrapperICEncodingHints">
<complexType>
<sequence>
<element name="sourceFormat">
<complexType>
<sequence>
<element ref="XMTa:param" minOccurs="0" maxOccurs="unbounded"/>
</sequence>
</complexType>
</element>
<element name="targetFormat">
<complexType>
<sequence>
<element ref="XMTa:param" minOccurs="0" maxOccurs="unbounded"/>
</sequence>
</complexType>
</element>
</sequence>
</compleType>
</element>
<element name="OthersEncodingHints">
<complexType>
<sequence>
<element name="sourceFormat">
<complexType>
<sequence>
<element ref="XMTa:param" minOccurs="0" maxOccurs="unbounded"/>
</sequence>
</complexType>
</element>
<element name="targetFormat">
<complexType>
<sequence>
<element ref="XMTa:param" minOccurs="0" maxOccurs="unbounded"/>
</sequence>
</complexType>
</element>
</sequence>
</compleType>
</element>
</choice>
</complexType>
</element>
2.2 意味
ビットラッパーエンコーディングヒントは、スクリプト(.mux)ファイルで"MuxInfo"descriptionを明細するために使われる。その結果、binary textual formatと一致する。ビットラッパーノードがその中にある"URL"フィールドを使用するアウトバンド(out-band)シナリオについて使われる。ビットラッパーエンコーディングヒントは、ストリームフォーマットのタイプによる"MuxInfo"descriptionに使われる適切な情報を説明している。ビットラッパーエンコーディングヒントは、BitWrapper3DMCEncodingHints、BitWrapperICEncodingHints、OthersEncodingHintsの3つの種類を含む。このうち、1つの方式を選択できるように前記3種類EncodingHintを<choice>tagでグループングした。
3. AFXConfigについてのXMT−Aスキーマ
3.1 構文
<element name="DecoderConfigDescriptor">
<complexType>
<sequence>
<element name="decSpecificInfo" form="qualified" minOccurs="0">
<complexType>
<choice minOccurs="0">
<element name="BIFSConfig" type="XMTa:BIFSConfigType"/>
<element name="BIFSv2Config" type="XMTa:BIFSv2ConfigType"/>
<element name="AFXConfig" type="XMTa:AFXConfigType"/>
<element ref="XMTa:DecoderSpecificInfo"/>
</choice>
</complexType>
</element>
<element name="profileLevelIndicationIndexDescr" form="qualified" minOccurs="0">
<complexType>
<sequence>
<element ref="XMTa:ExtensionProfileLevelDescriptor" minOccurs="0" maxOccurs="unbounded"/>
</sequence>
</complexType>
</element>
</sequence>
<attribute name="objectTypeIndication" type="XMTa:objectTypeIndicationType" use="required"/>
<attribute name="streamType" type="XMTa:streamTypeType" use="required"/>
<attribute name="upStream" type="boolean" use="optional" default="false"/>
<attribute name="bufferSizeDB" type="XMTa:bit24a" use="optional" default="auto"/>
<attribute name="maxBitrate" type="XMTa:bit32a" use="optional" default="auto"/>
<attribute name="avgBitrate" type="XMTa:bit32a" use="optional" default="auto"/>
</complexType>
</element>
<complexType name="AFXConfigType">
<choice>
<element name="A3DMCDecoderSpecific"/>
<element name="CoordInterpCompDecoderSpecific"/>
<element name="OriInterpCompDecoderSpecific"/>
<element name="PosInterpCompDecoderSpecific"/>
</choice>
</complexType>
3.2 意味
AFXConfigは、BitWrapper nodeを使用してAFXツールを符号化して伝送した時、伝送されたビットストリームを復号化するための情報を知らせる役割をする。BitWrapperノードがその中にある"URL"フィールドを使用するアウトバンドシナリオに対して使われる。すなわち、AFXCongifは、このビットストリームがAFXツールを使用し、その中如何なる符号化方式を適用したかを知らせる重要な情報である。また、AFXConfigはA3DMCDecoderSpecific、CoordInterpCompDecoderSpecific、OriInterpCompDecoderSpecific、PosInterpCompDecoderSpecificの4つの復号化方式を含む。
4. XMT2MUXスタイルシートにビットラッパーエンコーディングヒントを追加
次はXMT2MUXスタイルシートにMuxInfoとビットラッパーエンコーディングヒント構文とを次のように追加した。
4.1 構文
元の構文は次の通りである。
<xsl:template match="XMT:StreamSource"> muxInfo [
fileName <xsl:value-of select="@url"/><xsl:text>
<xsl:if test="not(XMT:EncodingHints)">streamFormat BIFS<xsl:text>
</xsl:text></xsl:if>
<xsl:apply-templates select="XMT:EncodingHints|XMT:BIFSEncodingHints| XMT: FBAEncodingHints"/>
]
</xsl:template>
修正された構文は次の通りである。
<xsl:template match="XMT:StreamSource"> muxInfo MuxInfo[
fileName <xsl:value-of select="@URL"/>
<xsl:apply-templates select="XMT:EncodingHints|XMT:BIFSEncodingHints| XMT:FBAEncodingHints|XMT:BitWrapperEncodingHints"/>
<xsl:if test="not(XMT:EncodingHints|XMT:BitWrapperEncodingHints)"> streamFormat BIFS<xsl:text></xsl:text></xsl:if>
<xsl:if test="XMT:BitWrapperEncodingHints"><xsl:text>
</xsl:text></xsl:if>
<xsl:apply-templates select="XMT:BitWrapper3DMCEncodingHints|XMT: BitWrapperICEncodingHints| XMT:OthersEncodingHints"/>
]
<xsl:template match="XMT:BitWrapperEncodingHints">
<xsl:apply-templates select="XMT:BitWrapper3DMCEncodingHints|XMT: BitWrapperICEncodingHints|XMT:OthersEncodingHints"/>
<xsl:apply-templates select="XMT:sourceFormat|XMT:targetFormat"/>
</xsl:template>
<xsl:template match="XMT:BitWrapper3DMCEncodingHints">
<xsl:apply-templates select="XMT:sourceFormat|XMT:targetFormat"/>
streamFormat 3DMC<xsl:text>
</xsl:text>
</xsl:template>
<xsl:template match="XMT:BitWrapperICEncodingHints">
<xsl:apply-templates select="XMT:sourceFormat|XMT:targetFormat"/>
streamFormat InterpolatorCompression<xsl:text>
</xsl:text>
</xsl:template>
<xsl:template match="XMT:OthersEncodingHints">
<xsl:apply-templates select="XMT:sourceFormat|XMT:targetFormat"/>
streamFormat BIFS<xsl:text>
</xsl:text>
</xsl:template>
<xsl:template match="XMT:sourceFormat">
<xsl:apply-templates select="XMT:param"/>
</xsl:template>
<xsl:template match="XMT:targetFormat">
<xsl:apply-templates select="XMT:param"/>
</xsl:template>
</xsl:template>
4.2 意味
既存構文には、MP4符号化器に伝送されるビットストリームに関するmux情報(如何なる名称のビットストリームであるか、如何なる種類のビットストリームであるか、例えば、A.BIFS,A.od)がXMT2MUXスタイルシートに正しく記述(description)されていない。また、ビットラッパーでURLを使用する場合、URLを通じて伝送されるビットストリームに関する情報(ファイル名、実施例3のように"bunny-15000-tcp.m3d"、ビットストリームの種類)についてXMT2MUXスタイルシートには記述されていない。したがって、ビットラッパーから提供されるビットストリームを載せるファイル名とビットストリームの種類とを記述(description)した。具体的に、3次元アニメーションデータ圧縮についてはInterpolatorCompressionstreamformat、3Dメッシュデータ圧縮については3DMC streamformatを記述(description)した。
5. XMTスタイルシート(XSLs)の追加
XMTparserがXMT−Aスキーマに基づいてMPEG−4符号化器の入力(.sceneファイル,.muxファイル)に作ろうとすれば、XMTスタイルシートが必要である。したがって、AFXConfig情報を.muxファイルに合わせて出力しようとすれば、XMTスタイルシートにAFXConfigについての設計が必要である。
5.1. XMT2MUXスタイルシートにAFXConfigを追加
4種の復号化方式に関する情報を含むAFXConfigを次のようにXMTスタイルシートに設計した。
<xsl:template match="XMT:decSpecificInfo">
<xsl:apply-templates select="XMT:BIFSConfig |XMT:BIFSv2Config |XMT:DecoderSpecificInfo |XMT:AFXConfig"/>
</xsl:template>

<xsl:template match="XMT:AFXConfig">decSpecificInfo AFXConfig [
AFXext <xsl:apply-templates select="XMT:A3DMCDecoderSpecific|XMT:CoordInterpCompDecoderSpecific|XMT:PosInterpCompDecoderSpecific|XMT:OriInterpCompDecoderSpecific|XMT:MeshGridDecoderSpecificInfo|XMT:WMDecoderSpecificInfo"/>
]
</xsl:template>

<xsl:template match="XMT:A3DMCDecoderSpecific">
A3DMCDecoderSpecific [ ] <xsl:text>
</xsl:text>
</xsl:template>
<xsl:template match="XMT:CoordInterpCompDecoderSpecific">
CoordInterpCompDecoderSpecific [ ] <xsl:text>
</xsl:text>
</xsl:template>
<xsl:template match="XMT:PosInterpCompDecoderSpecific">
PosInterpCompDecoderSpecific [ ] <xsl:text>
</xsl:text>
</xsl:template>
<xsl:template match="XMT:OriInterpCompDecoderSpecific">
OriInterpCompDecoderSpecific [ ] <xsl:text>
</xsl:text>
</xsl:template>
5.2. XMT2MUXスタイルシートにdecConfigDescr修正
decConfigDescrはdecSpecificInfo情報を含むものであって、復号化段階でのビットストリームの復号化に必要な情報を示す。XMTPaserがXMT−AスキーマおよびXMTスタイルシートに基づいてMPEG−4符号化器に合う入力を作るために、XMT2MUXスタイルシートに次のように追加されねばならない。
The original syntax is:
<xsl:template match="XMT:decConfigDescr">decConfigDescr [...]

The modified one is:
<xsl:template match="XMT:decConfigDescr">decConfigDescr
DecoderConfigDescriptor [ ]
5.3. XMT2MUXスタイルシートにslConfigDescr修正
SLConfigDescriptorは復号化する段階で、各ビットストリーム間の同期化のために必要な時間情報を示す。XMTPaserがXMT−AスキーマおよびXMTスタイルシートに基づいてMPEG−4符号化器に合う入力を作るためにXMT2MUXスタイルシートに次のように追加されねばならない。
The original syntax is:
<xsl:template match="XMT:slConfigDescr">slConfigDescr [ ]
The modified one is:
<xsl:template match="XMT:slConfigDescr">slConfigDescr SLConfigDescriptor [ ..]
6. XMT2BIFSスタイルシートにObjectDescriptorUpdate修正
6.1 構文
元の構文は次の通りである。
<xsl:template match="XMT:ObjectDescriptorUpdate">
UPDATE OD [
<xsl:apply-templates select="XMT:OD"/>
]
</xsl:template>

修正された構文は次の通りである。
<xsl:template match="XMT:ObjectDescriptorUpdate"> UPDATE OD [
<xsl:apply-templates select="XMT:OD"/>
]
</xsl:template>
<xsl:template match="XMT:OD">
<xsl:apply-templates select="XMT:ObjectDescriptorBase" />
</xsl:template>
<xsl:template match="XMT:ObjectDescriptorBase">
<xsl:apply-templates select="XMT:ObjectDescriptor|XMT: InitialO bjectDescriptor"/>
</xsl:template>
<xsl:template match="XMT:ObjectDescriptor">
ObjectDescriptor [
<xsl:if test="@objectDescriptorID"> objectDescriptorID <xsl:value-of s elect="@objectDescriptorID"/></xsl:if>
<xsl:text></xsl:text><xsl:apply-templates select="XMT:URL" />
]
</xsl:template>
<xsl:template match="XMT:URL">
<xsl:if test="@URLstring"> muxScript
<xsl:value-of select="@URLstring"/></xsl:if>
<xsl:text></xsl:text>
</xsl:template>
6.2 意味
オリジナルの構文には、“UpdateOD ”内部に何らの記述(description)もなかった。"UpdateODは著作者が"URL"フィールドを通じて他のエレメントストリームと連結しようとする場合、場面説明ストリーム(scene description stream(BIFS stream))をリンクする時に使われる。またUpdate OD内部にObjectDescriptorIDとスクリプトファイル名とを説明する部分も追加した。これはバイナリテキストフォーマット(binary textual format)と一致する。
本発明の動作を説明する。
図5は、本発明によるグラフィックデータ圧縮に関するメタ表現を用いた入力ファイル生成方法を示すフローチャートである。
まず、圧縮する客体データに関する情報を含んでいる圧縮ノードと、圧縮に必要な圧縮媒介因子、および少なくとも圧縮された客体データファイルの位置情報を含むビットラッパーエンコーディングヒントを定義しているXMTスキーマを備える(500段階)。またXMT入力ファイルを前記XMTスキーマに基づいてsceneファイルへの変換を支援するXMT2BIFSスタイルシートと、XMT入力ファイルを前記XMTスキーマに基づいてmuxファイルへの変換を支援するXMT2MUXスタイルシートを備える(510段階)。次いで、XMT入力ファイルが入力されれば、前記XMTスキーマと前記XMT2BIFSスタイルシートおよびXMT2MUXスタイルシートを用いて前記XMT入力ファイルをパージングしてsceneファイルおよびmuxファイルを生成する(520段階)。前記パージングの結果、生成されたsceneファイルが圧縮されていないグラフィックデータを含んでいるか否かを判断する(530段階)。前記判断の結果、グラフィックデータが圧縮されていなければ、前記sceneファイルに含まれている圧縮媒介因子(encoding parameter)を使用してグラフィックデータを圧縮し、圧縮されたビットストリームと修正されたsceneファイルおよび修正されたmuxファイルを生成する(540段階)。
これをさらに詳細に説明すれば、既に圧縮されたグラフィックデータを使用しバッファまたはURLに伝送する場合は、図2に示されたAFX符号化器260がなくても標準MPEG−4符号化器に適した入力を作れる。しかし、圧縮されていないデータを圧縮媒介因子を使用してビットストリームをバッファまたはURLに伝送する場合には、図2に示されたAFX符号化器260を経て標準MPEG−4符号化器に適した入力を作ることができない。
次に、本発明の実施形態によってグラフィックデータを伝送する方法について説明する。
(1) 既に圧縮されたビットストリームを使用してバッファ(buffer)に伝送する方法。
図2および図6に基づいて、既に圧縮されたビットストリームを使用してバッファ(buffer)に伝送する本発明の実施形態を説明する。図6の内容は次の通りである。物体A(例えば、コップ)に関する3次元データ(幾何情報、連結情報、色相情報など)は、既に圧縮された物体Aに対するビットストリーム(bitstream)が圧縮ノード内のバッファフィールドに圧縮されたビットストリーム名(BufferWithEP.m3d)に伝送される(図6の(1))。
図2に示されたように、XMTファイル200が入力すると、XMTパーザ210では、XMT-Aスキーマ230に基づいて、XMT2BIFSスタイルシート240とXMT2MUXスタイルシート220とを使用して、その圧縮したビットストリームを場面データと共に.sceneに対するビットストリームに載せて伝送する。
前記XMT入力ファイルは、初期客体記述子を備えるヘッダと、少なくとも1つの圧縮ノードを含むボディー(body)を含む。前記ヘッダの初期客体記述子(InitialObjectDescriptor)は、BIFS符号化器が出力として生成するファイル名を有するストリームソースを含み、BIFS符号化器から圧縮されるファイルの復号化時に必要な情報を備え、客体間のディスプレーされる時間順序を示す同期化情報を備える。前記ボディーの圧縮ノードは、既に圧縮されたノード名を保存しているノードフィールドおよび既に圧縮された客体データファイル名を保存しているバッファフィールドを備える。
前記sceneファイルは、前記ボディーと同一の、少なくとも1つの圧縮ノードを備え、前記muxファイルは前記ヘッダと同じ初期客体記述子および前記初期客体記述子内にある、BIFS符号化器が出力として生成するファイルのストリームフォーマット情報を備える。
この際、muxファイル内の情報には、MPEG−4符号化器であるBIFS符号化器270が実行された結果、.BIFS/.odが含まれる。そして、muxファイル内の情報と.BIFS/.odファイルがMP4符号化器280に入力して最終結果ファイル(.MP4)290が生成され、MPEG−4プレーヤーでその結果が見られる。
次に、実施例に基づいてより詳細に説明する。
(実施例1)
次はBitWrapperを使用して既に圧縮された3次元メッシュ情報のビットストリームをバッファを使用して伝送するXMTの例である。
...
<Header>
<InitialObjectDescriptor objectDescriptorID="1" binaryID="1" >
<Descr>
<esDescr>
<ES#Descriptor ES#ID="xyz" binaryID="201" OCR#ES#ID="xyz">
...
<StreamSource url=" BufferWithoutEP.bif">
</StreamSource>
</ES#Descriptor>
</esDescr>
</Descr>
</InitialObjectDescriptor>
</Header>
<Body>
<Replace>
<Scene>
<Group>
<children>
<Shape>
<geometry>
<BitWrapper type="0" buffer= "opt-eight-npf-10-2-12-0.m3d ">
<node>
<IndexedFaceSet>
<coord>
<Coordinate></Coordinate>
</coord>
<normal>
<Normal></Normal>
</normal>
</IndexedFaceSet>
</node>
</BitWrapper>
</geometry>
</Shape>
</children>
</Group>
</Scene>
</Replace>
</Body>
...
図2において、実施例1のようにBitWrapperノードを使用して既に圧縮された3次元メッシュ情報ビットストリームをバッファに伝送するXMT表現の入力ファイルが入力されると、XMTRefパーザ210でBitWrapperノードと媒介因子についてのXMT−Aスキーマとスタイルシート(XMT2BIFSとXMT2MUX)とに基づいて、MPEG−4符号化器の入力ファイル(sceneファイルとmuxファイル)を作成する。その結果は次の通りである。
-BufferWithoutEP.scene結果-
...
BitWrapper [
node IndexedFaceSet [
coord Coordinate [ ]
normal Normal [ ]
]
type 0
buffer " opt-eight-npf-10-2-12-0.m3d"
]
...
- BufferWithoutEP.mux file -
InitialObjectDescriptor [

muxInfo MuxInfo[
fileName "BufferWithoutEP.bif"
streamFormat BIFS
]
]
上記のようなsceneファイルおよびmuxファイルは、MPEG−4符号化器の入力として使われ、BIFS符号化器を経てBIFS/odファイルを生成し、このBIFS/odビットストリームとmuxファイルとがMP4符号化器に入力として入って1つのビットストリーム(.MP4)ファイルを生成する。前記MP4ファイルは、最終結果としてMPEG−4プレーヤーで視覚化される。
(2) 既に圧縮されたビットストリームを使用してURLに伝送する方法。
図2および図7に基づいて既に圧縮されたビットストリームを使用してURLに伝送する実施例を説明する。
図7は、BitWrapperノード内で既に圧縮された物体A(例えば、コップ)に対する3次元グラフィックデータ(幾何情報、連結情報、色相など)のビットストリーム(bitstream)がURLを使用して伝送される方法を示す。
圧縮ノード(BitWrapper node)内のURLフィールドが記述するURL ID(例えば、12)と同値を有するバイナリ IDをフィールドとして有する客体記述子更新を行う(図7の(1))。前記客体記述子内のビットラッパーエンコーディングヒントが含んでいる既に圧縮されたビットストリーム名を探す(図7の(2))。前記ビットラッパーエンコーディングヒントにあるビットストリーム名に既に圧縮されたビットストリームが伝送される(図7の(2))。
図2に示されたように、XMTファイル200が入力されれば、XMTパーザ210でXMT−Aスキーマ230に基づいて、XMT2BIFSスタイルシート240とXMT2MUXスタイルシート220とを使用し、この圧縮されたビットストリームを場面データと共にsceneに対するビットストリームに載せて伝送する。
前記XMT入力ファイルは、初期客体記述子を含むヘッダ(Header)、および少なくとも1つの圧縮ノードおよび少なくとも1つの客体記述子(objectDescriptor)を含む客体記述子更新(ObjectDescriptorUpdate)を備えるボディー(body)を含む。前記ヘッダの初期客体記述子(InitialObjectDescriptor)は、BIFS符号化器が出力として生成するファイル名を有しているストリームソースを含み、BIFS符号化器から圧縮されるファイルの復号化時に必要な情報を備え、客体間のディスプレーされる時間順序を示す同期化情報を備える。前記ボディーの圧縮ノードは、既に圧縮された客体データのビットストリームが保存されたファイル名を含むビットラッパーエンコーディングヒントを有する客体記述子更新内の客体記述子のURL IDと同じURL IDを備える。前記ボディーの客体記述子更新内に含まれた客体記述子は、ボディーの圧縮ノードのURL IDと同値を有するバイナリ IDをフィールドとして備え、前記圧縮された客体データの復号化時に復号化に使われる情報(AFXConfig)、および圧縮された客体データのビットストリームが保存されたファイル名と前記ビットストリームの圧縮フォーマットの形式を含むビットラッパーエンコーディングヒントを備える。
前記sceneファイルは、前記ボディー(body)と同一の、少なくとも1つの圧縮ノードおよびボディーの客体記述子更新内にある客体記述子のURL IDと同じURL IDを有し、ボディーの客体記述子更新内にある客体記述子のビットラッパーエンコーディングヒント内にあるビットストリームファイルを保存するmuxファイルを有する客体記述子を含む客体記述子更新(ObjectDescriptorUpdate)を有する。前記muxファイルは、前記ヘッダと同じ初期客体記述子およびボディーの客体記述子更新内にある客体記述子と同じ客体記述子を有する。この際、muxファイル内の情報には、MPEG−4符号化器であるBIFS符号化器270が実行された結果、.BIFS/.odが含まれる。そして、muxファイル内の情報と.BIFS/.odファイルがMP4符号化器280の入力として入って、最終結果ファイル(MP4)290が生成され、MPEG−4プレーヤーでその結果が見られる。
次に、実施例によってより詳細な説明を行う。
(実施例2)
次は、ビットラッパーを使用して既に圧縮された3次元メッシュ情報ビットストリームをURLを使用して伝送するXMT例である。
<Header>
<InitialObjectDescriptor objectDescriptorID="1" binaryID="1" >
<Descr>
<esDescr>
<ES#Descriptor ES#ID="xyz" binaryID="201" OCR#ES#ID="xyz">
...
<StreamSource url="URLWithoutEP.od">
</StreamSource>
</ES#Descriptor>
</esDescr>
</Descr>
<Descr>
<esDescr>
<ES#Descriptor ES#ID="xyz1" binaryID="301" OCR#ES#ID="xyz1">
...
<StreamSource url="URLWithoutEP.bif">
</StreamSource>
</ES#Descriptor>
</esDescr>
</Descr>
</InitialObjectDescriptor>
</Header>
<Body>
<Replace>
<Scene>
<Group>
<children>
<Shape>
<geometry>
<BitWrapper type="0" URL="12">
<node>
<IndexedFaceSet>
<coord>
<Coordinate> </Coordinate>
</coord>
<normal>
<Normal></Normal>
</normal>
</IndexedFaceSet> </node>
</BitWrapper>
</geometry> </Shape>
</children>
</Group>
</Scene>
</Replace>
<ObjectDescriptorUpdate>
<OD>
<ObjectDescriptor objectDescriptorID="o2" binaryID="12" >
<Descr>
<esDescr>
<ES#Descriptor ES#ID="PI" binaryID="211" OCR#ES#ID="PIC">
<decConfigDescr>
<DecoderConfigDescriptor
streamType="3"
objectTypeIndication="5"
bufferSizeDB="50000">
<decSpecificInfo>
<AFXConfig>
<A3DMCDecoderSpecific>
</A3DMCDecoderSpecific>
</AFXConfig>
</decSpecificInfo>
</DecoderConfigDescriptor>
</decConfigDescr>
<StreamSource>
<BitWrapperEncodingHints>
<BitWrapper3DMCEncodingHints>
<sourceFormat>
<param value="bunny-15000-tcp.m3d"> </param>
</sourceFormat>
<targetFormat></targetFormat>
</BitWrapper3DMCEncodingHints>
</BitWrapperEncodingHints>
</StreamSource>
</ES#Descriptor>
</esDescr>
</Descr>
</ObjectDescriptor>
</OD>
</ObjectDescriptorUpdate>
</Body>
図2において、実施例2のようにビットラッパーノードを使用して、既に圧縮された3次元メッシュ情報ビットストリームをURLに伝送するXMT表現の入力ファイルが入力されれば、XMTパーザ(Parser)がXMT−Aスキーマとスタイルシート(XMT2BIFSとXMT2MUX)ファイルに基づいてMPEG−4符号化器の入力ファイル(sceneファイルとmuxファイル)を作成する。その結果は、次の通りである。
-URLWithoutEP.scene結果-
...
BitWrapper [
node IndexedFaceSet [
coord Coordinate [ ]
normal Normal [ ]
]
type 0
URL 12
]
...
UPDATE OD [
ObjectDescriptor [
objectDescriptorID 12
muxScript URLWithoutEP.mux
]
]

- URLWithoutEP.mux file -
...
ObjectDescriptor [
objectDescriptorID 12
esDescr [
ES#Descriptor [
ES#ID 211
decConfigDescr DecoderConfigDescriptor
[
streamType 3
objectTypeIndication 5
bufferSizeDB 50000
decSpecificInfo AFXConfig
[
AFXext A3DMCDecoderSpecific [ ]
]
]
...
muxInfo MuxInfo[
fileName "bunny-15000-tcp.m3d "
streamFormat 3DMC
]
...
上記のようなsceneファイルとmuxファイルは、MPEG−4符号化器の入力として使われる。sceneファイルはBIFS符号化器を経て.BIFS/.odファイルを生成し、この.BIFS/.odファイルとmuxファイルとがMP4符号化器に入力として入って1つのビットストリーム(MP4)ファイルを生成する。前記MP4ファイルは最終結果としてMPEG−4プレーヤーで視覚化される。
(3) 圧縮されていない客体データを媒介因子(encoding parameter)を使用してビットストリームを作ってバッファに伝送する方法。
図2および図8に基づいて、客体データを媒介因子を使用してビットストリームを作ってバッファに伝送する実施例を説明する。
図8は、物体A(例えば、コップ)に関する3次元客体データ(幾何情報、連結情報、色相情報など)は媒介因子を用いてAFX符号化器を通じて圧縮されて物体Aに圧縮されたビットストリーム(bitstream)を作る(図8の(1))。前記作られた圧縮されたビットストリームは、前記圧縮ノード内のバッファフィールドの圧縮されたビットストリーム名("BufferWithEP.m3d")に伝送される(図8の(2))。
図2に示されたように、XMTファイルがXMTパーザに入力されると、XMTパーザでXMT−Aスキーマを参照し、スタイルシート(XMT2BIFS,XMT2MUX)を使用してビットストリームが場面データと共にsceneに対するビットストリームに載せて伝送する。前記XMT入力ファイルは、初期客体記述子を備えるヘッダと、少なくとも1つの圧縮ノードを備えるボディー(body)とを含む。前記ヘッダの初期客体記述子は、BIFS符号化器が出力として生成するファイル名を有しているストリームソースを含み、BIFS符号化器から圧縮されるファイルの復号化時に必要な情報を備え、客体間のディスプレーされる時間順序を示す同期化情報を備える。前記ボディーの圧縮ノードは、圧縮するノード名を保存しているノードフィールド、前記ノードのノードフィールド内にある圧縮する客体データ、前記客体データ圧縮に使われる圧縮媒介因子、および圧縮媒介因子を使用して圧縮された客体データのビットストリームファイル名を保存するバッファフィールドを備える。
前記sceneファイルは、前記ボディーと同一の、少なくとも1つの圧縮ノードを含む。前記muxファイルは、前記ヘッダと同じ初期客体記述子および前記初期客体記述子内にある、BIFS符号化器が出力として生成するファイルのストリームフォーマット情報を含む。この時、muxファイルおよびsceneファイルはAFX符号化器に入力され、sceneファイルにある客体データは圧縮され、修正されたmuxファイルおよび修正されたsceneファイルとして生成される。
前記客体データの圧縮は、次のようになされる。
前記判断の結果、グラフィックデータが圧縮されていないと判断されれば、sceneファイルの圧縮ノード内にある客体データと圧縮媒介因子を保存する。前記保存された客体データがある圧縮ノードのノードフィールド内にグラフィック客体と相応する所定の符号化器に前記客体データと圧縮媒介因子とを引き渡す。前記圧縮媒介因子を使用して客体データを圧縮してビットストリームに生成する。
前記修正されたmuxファイル内の情報には、MPEG−4符号化器であるBIFS符号化器が実行された結果である.BIFS/.odが含まれる。そして、修正されたmuxファイル内の情報と.BIFS/.odファイルとがMP4符号化器の入力として入って最終結果ファイル(MP4)が生成され、MPEG−4プレーヤー(Player)でその結果が見られる。
次に、実施例を挙げてより詳細に説明する。
(実施例3)
次は、ビットラッパーでオリジナルの3次元メッシュ情報を媒介因子を使用してビットストリームに作り、バッファを使用して伝送するXMT例である。
<Header>
<InitialObjectDescriptor objectDescriptorID="1" binaryID="1" >
<Descr>
<esDescr>
<ES#Descriptor ES#ID="xyz" binaryID="201" OCR#ES#ID="xyz">
...
<StreamSource url="3DMC#npf#BufferWithEP.bif">
</StreamSource>
</ES#Descriptor>
</esDescr>
</Descr>
</InitialObjectDescriptor>
</Header>
<Body>
...
<BitWrapper type="0" buffer="opt-eight-npf-10-9-2-0.m3d">
<node>
<IndexedFaceSet ccw="TRUE" solid="TRUE"
coordIndex="0, 1, 2, -1, 3, 4, 5, -1,..."
normalPerVertex="TRUE">
<coord DEF="Box-COORD">
<Coordinate point="0 1 2, 0 2 3, 4 0 1, 1 5 4, 5 1 2, 2 6 5, ..."></Coordinate>
</coord>
<normal>
<Normal vector="0.7859 -0.341 -0.5157, 0.3812 -0.801 0.4615, ..."></Normal>
</normal>
</IndexedFaceSet>
</node>
<IndexedFaceSetEncodingParameter coordQBits="10 normalQBits="9" coordPredMode="2 normalPredMode="0" errorResilience="OFF">
</IndexedFaceSetEncodingParameter>
</BitWrapper>
...
<Body>
ビットラッパーノードで3次元メッシュ情報とその媒介因子を使用して圧縮するXMT表現の入力ファイルが入れば、XMTパーザでXMT-Aスキーマとスタイルシート(XMT2BIFSとXMT2MUX)ファイルを参照して、ビットラッパーノード内での3次元メッシュ情報、圧縮媒介因子および場面情報をsceneファイルとして出力し、客体データがどのように伝送されるか、または他のデータとどのように同期化されるかに関する情報をmuxファイルに出力する。
-3DMC#npf#BufferWithEP.sceneファイル-

...
BitWrapper [
node IndexedFaceSet [
ccw="TRUE"
solid="TRUE"
coodIndex="0, 1, 2, -1, 3, 4, 5, -1, ..."
normalPerVertex="TRUE"
coord DEF Box-COORD Coordinate [
point [0 1 2, 0 2 3, 4 0 1, 1 5 4, 5 1 2, 2 6 5, ... ]
]
normal Normal [
Vector[0.7859, -0.341, -0.5157, 0.3812, -0.801, 0.4615, ...]
]
]
IndexedFaceSetEncodingParameter[
coordQBits 10
NormalQBits 9
coordPredMode 2
normalPredMode 0
errorResilience OFF
]
type 0
buffer "opt-eight-npf-10-9-2-0.m3d"
]


...

- "3DMC#npf#BufferWithEP.mux" file -
InitialObjectDescriptor [

muxInfo MuxInfo[
fileName "3DMC#npf#BufferWithEP.bif"
streamFormat BIFS
]
]
上記のようなsceneファイルとmuxファイルは、MPEG−4符号化器の入力ファイルとしては適していない。したがって、AFX符号化器を経れば、次のようにMPEG−4符号化器の入力ファイルに適した形に変換し、3次元メッシュ情報に関する符号化器で圧縮ビットストリームも生成される。
-3DMC#npf#BufferWithEP#modified。sceneファイル-

...
BitWrapper [
node IndexedFaceSet [
coord Coordinate [ ]
normal Normal [ ]
]
type 0
buffer "bunny-15000-tcp.m3d"
]


...

- 3DMC#npf#BufferWithEP#modified.mux file -

InitialObjectDescriptor [



muxInfo MuxInfo[
fileName "3DMC#npf#BufferWithEP#modified.bif"
streamFormat BIFS
]
]
上記のようにAFX符号化器を経た#modified.sceneファイルと#modified.muxファイルは、MPEG−4プレーヤーの入力として使われてBIFS符号化器を経てBIFS/odファイルを生成し、このBIFS/odファイルとmuxファイルとがMP4符号化器に入力として入って1つのビットストリーム(MP4)ファイルを生成する。前記MP4ファイルは、最終結果としてMPEG−4プレーヤーで次のように視覚化される。
(4) オリジナルのデータを媒介因子を使用してビットストリームを作ってURLに伝送する場合である。図2および図9に基づいて、オリジナルのデータを媒介因子を使用してビットストリームを作ってURLに伝送する実施例を説明する。
図9は、ビットラッパーノード内で物体A(例えば、コップ)に関する3次元客体データ(幾何情報、連結情報、色相情報など)が媒介因子を用いてAFX符号化器を通じて圧縮された物体Aに対する圧縮されたビットストリーム(bitstream)でURLに伝送される方法を示す。
圧縮ノード(BitWrappernode)内のノードフィールド内の3次元客体データは、圧縮媒介因子を用いてAFX符号化器で圧縮され、圧縮されたビットストリームに作られる(図9の(1))。そして、前記ノード内のURLフィールドが記述するURL ID(例えば、12)と同値を有するバイナリ IDをフィールドとして有する客体記述子を探す(図9の(2))。前記客体記述子内のビットラッパーエンコーディングヒントが含んでいる圧縮されたビットストリーム名を探す(図9の(3))。AFX符号化器を通じて圧縮されたビットストリームは、前記ビットラッパーエンコーディングヒントにあるビットストリーム名に伝送される(図9の(4))。
図2のように、入力XMTファイルが入力として入れば、XMTパーザでXMT−Aスキーマを参照し、スタイルシート(XMT2BIFS、XMT2MUX)を使用してmuxファイルとsceneファイルとを生成し、前記muxファイルとsceneファイルはAFX符号化器を通じて圧縮ノード内のノードフィールドが含んでいる客体データが圧縮されていないと判断されれば、前記客体データは前記客体と相応する圧縮媒介因子を用いて圧縮され、そのビットストリームはURLに載せてMP4符号化器に伝送される。また、AFX符号化器でBIFS符号化器とMP4符号化器に適した入力ファイル(修正されたsceneファイルと修正されたmuxファイル)を作る。BIFS符号化器は、場面情報と共にAFX符号化器を通じて圧縮された客体データに関するビットストリームが保存されるファイル名を含むmuxファイルと連結される情報を含むsceneファイルを入力として受け、sceneに対するビットストリーム(.BIFS/.od)に載せてMP4符号化器に伝送される。MP4符号化器で前記AFX符号化器を通じて圧縮された客体データに関するビットストリームが保存されるファイル名を含むmuxファイルと圧縮されたビットストリームと前記BIFS符号化器の出力ビットストリームとを入力として受けてmuxingしてMP4ファイルを出力する。
前記XMT入力ファイルは、初期客体記述子を含むヘッダ(Header)、および少なくとも1つの圧縮ノードおよび少なくとも1つの客体記述子(objectDescriptor)を含む客体記述子更新(ObjectDescriptorUpdate)を備えるボディー(body)を含む。
前記ヘッダの初期客体記述子(InitialObjectDescriptor)は、BIFS符号化器が出力として生成するファイル名を有しているストリームソースを含み、BIFS符号化器から圧縮されるファイルの復号化時に必要な情報を備え、客体間のディスプレーされる時間順序を示す同期化情報を備える。前記ボディーの圧縮ノードは、圧縮するノード名を保存しているノードフィールド、前記ノードのノードフィールド内にある圧縮する客体データ、前記客体データの圧縮に使われる圧縮媒介因子、および圧縮媒介因子を使用して圧縮された客体データのビットストリームが保存されるファイル名を含むビットラッパーエンコーディングヒントを含む客体記述子更新内にある客体記述子のURL IDと同じURLIDが保存されたフィールドを含む。
前記ボディーの客体記述子更新に含まれた客体記述子は、ボディーの圧縮ノードのURL IDと同値を有するバイナリ IDをフィールドとして備え、前記圧縮された客体データの復号化時に復号化に使われる情報(AFXConfig)、および圧縮された客体データのビットストリームが保存されたファイル名と前記ビットストリームの圧縮フォーマットの形式を含むビットラッパーエンコーディングヒントを備える。
前記sceneファイルは、前記ボディー(body)と同一の、少なくとも1つの圧縮ノードおよびボディーの客体記述子更新内にある客体記述子のURL IDと同じURLIDを有し、ボディーの客体記述子更新内にある客体記述子のビットラッパーエンコーディングヒント内にあるビットストリームファイルを保存するmuxファイルを有する客体記述子を含む客体記述子更新(ObjectDescriptorUpdate)を有する。前記muxファイルは前記ヘッダと同じ初期客体記述子および前記ボディーの客体記述子更新の客体記述子と同じ客体記述子を有する。そして、muxファイルの内容にはMPEG−4符号化器であるBIFS符号化器が実行された結果である.BIFS/.odが含まれる。また、物体Aの圧縮されたビットストリームファイル名("bunny-15000-tcp.m3d")も含まれる。
この際、muxファイルおよびsceneファイルは、AFX符号化器に入力され、sceneファイルにある客体データは圧縮され、修正されたmuxファイルと修正されたsceneファイルとして生成される。
前記客体データの圧縮は、次のようになされる。
前記判断の結果、グラフィックデータが圧縮されていないと判断されれば、sceneファイルの圧縮ノード内にある客体データと圧縮媒介因子とを保存する。前記保存された客体データがある圧縮ノードのノードフィールド内にグラフィック客体と相応する所定の符号化器に前記客体データと圧縮媒介因子とを引き渡す。前記圧縮媒介因子を使用して客体データを圧縮してビットストリームとして生成する。
前記修正されたmux内の情報には、MPEG−4符号化器であるBIFS符号化器が実行された結果である.BIFS/.odが含まれる。そして、修正されたmuxファイル内の情報と.BIFS/.odファイルとがMP4符号化器の入力として入って最終結果ファイル(MP4)が生成され、MPEG−4プレーヤー(Player)でその結果が見られる。
以下、実施例を挙げてより詳細に説明する。
(実施例4)
次は、ビットラッパーでオリジナルの3次元メッシュ情報を媒介因子を使用してビットストリームに作り、URLを使用して伝送するXMT例である。
<Header>
...
<InitialObjectDescriptor objectDescriptorID="1" binaryID="1" >
<Descr>
<esDescr>
<ES#Descriptor ES#ID="xyz" binaryID="201" OCR#ES#ID="xyz">
...
<StreamSource url="3DMC#npf#URLWithEP.od">
</StreamSource>
</ES#Descriptor>
</esDescr>
</Descr>
<Descr>
<esDescr>
<ES#Descriptor ES#ID="xyz1" binaryID="301" OCR#ES#ID="xyz1">
...
<StreamSource url="3DMC#npf#URLWithEP.bif">
</StreamSource>
</ES#Descriptor>
</esDescr>
</Descr>
</InitialObjectDescriptor>
</Header>
<Body>
<Replace>
<Scene>
<Group>
<children>
<Shape>

<geometry>
<BitWrapper type="0" URL="12">
<node>
<IndexedFaceSet ccw="TRUE" solid="TRUE"
coordIndex="0,1,2,-1,3,4,5,-1, ..."
normalPerVertex="TRUE">
<coord DEF="Box-COORD">
<Coordinate point="012,023,401,154,512,265, ...">
</Coordinate>
</coord>
<normal>
<Normal vector="0.7859 -0.341 -0.5159, 0.3821 -0.8 01 0.4615, ..."> </Normal>
</normal>
</IndexedFaceSet>
</node>
<IndexedFaceSetEncodingParameter coordQits="10"
normalQBits="9" coordPreMode="2"
normalPredMode="0" errorResilience="OFF">
</IndexedFaceSetEncodingParameter>
</BitWrapper>
</geometry>
</Shape>
</children>
</Group>
</Scene>
</Replace>
<ObjectDescriptorUpdate>
<OD>
<ObjectDescriptor objectDescriptorID="o2" binaryID="12">
<Descr>
<esDescr>
<ES#Descriptor ES#ID="PI" binaryID="211" OCR#ES#ID="PIC">
...
<decConfigDescr>
<DecoderConfigDescriptor
streamType="3"
objectTypeIndication="5"
bufferSizeDB="50000">
<decSpecificInfo>
<AFXConfig>
<A3DMCDecoderSpecific></A3DMCDecoderSpecific >
</AFXConfig>
</decSpecificInfo>
</DecoderConfigDescriptor>
</decConfigDescr>
...
<StreamSource>
<BitWrapperEncodingHints>
<BitWrapper3DMCEncodingHints>
<sourceFormat>
<param value="opt-eight-npf-10-9-2-0.m3d"> </param >
</sourceFormat>
<targetFormat></targetFormat>
</BitWrapper3DMCEncodingHints>
</BitWrapperEncodingHints>
</StreamSource>
</ES#Descriptor>
</esDescr>
</Descr>
</ObjectDescriptor>
</OD>
</ObjectDescriptorUpdate>
</Body>
ビットラッパーノードで、3次元メッシュ情報とその媒介因子とを使用して圧縮するXMT表現の入力ファイルが入れば、XMTRefパーザ(Parser)でXMT−Aスキーマとスタイルシート(XMT2BIFSとXMT2MUX)ファイルとを参照し、ビットラッパーノード内での3次元メッシュ情報、圧縮媒介因子および場面情報を.sceneファイルに出力し、データをどのように伝送するか、または他のデータとどのように同期化させるかについての.muxファイルに出力する。
-3DMC#npf#UrlWithEP.scene結果-
...
geometry BitWrapper [
node IndexedFaceSet [
ccw TRUE
coordIndex [ 0, 1, 2, -1, 3, 4, 5, -1, ... ]
normalPerVertex TRUE
solid TRUE
coord DEF Box-COORD Coordinate [
point [012, 023, 401, 154, 512, 265, ... ]
]
normal Normal [
vector [0.7859, -0.341, -0.5159, 0.3821, -0.801, 0.4651, ... ]
]
]
IndexedFaceSetEncodingParameter [
coordQBits 10
normalQBits 9
coordPredMode 2
normalPredMode 0
errorResilience OFF
]
type 0
URL 12
]

UPDATE OD [
ObjectDescriptor [
objectDescriptorID 12
muxScript 3DMC#npf#URLWithEP.mux
]
]

- 3DMC#npf#URLWithEP.mux file -
...
ObjectDescriptor [
objectDescriptorID 12
esDescr [
ES#Descriptor [
ES#ID 211
decConfigDescr DecoderConfigDescriptor
[
streamType 3
objectTypeIndication 5
bufferSizeDB 50000
decSpecificInfo AFXConfig
[
AFXext A3DMCDecoderSpecific [ ]
]
]
...
muxInfo MuxInfo[
fileName "opt-eight-npf-10-9-2-0.m3d"
streamFormat 3DMC
]
]
]
前記2つのファイルは、MPEG−4符号化器の入力ファイルに適していない。したがって、AFX符号化器を経れば、次のようにMPEG−4符号化器の入力ファイルに適した形に変換し、3次元メッシュ情報に関する符号化器で圧縮ビットストリームも生成する。
-3DMC#npf#UrlWithEP#modified.scene結果-
...
geometry BitWrapper [
node IndexedFaceSet [
coord Coordinate [ ]
normal Normal [ ]
]
type 0
url 12
]
UPDATE OD [
ObjectDescriptor [
objectDescriptorID 12
muxScript UrlWithEP#modified.mux
]
]
- 3DMC#npf#UrlWithEP#modified.mux ?? -
...
ObjectDescriptor [
objectDescriptorID 12
esDescr [
ES#Descriptor [
ES#ID 211
decConfigDescr DecoderConfigDescriptor
[
streamType 3
objectTypeIndication 5
bufferSizeDB 50000
decSpecificInfo AFXConfig
[
AFXext A3DMCDecoderSpecific [ ]
]
]
...
muxInfo MuxInfo[
fileName "opt-eight-npf-10-9-2-0.m3d"
streamFormat 3DMC
]
]
]
前記#modified.sceneファイルと#modified.muxファイルとは、MPEG−4符号化器の入力として使われ、BIFS符号化器を経て.BIFS/.odファイルを生成し、この.BIFS/.odビットストリームとmuxファイルとがMP4符号化器に入力として入ってビットストリーム(MP4)ファイルを生成する。このMP4ファイルは最終結果として次のようにMPEG−4プレーヤーで視覚化される。
(5) 客体データを媒介因子を使用してビットストリームに作ってbufferに伝送する場合とURLに伝送する場合。
図2に示すように、入力XMTファイルに明示されて入力として入れば、XMTパーザでXMT−Aスキーマを参照し、スタイルシート(XMT2BIFS、XMT2MUX)を使用してmuxファイルとsceneファイルとを生成し、前記muxファイルおよびsceneファイルはAFX符号化器を通じて圧縮ノード内のノードフィールドが含んでいる客体データが圧縮されていないと判断されれば、前記客体データは前記客体と相応する圧縮媒介因子を用いて圧縮され、そのビットストリームはbufferまたはURLに載せてMP4符号化器に伝送される。また、AFX符号化器でBIFS符号化器とMP4符号化器とに適した入力ファイル(修正されたsceneファイルと修正されたmuxファイル)を作る。BIFS符号化器は、場面情報と共にAFX符号化器を通じて圧縮された客体データに関するビットストリームが保存されるファイル名(bufferである場合)とAFX符号化器を通じて圧縮された客体データに関するビットストリームが保存されるファイル名を含むmuxファイルと連結される情報(URLである場合)とを含むsceneファイルを入力として受けてsceneに対するビットストリーム(BIFS/od)に載せてMP4符号化器に伝送する。MP4符号化器で、前記AFX符号化器を通じて圧縮された客体データに関するビットストリームが保存されるファイル名を含むmuxファイルと圧縮されたビットストリームと前記BIFS符号化器の出力ビットストリームを入力として受けてmuxingしてMP4ファイルを出力する。
前記XMT入力ファイルは、大きくヘッダ(header)およびボディー(body)よりなる。前記ヘッダは、初期客体記述子を含む。前記ボディーは、バッファフィールドを備える少なくとも1つの圧縮ノードと、URLフィールドを備える少なくとも1つの圧縮ノードおよび前記URLフィールドを備える圧縮ノード数と同数の客体記述子(objectDescriptor)を含む客体記述子更新(ObjectDescriptorUpdate)を備える。
前記ヘッダの初期客体記述子(InitialObjectDescriptor)は、BIFS符号化器が出力として生成するファイル名を有するストリームソースを含み、BIFS符号化器から圧縮されるファイルの復号化時に必要な情報を備え、客体間のディスプレーされる時間順序を示す同期化情報を備える。前記ボディーでバッファフィールドを備える圧縮ノードは圧縮するノード名を保存しているノードフィールド、前記ノードのノードフィールド内にある圧縮する客体データ、前記客体データ圧縮に使われる圧縮媒介因子、および圧縮媒介因子を使用して圧縮された客体データのビットストリームファイル名を保存するバッファフィールドを備える。前記ボディーのURLフィールドを備える圧縮ノードは、圧縮するノード名を保存しているノードフィールド、前記ノードのノードフィールド内にある圧縮する客体データ、前記客体データの圧縮に使われる圧縮媒介因子、および圧縮媒介因子を使用して圧縮された客体データのビットストリームが保存されるファイル名を含むビットラッパーエンコーディングヒントを含む客体記述子更新内にある客体記述子のURL IDと同じURL IDが保存されたフィールドを備える。前記ボディーの客体記述子更新に含まれた客体記述子はボディーの圧縮ノードのURL IDと同じ値を有するバイナリ IDをフィールドとして備え、前記圧縮された客体データの復号化時に復号化に使われる情報(AFXConfig)、および圧縮された客体データのビットストリームが保存されたファイル名と前記ビットストリームの圧縮フォーマットの形式を含むビットラッパーエンコーディングヒントを備える。
前記sceneファイルは前記ボディー(body)と同じ圧縮ノードおよびボディーの客体記述子更新内にある客体記述子のURL IDと同じURL IDを有し、ボディーの客体記述子更新内にある客体記述子のビットラッパーエンコーディングヒント内にあるビットストリームファイルを保存するmuxファイルを有する客体記述子を含む客体記述子更新を有し、前記muxファイルは前記ヘッダと同じ初期客体記述子および前記ボディーの客体記述子更新の客体記述子と同じ客体記述子を有する。
この際、前記sceneファイルが圧縮されていないグラフィック客体データを含んでいるか否かを判断する。前記判断の結果、グラフィック客体データが圧縮されたものであれば、前記muxファイル内の情報にはMPEG−4符号化器であるBIFS符号化器270が実行された結果.BIFS/.odが含まれる。そして、muxファイル内の情報と.BIFS/.odファイルがMP4符号化器280の入力として入って最終結果ファイル(MP4)290が生成され、MPEG−4プレーヤーでその結果が見られる。
前記判断の結果、グラフィック客体データが圧縮されていなければ、muxファイルとsceneファイルとはAFX符号化器に入力される。前記sceneファイルにある客体データは圧縮され、修正されたmuxファイルと修正されたsceneファイルとで生成される。
前記客体データの圧縮は、次のようになされる。前記判断の結果、グラフィック客体データが圧縮されていないと判断されれば、sceneファイルの圧縮ノード内にある客体データと圧縮媒介因子とを保存する。前記保存された客体データを含んでいる圧縮ノードのノードフィールド内にグラフィック客体と相応する所定の符号化器に前記客体データと圧縮媒介因子とを引き渡す。前記圧縮媒介因子を使用して客体データを圧縮してビットストリームとして生成する。
前記修正されたmuxファイル内の情報には、MPEG−4符号化器であるBIFS符号化器が実行された結果である.BIFS/.odが含まれる。そして、修正されたmuxファイル内の情報と.BIFS/.odファイルとがMP4符号化器の入力として入って最終結果ファイル(MP4)が生成され、MPEG−4プレーヤーでその結果が見られる。
(実施例5)
回転移動キーフレームアニメーションデータと位置移動キーフレームアニメーションデータとが含まれた3次元棒アニメーションデータである。このデータの回転移動キーフレームアニメーションデータと位置移動キーフレームアニメーションデータとが各々圧縮ノード(BitWrapper)に含まれている。したがって、圧縮ノード(BitWrapper)で原本のデータを各圧縮媒介因子を使用してビットストリームに作り、bufferに伝送する場合とURLを使用して伝送する場合とに関するXMT例題である。
<Header>
<InitialObjectDescriptor objectDescriptorID="o1" binaryID="1" >
<Descr>
<esDescr>
<ES#Descriptor ES#ID="xyz" binaryID="201">
<decConfigDescr >
<DecoderConfigDescriptor
streamType="1"
objectTypeIndication="2"
bufferSizeDB="10000000">
</DecoderConfigDescriptor>
</decConfigDescr>
<slConfigDescr>
<SLConfigDescriptor>
<custom timeStampResolution="100"/>
</SLConfigDescriptor>
</slConfigDescr>
<StreamSource url=" MB-BufferURLWithEP7.od">
</StreamSource>
</ES#Descriptor>
</esDescr>
<esDescr>
<ES#Descriptor ES#ID="xyz1" binaryID="301">
<decConfigDescr >
<DecoderConfigDescriptor
streamType="3"
objectTypeIndication="2"
bufferSizeDB="500000">
<decSpecificInfo>
<BIFSv2Config nodeIDbits="10">
<commandStream pixelMetric="true"></commandStream>
</BIFSv2Config>
</decSpecificInfo>
</DecoderConfigDescriptor>
</decConfigDescr>
<slConfigDescr>
<SLConfigDescriptor>
<custom timeStampResolution="100"
timeStampLength="14" />
</SLConfigDescriptor>
</slConfigDescr>
<StreamSource url=" MB-BufferURLWithEP7.bif">
</StreamSource>
</ES#Descriptor>
</esDescr>
</Descr>
</InitialObjectDescriptor>
</Header>
<Body>
<BitWrapper type="0"
buffer="Box01-POS-INTERP#14#16#0#bbb#keycoder#key#noquant#intra#1dpcm.aac">
<node>
<PositionInterpolator DEF="Box01-POS-INTERP"
key="0, 0.4301, 0.4409, 0.4516, 0.4624, 0.4731,"
keyValue="0.0008889 0.2705 0,.." />
</node>
<PositionInterpolatorEncodingParameter keyQBits="14" keyValueQBits="16 " />
</BitWrapper>
<BitWrapper type="0" URL="12">
<node>
<OrientationInterpolator DEF="Box01-ROT-INTERP"
key="0, 0.01075, 0.02151, 0.03226, 0.04301,"
keyValue="1 0 0 0, 0.9692 0.2461 0.001842 -0.01544, "/>
</node>
<OrientationInterpolatorEncodingParameter keyQBits="16"
keyValueQBits="16"/>
</BitWrapper>
<ObjectDescriptorUpdate>
<OD>
<ObjectDescriptor objectDescriptorID="o2" binaryID="12">
<Descr>
<esDescr>
<ES#Descriptor ES#ID="PI" binaryID="211">
<decConfigDescr >
<DecoderConfigDescriptor
streamType="3"
objectTypeIndication="5"
bufferSizeDB="50000">
<decSpecificInfo>
<AFXConfig>
<OriInterpCompDecoderSpecific>
</OriInterpCompDecoderSpecific>
</AFXConfig>
</decSpecificInfo>
</DecoderConfigDescriptor>
</decConfigDescr>
<slConfigDescr>
<SLConfigDescriptor>
<custom timeStampResolution="100" />
</SLConfigDescriptor>
</slConfigDescr>
<StreamSource>
<BitWrapperEncodingHints>
<BitWrapperICEncodingHints>
<sourceFormat>
<param value="Box01-ROT-INTERP#16#16#0#bbb#keycoder#k ey#noquant#smart.aac" />
</sourceFormat>
<targetFormat></targetFormat>
</BitWrapperICEncodingHints>
</BitWrapperEncodingHints>
</StreamSource>
</ES#Descriptor>
</esDescr>
</Descr>
</ObjectDescriptor>

</OD>
</ObjectDescriptorUpdate>
</Body>
圧縮ノード(BitWrapper)で回転移動キーフレームアニメーションデータと位置移動キーフレームアニメーションデータとをその圧縮媒介因子を使用して、圧縮するXMT表現の入力ファイルが入れば、XMTParserでXMT−Aスキーマとスタイルシート(XMT2BIFSとXMT2MUX)ファイルとを参照し、圧縮ノード(BitWrapper)内にある原本データと圧縮媒介因子とを場面情報、bufferを使用した場合に対する圧縮ビットストリーム名、urlを使用した場合についての客体記述子更新に関する情報をsceneファイルに出力し、データをどのように伝送するか、または他のデータとどのように同期化させるかに関する情報、BIFS符号化器の出力ファイル名、URLを使用した場合についての圧縮ビットストリーム名をmuxファイルに出力する。
-MB-BufferUrlWithEP7.scene結果
BitWrapper [
node DEF Box01-POS-INTERP PositionInterpolator [
key [0, 0.4301, 0.4409, 0.4516, 0.4624, 0.4731, ]
keyValue [0.0008889 0.2705 0, ]
]
PositionInterpolatorEncodingParameter [
keyQBits 14
keyValueQBits 16
]
type 0
buffer "Box01-POS-
INTERP#14#16#0#bbb#keycoder#key#noquant#intra#1dpcm.aac"
]
BitWrapper [
node DEF Box01-ROT-INTERP OrientationInterpolator [
key [ 0, 0.01075, 0.02151, 0.03226, 0.04301, ]
keyValue [ 1 0 0 0, 0.9692 0.2461 0.001842 -0.01544, ]
]
OrientationInterpolatorEncodingParameter [
keyQBits 16
keyValueQBits 16
]
type 0
url 12
]
UPDATE OD [
ObjectDescriptor [
objectDescriptorID 12
muxScript MB-BufferUrlWithEP7.mux
]
]
-MB-BufferUrlWithEP7.mux 結果
InitialObjectDescriptor [
objectDescriptorID 1
esDescr [
ES#Descriptor [
ES#ID 201
decConfigDescr DecoderConfigDescriptor [
objectTypeIndication 2
streamType 1
bufferSizeDB 10000000
]
slConfigDescr SLConfigDescriptor [
timeStampResolution 100
]
muxInfo MuxInfo [
fileName "MB-BufferUrlWithEP7.od"
streamFormat BIFS
]
]
]
esDescr [
ES#Descriptor [
ES#ID 301
decConfigDescr DecoderConfigDescriptor [
objectTypeIndication 2
streamType 3
bufferSizeDB 500000
decSpecificInfo BIFSv2Config [
nodeIDbits 10
...
pixelMetric true
slConfigDescr SLConfigDescriptor [
timeStampResolution 100
timeStampLength 14
]
muxInfo MuxInfo [
fileName "MB-BufferUrlWithEP7.bif" streamFormat BIFS
]
]
]
]
]
]
ObjectDescriptor [
objectDescriptorID 12
esDescr [
ES#Descriptor [
ES#ID 211
decConfigDescr DecoderConfigDescriptor [
objectTypeIndication 5
streamType 3
bufferSizeDB 50000
decSpecificInfo AFXConfig [
AFXext OriInterpCompDecoderSpecific [ ]
]
]
slConfigDescr SLConfigDescriptor [
timeStampResolution 100
]
muxInfo MuxInfo [
fileName "Box01-ROT-INTERP#16#16#0#bbb#keycod er#key#noquant#smart.aac"
streamFormat InterpolatorCompression
]
]
]
]
上記の2つのファイルは、MPEG−4符号化器の入力ファイルに適していない。したがって、AFX符号化器を経れば、次のように、MPEG−4符号化器の入力ファイルに適した形に変換し、グラフィックデータに関する符号化器で圧縮ビットストリームも生成する。
-MB-BufferUrlWithEP7#modified.scene結果
BitWrapper [
node DEF Box01-POS-INTERP PositionInterpolator [ ]
type 0
buffer "Box01-POS-
INTERP#14#16#0#bbb#keycoder#key#noquant#intra#1dpcm.aac"
]
BitWrapper [
node DEF Box01-ROT-INTERP OrientationInterpolator [ ]
type 0
url 12
]
UPDATE OD [
ObjectDescriptor [
objectDescriptorID 12
muxScript MB-BufferUrlWithEP7#modified.mux
]
]
-MB-BufferURLWithEP7#modified.mux 結果
InitialObjectDescriptor [
objectDescriptorID 1
esDescr [
ES#Descriptor [
ES#ID 201
decConfigDescr DecoderConfigDescriptor [
objectTypeIndication 2
streamType 1
bufferSizeDB 10000000
]
slConfigDescr SLConfigDescriptor [
timeStampResolution 100
]
muxInfo MuxInfo [
fileName "MB-BufferUrlWithEP7#modified.od"
streamFormat BIFS
]
]
]
esDescr [
ES#Descriptor [
ES#ID 301
decConfigDescr DecoderConfigDescriptor [
objectTypeIndication 2
streamType 3
bufferSizeDB 500000
decSpecificInfo BIFSv2Config [
nodeIDbits 10
...
pixelMetric true
slConfigDescr SLConfigDescriptor [
timeStampResolution 100
timeStampLength 14
]
muxInfo MuxInfo [
fileName "MB-BufferUrlWithEP7#modified.bif"
streamFormat BIFS
]
]
]
ObjectDescriptor [
objectDescriptorID 12
esDescr [
ES#Descriptor [
ES#ID 211
decConfigDescr DecoderConfigDescriptor [
objectTypeIndication 5
streamType 3
bufferSizeDB 50000
decSpecificInfo AFXConfig [
AFXext OriInterpCompDecoderSpecific [ ]
]
]
slConfigDescr SLConfigDescriptor [
timeStampResolution 100
]
muxInfo MuxInfo [
fileName
"Box01-ROT-INTERP#16#16#0#bbb#keycoder#key#noquant#smart.aac"
streamFormat InterpolatorCompression
]
]
]
]
上記のような#modified.sceneファイルおよび#modified.muxファイルは、MPEG−4符号化器の入力として使われ、BIFS符号化器を経て.BIFS/.odファイルを生成し、この.BIFS/.odビットストリームとmuxファイルとがMP4符号化器に入力として入ってビットストリーム([".]MP4["])ファイルを生成する。このMP4ファイルは最終結果としてMPEG−4プレーヤーで視覚化される。
一方、前述したように本発明で使われるグラフィックデータは3次元グラフィックデータを中心に説明されたが、2次元グラフィックデータも本発明に適用できる。
本発明は、コンピュータ読取り可能な記録媒体にコンピュータ(情報処理機能を有する装置を全て含む)読み取り可能なコードとして具体的に実現することができる。コンピュータ読取り可能な記録媒体は、コンピュータシステムによって読取れるデータが保存されるあらゆる種類の記録装置を含む。コンピュータ読取り可能な記録装置の例としては、ROM、RAM、CD−ROM、磁気テープ、フロッピーディスク、光データ保存装置などがある。
本発明は、図面に示された実施形態に基づいて説明されたが、これらは例示的なものに過ぎず、当業者ならば、これらの実施形態から多様な変形および均等な他の実施形態が想到可能であることが容易に理解できるであろう。したがって、本発明の真の技術的保護範囲は、特許請求の範囲に記載された技術的思想によってのみ定められるべきである。
本発明はコンピュータグラフィック分野に有用である。特に、著作段階で著作者が3次元グラフィックデータを圧縮できるので、低いネットワーク帯域幅でも3次元グラフィックデータのリアルタイム視覚化またはリアルタイムアニメーションを可能にする。そして、多様な3次元グラフィックデータを製作可能にする。
テキスト構文(textualsyntax)でMPEG−4ノードを使用してコンテンツの製作を可能にする著作フレームワークである。 MPEG−4 AFXで提案した圧縮表現をXMTで定義して3次元グラフィックデータを圧縮可能にする3次元グラフィックデータ圧縮に関するメタ表現を用いた入力ファイル生成システムの構成を示すブロック図である。 圧縮判断部のさらに詳細な構成を示すブロック図である。 前記AFX符号化器260のさらに細部の構成を示すブロック図である。 本発明によるグラフィックデータ圧縮に関するメタ表現を用いた入力ファイル生成方法を示すフローチャートである。 既に圧縮されたビットストリームをバッファに伝送する場合を説明する図である。 ビットラッパーノード内で既に圧縮された物体Aに関する3次元データのビットストリームをURLを使用して伝送する方法を示す図である。 物体Aに関する3次元データを媒介因子を用いて圧縮して物体Aの圧縮されたビットストリームをバッファを使用して伝送する方法を示す図である。 ビットラッパーノード内で物体Aに関する3次元データを媒介因子を使用して圧縮して物体Aの圧縮されたビットストリームをURLを使用して伝送する方法を示す図である。
符号の説明
200 XMTファイル
210 XMTパーザ
220 XMT2MUXスタイルシート
230 XMTスキーマ
240 XMT2BIFSスタイルシート
250 圧縮判断部
260 AFX符号化器
270 BIFS符号化器
280 MP4符号化器
290 MP4ファイル

Claims (34)

  1. (a)圧縮する客体データに関する情報を含む圧縮ノードと、圧縮に必要な圧縮媒介因子、および圧縮ビットストリームフォーマットを含むビットラッパーエンコーディングヒント、および伝送されたビットストリームを復号化する時、如何なる復号化器を使用するかに関する情報を含むAFXConfigを定義しているXMTスキーマを備える段階と、
    (b)XMT入力ファイルを前記XMTスキーマに基づいてsceneファイルへの変換を支援するXMT2BIFSスタイルシートと、XMT入力ファイルを前記XMTスキーマに基づいてmuxファイルへの変換を支援するXMT2MUXスタイルシートを備える段階と、
    (c)XMT入力ファイルを前記XMTスキーマと前記XMT2BIFSスタイルシートおよびXMT2MUXスタイルシートを用いてパージングしてsceneファイルおよびmuxファイルを生成する段階と、
    (d)前記パージングの結果、生成されたsceneファイルが圧縮されていないグラフィック客体データを含んでいるかを判断する段階と、
    (e)前記判断の結果、グラフィック客体データが圧縮されていなければ、前記sceneファイルに含まれている圧縮媒介因子(encoding parameter)を使用してグラフィック客体データを圧縮し、圧縮されたビットストリームと修正されたsceneファイルおよび修正されたmuxファイルを生成する段階と、を含むことを特徴とするグラフィックデータ圧縮に関するメタ表現を用いた入力ファイル生成方法。
  2. 前記圧縮ノードは、
    圧縮する客体データを含んでいるノードフィールドと、
    urlフィールドと相互排他的に使われ、前記ノードの圧縮されたビットストリームをインバンドとして伝送するbufferフィールドと、
    前記bufferフィールドと相互排他的に使われ、前記ノードの圧縮されたビットストリームをアウトバンドとして伝送するurlフィールドと、
    前記ノードフィールドが含む前記客体データの圧縮方法を選択するtypeフィールドを含んでなることを特徴とする請求項1に記載のグラフィックデータ圧縮に関するメタ表現を用いた入力ファイル生成方法。
  3. 前記インバンドとしての伝送は、
    前記圧縮ノードを含むXMT入力ファイルが前記sceneファイルに変換された後、BIFS符号化器を通過してBIFSファイルに最終変換された時、前記圧縮ノード内のノードフィールドの圧縮されたビットストリームがBIFSファイルに含まれて伝送され、
    前記アウトバンドとしての伝送は、
    前記圧縮ノードを含むXMT入力ファイルが前記sceneファイルに変換された後、前記BIFS符号化器を通過して前記BIFSファイルに最終変換された時、前記圧縮ノード内のノードフィールドの圧縮されたビットストリームがBIFSファイルと分離されて個別的に伝送されることを特徴とする請求項2に記載のグラフィックデータ圧縮に関するメタ表現を用いた入力ファイル生成方法。
  4. 前記圧縮媒介因子は、
    圧縮対象となる客体の頂点座標に対するキーフレームアニメーションデータに関する媒介因子と、3次元メッシュ情報に関する媒介因子と、回転移動キーフレームアニメーションデータに関する媒介因子と、位置移動キーフレームアニメーションデータに関する媒介因子のうち前記圧縮ノードのノードフィールドが含む客体データの圧縮に必要な媒介因子と、を含むことを特徴とする請求項1に記載のグラフィックデータ圧縮に関するメタ表現を用いた入力ファイル生成方法。
  5. 前記ビットラッパーエンコーディングヒントは、
    前記圧縮ノード内のURLフィールドが記述するURL IDと同じバイナリ IDを有する客体記述子内にあり、圧縮されたビットストリームのファイル名とそのビットストリームの圧縮フォーマット種類に関する情報をさらに備えることを特徴とする請求項1に記載のグラフィックデータ圧縮に関するメタ表現を用いた入力ファイル生成方法。
  6. 前記AFXConfigは、
    前記圧縮ノードがAFX符号化器を使用してノードフィールドに含まれた客体データの圧縮ビットストリームを作ってURLに伝送し、前記伝送されたビットストリームを復号化する時、如何なる復号化器を使用するかに関する情報をさらに備えることを特徴とする請求項1に記載のグラフィックデータ圧縮に関するメタ表現を用いた入力ファイル生成方法。
  7. 前記(c)段階は、
    初期客体記述子を備えるヘッダと、少なくとも1つの圧縮ノードを含むボディーよりなるXMT入力ファイルを受け取る段階と、
    前記XMTスキーマと前記XMT2BIFSスタイルシートおよびXMT2MUXスタイルシートを用いて前記XMT入力ファイルをパージングしてsceneファイルおよびmuxファイルを生成する段階と、を含むことを特徴とし、
    前記ヘッダの初期客体記述子は、
    BIFS符号化器が出力として生成するファイル名を有しているストリームソースを含み、BIFS符号化器から圧縮されるファイルの復号化時に必要な情報を備え、客体間のディスプレーされる時間順序を示す同期化情報を備え、
    前記ボディーの圧縮ノードは、
    既に圧縮されたノード名を保存しているノードフィールドと、
    既に圧縮された客体データファイル名を保存しているバッファフィールドと、を備え、
    前記sceneファイルは、
    前記ボディーと同じ、少なくとも1つの圧縮ノードを備え、
    前記muxファイルは、前記ヘッダと同じ初期客体記述子および前記初期客体記述子内にある、BIFS符号化器が出力として生成するファイルのストリームフォーマット情報を備えることを特徴とする請求項1に記載のグラフィックデータ圧縮に関するメタ表現を用いた入力ファイル生成方法。
  8. 前記(c)段階は、
    初期客体記述子を含むヘッダ、および少なくとも1つの圧縮ノードおよび少なくとも1つの客体記述子を含む客体記述子更新を備えるボディーよりなるXMT入力ファイルを受け取る段階と、
    前記XMTスキーマと前記XMT2BIFSスタイルシートおよびXMT2MUXスタイルシートを用いて前記XMT入力ファイルをパージングしてsceneファイルおよびmuxファイルを生成する段階と、
    を含んでなることを特徴とし、
    前記ヘッダの初期客体記述子は、
    BIFS符号化器が出力として生成するファイル名を有するストリームソースを含み、BIFS符号化器から圧縮されるファイルの復号化時に必要な情報を備え、客体間のディスプレーされる時間順序を示す同期化情報を備え、
    前記ボディーの圧縮ノードは、既に圧縮された客体データのビットストリームが保存されたファイル名を含むファイルビットラッパーエンコーディングヒントを含む客体記述子更新内の客体記述子のURL IDと同じURL IDを備え、
    前記ボディーの客体記述子更新内に含まれた客体記述子は、
    前記ボディーの圧縮ノードにある前記URL IDと同値を有するバイナリ IDをフィールドとして備え、前記圧縮された客体データの復号化時に復号化に使われる情報(AFXConfig)、および圧縮された客体データのビットストリームが保存されたファイル名と前記ビットストリームの圧縮フォーマットの形式を含むビットラッパーエンコーディングヒントを備え、
    前記sceneファイルは、
    前記ボディーと同じ、少なくとも1つの圧縮ノードおよびボディーの客体記述子更新内にある客体記述子のURL IDと同じURL IDを有し、ボディーの客体記述子内にある客体記述子のビットラッパーエンコーディングヒントにあるビットストリームファイルを保存するmux ファイルを有する客体記述子を含む客体記述子更新を有し、
    前記muxファイルは、
    前記ヘッダと同じ初期客体記述子および前記ボディーの客体記述子更新内にある客体記述子と同じ客体記述子を有することを特徴とする請求項1に記載のグラフィックデータ圧縮に関するメタ表現を用いた入力ファイル生成方法。
  9. 前記(c)段階は、
    初期客体記述子を含むヘッダと、少なくとも1つの圧縮ノードを備えるボディーよりなるXMT入力ファイルを受け取る段階と、
    前記XMTスキーマと前記XMT2BITSスタイルシートおよびXMT2MUXスタイルシートを用いて前記XMT入力ファイルをパージングしてsceneファイルおよびmuxファイルを生成する段階と、を含んでなることを特徴とし、
    前記ヘッダの初期客体記述子は、
    BIFS符号化器が出力として生成するファイル名を有しているストリームソースを含み、客体間のディスプレーされる時間順序を示す同期化情報を備え、
    前記ボディーの圧縮ノードは、
    圧縮するノード名を保存しているノードフィールド、前記ノードのノードフィールド内にある圧縮する客体データ、前記客体データ圧縮に使われる圧縮媒介因子、および圧縮媒介因子を使用して圧縮された客体データのビットストリームファイル名を保存するバッファフィールドを備え、
    前記sceneファイルは、
    前記ボディーと同じ、少なくとも1つの圧縮ノードを含み、
    前記muxファイルは、前記ヘッダと同じ初期客体記述子および前記初期客体記述子内にある、BIFS符号化器が出力として生成するファイルのストリームフォーマット情報を含むことことを特徴とする請求項1に記載のグラフィックデータ圧縮に関するメタ表現を用いた入力ファイル生成方法。
  10. 前記(c)段階は、
    初期客体記述子を含むヘッダ、および少なくとも1つの圧縮ノードおよび少なくとも1つの客体記述子を含む客体記述子更新を備えるボディーよりなるXMT入力ファイルを受け取る段階と、
    前記XMTスキーマと前記XMT2BIFSスタイルシートおよびXMT2MUXスタイルシートを用いて前記XMT入力ファイルをパージングしてsceneファイルおよびmuxファイルを生成する段階と、を含んでなることを特徴とし、
    前記ヘッダの初期客体記述子は、
    BIFS符号化器が出力として生成するファイル名を有しているストリームソースを含み、BIFS符号化器から圧縮されるファイルの復号化時に必要な情報を備え、客体間のディスプレーされる時間順序を示す同期化情報を備え、
    前記ボディーの圧縮ノードは、
    圧縮するノード名を保存しているノードフィールド、
    前記ノードのノードフィールド内にある圧縮する客体データ、
    前記客体データの圧縮に使われる圧縮媒介因子、
    前記圧縮媒介因子を使用して圧縮された客体データのビットストリームが保存されるファイル名を含むビットラッパーエンコーディングヒントを含む客体記述子更新内の客体記述子のURLIDと同じURLIDが保存されたフィールドを含み、
    前記ボディーの客体記述子更新に含まれた客体記述子は、
    ボディーの圧縮ノードの前記URLIDと同値を有するバイナリ IDをフィールドとして備え、前記圧縮された客体データの復号化時に復号化に使われる情報(AFXConfig)、および圧縮された客体データのビットストリームが保存されたファイル名と前記ビットストリームの圧縮フォーマットの形式を含むビットラッパーエンコーディングヒントを備え、
    前記sceneファイルは、
    前記ボディーと同じ、少なくとも1つの圧縮ノードと、
    ボディーの客体記述子更新内にある客体記述子のURLIDと同じURLIDを有し、ボディーの客体記述子更新内にある客体記述子のビットラッパーエンコーディングヒント内にあるビットストリームファイルを保存するmuxファイルを有する客体記述子を含む客体記述子更新を有し、
    前記muxファイルは、
    前記ヘッダと同じ初期客体記述子および客体記述子を有することを特徴とする請求項1に記載のグラフィックデータ圧縮に関するメタ表現を用いた入力ファイル生成方法。
  11. 前記(c)段階は、
    初期客体記述子を含むヘッダ、およびバッファフィールドを備える少なくとも1つの圧縮ノードと、URLフィールドを備える少なくとも1つの圧縮ノードおよび前記URLフィールドを備える圧縮ノード数と同数の客体記述子を含む客体記述子更新を備えるボディーよりなるXMT入力ファイルを受け取る段階と、
    前記XMTスキーマと前記XMT2BIFSスタイルシートおよびXMT2MUXスタイルシートを用いて前記XMT入力ファイルをパージングしてsceneファイルおよびmuxファイルを生成する段階と、を含んでなることを特徴とし、
    前記ヘッダの初期客体記述子は、
    BIFS符号化器が出力として生成するファイル名を有しているストリームソースを含み、
    BIFS符号化器から圧縮されるファイルの復号化時に必要な情報を備え、客体間のディスプレーされる時間順序を示す同期化情報を備え、
    前記ボディーでバッファフィールドを備える圧縮ノードは、
    圧縮するノード名を保存しているノードフィールドと、
    前記ノードのノードフィールド内にある圧縮する客体データと、
    前記客体データ圧縮に使われる圧縮媒介因子と、
    圧縮媒介因子を使用して圧縮された客体データのビットストリームファイル名を保存するバッファフィールドと、を備え、
    前記ボディーのURLフィールドを備える圧縮ノードは、
    圧縮するノード名を保存しているノードフィールドと、
    前記ノードのノードフィールド内にある圧縮する客体データと、
    前記客体データの圧縮に使われる圧縮媒介因子と、
    圧縮媒介因子を使用して圧縮された客体データのビットストリームが保存されるファイル名を含むビットラッパーエンコーディングヒントを含む客体記述子更新内の客体記述子のURL IDと同じURL IDが保存されたフィールドと、を備え、
    前記ボディーの客体記述子更新に含まれた客体記述子は、
    ボディーの圧縮ノードのURL IDと同値を有するバイナリ IDをフィールドとして備え、
    前記圧縮された客体データの復号化時に復号化に使われる情報(AFXConfig)、および圧縮された客体データのビットストリームが保存されたファイル名と前記ビットストリームの圧縮フォーマットの形式を含むビットラッパーエンコーディングヒントを備え、
    前記sceneファイルは、
    前記ボディーと同じ圧縮ノードおよびボディーの客体記述子更新内にある客体記述子のURL IDと同じURL IDを有し、ボディーの客体記述子更新内にある客体記述子のビットラッパーエンコーディングヒント内にあるビットストリームファイルを保存するmuxファイルを有する、客体記述子を含む客体記述子更新を有し、
    前記muxファイルは、前記ヘッダと同じ初期客体記述子および前記ボディーの客体記述子更新の客体記述子と同じ客体記述子を有することを特徴とする請求項1に記載のグラフィックデータ圧縮に関するメタ表現を用いた入力ファイル生成方法。
  12. 前記(d)段階は、前記パージングの結果、生成されたsceneファイルで少なくとも1つの圧縮(BitWrapper)ノードを探し出す段階と、
    前記検索された圧縮ノードのノードフィールド内にグラフィック客体データが存在すれば、圧縮されていないデータを含んでいると判断する段階を備えることを特徴とする請求項9ないし請求項11のいずれか1項に記載のグラフィックデータ圧縮に関するメタ表現を用いた入力ファイル生成方法。
  13. 前記(e)段階は、
    (e1)前記判断の結果、グラフィック客体データが圧縮されていないデータを含んでいると判断されれば、sceneファイルの各圧縮ノードに対して前記圧縮ノード内にある客体データを前記圧縮ノード内に含まれた圧縮媒介因子とそれを用いて前記客体データを圧縮できる符号化器を選択して客体データを圧縮してビットストリームを生成する段階と、
    (e2)前記sceneファイルで各圧縮ノードの客体データと圧縮媒介因子とを削除した修正されたsceneファイル、およびBIFS符号化器が出力として生成するファイル名が前記修正されたsceneファイル名を反映できるように修正されたmuxファイルを生成する段階と、を含んでなることを特徴とする請求項12に記載のグラフィックデータ圧縮に関するメタ表現を用いた入力ファイル生成方法。
  14. 前記(e1)段階は、
    (e11)前記判断の結果、グラフィックデータが圧縮されていないと判断されれば、sceneファイルの圧縮ノード内にある客体データと圧縮媒介因子とを保存する段階と、
    (e12)前記保存された客体データを含んでいる圧縮ノードのノードフィールド内にグラフィック客体と相応する所定の符号化器に前記客体データと圧縮媒介因子とを伝送する段階と、
    (e13)前記伝送された符号化器で前記圧縮媒介因子を使用して客体データを圧縮してビットストリームとして生成する段階と、を含んでなることを特徴とする請求項13に記載のグラフィックデータ圧縮に関するメタ表現を用いた入力ファイル生成方法。
  15. 前記(e1)段階の所定の符号化器は、
    圧縮対象となる客体の頂点座標に対するキーフレームアニメーションデータに関する媒介因子を使用して前記頂点座標に対するキーフレームアニメーションデータを符号化する頂点座標符号化器と、
    3次元メッシュ情報に関する媒介因子を使用して前記3次元メッシュ情報を符号化するメッシュ符号化器と、
    回転移動キーフレームアニメーションデータに関する媒介因子を使用して前記回転移動キーフレームアニメーションデータを符号化する回転移動符号化器と、
    位置移動キーフレームアニメーションデータに関する媒介因子を使用して前記位置移動キーフレームアニメーションデータを符号化する位置移動符号化器のうち少なくとも1つを含むことを特徴とする請求項13に記載のグラフィックデータ圧縮に関するメタ表現を用いた入力ファイル生成方法。
  16. 圧縮する客体データに関する情報を含む圧縮ノードと、
    圧縮に必要な圧縮媒介因子、および圧縮ビットストリームフォーマットを含むビットラッパーエンコーディングヒント、および伝送されたビットストリームを復号化する時、如何なる復号化器を使用するかに関する情報を含むAFXConfigを定義しているXMTスキーマと、
    XMT入力ファイルを前記XMTスキーマに基づいてsceneファイルへの変換を支援するXMT2BIFSスタイルシートと、
    XMT入力ファイルを前記XMTスキーマに基づいてmuxファイルへの変換を支援するXMT2MUXスタイルシートと、
    XMT入力ファイルを前記XMTスキーマと前記XMT2BIFSスタイルシートおよびXMT2MUXスタイルシートを用いてパージングしてsceneファイルおよびmuxファイルを生成するXMTパーザと、
    前記XMTパーザのパージングの結果、生成されたsceneファイルが圧縮されていないグラフィック客体データを含んでいるかを判断する圧縮判断部と、
    前記圧縮判断部の判断の結果、グラフィック客体データが圧縮されていなければ、前記sceneファイルに含まれている圧縮媒介因子(encoding parameter)を使用してグラフィック客体データを圧縮し、圧縮されたビットストリームと修正されたsceneファイルおよび修正されたmuxファイルを生成するAFX符号化器と、を含むことを特徴とするグラフィックデータ圧縮に関するメタ表現を用いた入力ファイル生成システム。
  17. 前記圧縮ノードは、
    圧縮する客体データを含んでいるノードフィールドと、
    urlフィールドと相互排他的に使われ、前記ノードの圧縮されたビットストリームをインバンドとして伝送するbufferフィールドと、
    前記bufferフィールドと相互排他的に使われ、前記ノードの圧縮されたビットストリームをアウトバンドとして伝送するurlフィールドと、
    前記ノードフィールドが含む前記客体データの圧縮方法を選択するtypeフィールドを含んでなることを特徴とする請求項16に記載のグラフィックデータ圧縮に関するメタ表現を用いた入力ファイル生成システム。
  18. 前記インバンドとしての伝送は、
    前記圧縮ノードを含むXMT入力ファイルが前記sceneファイルに変換された後、BIFS符号化器を通過してBIFSファイルに最終変換された時、前記圧縮ノード内のノードフィールドの圧縮されたビットストリームがBIFSファイルに含まれて伝送され、
    前記アウトバンドとしての伝送は、
    前記圧縮ノードを含むXMT入力ファイルが前記sceneファイルに変換された後、前記BIFS符号化器を通過して前記BIFSファイルに最終変換された時、前記圧縮ノード内のノードフィールドの圧縮されたビットストリームがBIFSファイルと分離されて個別的に伝送されることを特徴とする請求項17に記載のグラフィックデータ圧縮に関するメタ表現を用いた入力ファイル生成システム。
  19. 前記圧縮媒介因子は、
    圧縮対象となる客体の頂点座標に対するキーフレームアニメーションデータに関する媒介因子と、3次元メッシュ情報に関する媒介因子と、回転移動キーフレームアニメーションデータに関する媒介因子と、位置移動キーフレームアニメーションデータに関する媒介因子のうち、前記圧縮ノードのノードフィールドが含む客体データの圧縮に必要な媒介因子を含むことを特徴とする請求項16に記載のグラフィックデータ圧縮に関するメタ表現を用いた入力ファイル生成システム。
  20. 前記ビットラッパーエンコーディングヒントは、
    前記圧縮ノード内のURLフィールドが記述するURL IDと同じバイナリ IDを有する客体記述子内にあり、圧縮されたビットストリームのファイル名とそのビットストリームの圧縮フォーマット種類に関する情報をさらに備えることを特徴とする請求項16に記載のグラフィックデータ圧縮に関するメタ表現を用いた入力ファイル生成システム。
  21. 前記AFXConfigは、
    前記圧縮ノードがAFX符号化器を使用してノードフィールドに含まれた客体データの圧縮ビットストリームを作ってURLに伝送し、前記伝送されたビットストリームを復号化する時、如何なる復号化器を使用するかに関する情報をさらに備えることを特徴とする請求項16に記載のグラフィックデータ圧縮に関するメタ表現を用いた入力ファイル生成システム。
  22. 前記XMTパーザのXMT入力ファイルは、
    初期客体記述子を備えるヘッダ、および少なくとも1つの圧縮ノードを含むボディーよりなり、
    前記ヘッダの初期客体記述子はBIFS符号化器が出力として生成するファイル名を有しているストリームソースを含み、BIFS符号化器から圧縮されるファイルの復号化時に必要な情報を備え、客体間のディスプレーされる時間順序を示す同期化情報を備え、
    前記ボディーの圧縮ノードは、既に圧縮されたノード名を保存しているノードフィールドと、既に圧縮された客体データファイル名を保存しているバッファフィールドとを備え、
    前記sceneファイルは、前記ボディーと同じ、少なくとも1つの圧縮ノードを備え、
    前記muxファイルは、前記ヘッダと同じ初期客体記述子および前記初期客体記述子内にある、BIFS符号化器が出力として生成するファイルのストリームフォーマット情報を備えることを特徴とする請求項16に記載のグラフィックデータ圧縮に関するメタ表現を用いた入力ファイル生成システム。
  23. 前記XMTパーザのXMT入力ファイルは、
    初期客体記述子含むヘッダ、および少なくとも1つの圧縮ノードおよび少なくとも1つの客体記述子を含む客体記述子更新を備えるボディーよりなり、
    前記ヘッダの初期客体記述子はBIFS符号化器が出力として生成するファイル名を有しているストリームソースを含み、BIFS符号化器から圧縮されるファイルの復号化時に必要な情報を備え、客体間のディスプレーされる時間順序を示す同期化情報を備え、
    前記ボディーの圧縮ノードは既に圧縮された客体データのビットストリームが保存されたファイル名を含むビットラッパーエンコーディングヒントを有する客体記述子更新内の客体記述子のURL IDと同じURL IDを備え、
    前記ボディーの客体記述子更新内に含まれた客体記述子は、ボディーの圧縮ノードのURL IDと同値を有するバイナリ IDをフィールドとして備え、
    前記圧縮された客体データの復号化時に復号化に使われる情報(AFXConfig)、および圧縮された客体データのビットストリームが保存されたファイル名と前記ビットストリームの圧縮フォーマットの形式を含むビットラッパーエンコーディングヒントを備え、
    前記sceneファイルは前記ボディーと同じ少なくとも1つの圧縮ノード、およびボディーの客体記述子更新内にある客体記述子のURL IDと同じURL IDを有し、ボディーの客体記述子更新内にある客体記述子のビットラッパーエンコーディングヒント内にあるビットストリームファイルを保存するmuxファイルを有する客体記述子を含む客体記述子更新(ObjectDescriptorUpdate)を有し、
    前記muxファイルは前記ヘッダと同じ初期客体記述子およびボディーの客体記述子更新内にある客体記述子と同じ客体記述子を有することを特徴とする、請求項16に記載のグラフィックデータ圧縮に関するメタ表現を用いた入力ファイル生成システム。
  24. 前記XMTパーザのXMT入力ファイルは、
    初期客体記述子を備えるヘッダと、少なくとも1つの圧縮ノードを備えるボディーとよりなり、
    前記ヘッダの初期客体記述子は、
    BIFS符号化器が出力として生成するファイル名を有しているストリームソースを含み、BIFS符号化器から圧縮されるファイルの復号化時に必要な情報を備え、客体間のディスプレーされる時間順序を示す同期化情報を備え、
    前記ボディーの圧縮ノードは、圧縮するノード名を保存しているノードフィールド、前記ノードのノードフィールド内にある圧縮する客体データ、前記客体データ圧縮に使われる圧縮媒介因子、および圧縮媒介因子を使用して圧縮された客体データのビットストリームファイル名を保存するバッファフィールドを備え、
    前記sceneファイルは、前記ボディーと同じ、少なくとも1つの圧縮ノードを含み、
    前記muxファイルは、前記ヘッダと同じ初期客体記述子および前記初期客体記述子内にある、BIFS符号化器が出力として生成するファイルのストリームフォーマット情報を含むことを特徴とする、請求項16に記載のグラフィックデータ圧縮に関するメタ表現を用いた入力ファイル生成システム。
  25. 前記XMTパーザのXMT入力ファイルは、
    初期客体記述子を含むヘッダ、および少なくとも1つの圧縮ノードおよび少なくとも1つの客体記述子を含む客体記述子更新を備えるボディーよりなり、
    前記ヘッダの初期客体記述子は、BIFS符号化器が出力として生成するファイル名を有しているストリームソースと、BIFS符号化器から圧縮されるファイルの復号化時に必要な情報を備え、客体間のディスプレーされる時間順序を示す同期化情報とを備え、
    前記ボディーの圧縮ノードは圧縮するノード名を保存しているノードフィールド、前記ノードのノードフィールド内にある圧縮する客体データ、前記客体データの圧縮に使われる圧縮媒介因子、および圧縮媒介因子を使用して圧縮された客体データのビットストリームが保存されるファイル名を含むビットラッパーエンコーディングヒントを含む客体記述子更新内にある客体記述子のURL IDと同じURL IDが保存されたフィールドを含み、
    前記ボディーの客体記述子更新に含まれた客体記述子はボディーの圧縮ノードのURL IDと同値を有するバイナリ IDをフィールドとして備え、
    前記圧縮された客体データの復号化時に復号化に使われる情報(AFXConfig)、および圧縮された客体データのビットストリームが保存されたファイル名と前記ビットストリームの圧縮フォーマットの形式を含むビットラッパーエンコーディングヒントを備え、
    前記sceneファイルは前記ボディーと同じ、少なくとも1つの圧縮ノード、およびボディーの客体記述子更新内にある客体記述子のURL IDと同じURL IDを有し、ボディーの客体記述子更新内にある客体記述子のビットラッパーエンコーディングヒント内にあるビットストリームファイルを保存するmuxファイルを有する客体記述子を含む客体記述子更新(ObjectDescriptorUpdate)を有し、
    前記muxファイルは、前記ヘッダと同じ初期客体記述子および前記ボディーの客体記述子更新の客体記述子と同じ客体記述子を有することを特徴とする、請求項16に記載のグラフィックデータ圧縮に関するメタ表現を用いた入力ファイル生成システム。
  26. 前記XMTパーザのXMT入力ファイルは、
    初期客体記述子を含むヘッダ、およびバッファフィールドを備える少なくとも1つの圧縮ノードと、urlフィールドを備える少なくとも1つの圧縮ノードおよび前記urlフィールドを備える圧縮ノード数と同数の客体記述子を含む客体記述子更新を備えるボディーとよりなり、
    前記ヘッダの初期客体記述子はBIFS符号化器が出力として生成するファイル名を有しているストリームソースを含み、BIFS符号化器から圧縮されるファイルの復号化時に必要な情報を備え、客体間のディスプレーされる時間順序を示す同期化情報を備え、
    前記ボディーでバッファフィールドを備える圧縮ノードは、
    圧縮するノード名を保存しているノードフィールド、前記ノードのノードフィールド内にある圧縮する客体データ、前記客体データ圧縮に使われる圧縮媒介因子、および圧縮媒介因子を使用して圧縮された客体データのビットストリームファイル名を保存するバッファフィールドを備え、
    前記ボディーのurlフィールドを備える圧縮ノードは、圧縮するノード名を保存しているノードフィールド、前記ノードのノードフィールド内にある圧縮する客体データ、前記客体データの圧縮に使われる圧縮媒介因子、および圧縮媒介因子を使用して圧縮された客体データのビットストリームが保存されるファイル名を含むビットラッパーエンコーディングヒントを含む客体記述子更新内にある客体記述子のURL IDと同じURL IDが保存されたフィールドを含み、
    前記ボディーの客体記述子更新に含まれた客体記述子は、ボディーの圧縮ノードのURL IDと同値を有するバイナリ IDをフィールドとして備え、前記圧縮された客体データの復号化時に復号化に使われる情報(AFXConfig)、および圧縮された客体データのビットストリームが保存されたファイル名と前記ビットストリームの圧縮フォーマットの形式を含むビットラッパーエンコーディングヒントを備え、
    前記sceneファイルは、前記ボディーと同じ、圧縮ノードおよびボディーの客体記述子更新内にある客体記述子のURL IDと同じURL IDを有し、ボディーの客体記述子更新内にある客体記述子のビットラッパーエンコーディングヒント内にあるビットストリームファイルを保存するmuxファイルを有する客体記述子を含む客体記述子更新を有し、
    前記muxファイルは、前記ヘッダと同じ初期客体記述子および前記ボディーの客体記述子更新の客体記述子と同じ客体記述子を有することを特徴とする、請求項16に記載のグラフィックデータ圧縮に関するメタ表現を用いた入力ファイル生成システム。
  27. 前記圧縮判断部は、
    前記パージング結果生成されたsceneファイルで少なくとも1つの圧縮(BitWrapper)ノードを探し出す圧縮ノード検索部と、
    前記検索された圧縮ノードのノードフィールド内にグラフィック客体データが存在すれば、圧縮されないデータを含んでいると判断する圧縮データ判断部を備えることを特徴とする請求項24ないし請求項26のいずれか1項に記載のグラフィックデータ圧縮に関するメタ表現を用いた入力ファイル生成システム。
  28. 前記AFX符号化器は、
    圧縮(BitWrapper)ノードを含むsceneファイルから少なくとも1つの圧縮ノードを探し出して、前記圧縮ノードのノードフィールド内にグラフィック客体データが存在すれば、前記sceneファイルの圧縮ノード内にある、客体データと前記圧縮ノード内に含まれた圧縮媒介因子とを保存させるAFXパーザと、
    前記AFXパーザにより客体データを保存する客体データ保存部と、
    前記AFXパーザにより圧縮媒介因子を保存する圧縮媒介因子保存部と、
    前記圧縮ノードのノードフィールド内にグラフィック客体と相応して、前記圧縮媒介因子保存部の圧縮媒介因子を使用して前記客体データ保存部の客体データを圧縮してビットストリームとして生成する符号化器と、
    前記AFXパーザで前記圧縮ノードのノードフィールド内にグラフィック客体データが存在すれば、前記sceneファイルで各圧縮ノードの客体データと圧縮媒介因子とを削除した修正されたsceneファイル、およびBIFS符号化器が出力として生成するファイル名が前記修正されたsceneファイル名を反映できるように修正されたmuxファイルを生成する入力ファイル生成器と、を含むことを特徴とする請求項27に記載のグラフィックデータ圧縮に関するメタ表現を用いた入力ファイル生成システム。
  29. 前記符号化器は、
    前記保存された客体データおよび圧縮媒介因子に相応し、圧縮対象となる客体の頂点座標に対するキーフレームアニメーションデータ(CoordinateInterpolatordata)に関する媒介因子を使用して前記頂点座標に対するキーフレームアニメーションデータを符号化する頂点座標符号化器と、
    前記保存された客体データおよび圧縮媒介因子に相応し、3次元メッシュ情報に関する媒介因子を使用して、前記3次元メッシュ情報を符号化するメッシュ符号化器と、
    前記保存された客体データおよび圧縮媒介因子に相応し、回転移動キーフレームアニメーションデータ(OrientationInterpolator data)に関する媒介因子を使用して、前記回転移動キーフレームアニメーションデータを符号化する回転移動符号化器と、
    前記保存された客体データおよび圧縮媒介因子に相応して、位置移動キーフレームアニメーションデータ(PositionInterpolator data)に関する媒介因子を使用して前記位置移動キーフレームアニメーションデータを符号化する位置移動符号化器のうち少なくとも1つを含むことを特徴とする、請求項28に記載のグラフィックデータ圧縮に関するメタ表現を用いた入力ファイル生成システム。
  30. 圧縮(BitWrapper)ノードを含むsceneファイルから少なくとも1つの圧縮ノードを探し出して前記圧縮ノードのノードフィールド内にグラフィック客体データが存在すれば、前記sceneファイルの圧縮ノード内にある、客体データを含んでいるノードおよび圧縮媒介因子を保存させるAFXパーザと、
    前記AFXパーザにより客体データを保存する客体データ保存部と、
    前記AFXパーザにより圧縮媒介因子を保存する圧縮媒介因子保存部と、
    前記保存された客体データに相応する、前記圧縮媒介因子保存部の圧縮媒介因子を使用して前記客体データ保存部の原本データを圧縮してビットストリームとして生成する符号化器と、
    前記AFXパーザで前記圧縮ノードのノードフィールド内にグラフィック客体データが存在すれば、前記sceneファイルで各圧縮ノードの客体データと圧縮媒介因子を削除した修正されたsceneファイル、およびBIFS符号化器が出力として生成するファイル名が前記修正されたsceneファイル名を反映できるように修正されたmuxファイルを生成する入力ファイル生成器と、を含むことを特徴とするAFX符号化装置。
  31. 前記符号化器は、
    前記保存された客体データおよび圧縮媒介因子に相応し、圧縮対象となる客体の頂点座標に対するキーフレームアニメーションデータに関する媒介因子を使用して前記頂点座標に対するキーフレームアニメーションデータを符号化する頂点座標符号化器と、
    前記保存された客体データおよび圧縮媒介因子に相応し、3次元メッシュ情報に関する媒介因子を使用して前記3次元メッシュ情報を符号化するメッシュ符号化器と、
    前記保存された客体データおよび圧縮媒介因子に相応し、回転移動キーフレームアニメーションデータに関する媒介因子を使用して前記回転移動キーフレームアニメーションデータを符号化する回転移動符号化器と、
    前記保存された客体データおよび圧縮媒介因子に相応し、位置移動キーフレームアニメーションデータに関する媒介因子を使用して前記位置移動キーフレームアニメーションデータを符号化する位置移動符号化器のうち少なくとも1つを含むことを特徴とする請求項30に記載のAFX符号化装置。
  32. (a)圧縮(BitWrapper)ノードを含むsceneファイルから少なくとも1つの圧縮ノードを探し出す段階と、
    (b)前記探し出した圧縮ノード内にある、客体データを含んでいるノードおよび圧縮媒介因子を保存する段階と、
    (c)前記保存された客体データを含んでいるノードに相応する符号化器を通じて、前記符号化器に相応する保存された圧縮媒介因子を使用して前記客体データを圧縮してビットストリームとして生成する段階と、
    (d)前記sceneファイルで各圧縮ノードの客体データと圧縮媒介因子を削除した修正されたsceneファイル、およびBIFS符号化器が出力として生成するファイル名が前記修正されたsceneファイル名を反映できるように修正されたmuxファイルを生成する段階と、を含むことを特徴とするAFX符号化方法。
  33. 前記(c)段階の符号化器は、
    前記保存された客体データおよび圧縮媒介因子に相応し、圧縮対象となる客体の頂点座標に対するキーフレームアニメーションデータに関する媒介因子を使用して前記頂点座標に対するキーフレームアニメーションデータを符号化する頂点座標符号化器と、
    前記保存された客体データおよび圧縮媒介因子に相応し、3次元メッシュ情報に関する媒介因子を使用して前記3次元メッシュ情報を符号化するメッシュ符号化器と、
    前記保存された客体データおよび圧縮媒介因子に相応し、回転移動キーフレームアニメーションデータに関する媒介因子を使用して前記回転移動キーフレームアニメーションデータを符号化する回転移動符号化器と、
    前記保存された客体データおよび圧縮媒介因子に相応し、位置移動キーフレームアニメーションデータに関する媒介因子を使用して前記位置移動キーフレームアニメーションデータを符号化する位置移動符号化器のうち少なくとも1つを含むことを特徴とする請求項32に記載のAFX符号化方法。
  34. 請求項1ないし請求項15、請求項32または請求項33のうちいずれか1項に記載のAFX符号化方法をコンピュータで実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
JP2004349991A 2003-12-02 2004-12-02 グラフィックデータ圧縮に関するメタ表現を用いた入力ファイルの生成方法およびシステムと、afx符号化の方法および装置 Pending JP2005176355A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US52607503P 2003-12-02 2003-12-02
US52629503P 2003-12-03 2003-12-03
KR1020040048663A KR100695126B1 (ko) 2003-12-02 2004-06-26 그래픽 데이터 압축에 관한 메타표현을 이용한 입력파일생성 방법 및 시스템과, afx부호화 방법 및 장치

Publications (1)

Publication Number Publication Date
JP2005176355A true JP2005176355A (ja) 2005-06-30

Family

ID=34468336

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004349991A Pending JP2005176355A (ja) 2003-12-02 2004-12-02 グラフィックデータ圧縮に関するメタ表現を用いた入力ファイルの生成方法およびシステムと、afx符号化の方法および装置

Country Status (2)

Country Link
EP (2) EP2348731A1 (ja)
JP (1) JP2005176355A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102860007A (zh) * 2010-04-20 2013-01-02 汤姆森特许公司 对使用计算机图形呈现至少一个图像的数据进行编码的方法和设备及其对应的解码方法和设备
CN107273345A (zh) * 2017-07-10 2017-10-20 翁毅 一键导入3Dmax灯光数据并生成项目文件的方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102860007A (zh) * 2010-04-20 2013-01-02 汤姆森特许公司 对使用计算机图形呈现至少一个图像的数据进行编码的方法和设备及其对应的解码方法和设备
JP2013531827A (ja) * 2010-04-20 2013-08-08 トムソン ライセンシング コンピュータグラフィックスを使用して少なくとも1つの画像をレンダリングするデータ符号化方法及びデバイス並びに対応する復号化方法及びデバイス
CN107273345A (zh) * 2017-07-10 2017-10-20 翁毅 一键导入3Dmax灯光数据并生成项目文件的方法

Also Published As

Publication number Publication date
EP1538841A3 (en) 2007-09-12
EP2348731A1 (en) 2011-07-27
EP1538841A2 (en) 2005-06-08

Similar Documents

Publication Publication Date Title
KR100513736B1 (ko) 그래픽 데이터 압축에 관한 메타표현을 이용한 입력파일생성 방법 및 시스템
KR100695126B1 (ko) 그래픽 데이터 압축에 관한 메타표현을 이용한 입력파일생성 방법 및 시스템과, afx부호화 방법 및 장치
JP2001312741A (ja) 三次元シーンのノード処理方法及びその装置
JP4384155B2 (ja) グラフィックデータ圧縮に関するメタ言語を用いた入力ファイルの生成方法
WO2003009514A2 (en) Incremental bottom-up construction of data documents
JP2011134361A (ja) ノード処理方法及び三次元シーンノード処理装置
CN101427571B (zh) 从mpeg-4中间格式创建mpeg-4文本表示的方法
JP2006514354A (ja) MPEG−4Textual表現からMPEG−4IntermediaFormatを作成する効率的な手段
KR100763903B1 (ko) Dibr데이터를 위한 스키마 및 스타일 쉬트
JP2005176355A (ja) グラフィックデータ圧縮に関するメタ表現を用いた入力ファイルの生成方法およびシステムと、afx符号化の方法および装置
WO2006071074A1 (en) Input file generating method and system using meta representation of compression of graphics data, and afx coding method and apparatus
US20140181882A1 (en) Method for transmitting metadata documents associated with a video
CN100496124C (zh) 使用图形数据压缩的元表示产生输入文件的方法
KR100494845B1 (ko) 확장성 생성 언어 기반의 메타데이터 부호화 장치 및 그방법
JP2007516514A (ja) 構造化文書の圧縮および解凍方法
Timmerer et al. Digital item adaptation–coding format independence
JP2005276193A (ja) Dibrデータのためのスキーマ及びスタイルシート
Kim et al. Overview of Bitstream Syntax and Parser Description Languages for Media Codecs
Hong et al. XFlavor: providing XML features in media representation
Lee et al. Converting Macromedia/sup/spl reg//Flash/sup TM/Shockwave/sup/spl reg//to MPEG-4 BIFS
Thomas-Kerr et al. Enhancing interoperability via generic multimedia syntax translation
Timmerer et al. Transforming MPEG-21 generic bitstream syntax descriptions within the binary domain
Kim et al. Conversion mechanism for MPEG-4 contents services on Web environment
KR20050015070A (ko) 내용 기반 검색을 위한 방송 프로그램 송수신 장치 및 방법

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20061107

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20061114