ID2D1DeviceContext2::CreateImageSourceFromDxgi メソッド (d2d1_3.h)
一連の DXGI サーフェスからイメージ ソースを作成します。 YCbCr サーフェスは、後続の描画中に自動的に RGBA に変換されます。
構文
HRESULT CreateImageSourceFromDxgi(
IDXGISurface **surfaces,
UINT32 surfaceCount,
DXGI_COLOR_SPACE_TYPE colorSpace,
D2D1_IMAGE_SOURCE_FROM_DXGI_OPTIONS options,
ID2D1ImageSource **imageSource
);
パラメーター
surfaces
種類: [入力] IDXGISurface**
イメージ ソースを作成する DXGI サーフェス。
surfaceCount
型: UINT32
指定されたサーフェスの数。は 1 から 3 の間である必要があります。
colorSpace
入力の色空間。
options
種類: D2D1_IMAGE_SOURCE_FROM_DXGI_OPTIONS
色空間変換を制御するオプション。
imageSource
種類: [out] ID2D1ImageSource**
新しいイメージ ソース インスタンスを受け取ります。
戻り値
型: HRESULT
成功した場合はS_OK。それ以外の場合は失敗 HRESULT。
注釈
このメソッドは、イメージ ソースを作成します。このソースを使用してイメージを描画できます。
このメソッドは、限られた DXGI 形式と DXGI 色空間の種類のセットを使用するサーフェスをサポートします。 色空間の種類、サーフェスの形式、およびサーフェス数の組み合わせの以下のセットのみがサポートされています。
色空間の種類 | Surface Count(s) | Surface Format(s) |
---|---|---|
DXGI_COLOR_SPACE_RGB_FULL_G22_NONE_P709 | 1 | Standard D2D でサポートされるピクセル形式:
|
DXGI_COLOR_SPACE_YCBCR_FULL_G22_NONE_P709_X601 | 1, 2, 3 | Surface count が 1 の場合:
|
DXGI_COLOR_SPACE_YCBCR_STUDIO_G22_LEFT_P601 DXGI_COLOR_SPACE_YCBCR_FULL_G22_LEFT_P601 DXGI_COLOR_SPACE_YCBCR_STUDIO_G22_LEFT_P709 DXGI_COLOR_SPACE_YCBCR_FULL_G22_LEFT_P709 DXGI_COLOR_SPACE_YCBCR_STUDIO_G22_LEFT_P2020 DXGI_COLOR_SPACE_YCBCR_FULL_G22_LEFT_P2020 |
1,2,3 |
Surface count が 1 の場合:
|
GPU には、D2D でサポートされるピクセル形式に対する十分なサポートも必要です。 D2D で形式がサポートされているかどうかを確認するには、IsDxgiFormatSupported を呼び出します。
この API は、指定された色空間の種類とオプションを使用して、YCbCr 形式を sRGB に変換します。 RGBA データは目的の空間内にあると見なされ、D2D では変換は適用されません。
複数のサーフェスが指定されている場合、このメソッドは、対応する各ソース四角形の相対サイズ (またはソース四角形パラメーターが NULL の場合は、各サーフェスの境界) から、彩度平面がサブサンプリングされる (2 倍) かどうかを推測します。 2 番目と 3 番目の四角形はそれぞれ、1 番目の四角形、または 0.5 (切り上げ時) で 1 つまたは両方の次元がスケーリングされた最初の四角形のサイズと等しい必要があります。
指定する場合、ソース四角形は対応するサーフェスの境界内にある必要があります。 ソース四角形の原点が異なる場合があります。 この場合、このメソッドは各平面からデータを互いに揃えてシフトします。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 10 [デスクトップ アプリ |UWP アプリ] |
サポートされている最小のサーバー | Windows Server 2016 [デスクトップ アプリ |UWP アプリ] |
対象プラットフォーム | Windows |
ヘッダー | d2d1_3.h |
[DLL] | D2d1.dll |