D3D11_VIDEO_PROCESSOR_COLOR_SPACE 構造体 (d3d11.h)
ビデオ処理の色空間を指定します。
構文
typedef struct D3D11_VIDEO_PROCESSOR_COLOR_SPACE {
UINT Usage : 1;
UINT RGB_Range : 1;
UINT YCbCr_Matrix : 1;
UINT YCbCr_xvYCC : 1;
UINT Nominal_Range : 2;
UINT Reserved : 26;
} D3D11_VIDEO_PROCESSOR_COLOR_SPACE;
メンバー
Usage
出力が再生またはビデオ処理 (編集や作成など) を目的としているかどうかを指定します。 デバイスは、種類に基づいて処理を最適化できます。 既定の状態値は 0 (再生) です。
値 | 意味 |
---|---|
|
再生 |
|
ビデオの処理 |
RGB_Range
RGB の色範囲を指定します。 既定の状態値は 0 (全範囲) です。
値 | 意味 |
---|---|
|
全範囲 (0 から 255) |
|
限られた範囲 (16 から 235) |
YCbCr_Matrix
YCbCr 転送マトリックスを指定します。 既定の状態値は 0 (BT.601) です。
値 | 意味 |
---|---|
|
ITU-R BT.601 |
|
ITU-R BT.709 |
YCbCr_xvYCC
出力で従来の YCbCr または拡張 YCbCr (xvYCC) のどちらを使用するかを指定します。 既定の状態値は 0 (従来の YCbCr) です。
値 | 意味 |
---|---|
|
従来の YCbCr |
|
拡張 YCbCr (xvYCC) |
Nominal_Range
D3D11_VIDEO_PROCESSOR_NOMINAL_RANGEを指定します。
Windows 8.1で導入されました。
Reserved
予約済み。 0 に設定します。
注釈
RGB_Range メンバーは RGB 出力に適用され、YCbCr_MatrixメンバーとYCbCr_xvYCC メンバーは YCbCr 出力に適用されます。 ドライバーは、背景色に色空間変換を実行する場合は、両方の色空間に適用される値を使用します。
ドライバーが拡張 YCbCr (xvYCC) をサポートしている場合は、ID3D11VideoProcessorEnumerator::GetVideoProcessorCaps メソッドでD3D11_VIDEO_PROCESSOR_DEVICE_CAPS_xvYCC機能フラグを返します。 それ以外の場合、ドライバーは YCbCr_xvYCC の値を無視し、すべての YCbCr 出力を従来の YCbCr として扱います。
拡張 YCbCr がサポートされている場合は、どちらの転送マトリックスでも使用できます。 拡張 YCbCr では、黒点または白点は変更されません。黒い点は 16 のままで、白点は 235 のままです。 ただし、拡張 YCbCr では、1 ~ 15 の範囲の黒より黒い値と、236 から 254 の範囲の white-than-white 値が明示的に許可されます。 拡張 YCbCr を使用する場合、ドライバーはルマ値を公称 16 ~ 235 の範囲にクリップしないでください。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 8 [デスクトップ アプリ |UWP アプリ] |
サポートされている最小のサーバー | Windows Server 2012 [デスクトップ アプリ |UWP アプリ] |
Header | d3d11.h |