"めいめいのイメージ情報を格納した複数のユニットを含むデータ処理モジュール内でイメージ情報を処理する方法であって、前記複数のユニットの少なくとも1つをイメージ情報の主ビデオストリームに割り当てるステップと、前記複数のユニットの他の少なくとも1つをイメージ情報のビデオサブストリームに割り当てるステップと、合成ビデオ情報を作るために、前記主ビデオストリームおよび前記ビデオサブストリームを用いる少なくとも2つのタスクを単一の動作で実行するステップとを含むことを特徴とする方法。前記複数のユニットは、複数のグラフィックステクスチャユニットを含むことを特徴とする請求項1に記載の方法。請求項1に記載の方法をプロセッサに実行させるためのコンピュータ実行可能命令を格納したことを特徴とする1つまたは複数のコンピュータ可読記録媒体。プロセッサと、請求項1に記載の前記割り当てるステップおよび前記実行するステップを前記プロセッサに実行させるためのコンピュータ実行可能命令を格納したコンピュータ可読記録媒体とを含むことを特徴とする装置。イメージ情報を処理する方法であって、イメージ情報の主ビデオストリームを提供するステップと、イメージ情報のビデオサブストリームを提供するステップと、カラー情報データ構造体で指定されたカラー情報に基づいて、指定された色空間内で表される出力ビデオ情報を作るために、前記主ビデオストリームおよび前記ビデオサブストリームを用いる少なくとも2つのタスクを実行するステップとを含むことを特徴とする方法。前記指定された色空間は、RGB関連色空間であることを特徴とする請求項5に記載の方法。前記RGB関連色空間は、非線形RGBデータを定義することを特徴とする請求項6に記載の方法。前記RGB関連色空間は、線形RGBデータを定義することを特徴とする請求項6に記載の方法。前記指定された色空間は、ルマ関連色空間であることを特徴とする請求項5に記載の方法。前記指定された色空間は、イメージ情報の複数のストリームを処理するための共通の色空間を定義することを特徴とする請求項5に記載の方法。前記カラー情報は、前記指定された色空間を識別することを特徴とする請求項5に記載の方法。前記実行するステップは、それぞれがそれに関連するそれ自体のめいめいのカラー情報データ構造体を有する、イメージ情報の複数のストリームを操作することを特徴とする請求項5に記載の方法。前記少なくとも2つのタスクは、前記主ビデオストリームのデインターレースを含み、前記カラー情報データ構造体は、前記デインターレースを決定する情報を含むことを特徴とする請求項5に記載の方法。前記少なくとも2つのタスクは、イメージ情報を第1色空間から第2色空間に変換することを含むことを特徴とする請求項5に記載の方法。前記第1色空間は、ルマ関連色空間であり、前記第2色空間は、RGB関連色空間であることを特徴とする請求項14に記載の方法。前記カラー情報データ構造体内の前記カラー情報は、前記変換を決定することを特徴とする請求項14に記載の方法。前記少なくとも2つのタスクは、a前記主ビデオストリームをデインターレースすることと、b前記主ビデオストリームを前記ビデオサブストリームと組み合わせることと、c第1色空間から第2色空間へイメージ情報を変換することとのうちの少なくとも2つを含むことを特徴とする請求項5に記載の方法。前記少なくとも2つのタスクは、単一の動作で実行されることを特徴とする請求項5に記載の方法。請求項5に記載の方法をプロセッサに実行させるためのコンピュータ実行可能命令を格納したことを特徴とする1つまたは複数のコンピュータ可読記録媒体。プロセッサと、請求項5に記載の前記主ビデオストリームを提供するステップ、前記サブストリームを提供するステップ、および前記実行するステップのそれぞれを前記プロセッサに実行させるためのコンピュータ実行可能命令を格納したコンピュータ可読記録媒体とを含むことを特徴とする装置。したがって、カラー内容を有するイメージ情報を処理するより満足な技法の必要がある。1つの例示的な実施形態によれば、指定されたフォーマットで表されたカラー内容を有するイメージ情報を処理する方法が説明される。この方法には、a前記指定されたフォーマットの少なくとも1つの態様を定義するカラー情報を含むカラー情報データ構造体を提供することと、b前記イメージ情報を処理するのに使用される少なくとも1つの機能コンポーネントに、前記イメージ情報と共に前記カラー情報データ構造体を渡すことと、c前記カラー情報データ構造体内の前記カラー情報に基づいて、前記少なくとも1つの機能コンポーネントで前記イメージ情報を処理することとを含むことを特徴とする方法が含まれる。もう1つの例示的な特徴によれば、カラー情報データ構造に、a線形イメージ情報を非線形イメージ情報に変換し、かつ/またはその逆を行うのに使用される伝達関数に関する情報を伝えるビデオ伝達関数フィールドと、b前記イメージ情報に関連する原色を伝える原色フィールドと、c前記イメージ情報に関連する所期のビューイング条件を伝えるイメージライトフィールドと、d前記イメージ情報の前記色空間を変更するのに使用できる伝達行列フィールドと、e前記イメージ情報に関連する潜在的なトウルームおよびヘッドルームに関する情報を伝える公称範囲フィールドと、f前記イメージ情報内のクロマサンプルが関連するルマサンプルに関してサンプリングされ、アラインされる形を示すビデオクロマサンプリングフィールドとが含まれる。もう1つの例示的な特徴によれば、上述の少なくとも1つの機能コンポーネントは、ビデオ処理パイプラインを定義する機能コンポーネントの群に属し、前記カラー情報データ構造体は、下流機能コンポーネントによる使用のために前記ビデオ処理パイプラインを介して渡される。もう1つの例示的な特徴によれば、上述の少なくとも1つの機能コンポーネントは、さらに、前記指定されたフォーマットの少なくとも1つの他の態様を判定し、前記少なくとも1つの他の態様を前記カラー情報データ構造内の少なくとも1つの未知のフィールドに追加する。もう1つの例示的な特徴によれば、前記カラー情報データ構造体の上述の渡しは、既存データ構造体の未使用フィールドで前記カラー情報データ構造体を渡すことを含む。もう1つの例示的な特徴によれば、この方法は、さらに、前記少なくとも1つの機能コンポーネントは前記カラー情報データ構造体を処理する能力を有することを示すフラグをセットすることを含む。aイメージ情報の主ビデオストリームを提供することと、bイメージ情報のビデオサブストリームを提供することと、cカラー情報データ構造体で指定されたカラー情報に基づいて、指定された色空間内で表される出力ビデオ情報を作るために、前記主ビデオストリームおよび前記ビデオサブストリームを用いる少なくとも2つのタスクを実行することとを含む、イメージ情報を処理するもう1つの例示的な方法を説明する。aルマ関連色空間の入力イメージ情報をRGB関連色空間内の線形イメージ情報に変換することと、b処理された情報を作るために、前記RGB関連色空間内の前記線形イメージ情報に対する処理を実行することと、c前記処理された情報をルマ関連色空間内の非線形イメージ情報に変換することとを含む、イメージ情報を処理するもう1つの例示的な方法を説明する。上述した方法のもう1つの例示的な特徴によれば、前記変換は、前記処理動作の前に、前記入力イメージ情報をインターレースフォーマットからプログレッシブフォーマットに変換することと、処理の後に、前記処理された情報をプログレッシブフォーマットからインターレースフォーマットに変換することとを含む。追加の例示的実施形態を、次に説明する。次に、カラー内容を有するイメージ情報の処理を改善する例示的な機構および手続きを説明する。幅広い概要として、この機構および手続きは、イメージ情報に適用されたカラーフォーマッティングに関する情報を取り込むデータ構造体を提供する。この情報を、カラー情報と呼び、データ構造体自体は、カラー情報CIデータ構造体と呼ぶ。1つの例示的な事例で、カラー情報に、特に、イメージ情報に関連する次の情報を伝えるフィールドを含めることができる:伝達関数情報;原色情報;ビデオライティング情報;伝達行列情報;公称範囲情報;およびクロマサブサンプリング情報。フィールドのこのグループ化は、制限的ではなく例示的であることを意図されたものである。他の実施形態は、追加のフィールドを含めることができ、上で識別されたあるフィールドを省略することなどができる。ビデオ処理パイプラインは、イメージ情報の処理を容易にする手助けとしてカラー情報を使用する。例えば、カラー情報は、パイプライン内の機能コンポーネントがイメージ情報を変換しなければならない形を指定することができる。さらに、既知のシステムと非常に対照的に、ビデオパイプラインに、パイプラインを介してCIデータ構造体を渡す機能性が含まれ、その結果、パイプライン内の下流コンポーネントが、CIデータ構造体から情報を引き出せるようになる。この備えによって、ビデオパイプラインが、イメージ情報の性質に関する誤った推測を行う可能性が減り、その結果、この備えが、表示されるイメージの品質を改善する潜在能力を有する。もう1つの例示的な特徴によれば、パイプライン内のコンポーネントに、イメージ情報を独立に解釈する機能性を含めることができる。コンポーネントが、カラーフォーマッティングの以前には指定されなかったカラー関連の態様を信頼性のある形で判定できる場合に、そのコンポーネントは、CIデータ構造体にこの情報を追加することができる。この補足カラー情報が、ビデオパイプラインの下流コンポーネントから使用可能になり、この下流コンポーネントが、新しい情報を追加することによってCIデータ構造を補足することができる。したがって、カラー情報データ構造体は、パイプラインを通過し、イメージ情報に適用されるフォーマッティングの異なる特性を演繹できるパイプライン内のコンポーネントから情報を集める際に、より知識を与えるものになることができる。もう1つの例示的特徴によれば、カラー情報は、イメージ情報をコーディングするのに使用できる多数の可能なフォーマットに関する情報を伝えるレセプタクルを提供することを意図されている。したがって、CIデータ構造体は、ビデオパイプラインがあらゆる種類のイメージ情報を受け入れることを可能にし、CIデータ構造体によって伝えられるカラー情報を解釈することによってそれを正しく処理できるようにする、ある種の汎用インターフェースとみなすことができる。もう1つの例示的特徴によれば、CIデータ構造体は、特定の効率的な方式を使用して、異なるフォーマット標準規格に関する非常に様々な情報を少数のビットの情報にパックすることができる。1つの例示的な事例で、このデータ構造体は、非常に様々なカラー情報を少数のワード例えば、16ビット構造体、24ビット構造体などにパックする。もう1つの例示的特徴によれば、システムは、ビデオパイプラインで使用される1つまたは複数の既存のデータ構造体で提供される未使用フィールドを使用することによって、CIデータ構造体を伝えることができる。これによって、そのような既存のデータ構造体を使用するシステムが、システムの高価で複雑な再ツーリングなしで、カラー情報を利用できるようになる。さらに、これらのシステムが、CIデータ構造体を処理するように構成されていないが、そのようなシステムに供給される入力情報にCIデータ構造体が存在する場合に、これらのシステムは、システムを破壊せずに、CIデータ構造体を安全に無視することができる。もう1つの例示的な特徴によれば、ルマ関連色空間内のインターレース式イメージ情報例えば、Y’Cb’Cr’を、線形プログレッシブRGB色空間に変換することができる。その後、様々な処理再スケーリングなどを、線形/プログレッシブRGB色空間内でそのイメージ情報に対して実行することができる。その後、イメージ情報を、出力例えば、テレビジョンでの表示のために、ルマ関連色空間例えば、Y’Pb’Pr’に変換することができる。線形/プログレッシブRGB空間でのルマ関連情報の処理104は、上で要約した形での処理のために中間線形RGB色空間へのイメージ情報の変換104を行わない他の手法からはずれる。他の特徴および付随する利益を、次の詳細な仕様書で詳細に説明する。用語法に関して、用語イメージ情報は、なんらかの視覚的な形でユーザが消費できるすべての種類の情報を含むことが意図されている。イメージ情報は、アナログフォーマット、デジタルフォーマット、またはアナログフォーマットとデジタルフォーマットの組合せなど、すべてのフォーマットで表現された情報を表すことができる。イメージ情報は、静止画像情報例えば、デジタル写真および/または動く情報例えば、ビデオ情報を表すことができる。さらなる変形が、用語イメージ情報の使用によって企図されている。用語カラー情報は、イメージ情報のカラー内容を記述するすべての情報を表す。例えば、イメージ情報が、指定されたフォーマットのカラー内容を表す場合に、そのカラー情報は、そのフォーマットに関する情報を伝えることができる。用語カラー情報データ構造体CIデータ構造体は、カラー情報がビデオパイプライン内でコーディングされ、伝えられる形を指す。用語ビデオパイプラインは、イメージ情報を処理するすべての機能性を指す。パイプラインに、連続した形ですなわち次々にイメージ情報を操作する少なくとも2つの機能コンポーネントが含まれる。この開示に、次のセクションが含まれる。セクションAでは、例示的なカラー情報データ構造体と、ビデオパイプライン内でそれが使用される形の概要を説明する。セクションBでは、セクションAのビデオパイプライン内で実行できる例示的な変換動作を説明する。セクションCでは、セクションAで定義されたカラー情報データ構造体の例示的な構成を説明する。セクションDでは、セクションA~Cで示した原理を実施するビデオパイプラインの1特定の例示的な実施形態を説明する。セクションEでは、セクションA~Dで説明した特徴の諸態様を実施する例示的なコンピュータ環境を説明する。一般に、この主題の構造的態様に関して、本明細書に記載の機能のすべてを、ソフトウェア、ファームウェア例えば、固定された論理回路、手動処理、またはこれらの実施形態の組合せを使用して実施することができる。本明細書で使用される用語モジュール、機能性、および論理は、一般に、ソフトウェア、ファームウェア、またはソフトウェアとファームウェアの組合せを指す。ソフトウェア実施形態の場合に、用語モジュール、機能性、または論理は、1つまたは複数の処理デバイス例えば、1つまたは複数のCPUで実行される時に特定のタスクを実行するプログラムコードを表す。このプログラムコードは、1つまたは複数の固定されたおよび/または取外し可能のコンピュータ可読メモリデバイスにストアすることができる。この主題の手続き態様に関して、ある動作を、ある順序で実行される、別個の構成ステップとして説明する。そのような実施形態は、例示的であり、非制限的である。本明細書に記載のあるステップを、一緒にグループ化し、単一の動作で実行することができ、またあるステップを、この開示で示される例で使用される順序と異なる順序で実行することができる。A.例示的なカラー情報CIデータ構造体およびその適用の概要図2に、カラー情報CIデータ構造体202を使用するビデオ処理パイプライン200の例示的な概要を示す。CIデータ構造体202に、イメージ情報204内で色を表すのに使用されるフォーマッティングを記述する情報および/またはイメージ情報204が後にパイプライン200によってどのように処理されなければならないかを記述する情報が含まれる。CIデータ構造体202は、多数の異なるカラーコーディングフォーマットに関するカラー情報を受け取る均一なレセプタクルを提供する。CIデータ構造体202は、これによって、ある種類の汎用インターフェースを提供し、パイプライン200が異常のない形で成功裡に処理できるイメージ情報のタイプを拡張する。もう1つの有利な特徴によれば、このビデオパイプライン内のすべての機能コンポーネントが、CIデータ構造体202から引き出すことができ、潜在的に、これらのコンポーネントが演繹できるイメージ情報204に関する新しい情報によってCIデータ構造体202を補足することができる。ビデオパイプライン200自体に、入力ステージ206、処理ステージ208、および出力ステージ210を含む一連のステージが含まれる。入力ステージ206に関して、入力ソース212は、イメージ情報204のすべてのソースを表す。ソース212に、一般に、新たに取り込まれるイメージ情報例えば、カメラまたはスキャナによって取り込まれるまたは、例えば放送伝送を介して受け取られる例えば衛星送信またはケーブル送信など、あらゆる種類のネットワークを介して受け取られる例えばインターネットなどのTCP/IPデジタルネットワークなど、イメージ情報のローカルストレージを介して受け取られるビデオディスク、ローカルデータベースなどなど、なんらかのルートを介して入力ステージ206に提示される、前に取り込まれたイメージ情報を含めることができる。入力処理機能性214は、イメージ情報204に対するすべての種類の予備処理を実行するように構成され、この予備処理は、入力ソース212の性質に応じて異なる可能性がある例えば、イメージ情報204が新たに取り込まれるか、事前に取り込まれた情報のソースから入力されるかに応じて。前に取り込まれた/ストアされた情報を入力する場合に、処理に、受け取られた信号内のイメージ情報のオーディオ情報からの分離、イメージ情報の圧縮解除などを含めることができる。処理ステージ208に関して、処理機能性216は、ビデオ情報の複数のストリームのコンポジット信号へのミキシング、取り込まれたイメージ情報204に対する色空間変換の実行など、取り込まれたイメージ情報204に対するすべての種類の処理を実行するように構成される。出力ステージ210に関して、出力処理機能性218は、出力デバイス220への出力に備えた、イメージ情報204のすべての処理を実行するように構成される。出力デバイスは、テレビジョン、コンピュータモニタ、ストレージデバイスリモートとローカルの両方、すべてのネットワークアクセス可能ターゲット位置などを表すことができる。機能コンポーネント214、216、218のそれぞれを、帰するタスクを実行する単一の装置または直列もしくは並列の形で一緒に結合される複数の装置として物理的に実施することができる。1つの事例で、パイプライン200内のコンポーネントを、動的に構成される論理モジュール例えば、ソフトウェアモジュールに対応するものとすることができる。機能コンポーネント214、216、218のそれぞれに、CIデータ構造体202を処理するように構成されためいめいの機能性222、224、226が含まれる。この機能性222、224、226に、CIデータ構造体202の情報を読み取る論理、CIデータ構造体202の情報を解釈する論理、およびCIデータ構造体202の解釈された情報をイメージ情報204の処理に適用する論理を含めることができる。機能性222、224、226に、イメージ情報204で使用されるカラーフォーマッティングに関連する追加情報を演繹する論理と、この演繹された情報をCIデータ構造体202に供給して、CIデータ構造体202の前に未知であったフィールドを満たす論理も含めることができる。例えば、機能性222、224、226は、あるフォーマットが使用されていることを判定することができる。これに基づいて、機能性222、224、226は、標準規格があるコーディング特性を有することを例えば、所定のルックアップテーブルにアクセスすることによって演繹することができる。次に、機能性222、224、226は、この演繹された特性に関する情報を、CIデータ構造体202の、前に未知であったフィールドに書き込むことができる。具体的に言うと、一実施形態で、パイプライン200内のコンポーネントが、CIデータ構造体202の未知の値を、0などの指定された値に自動的にセットすることができる。この動作は、CIデータ構造体の初期化を構成する。後続コンポーネントは、0がセットされた値によって、CIデータ構造体内のある値の未知という性質について警告される。次に、これらのコンポーネントは、欠けている値を供給できる場合に、そうすることができる。矢印228は、一般に、機能性222、224、226が、CIデータ構造体202から情報を引き出せることを示す。矢印230は、一般に、機能性222、224、226が、CIデータ構造体202に追加できることを示す。図2に、機能コンポーネント214が、CIデータ構造体202と相互作用することが具体的に示されている。しかし、上で述べたように、この同一のCIデータ構造体202が、ビデオパイプライン200を介して渡され、その結果、他の機能コンポーネント214、216、218のどれもが、示された形でCIデータ構造体202と相互作用することができる。異なる機能コンポーネント214、216、218が、使用される処理ステージ206、208、210、特定のアプリケーションの詳細、処理されるカラーフォーマットなどの多数の要因に応じて、異なる形でCIデータ構造体202を処理することができる。例えば、ソース212および入力処理機能性214に関連する機能性222は、受け取られたイメージ情報104で使用されるフォーマッティング標準規格に関する情報を判定し、パイプライン200の下流コンポーネントによる使用のためにその情報をCIデータ構造体202に供給する、助けになる役割を実行することができる。一般的な規則として、新しい取り込みの場合に、取り込みデバイスは、通常、それが作るイメージ情報に適用されるフォーマッティングを暗黙のうちに知っている。その一方で、他のソースによって取り込まれたイメージ情報を受け取るデバイスは、受け取られたイメージ情報に関連するフォーマット関連情報を調べることによって、または論理的で信頼できる推測を行うことによって、イメージ情報に適用されたカラーフォーマッティングを判定できる場合がある。具体的な例を続ける。例えば、アナログ取り込みデバイスは、一般に、それに関してデータが取り込まれるビデオ標準規格および色空間を知っている。もう1つの例として、DVDナビゲータは、それがNTSC内容を有するDVDを解析しているという事実によって、それが扱っているイメージ情報204の色空間を知っている。もう1つの例として、MPEG-2エレメンタリビデオストリームを受け取る取り込みデバイスは、MPEG-2がそのシーケンス表示拡張ヘッダ内でカラー情報を明示的にリストするので、使用されているフォーマッティングのある特性を演繹することができ;例えば、このヘッダは、イメージ情報204に関連する原色、伝達関数、および伝達行列を示す。もう1つの例として、高品位HDデジタルチューナは、それが709色空間内のHDデータをストリーミングしていることを知っていなければならない、などである。これらの事例のすべてにおいて、機能性222は、パイプライン200の下流機能コンポーネントによる使用のために、使用されているカラーフォーマッティングに関して既に知っている情報をCIデータ構造体202に供給することができる。既知のシステムでは、この情報が、すぐに捨てられ、したがって失われた。パイプライン200内の色空間コンバータは、CIデータ構造体202を使用して、受け取られたイメージ情報204に対して正確な変換動作が実行されることを保証する。言い換えると、例えば、色空間コンバータは、CIデータ構造体202から収集された情報を使用して、それが適用する変換アルゴリズムを決定するか、そのアルゴリズムで使用されるセッティング/パラメータを決定することなどができる。パイプライン200内のミキサは、異なるタイプのイメージ情報を一緒にミキシングする目的のために働き、そのような情報は、潜在的に、異なるカラーフォーマットを使用して表現される。例えば、あるアプリケーションが、デジタル写真を、重畳されたグラフィカル情報と組み合わせることなどを求める場合がある。パイプライン200は、CIデータ構造体202で供給される拡張されたフォーマッティング情報を使用して、組み合わされる情報のすべてが共通のフォーマット例えば、共通の色空間を有することを保証することができる。この動作は、情報がミキサによって受け取られる前に、例えば上流コンポーネントパイプライン内でミキサに関してによって実行することができる。あるいは、この動作を、グラフィカル処理ハードウェアに割り当てることができる。グラフィカル処理ハードウェアに、例えばビデオ処理カードによって提供される図13に関して下で説明する、1つまたは複数のグラフィカル処理ユニットGPUを含めることができる。この場合に、組み合わされる情報に関連するCIデータ構造体202を、パイプラインを介してグラフィカル処理ハードウェアに渡すことができ、このグラフィカル処理ハードウェアは、そのCIデータ構造体202を使用して、イメージ情報を共通のフォーマットに変換することができ、その後、この情報を組み合わせることができる。この実施形態では、CIデータ構造体202によって提供される補足カラー情報によって、ビデオパイプライン内のドライバが、もはや、意図された色空間またはクロマ方式を推測する必要がなくなり、したがって、ドライバまたはグラフィックス処理ハードウェアが誤って推測し、悪い出力結果を作る可能性が減る。要約して、図2のブロックの一番下の行に、ビデオパイプライン200に適用されるCIデータ構造体202の使用の例示的な利益を要約する。ブロック232に、CIデータ構造体202が、パイプライン200を介して渡される均一な構造を有することを示す。ブロック234に、パイプライン200の各機能コンポーネント214、216、218が、CIデータ構造体202から情報を引き出すことができ、CIデータ構造体202の未知のフィールドの値を供給できることを示す。これは、既知のシステムと比較して、機能コンポーネント214、216、218が、イメージ情報204を処理するために実行する必要がある正当化されない推測の量を減らすかなくすことができることを意味する。ブロック236に、この戦略の最終的な結果が、カラー複製の改善された品質をもたらせることであることが示されている。すなわち、不正確な推測の一部を減らすことによって、ビデオパイプライン200が、イメージが低いコントラストを有する、不自然に見える色を有するイメージ、様々なひずみ動きのアーチファクト、クリッピングなどを有するイメージなど、様々な異常を有する出力情報を提供する可能性が低くなる。もう1つの利益によれば、セクションD下でさらに詳細に説明するように、ビデオパイプライン200は、既存のデータ構造を使用してCIデータ構造体202を伝えることができる。例えば、CIデータ構造体202は、パイプライン200を介して情報を伝送するのに使用される既存のデータ構造の未使用フィールド1つまたは複数に常駐することができる。フラグを設けて、未使用フィールドにCIデータ構造体202が含まれるか否かまたは、意味のない指定されない情報もしくは多分一連の0などのデフォルト情報が含まれるかどうかを知らせることができる。この備えは、少なくとも2つの利益を有する。第1に、事前に存在するサイズの事前に存在するフィールドの使用は、新しいCIデータ構造体202の使用に対処するために既存の機能コンポーネント214、216、218を完全に再エンジニアリングする必要がないことを意味する。さらに、CIデータ構造体202を理解するか解釈する能力を有しない可能性があるこれらの機能コンポーネント214、216、218は、この情報を処理する必要がない。言い換えると、CIデータ構造体202を理解しないコンポーネントは、単純に、それによって影響されない。それと同時に、カラー情報が提供される控え目な性質は、これらのコンポーネントがパイプライン200に沿ってカラー情報を自動的に渡すことを可能にする。言い換えると、カラー情報は、既存のデータフィールド内に存在するので、通常は失われない。これによって、カラー情報を使用するように構成されている可能性がある下流コンポーネントが、そのようなCI未対応上流コンポーネントから、変更されていないカラー情報を受け取ることが可能になる。上の議論では、イメージ情報204が、CIデータ構造体202内のカラー情報に基づいて、ディスプレイデバイスに即座に表示されると仮定した。しかし、CIデータ構造体202は、イメージ情報204に関連するカラー情報をパックする効率的な技法も提供し、したがって、イメージ情報204および関連するCIデータ構造体202をスペース効率のよい形でストアするイメージ情報204に適用されたフォーマッティングに関する大量の情報を保持しながらアーカイブ技法として使用することができる。具体的に言うと、イメージ情報204と共にCI情報202を自動的にストアするように、コンポーネントを構成することができる。イメージ情報204が、後に取り出される時に、CI情報202を含むめいめいのフィールドを、アンパックし、パイプライン200に渡すことができ、したがって、下流コンポーネントの利益のために、イメージ情報204のカラー構造に関する大量の情報が保存される。さらに、上の議論では、パイプライン200内のコンポーネントが、パイプラインの下流コンポーネントだけの利益のために、欠けている色情報を供給できると仮定した。しかし、パイプライン内のコンポーネントは、後続のイメージ情報の処理で上流コンポーネントが使用するためにカラー情報を供給することができる。例えば、ビデオパイプラインが、未知のビデオソースからのムービーの処理および提示のタスクに適用されるケースを考慮されたい。パイプライン内の最初のコンポーネントの1つは、このビデオ情報に適用されたフォーマッティングのある特徴を判定できない場合があり、したがって、最初に、この情報を最適の形で処理することができない場合がある。しかし、パイプライン内の後のコンポーネントが、その後、未知のビデオソースによってビデオ情報に適用されたフォーマッティングを演繹することができる。これらの下流コンポーネントは、上流コンポーネントに、それが同一のソースから受け取る後続信号が指定されたフォーマッティングを有することを知らせるために上流コンポーネントと通信することができる。その後、上流コンポーネントは、よりエラーフリーの形でこのビデオ情報を処理することができる。さらに、用語下流は、必ずしも、システム内の動作の固定された順序を示さない。一般に、パイプラインを動的な形で作成して、異なる機能コンポーネントをつなぎ合わせることによってイメージ情報204に対する所望の動作を提供することができる。これに関して、カラー情報を、コンポーネントの間のネゴシエーションに使用されるメディアタイプデータ構造体で提供することができる。パイプラインが、まず出力端から作られる場合に、カラー情報は、コンポーネントが接続される時に逆方向に流れる。図3に、図2のパイプライン200の動作を流れ図の形で示す。ステップ302に、まず、1つまたは複数のソース212からイメージ情報204を取り込む/入力することが含まれる。ステップ304に、パイプライン200の適当な機能コンポーネント214、216、218によって、CIデータ構造体202から収集されたカラー情報に従ってイメージ情報204を処理することが含まれる。ステップ306に、任意選択として、パイプライン200の適当な機能コンポーネント214、216、218によって演繹されたカラー情報を、ビデオパイプライン200の下流コンポーネントによる使用のためにCIデータ構造体202に供給することが含まれる。例えば、ステップ304および306は、この流れ図によって定義されるループの最初の反復で、入力ステージ206によって実行される処理に対応する。ステップ308で、ステップ304および306を、ビデオパイプライン200の次の機能コンポーネント214、216、218について繰り返さなければならないかどうかを判定する。図3の処理は、CIデータ構造体202に基づく出力デバイス例えば、テレビジョン、コンピュータモニタ、アーカイブデバイス、ネットワーク宛先位置などへのイメージ情報204の最終的な出力で終了する。B.例示的な変換動作図4に、図2のビデオパイプライン200を使用してまたは別の種類のパイプラインのコンテキストで、イメージ情報204を変換する変換動作400を示す。したがって、図4では、ビデオパイプライン内のカラー情報202の使用がさらに展開されている。図4に示された他の特徴は、カラー情報202を使用しない場合であっても、ビデオ処理技術の進歩を示す。すなわち、概要として、図4に、ルマ関連色空間例えば、Y’Cb’Cr’で表されたイメージ情報の線形プログレッシブRGB空間への変換と、その後の線形プログレッシブRGBデータに対する処理の実行の技法が示されている。その後、この技法は、この情報をルマ関連空間例えば、Y’Pb’Pr’に変換して、出力デバイスルマ関連色空間のイメージ情報204を表示するテレビジョンデバイス、ストレージデバイスなどに出力することができる。線形/プログレッシブRGB色空間でのルマ関連情報204の処理は、上で要約した形での処理のために中間線形RGB色空間へのイメージ情報204の変換を行わない他の手法からはずれる。線形RGB処理は、複数の理由から有利である。例えば、線形RGB処理では、非線形RGB色空間または非線形YUV色空間のイメージ情報の処理によって引き起こされる可能性がある明るさおよび色のシフトのアーチファクトが除去される。図4の変換動作400に、上で述べた変換ステップを記述した例示的な一連のブロックが含まれる。具体的に言うと、この図のブロックの上の行は、処理のための、Y’Cb’Cr’イメージ情報の指定された色空間への変換を示す。ブロックの下の行は、処理されたデータのY’Pb’Prデータへの変換を示すY’Pb’Prは、Y’Cb’Cr’のアナログ対応物を定義することができる。上の行に関して、ブロック402は、Y’Cb’Cr’4:2:0イメージ情報が受け取られ、Y’Cb’Cr’4:4:4イメージ情報にアップスケーリングされることを示す。4:2:0表記は、クロマ情報Cb’Cr’が、ルマ情報Y’に関してサブサンプリングされていることを示す。図4でブロック402の上に示された代表的サンプルは、異なるコーディング戦略が、異なるめいめいの形でルマサンプルに関してクロマサンプルを置くことができることを示す。アップサンプリング動作は、クロマ情報を補間して、ルマ情報と同一の量のクロマ情報を作る例えば、入力イメージ情報の4:4:4:表現を提供する。ブロック404は、Y’Cb’Cr’4:4:4イメージ情報に行列変換を適用して、これを別の色空間、すなわちR’G’B’色空間に変換する。ブロック406は、伝達行列を適用することによって、非線形R’G’B’イメージ情報を線形形式に変換する。上で注記したように、R’G’B’イメージ情報に関連するアクセント記号’は、それが非線形形式であることを示し、アクセント記号がないこと例えば、RGBは、通常は、線形データを表す参照される信号が非線形情報を表すことが普通に理解される場合にアクセント記号を除去することも一般的であることを除く。図4のブロック406の上に示されたモデル伝達関数は、使用される関数の一般的な形状を示し、これは、CRT図示せずに固有の伝達関数の一般的な形状でもある。このモデル伝達関数は、その曲線のV=0部分の近くで線形テールを使用できることも示している。ブロック408では、任意選択として、イメージ再スケーリング動作を正しく実行するために、インターレース形式からプログレッシブ形式に変換するために内容のデインターレースを実行する。ブロック410では、任意選択として、別の色空間で表すために、線形RGB情報の原色を変換する。この変換には、ビデオ処理パイプラインの下流コンポーネントで実行される処理にどのような原色が望まれる場合でも、その原色に対応するように原色を変更するためにRGB情報に行列変換を適用することを含めることができる。一例で、ブロック410に、イメージ情報をあるRGB関連色空間から別のRGB関連色空間例えば、scRGBに変換することを含めることができる。ブロック412は、一般に、変換された色空間を有するイメージ情報のすべての種類の処理を表す。これは、例えば、線形プログレッシブRGB関連色空間のイメージ情報に対する処理の実行を構成することができる。図4の下の行は、一般に、上の行の上で説明した動作を逆転したものである。すなわち、ブロック412での処理の後に、ブロック414で、任意選択として、RGB色空間に戻すなど、イメージ情報を別の色空間に変換する。ブロック416で、インターレース形式でのストアまたは表示が必要な場合に、内容の動作再インターレースを適用する。ブロック418で、伝達関数を適用して、RGBイメージ情報をもう一度非線形形式R’G’B’に変換する。ブロック420で、R’G’B’イメージ情報の色空間を、そのルマ成分Y’をそのクロマ成分Pb’Pr’から分離するフォーマットに変更する。最後に、ブロック422で、任意選択として、Y’Pb’Pr’イメージ情報をサブサンプリングして、ルマサンプルY’の量に対してクロマサンプルPb’Pr’の量を減らす。すなわち、このブロック422は、Y’Pb’Pr’4:4:4イメージ情報ルマサンプルごとにクロマサンプルがあるをY’Pb’Pr’4:2:0イメージ情報ルマサンプルより少数のクロマサンプルがあるに変換することができる。CIデータ構造体202は、処理ブロックのそれぞれがイメージ情報204を処理する形に関する指示を提供することによって、図4のコンテキストで役割を演じることができる。例えばパイプラインがルマ関連色空間からRGB関連色空間に変換する形などを指定するカラー情報を供給することができる。C.カラー情報データ構造体の例示的な構成図5に、図2で導入されたCIデータ構造体202の1つの例示的な実施形態を示す。CIデータ構造体202に、潜在的にイメージ情報204に適用できるコーディング標準規格の様々な態様を定義する複数のフィールドが含まれる。図5に示されたフィールドは、CIデータ構造体202にパックできる情報のタイプに関する制限ではなく、その代表である。他の実施形態では、図5に示されたあるフィールドを省略することができ、または図5に示されていない他のフィールドを追加することができる。このセクションでは、図5に示されたフィールドの全般的な概要を提供し、その後、CIデータ構造体202の1つの例示的な実施形態の詳細な説明を続ける。まず、最初のフィールド502は、伝達関数情報を定義する。この情報は、非線形R’G’B’イメージ情報204を線形RGB情報におよび/またはその逆にどのように変換するかを定義するのに使用される。第2のフィールド504は、イメージ情報204のエンコードに使用される原色を定義する。例えば、このフィールド504は、RGBイメージ情報204に関連するRGB応答関数を指定することができる。第3のフィールド506は、イメージ情報204にどのビデオライティング仮定が適用されるかを定義する。例えば、このフィールド506は、イメージ情報204が、薄暗く照明された家庭環境家庭内のテレビジョンでのプレゼンテーションについて意図される情報について通常はそうであるではなく、明るいオフィス環境コンピュータモニタでのプレゼンテーションについて意図される情報について通常はそうであるでのプレゼンテーションのためにコーディングされたかどうかを指定することができる。第4のフィールド508は、イメージ情報204に適用可能な伝達行列を定義する。例えば、この行列は、Y’Cb’Cr’色空間とR’G’B’色空間の間で変換する方法などを定義することができる。第5のフィールド510は、イメージ情報204に関連する公称範囲情報を定義する。具体的に言うと、このフィールドは、イメージ情報204が、基準黒レベル未満の指定されたトウルームおよび/または基準白レベルを超える指定されたヘッドルームを提供するかどうかを定義する。最後に、第6のフィールド512は、クロマ情報が、ルマ情報に関してどのようにサンプリングされ、位置付けられるかを定義するクロマサブサンプリング情報を定義する。異なるコーディング方式を使用して、図5に示された6つのフィールドを表すことができる。1つの例示的で非制限的な手法によれば、ビットのコレクションが、CIデータ構造体202を表すために割り当てられる。このビットのコレクションは、事前定義のフィールドまたはカラー情報を受け取るスロットを有する指定されたデータ構造体に配置される。1つの例示的な事例で、CIデータ構造体202を表すために、16ビットを割り当てることができる。もう1つの例示的な事例で、CIデータ構造体202を表すために、24ビットを割り当てることができる。他の実施形態は、16ビット未満のサイズおよび24ビット超のサイズなどを含む、さらに異なるCIデータ構造体サイズを提供する。24ビットが使用される、例示的で非制限的な事例で、フィールド502~512を、次のように編成することができる。第1のenum値の整数列挙VideoTransferFunctionを使用して、第1フィールド502を表すことができ、これに5ビットを割り当てることができ、したがって、24ビットのCIデータ構造体202のビット23~19を占めることができる。第2のenumVideoPrimariesを使用して、第2フィールド504を表すことができ、これに5ビットを割り当てることができ、したがって、CIデータ構造体202のビット18~14を占めることができる。第3のenumVideoLightingを使用して、第3フィールド506を表すことができ、これに4ビットを割り当てることができ、したがって、CIデータ構造体202のビット13~10を占めることができる。第4のenumTransferMatrixを使用して、第4フィールド508を表すことができ、これに3ビットを割り当てることができ、したがって、CIデータ構造体202のビット9~7を占めることができる。第5のenumNominalRangeを使用して、第5フィールド512を表すことができ、これに3ビットを割り当てることができ、したがって、CIデータ構造体202のビット6~4を占めることができる。最後に、第6のenumVideoChromaSubsamplingを使用して、第6フィールド512を表すことができ、これに4ビットを割り当てることができ、したがって、CIデータ構造体202のビット3~0を占めることができる。このセクションの残りの部分では、上で説明した6つのenumの1つの例示的な実施形態に関する追加の詳細を提供する。提供される詳細は、制限的ではなく例示であり、異なる構文を有する他のデータ構造を使用することができる。DXVA_VideoTransferFunctionDXVA_VideoTransferFunctionenumは、非線形R’G’B’から線形RGBへの変換関数を示す。これは、おおむね、イメージデータのガンマ関数に対応する。一部の伝達関数は、8ビット整数量子化効果を考慮するための訂正を有する。1つの例示的な実施形態では、5ビットを使用してこのenumを表すことができる例えば、24ビットのCIデータ構造体202のビット23~19。DXVA_VideoTransferFunctionenumの例示的な構文は、次のように指定される。このenumの最初のメンバは、このフィールドが未知であることを示す。計算を進めるのに必要な場合に、このフィールドに事前定義の値をセットすることができる。10の接尾辞によって表されるメンバは、ガンマ=1.0を有する線形RGBを識別する。18、20、22、28の接尾辞によって表されるメンバは、例えば、L=0...1に関するL’=powL,1/gammaなど、真の1.8、2.0、2.2、および2.8のガンマを表す。標準規格BT470-2SysMで、ガンマ2.2が使用される。22_709の接尾辞によって表されるメンバは、BT1361、BT709、SMPTE296M、SMPTE170M、BT470、SMPTE274Mなどによって定義されるフォーマットに適当な、低い範囲で線形の範囲を有するガンマ2.2曲線に関する。接尾辞22_204Mによって表されるメンバは、SMPTE240M、interim274Mなどに適当な、低い範囲で線形の範囲を有するガンマ2.2曲線に関する。接尾辞22_8bit_sRGBによって表されるメンバは、正確な2.2ガンマ8ビット曲線に一致することができる、低い範囲で線形の範囲を有するガンマ2.4曲線に関する。図6に、DXVA_VideoTransferFunctionenumに適当なさらなる例示的な詳細を示す。DXVA_VideoPrimariesDXVA_VideoPrimariesenumは、原色をリストし、この原色は、どのRGB基礎関数がイメージ情報204で使用されるかを識別する。1つの例示的な実施形態で、5ビットを使用して、このenumを表すことができる例えば、24ビットのCIデータ構造体202のビット18~14。DXVA_VideoPrimariesenumの例示的な構文は、次のように指定される。このenumの最初のメンバは、このフィールドが未知であることを示す。計算を進めるのに必要な場合に、このフィールドに事前定義の値をセットすることができる例えば、デフォルト値に、標準規格BT709で指定される原色をセットすることができる。接尾辞BT709を有するメンバは、BT709標準規格に関連する原色を定義するこれは、標準規格sRGB、scRGBなどにも適用可能である。接尾辞BT470_2_SysMを有するメンバは、オリジナルのNTSC原色を定義する。BT601、BT470_2_SysBG、SMPTE240M、およびEBU3213の接尾辞を有するメンバは、これらの標準規格に関連する様々なめいめいの原色を定義する。接尾辞SMPTE170Mを有するメンバは、アナログNTSC原色を定義するこれは現在、あまり使用されていない。接尾辞SMPTE_Cを有するメンバは、アナログ’79NTSC原色を定義する。図7は、DXVA_VideoPrimariesenumに適当なさらなる例示的な詳細を提供する。DXVA_VideoLightingDXVA_VideoLightingenumは、所期のビューイングライティング条件を記述する。この情報は、異なるライティング条件で匹敵する経験を生成するためにガンマを変更するのにも使用することができる。1つの例示的な実施形態で、4ビットを使用して、このenumを表すことができる例えば、24ビットのCIデータ構造体202のビット13~10。DXVA_VideoLightingenumの例示的な構文は、次のように指定される。このenumの最初のメンバは、このフィールドが未知であることを示す。計算を進めるのに必要な場合に、このフィールドに事前定義の値をセットすることができる例えば、デフォルト値を、薄暗いビューイング条件が意図されたことを前提とするようにセットすることができる。接尾辞brightを有するメンバは、戸外のライティング条件に対応することができる。接尾辞officeを有するメンバは、ホームオフィス条件に関連する中程度の明るさのレベルに対応することができる。接尾辞dimを有するメンバは、薄暗く照明されたビューイング条件に関連する薄暗い明るさのレベルに対応することができる。接尾辞darkを有するメンバは、映画館のビューイング条件に関連する暗い明るさのレベルに対応することができる。DXVA_VideoTransferMatrixDXVA_VideoTransferMatrixenumは、イメージ情報204をY’Cb’Cr’色空間からスタジオR’G’B’色空間に変換するのに使用される変換行列を記述する。1つの例示的な実施形態で、3ビットを使用して、このenumを表すことができる例えば、24ビットのCIデータ構造体202のビット9~7。DXVA_VideoTransferMatrixenumの例示的な構文は、次のように指定される。このenumの最初のメンバは、このフィールドが未知であることを示す。計算を進めるのに必要な場合に、このフィールドに事前定義の値をセットすることができる例えば、デフォルト値に、標準品位イメージ情報204の標準規格BT601、および高品位イメージ情報204の標準規格BT709で使用される伝達行列をセットすることができる。接尾辞BT709を有するメンバは、BT709標準規格で使用される伝達行列を定義する。接尾辞BT601を有するメンバは、BT601標準規格で使用される伝達行列を定義する。接尾辞SMPTE204Mを有するメンバは、SMPTE204M標準規格で使用される伝達行列を定義するこれは、現在は一般的に使用されていない高品位標準規格である。図8および9は、DXVA_VideoTransferMatrixenumに適当なさらなる例示的な詳細を提供する。DXVA_NominalRangeDXVA_NominalRangeenumは、データにヘッドルーム基準1.0白を超える値およびトウルーム基準0.0黒未満のスーパーブラックが含まれるかどうかを記述する。例えば、イメージ情報204の正しい解釈を保証するために、広い色域R’G’B’黒点16、16、16、白点235、235、235と通常のsRGBを区別することが有用である。1つの例示的な実施形態で、3ビットを使用して、このenumを表すことができる例えば、24ビットのCIデータ構造体202のビット6~4。DXVA_NominalRangeenumの例示的な構文は、次のように指定される。このenumの最初のメンバは、このフィールドが未知であることを示す。計算を進めるのに必要な場合に、このフィールドに事前定義の値をセットすることができる。接尾辞Normalを有するメンバは、0...2558ビットまたは0...102310ビットのイメージ情報204に写像される正規化されたクロマ[0...1]を定義する。接尾辞Wideを有するメンバは、16...2358ビットまたは64...94010ビットに写像される正規化されたクロマ[0...1]を定義する。DXVA_VideoChromaSubsamplingDXVA_VideoChromaSubsamplingenumは、Y’Cb’Cr’データに適用されるクロマエンコーディング方式を記述する。コサイト変動は、クロマサンプルがルマサンプルとアラインされることを示す。4:2:0データは、通常、1つまたは複数の方向でルマデータにアラインされたクロマを有する。4:4:4、4:2:2、および4:1:1データは、両方の方向でコサイトされている。1つの例示的な実施形態で、3ビットを使用して、このenumを表すことができる例えば、24ビットのCIデータ構造体202のビット3~0。DXVA_VideoChromaSubsamplingenumの例示的な構文は、次のように指定される。このenumの最初のメンバは、このフィールドが未知であることを示す。計算を進めるのに必要な場合に、このフィールドに事前定義の値をセットすることができる。接尾辞ProgressiveChromaを有するメンバは、一時的にプログレッシブ内容と解釈されるクロマサンプルを定義する例えば、2つの時間的にオフセットしたフィールドからではなく、同一のフレームから。接尾辞Horizontally_Cositedを有するメンバは、複数のルマサンプルに対して水平にアラインされるクロマサンプルを定義する。接尾辞Vertically_Cositedを有するメンバは、複数のルマサンプルに対して垂直にアラインされるクロマサンプルを定義する。接尾辞AlignedChromaPlanesを有するメンバは、同一の位相アライメントを有するものとしてPbおよびPrまたはCbおよびCrプレインを定義する。データが垂直にコサイトされている場合に、このフラグは0になる。図10~12は、DXVA_VideoChromaSubsamplingenumに適当なさらなる例示的な詳細を提供する。すなわち、これらの図は、通常のY’Cb’Cr’イメージ情報204でのルマサンプルに対するクロマサンプルの位置の要約を提供する。D.カラー情報データ構造体の1つの例示的な応用例前の節で説明したコーディング戦略の多数の応用例がある。図13~16に、DeinterlaceBltExと称するアプリケーションプログラミングインターフェースAPIを使用する1つの例示的な応用例を示す。概要として、DeinterlaceBltEx機能性は、合成動作をデインターレース動作と一緒に実行するなど、複数の動作を単一の動作として一緒に実行できるようにする論理を提供する。合成動作は、主イメージストリーム情報とイメージサブストリーム情報の組合せを指す。イメージストリーム情報は、イメージフレームの主シーケンスを指す。イメージサブストリーム情報は、主イメージストリーム情報のイメージストリームと共に提示できる補助イメージ情報を指す。1つの例で、イメージサブストリーム情報は、クローズキャプションデータに対応するものとすることができる。クローズキャプショニング情報が、主イメージストリーム情報と組み合わされて、表示用の合成イメージ情報が形成される。デインターレース動作は、インターレース動作で作成された連続するイメージフィールドを組み合わせて、イメージフレームのプログレッシブノンインターレース表現を提供する技法を指す。DeinterlaceBltEx機能性は、他の種類の動作を同時に実行することも可能にするその代わりに、いわゆるDeinterlaceBlt機能性を使用することができ、これは、上で識別された動作を連続して実行するように構成されている。1つの例示的な実施形態で、DeinterlaceBltEx機能性は、CIデータ構造体202を伝えるのに使用できる未使用部分または部分的に未使用の部分を有するデータ構造を提供する。すなわち、1つの例示的で比制限的な実施形態で、この部分が、32ビットワードを定義することができる。このワードの24ビット部分を使用して、図5に示された情報の6つのフィールドを伝えることができる。既存構造体のもう1つの部分例えば、残りの8ビットを使用して、イメージ情報204がインターレースフォーマットとプログレッシブフォーマットのどちらでコーディングされているかなど、イメージ情報204の他の態様を伝えることができる。具体的に言うと、カラー情報は、DeinterlaceBltEx動作のコンテキストで複数の役割のために働くことができる。色空間処理の問題に関して、CIデータ構造体202で指定されるカラー情報は、aどの色空間変換ある場合にを、DeinterlaceBltEx機能性に供給される入力イメージ情報に対して実行しなければならないか、bイメージ情報に対して様々な処理タスクを実行するためにどの色空間を使用しなければならないか、およびc出力イメージ情報を供給するのにどの色空間を使用しなければならないか、などを指定することができる。これらのタスクのために選択できる可能な色空間に、すべての種類のRGB関連色空間、すべての種類のルマ関連色空間例えば、YUVなどを含めることができる。さらに、可能な色空間は、線形形式または非線形例えば、ガンマ補正された形式のいずれかとすることができる。例えば、あるシナリオで、イメージ情報の1つまたは複数のストリームを、ルマ関連色空間から線形RGB関連色空間に変換する。次に、線形RGB関連色空間のイメージ情報に対していくつかの動作を実行して、やはり線形RGB関連色空間内の出力を供給する。したがって、この一連の動作は、図4前に説明したに示された技法を実施することができる。もう1つのシナリオで、イメージ情報の1つまたは複数のストリームを、ルマ関連色空間で受け取り、処理して、やはりルマ関連色空間内の出力を供給することができる。もう1つのシナリオで、イメージ情報の1つまたは複数のストリームを、ある種類のRGB関連色空間から別の種類のRGB色空間に、またはある種類のルマ関連色空間から別の種類のルマ関連色空間に変換することができる。これらは、単に、DeinterlaceBltEx機能性によって使用可能にされる様々な処理オプションの例示的な例である。これらの事例のどれにおいても、CIデータ構造体202のカラー情報は、DeinterlaceBltEx機能性によって適用される色空間選択を決定する指示を提供することができる。さらに、DeinterlaceBltEx機能性の独自の機能を用いると、色空間変換を、イメージ情報に対して実行される他の動作デインターレースおよび合成などと同一の動作で実行できるようになる。例えば、イメージ情報を、デインターレースし、ビデオサブストリームと合成するのと同一の動作で、ルマ関連色空間からRGB関連色空間に変換することができる。その代わりに、イメージ情報に対して実行されるある動作を、連続して実行することもできる。例えば、下で完全に説明する1つの例で、デインターレースおよび合成を、YUV色空間内で単一の動作で実行し、これに、出力結果のRGB関連色空間への変換を続けることができる。最後の前置きのコメントとして、DinterlaceBltEx機能性は、異なる色空間で表された別々のイメージ情報ストリーム1つまたは複数の主ビデオストリームおよび/または1つまたは複数のビデオサブストリームなどに作用することができる。このイメージ情報ストリームは、それ自体のCIデータ構造体202を関連付けられることができる。このCIデータ構造体202に、別々のストリームに対して動作デインターレース、合成などを実行するために、別々のストリームを共通の色空間にどのように変換できるかを定義する情報を含めることができる。上の前置きに関して、図13に、図2に示されたビデオパイプライン200の諸態様を実施するのに使用できる例示的なシステム1300の概要を示す。システム1300は、米国ワシントン州レッドモンドのMicrosoft登録商標Corporation社が作るDirectX登録商標ファミリのテクノロジに頼ることができる。DirectXファミリには、DirectXVideoAccelerationDirectX-VA、Direct3D、DirectDrawなどが含まれる。しかし、上で説明した原理は、他の種類のテクニカルプラットフォームで動作する他の種類のレンダリングテクノロジを使用して実行することができる。システム1300は、パーソナルコンピュータ、ゲーム機Microsoft登録商標Corporation社のXbox商標ゲーム機など、または他の種類のデバイスを表すことができる。まず、システム1300は、複数のソースのうちの任意の1つからイメージ情報を受け入れる。例えば、装置1300は、ネットワーク1302インターネットに結合されたリモートソースなど、すべての種類のデータベース1304、すべての種類のコンピュータ可読ディスク媒体1306光ディスク、DVDなど、または他のソース1308図204に示されたソース212に関連するソースの任意の1つなどからイメージ情報を受け入れることができる。どの場合でも、受け取られた情報に、イメージ情報とオーディオ情報の組合せが含まれる場合がある。デマルチプレクサユニット1310が、オーディオ情報をイメージ情報から分離する。オーディオ処理機能性1312が、オーディオ情報を処理する。イメージデコーダ1314が、イメージ情報を処理する。イメージデコーダ1314は、圧縮されたイメージ情報を、その受け取られたフォーマットからある他のフォーマットに変換することができ、この情報に対する最初のサイズ変更動作または他の動作を実行することができる。イメージデコーダ1314の出力に、いわゆるピュアイメージ情報ならびにイメージサブストリーム情報を含めることができる。ピュアイメージ情報は、ディスプレイデバイスにレンダリングされる主イメージストリームを構成する。イメージサブストリーム情報は、クローズキャプショニング情報、すべての種類のグラフィカルオーバーレイ情報様々なグラフィカル編集コントロールなど、DVDプレイヤによって提示される様々な種類のサブイメージ、その他など、ピュアイメージ情報に関連するすべての補足情報を構成することができる。1つの例示的な実施形態で、ビデオミキシングレンダラVMRモジュール1316は、このように受け取られたイメージ情報の処理の中心的な役割を実行する。概要として、VMRモジュール1316は、グラフィックスインターフェース1318およびディスプレイドライバ1320と相互作用し、ディスプレイドライバ1320は、グラフィックスモジュール1322を制御する。下で詳細に説明するように、この相互作用に、グラフィックスモジュール1322の機能をプロービングすることが含まれる。この相互作用には、グラフィックスインターフェース1318、ディスプレイドライバ1320、およびグラフィックスモジュール1322によるイメージ情報の処理を調整することも含まれる。一実施形態で、グラフィックスインターフェース1318を、Microsoft登録商標Corporation社のDirectXによって提供されるDirectDraw機能性を使用して実施することができる。DirectDrawは、このコンテキストで、VMRモジュール1316をグラフィックスモジュール1322に通信的に結合するメッセージ導管として働く。グラフィックスモジュール1322自体は、コンピュータまたは類似するデバイス内の固定されたモジュールを構成するか、グラフィックスカードなどの取外し可能ユニットを構成することができる。VMRモジュール1316、グラフィックスインターフェース1318、ディスプレイドライバ1320、およびグラフィックスモジュール1322によって表される機能性の縦のチェーンは、ユーザモードとカーネルモードに分割することができる。ユーザモードは、様々なインターフェースを介してユーザが操作できるプログラミング機能性の態様を指す。カーネルモードは、ユーザが直接には操作できないプログラミング機能性の態様を表す。グラフィックスモジュール1322自体に、1つまたは複数のグラフィックス処理ユニットGPU1324が含まれる。GPU1324は、一般に、CPUに似た処理デバイスである。GPU1324は、一般に、実施する装置1300によって繰り返して実行される情報集中型レンダリングタスクに割り当てられる。これらの反復的タスクまたは情報集中型タスクをGPU1324に割り当てることによって、CPU図示せずが、他のタスクを実行するために解放され、したがって、装置1300の性能が改善される。この実施形態がGPU1324に割り当てる2つの例示的なタスクが、デインターレースおよびレート変換である。これらの機能は、デインターレース論理1326およびレートコンバータ論理1328によって表される。デインターレース論理1326は、イメージ情報の複数のフィールドを一緒に組み合わせて、イメージ情報のフレームを形成する。レートコンバータ論理1328は、イメージフレームのシーケンスのフレームレートを変更する。GPU1324は、多数の追加の処理タスクを実行することができる。GPU1324は、グラフィックスモジュール1322に関連するローカルメモリ1330と相互作用することができる。このローカルメモリ1330は、複数のストレージ関連目的のために働くことができる。例えば、このメモリ1330は、ディスプレイデバイス1332に転送される最終的なイメージサーフェスをストアすることができる。図13に、図2に関して説明したものに似た形で、図13に示された一連の機能コンポーネントに沿ってCIデータ構造体202を渡せることが示されている。すなわち、CIデータ構造体202は、システム1300によって定義されるパイプラインを介して渡される時に、均一な構造を有する。システム1300内の個々の機能コンポーネントは、CIデータ構造体202内のカラー情報を使用することができ、あるいは、潜在的に、下流機能コンポーネントの利益のためにCIデータ構造体202内のカラー情報を補足することができる。例えば、色空間処理の問題に関して、カラー情報は、aどの色空間変換ある場合にを実行しなければならないか例えば、YUVからRGB、およびこの変換をどのように実行できるか、bイメージ情報に対して様々な処理タスクを実行するのにどの色空間を使用しなければならないか、およびc出力イメージ情報を供給するのにどの色空間を使用しなければならないか、などを定義することができる。図13には、複数のCIデータ構造体202が、システム1300で実行される処理で役割を演じることが示されており、例えば、システム1300によって処理されるイメージ情報の各ストリームが、それ自体のデータ構造体202を関連付けられることができる。これらのCIデータ構造体202は、イメージ情報の異なるストリームの共通色空間への変換を調整することができる。CIデータ構造体202をDeinterlaceBltExフレームワークに統合できる例示的な形に関するさらなる詳細を、下に示す。まず、図14に、図13の装置1300の動作の概要1400を示す。ステップ1402で、VMRモジュール1316が、どの処理モードをサポートするかに関してディスプレイドライバ1320およびグラフィックスモジュール1322に照会する。応答を受け取った後に、ステップ1404で、VMRモジュール1316は、もう1つの質問を送って、ディスプレイドライバ1320および関連するグラフィックスモジュール1322の機能に関するより具体的な情報を見つける。ステップ1402および1404は、下で、見出し予備情報処理の下でより詳細に説明する。接続されたハードウェアおよび関連するインターフェースの機能を調査した後に、VMRモジュール1316は、イメージストリームオブジェクトをオープンしステップ1408で、その結果、イメージ情報および制御情報をハードウェアに転送できるようにする。その後、ステップ1408で、VMRモジュール1316は、ハードウェアによる1つまたは複数のイメージ処理機能の実行例えば、グラフィックスモジュール1322によるを調整する。そのような機能の1つが、デインターレースである。もう1つのそのような機能が、サブストリーム合成である。受け取った情報に応じて、デインターレースを、上で説明したように合成と組み合わせることができ、あるいは、いずれかの機能を、別々に実行することができる。例えば、プログレッシブイメージ情報を受け取った場合に、デインターレースを実行する必要はなく、この場合に、VMRモジュール1316は、単に、オブジェクトのサイズを変更し、イメージサブストリーム情報を追加するか、他の機能または機能の組合せを実行することができる。デインターレースおよび合成の他に、多数の他の機能が実施される。最後に、ステップ1410で、VMRモジュールが、ステップ1406でオープンしたイメージストリームをクローズする。このステップ1410は、ユーザによって与えられるコマンドに応答するものとするか、ストリームイメージ情報を使い果たしたことに応答するものとすることができる。次の議論で、上で参照した選択されたステップに関するより詳細な情報を提示する。初期化ステップ上で説明したステップ1402で、VMRモジュール1316は、入力イメージフォーマットに関してどの処理機能性をサポートするかをディスプレイドライバ1320に尋ねる。ディスプレイドライバ1320が応答する時に、VMRモジュール1316は、特定のモードに関するディスプレイドライバ1320の要件に関するより具体的な情報の要求を送る。ディスプレイドライバ1320は、情報構造体内で様々な情報を指定することによって応答する。そのような情報は、必要な順方向基準サンプルの個数、必要な逆方向基準サンプルの個数、出力フレームのフォーマットなどを識別する。この情報構造体には、デインターレースおよび合成の組合せのサポートがグラフィックスモジュール1322および関連するインターフェースによってサポートされるかどうかを示すフラグも含まれる。このフラグを、1つの例示的な実施形態で、DXVA_ImageProcess_Sub-streamsフラグと称する。さらに、組み合わされたデインターレースおよび合成を正しくサポートするために、グラフィックスモジュール1322ならびに関連するインターフェースおよびドライバは、デインターレースされるイメージフレームならびに供給されるイメージサブフレームの両方を独立にストレッチ水平におよび/または垂直にできなければならない。これが一実施形態で要求されるのは、主イメージとビデオサブストリームのピクセルアスペクト比が、異なり、性質において正方形でない場合があるからである。ディスプレイドライバ1320は、DXVA_VideoProcess_Sub-streamsフラグの他に、イメージをストレッチする能力を伝えるDXVA_VideoProcess_StretchXフラグおよびDXVA_VideoProcess_StretchYフラグを返すことによって、この機能性を処理する能力を通信することができる。さらに、DeinterlaceBltExDDIは、ソースサーフェスおよび宛先サーフェスのそれぞれに関する拡張カラー情報をサポートするソースサーフェスは、入力イメージ情報を定義し、宛先サーフェスまたはターゲットサーフェスは、DeinterlaceBltEx動作によって作られる出力イメージ情報を定義する。ディスプレイドライバ1320は、次のフラグなどの様々なカラー関連フラグを介して、この新しいカラー情報に関してそれが有するサポートのレベルを示すことができる。DXVA_VideoProcess_SubStreamsExtendedフラグのサポートは、ビデオ情報が、デインターレースされ、サブストリーム情報と合成され、宛先サーフェスに書き込まれる時に、システム1300が、ソースビデオ情報およびサブストリーム情報に対してカラー調整を実行できることを示す。DXVA_VideoProcess_YUV2RGBExtendedフラグのサポートは、イメージ情報のデインターレースされ合成されたピクセルが、ソースサーフェスおよび宛先サーフェスについて指定されたカラー情報を使用して宛先サーフェスに書き込まれる時に、システム1300が、色空間変換オプション例えば、YUVからRGBを実行できることを示す。DXVA_VideoProcess_AlphaBlendExtendedフラグのサポートは、イメージ情報のデインターレースされ合成されたピクセルが、宛先サーフェスに書き込まれる時に、システム1300が、宛先サーフェスとのアルファブレンド動作を実行できることを示す。デインターレースステップVMRモジュール1316は、上で説明したDeinterlaceBltEx機能性を使用して、グラフィックスモジュール1322によるデインターレースおよび合成の実行を調整する。具体的に言うと、このDeinterlaceBltEx機能性は、技術的に複数の基本的動作色空間変換、デインターレース、合成などを伴う場合であっても、ディスプレイドライバ1320への単一の呼び出しとして実施することができる。DeinterlaceBltEx機能性は、その動作の出力を指定された宛先サーフェスに書き込む。具体的に言うと、VMRモジュール1316は、次のデータ構造体をディスプレイドライバ1320に転送して、DeinterlaceBltEx機能性を実施する。この構造では、rtTargetFrameパラメータが、入力フレームのシーケンス内の出力フレームの時間的位置を識別する。デインターレースだけが実行されている場合に、ターゲット時刻は、基準サンプルのrtStart時刻、または中点時刻rtStartrtEnd/2のうちの1つと一致しなければならない。フレームレート変換が要求されている場合に、rtTargetFrame時刻は、基準サンプルのrtStartまたは中点時刻のいずれとも異なるものとすることができる。prcTargetRectパラメータは、DeinterlaceBltEx動作が書き込む、宛先サーフェス内の位置を識別する。一実施形態で、出力は、この長方形内のピクセルに制限されなければならない。すなわち、どのような形でも、prcTargetRect内のすべてのピクセルが書き込まれなければならず、prcTargetRectの外のピクセルが変更されてはならない。BackgroundColorパラメータは、すべてのビデオストリームおよびサブストリームがその上で合成される背景の色を識別する。DestinationFormatパラメータには、宛先サーフェスに関する拡張カラー情報が含まれる。DestinationFlagsパラメータには、DeinterlaceBltExへの前の呼び出しからの、宛先関連パラメータでの変更を示すフラグの集合が含まれる。これらのフラグは、背景色、拡張カラー情報、ターゲット長方形、またはプレーナアルファパラメータに対する変更を反映し、ドライバコードの最適化を助けるために提供される。宛先サーフェスは、ビデオメモリ例えばローカルメモリ1330に置かれたオフスクリーンプレーンサーフェスとすることができる。宛先サーフェスのピクセルフォーマットは、初期化ステップでVMRモジュール1316に返されたデータ構造体のd3dOutputFormatフィールドで示されるものとすることができる。1つの例示的な実施形態で、この構造体で指定される宛先サーフェスを、Y関連色空間例えば、YUVにあるものとすることができる。lpDDSrcSurfacesパラメータは、DXVA_VideoSample2構造体の配列をポイントする。この構造体のSampleFormatフィールドは、サンプルが、デインターレース動作の基準であるか、デインターレースされたビデオフレームと組み合わされる必要があるビデオサブストリームサンプルであるかを示す。ビデオサブストリームサンプルは、そのサンプルフォーマットに関するDXVA_SampleSub-stream値を有しなければならない。具体的に言うと、例示的なVideoSample2構造体は、下で識別される。サンプルがインターレースまたはプログレッシブのどちらであるかを示すことの他に、上で識別されたデータ構造体のSampleFormatフィールドは、CIデータ構造体202を表すことができる場所を定義する。CIデータ構造体202をSampleFormatフィールドに追加することは、VideoSample2データ構造体のサイズを増やさず、他の形でもDeinterlaceBltEx機能性の再エンジニアリングを必要としない。したがって、CIデータ構造体202をこのデータ構造体に押し込むことは、グラフィックスモジュール1322を含むビデオパイプラインを介してカラー情報を伝える特に効率的な形を表す。基準ビデオサンプルについて、rtStartフィールドおよびrtEndフィールドは、サンプルの時間的な位置を示す。ビデオサブストリームサンプルについて、これらのフィールドは、0にクリアされる。ソース長方形および宛先長方形は、サブレクタングルデインターレースまたはサブレクタングルストレッチングに使用される。ビデオサブストリームのストレッチングが、ビデオストリームと独立であることと、ストレッチングのサポートが、一実施形態で必須であることに留意されたい。パレット化されたビデオサブストリームピクセルフォーマットに関して、DXVA_VideoSample2構造体のPALフィールドに、サブストリームサンプルを合成する時に使用できる16個のパレットエントリが含まれる。非パレット化ピクセルフォーマットについて、これらのパレットは、0にクリアされ、無視することができる。各入力サンプルに、前のサンプルからの現在のサンプルでの変更を示すフラグの集合が含まれる。これらのフラグは、各サンプルのパレット、カラー情報、ソース長方形、および宛先長方形に対する変更を反映し、ドライバコードの最適化を助けるために提供される。DeinterlaceBltEx構造体の説明を続けると、dwNumSurfacesパラメータは、lpDDSrcSurface配列の要素数を示す。ビデオ基準サンプルは、配列の先頭であり、これに、ビデオサブストリームがZ順で続く。1つの例示的な実施形態では、ドライバに渡されるビデオサブストリームの数が、0から15までの範囲になる可能性がある。最もしばしば、DeinterlaceBltExが呼び出される時に、ドライバに、0個または1個のビデオサブストリームが渡される。最後に、Alphaパラメータは、宛先サーフェスに書き込まれる時に、合成背景色、ビデオストリーム、およびサブストリームイメージに適用できるプレーナ透明度値を示す。プログレッシブビデオおよび複数のイメージサブストリームが受け取られた時に、VMRモジュール1316がDeinterlaceBltEx機能性を呼び出すことができることに留意されたい。これは、例えば、VMRモジュール1316が、プログレッシブビデオとインターレース式ビデオの混合を含むDVD再生に使用される時に発生し得る。この場合に、ディスプレイドライバ1320は、ビデオストリームのデインターレースを試みずすでにプログレッシブフォーマットなので、VMRモジュール1316は、そのビデオストリームを所与のサブストリームと組み合わせ、望み通りにまたは必要に応じて各ストリームのサイズを変更するように構成することができる複数の基準サンプルを必要とするデインターレースモードが、プログレッシブビデオと共に使用されている場合には、複数の基準サンプルが、ディスプレイドライバ1320に送られるが、各基準サンプルは、同一のプログレッシブビデオフレームを参照する。DeinterlaceBltEx機能性の議論のしめくくりに、図15および16で、この機能性が、合成動作およびデインターレース動作を一緒に1つの動作に組み合わせる形を説明する。図15は、1つの例示的で非制限的なシナリオによる、図13のシステム1300によって提供できるある動作の概要である。この図には、圧縮されたイメージ情報1502をイメージデコーダ1504に供給して、CI情報と共に非圧縮イメージ情報の現在のフレームを作ることができることが示されている。さらに、非圧縮イメージ情報1506の現在のフレームおよびCI情報が、非圧縮イメージの1つまたは複数の前のサンプル例えば、前の非圧縮イメージ1510および1512と共に、デインターレース論理1508に送られる。図15の論理1508は、デインターレース中のイメージ情報にイメージサブストリーム情報例えば、サブストリーム情報1514、1516などからを追加するようにも機能する。言い換えると、論理1508は、デインターレース動作をサブストリーム合成動作と効果的に組み合わせる。さらに、下で詳細に説明するように、論理1508は、この2つの機能を、複数のパスではなく単一のメモリ読み取り/書き込み動作で実行できるように、この2つの機能を実行する。すなわち、図15のシステム1500は、単一のストレージ例えば、単一のメモリ読み取り/書き込みトランザクションだけを必要とするすなわち、1つの例示的な事例で、メモリからの単一の読み取りだけを必要とする。上で説明した帯域幅効率は、イメージ情報例えば、イメージ情報1506、1510および1512などおよびイメージサブストリーム情報例えば、1514、1516などを、GPUモジュール1322によって使用される異なるめいめいのテクスチャリングユニットに割り当てることによって達成することができる。最も一般的な応用例で、テクスチャリングユニットに、3次元レンダリング適用の過程で操作されるイメージサーフェスが割り当てられる。例えば、テクスチャは、一般に、レンダリングされる3次元シーンの一部を形成するジオメトリプリミティブ例えば、三角形のサーフェスに貼り付けられるイメージを指す。これらの異なるテクスチャサーフェスが、異なるいわゆるテクスチャリングユニットに割り当てられる。図15に示されたシステムは、イメージ情報例えば、1506、1510および1512などおよびイメージサブストリーム情報1514、1516などをめいめいのテクスチャリングユニットに割り当て、したがって、デインターレース動作および合成動作の類似する効率的なパフォーマンスを達成する。具体的に言うと、GPU論理は、本質的に、互い違いのシリアルな形ではなく、テクスチャリングユニットのコレクションのそれぞれから同時に情報を読み取り、処理する。これによって、実施するデバイスでのバス輻輳が減り、実施するデバイスが、イメージ情報および関連するイメージサブストリーム情報を最適のフレームレートで提示することがよりよく可能になる。他の実施形態で、論理1508は、色空間変換など、他の動作を実行することができる。例えば、論理1508は、イメージ情報の1つまたは複数のストリームをルマ関連色空間例えば、YUVからRGB関連色空間例えば、線形RGBまたは非線形RGBに変換することができる。その代わりに、論理1508は、ある種類のルマ関連色空間から別の種類のルマ関連色空間へ、またはある種類のRGB関連色空間から別の種類のRGB関連色区間へなどの変換を行うことができる。1つの例示的なシナリオでは、論理1508を使用して、図4上に示された特徴の諸態様を実施することができ、ここで、イメージ情報が、ルマ関連色空間から線形RGBに変換され、その後、処理が、線形RGB色空間内でイメージ情報に対して実行されるデインターレースと、その後のまたはそれと結合された、線形RGB色空間での他の処理。言い換えると、論理1508の出力サーフェスは、RGB関連色空間線形RGBなどで表すことができる。もう1つのシナリオでは、論理1508の出力が、ルマ関連色空間例えば、YUV内でイメージ情報を処理して、RGB色空間ではなく、ルマ関連色空間の合成されデインターレースされたイメージ情報1518を作ることができる。論理1508または他のモジュール図示せずは、その後、ルマ関連カラー情報をRGB関連情報に変換することができ、次に、このRGB関連情報をディスプレイにレンダリングして、レンダリングされたイメージ情報1520を作ることができる。ルマ関連色空間からRGB関連色空間への変換を遅らせることは、潜在的な帯域幅節約を有する。例えば、一実施形態で、ルマ関連カラー情報を、12ビットを使用して提示することができる。対照的に、一実施形態で、RGB情報は、表現に32ビットを必要とする。したがって、合成などのタスクをRGB情報ではなくルマ関連情報を使用して実行することによって、このトランザクションに関連するバストラフィックが削減される。論理1508は、イメージのサイズ変更など、他の種類の処理機能を実行することができる。それでも、論理1508は、上で説明した処理動作のそれぞれを実行する必要がない。例えば、イメージ情報が、既にプログレッシブフォーマットである場合に、論理1508は、単純にイメージ情報のサイズを変更することまたはイメージ情報に対する他の所望の動作色空間変換などを実行すること専用とすることができる。さらに、他の実施形態で、1つまたは複数の動作を、単一の動作ではなく、連続して、例えば別々の動作として、実行することができる。図15の代替の論理1508’が、そのような実施形態を表す。例えば、DeinterlaceBlt機能性を、この形でイメージ処理を実行するように適合させる。どの場合でも、CIデータ構造体202に含まれるカラー情報は、特定の応用例に望まれる形でのイメージ情報の変換に必要な指示を提供する。具体的に言うと、論理1508は、イメージ情報の複数のストリームを処理する場合に、イメージ情報のストリームのそれぞれに関連するCIデータ構造体202を調べることができる。そのようなストリームごとのCIデータ構造体202を使用して、イメージ情報の異なるストリーム異なるめいめいの色空間で表されている可能性があるを、線形RGB色空間などの共通の色空間に変換することができる。この特徴は、1つまたは複数の中間色空間で表された一時的なイメージ情報をストアする必要がなくなるか減るので、有益である。上で説明した技法では、論理1508が、入力イメージ情報を受け取り、変換し、メモリに書き込むことができ、例えば、これによって、情報が出力デバイスによって表示される例えばパーソナルコンピュータによって提供されるデスクトップ前に、追加の合成されたYUVイメージ情報を提供する必要がなくなる。色空間関連指示を供給するためのCI情報202の使用の強調は、例示にすぎない。CI情報202は、図15に示された動作を決定するのに使用できる様々な他の情報を提供する。例えば、CI情報202は、対応するプログレッシブイメージを正しく補間するために、デインターレース動作で使用することもできる。図16に、論理1508によって可能にされるジョイント処理機能性を達成するのに使用できる1つの例示的な技法を示す。すなわち、図16で、単一の動作でデインターレースおよび合成を実行する1つの技法を説明する。図16に、テクスチャリングユニットおよび関連するメモリの例示的な編成1600を示す。これらの要素は、イメージサブストリーム情報内の主イメージ情報を同時に処理するのに使用される。メモリおよびテクスチャリングユニットは、図13に示されたグラフィックスモジュール1322に関連するローカルメモリ1330および/または共有メモリ1334を使用して実施することができる。上で注記したように、インターリーブおよび合成のジョイント動作は、イメージ情報が、まだ、YUV形式など、Y関連色空間にある間に行うことができる。したがって、この例示的で非制限的なシナリオでは、VMRモジュール1316が、このY関連情報をストアするためにメモリの一部を割り当てる。第1ブロック1602を、Y情報をストアするために割り当てることができ、第2ブロック1604を、第1クロマ成分例えば、U情報をストアするために割り当てることができ、第3ブロック1606を、第2クロマ成分例えば、V情報をストアするために割り当てることができる。2つのクロマ成分より多数のビットを、Y情報に割り当てる。例えば、720×480ピクセルを含むイメージについて、720×480バイトのブロックを、Y情報のストアに割り当て、360×240バイトのブロックを、第1クロマ成分のストアに割り当て、360×240バイトのブロックを、第2クロマ成分のストアに割り当てることができる。最後に、メモリのブロック1608を、サブストリーム情報クローズキャプショニング情報、DVDサブイメージ表示情報、様々な種類のグラフィカルアイコンなどのストアに割り当てることができる。図16に示された例示的な編成1600に、4つのテクスチャリングユニットだけが示されている1610、1612、1614、および1616。しかし、他の実施形態に、4つを超えるユニットが含まれる。テクスチャリングユニット1610は、メモリブロック1602に関連するイメージ入力サーフェス例えば、Y情報の処理に割り当てられ、テクスチャリングユニット1612は、メモリブロック1604に関連するイメージ入力サーフェス例えば、第1クロマ成分、例えば、Uの処理に割り当てられ、テクスチャリングユニット1614は、メモリブロック1606に関連するイメージ入力サーフェス例えば、第2クロマ成分、例えば、Vの処理に割り当てられる。テクスチャリングユニット1616は、メモリブロック1608に関連するイメージ入力サーフェス例えば、サブストリーム情報の処理に割り当てられる。メモリブロックY、クロマ1、クロマ2、およびサブストリーム情報は、別々であるが、メモリ内で連続する必要はない。追加のメモリブロックおよびテクスチャリングユニットを設けて、追加のイメージ基準サンプルおよび/または追加のイメージサブストリームを処理することができる。例えば、2つの以前の基準ストリームを含むアプリケーションは、少なくとも9個のテクスチャリングユニット例えば、現在のサンプルに3つのユニット、2つの基準サンプルに6つのユニットを要求するはずである。最後に、図16に、包括的に、図15のGPU1324に関連するGPU処理論理1618を示す。GPU処理論理1618は、テクスチャリングユニットと相互作用する。GPU処理論理1618は、デインターレース、フレームレート変換、および/または他のタスクを実行することができる。図16の動作を説明するためのYUV関連情報の使用は、単なる例示である。線形RGBなど、RGB関連空間内で処理動作を実行することによって例えば、図4に示された形で、類似する利益を得ることができる。E.例示的なコンピュータ環境1つの例示的な実施形態で、前の図に示された処理の諸態様を、コンピューティング機器によって実行することができる。この場合に、図17は、前の図面に示された処理の諸態様を実施するのに使用できる例示的なコンピュータ環境1700に関する情報を提供する。コンピューティング環境1700に、汎用タイプのコンピュータ1702およびディスプレイデバイス1704が含まれる。しかし、コンピューティング環境1700に、他の種類のコンピューティング機器を含めることができる。例えば、図示されてはいないが、コンピューティング環境1700に、ハンドヘルドデバイス、ラップトップデバイス、セットトップボックス、ゲーム機、ビデオ処理/プレゼンテーションデバイス例えば、テレビジョン、DVRなどに統合された処理機能性、メインフレームコンピュータなどを含めることができる。さらに、図17に、議論を容易にするために一緒にグループ化されたコンピュータ環境1700の要素が示されている。しかし、コンピューティング環境1700は、分散処理構成を使用することができる。分散コンピューティング環境では、コンピューティングリソースを、環境全体に物理的に分散させることができる。例示的なコンピュータ1702に、1つまたは複数のプロセッサまたは処理ユニット1706、システムメモリ1708、およびバス1710が含まれる。バス1710は、様々なシステムコンポーネントを一緒に接続する。例えば、バス1710は、プロセッサ1706をシステムメモリ1708に接続する。バス1710は、様々なバスアーキテクチャのいずれかを使用する、メモリバスまたはメモリコントローラ、周辺バス、acceleratedgraphicsport、およびプロセッサバスまたはローカルバスを含む、すべての種類のバス構造またはバス構造の組合せを使用して実施することができる。コンピュータ1702に、それぞれを取外し可能または取り外し不能とすることができる、様々なタイプの揮発性媒体および不揮発性媒体を含む様々なコンピュータ可読媒体も含めることができる。例えば、システムメモリ1708に、ランダムアクセスメモリRAM1712などの揮発性メモリ、および読取専用メモリROM1714などの不揮発性メモリの形のコンピュータ可読媒体が含まれる。ROM1714に、スタートアップ中などにコンピュータ1702内の要素の間での情報の転送を助ける基本ルーチンを含む入出力システムBIOS1716が含まれる。RAM1712に、通常は、処理ユニット1706によって素早くアクセスできる形のデータおよび/またはプログラムモジュールが含まれる。他の種類のコンピュータストレージ媒体に、取外し不能不揮発性磁気媒体から読み取り、これに書き込むハードディスクドライブ1718、取外し可能不揮発性磁気ディスク1722例えばフロッピー登録商標ディスクから読み取り、これに書き込む磁気ディスクドライブ1720、CD-ROM、DVD-ROM、または他の光媒体などの取外し可能不揮発性光ディスク1726から読み取り、かつ/またはこれに書き込む光ディスクドライブ1724が含まれる。ハードディスクドライブ1718、磁気ディスクドライブ1720、および光ディスクドライブ1724は、それぞれ、1つまたは複数のデータ媒体インターフェース1728によってシステムバス1710に接続される。その代わりに、ハードディスクドライブ1718、磁気ディスクドライブ1720、および光ディスクドライブ1724を、SCSIインターフェース図示せずまたは他の結合機構によってシステムバス1710に接続することができる。図示されていないが、コンピュータ1702に、磁気カセット、または他の磁気ストレージデバイス、フラッシュメモリカード、CD-ROM、デジタル多用途ディスクDVD、または他の光ストレージ、電気的消去可能プログラマブル読取専用メモリEEPROMなどの他のタイプのコンピュータ可読媒体を含めることができる。一般に、上で識別されたコンピュータ可読媒体は、コンピュータ1702による使用のために、コンピュータ可読命令、データ構造、プログラムモジュール、および他のデータの不揮発性ストレージを提供する。例えば、可読媒体に、オペレーティングシステム1730、アプリケーションモジュール1732、他のプログラムモジュール1734、およびプログラムデータ1736をストアすることができる。コンピュータ環境1700に、様々な入力デバイスを含めることができる。例えば、コンピュータ環境1700に、コンピュータ1702にコマンドおよび情報を入力する、キーボード1738およびポインティングデバイス1740例えば、マウスが含まれる。コンピュータ環境1700に、マイクロホン、ジョイスティック、ゲームパッド、衛星パラボラアンテナ、シリアルポート、スキャナ、カード読み取りデバイス、デジタルカメラ、ビデオカメラなどの他の入力デバイス図示せずを含めることができる。入出力インターフェース1742が、入力デバイスを処理ユニット1706に結合する。より一般的には、入力デバイスを、パラレルポート、シリアルポート、ゲームポート、USBuniversalserialbusポートなど、あらゆる種類のインターフェースおよびバス構造を介してコンピュータ1702に結合することができる。コンピュータ環境1700に、ディスプレイデバイス1704も含まれる。ビデオアダプタ1744が、ディスプレイデバイス1704をバス1710に結合する。ディスプレイデバイス1704の他に、コンピュータ環境1700に、スピーカ図示せず、プリンタ図示せずなど、他の出力周辺デバイスを含めることができる。コンピュータ1702は、リモートコンピューティングデバイス1746などの1つまたは複数のリモートコンピュータへの論理接続を使用してネットワーク化された環境で動作する。リモートコンピューティングデバイス1746に、汎用パーソナルコンピュータ、ポータブルコンピュータ、サーバ、ゲーム機、ネットワーク拡張デバイスなどを含むすべての種類のコンピュータ機器を含めることができる。リモートコンピューティングデバイス1746に、上でコンピュータ1702に関して述べた特徴のすべてまたはそのサブセットを含めることができる。LAN、WANなど、任意のタイプのネットワーク1748を使用して、コンピュータ1702をリモートコンピューティングデバイス1746に結合することができる。コンピュータ1702は、ネットワークインターフェース1750を介してネットワーク1748に結合され、ネットワークインターフェース1750は、ブロードバンド接続性、モデム接続性、DSL接続性、または他の接続戦略を使用することができる。図示されていないが、コンピューティング環境1700は、リモートコンピューティングデバイス1746とコンピュータ1702を接続する無線通信機能性を提供することができる例えば、変調されたラジオ信号、変調された赤外線信号などを介する。最後に、複数の例を、この開示で代替案として提示した例えば、事例Aまたは事例B。さらに、この開示は、すべての場合に組合せ事例に明示的に言及していない場合があるが、単一の実施形態で代替案を組み合わせた事例例えば、事例Aおよび事例Bを含む。さらに、本明細書で、複数の特徴を、これらの特徴が対処できる例示的な問題をまず識別することによって説明した。この説明の形は、本明細書で指定された形で他者がその問題を諒解し、かつ/または表現したことの容認を構成しない。ビデオコーディングの技術に存在する問題の諒解および表現は、本発明の一部として理解されなければならない。より一般的に、本発明を、構造的特徴および/または方法論的動作に固有のことばで説明したが、請求項で定義される本発明が、必ずしも説明された特定の特徴または動作に制限されないことを理解されたい。そうではなく、特定の特徴および動作は、請求される発明を実施する例示的形として開示されたものである。"