DXVAHD_STREAM_STATE_INPUT_COLOR_SPACE_DATA 構造体 (dxvahd.h)

Microsoft DirectX Video Acceleration High Definition (DXVA-HD) 入力ストリームの色空間を指定します。

構文

typedef struct _DXVAHD_STREAM_STATE_INPUT_COLOR_SPACE_DATA {
  union {
    struct {
      UINT Type : 1;
      UINT RGB_Range : 1;
      UINT YCbCr_Matrix : 1;
      UINT YCbCr_xvYCC : 1;
      UINT Reserved : 28;
    };
    UINT Value;
  };
} DXVAHD_STREAM_STATE_INPUT_COLOR_SPACE_DATA;

メンバー

Type

入力ストリームにビデオまたはグラフィックスを含めるかどうかを指定します。 デバイスは、種類に基づいて処理を最適化できます。 既定の状態値は 0 (ビデオ) です。

意味
0
ビデオ。
1
グラフィック。

RGB_Range

RGB の色範囲を指定します。 既定の状態値は 0 (全範囲) です。

意味
0
全範囲 (0 から 255)。
1
制限された範囲 (16 から 235)。

YCbCr_Matrix

YCbCr 転送マトリックスを指定します。 既定の状態値は 0 (BT.601) です。

意味
0
ITU-R BT.601。
1
ITU-R BT.709。

YCbCr_xvYCC

入力ストリームで従来の YCbCr を使用するか、拡張 YCbCr (xvYCC) を使用するかを指定します。 既定値は 0 (従来の YCbCr) です。

意味
0
従来の YCbCr。
1
拡張 YCbCr (xvYCC)。

Reserved

Value

注釈

RGB_Range メンバーは RGB 入力に適用され、YCbCr_MatrixメンバーとYCbCr_xvYCC メンバーは YCbCr (YUV) 入力に適用されます。

状況によっては、デバイスが入力ストリームで中間色変換を実行する場合があります。 その場合は、両方の色空間に適用されるフラグが使用されます。 たとえば、デバイスが RGB から YCbCr に変換するとします。 RGB_Range メンバーが 0 で、YCbCr_Matrix メンバーが 1 の場合、デバイスはフルレンジ RGB から BT.709 YCbCr に変換されます。

デバイスが xvYCC をサポートしている場合は、 DXVAHD_VPDEVCAPS 構造体の DeviceCaps メンバーで DXVAHD_DEVICE_CAPS_xvYCC 機能フラグを返します。 それ以外の場合、デバイスは YCbCr_xvYCC の値を無視し、すべての YCbCr 入力を従来の YCbCr として扱います。 デバイスの機能を取得するには、 IDXVAHD_Device::GetVideoProcessorDeviceCaps を呼び出します。

HRESULT DXVAHD_SetInputColorSpace(
    IDXVAHD_VideoProcessor *pVP,
    UINT stream,
    BOOL bPlayback,     // TRUE = playback, FALSE = video processing
    UINT RGB_Range,     // 0 = 0-255, 1 = 16-235
    UINT YCbCr_Matrix,  // 0 = BT.601, 1 = BT.709
    UINT YCbCr_xvYCC    // 0 = Conventional YCbCr, 1 = xvYCC
    )
{
    DXVAHD_STREAM_STATE_INPUT_COLOR_SPACE_DATA data =
    {
        bPlayback ? 0 : 1,
        RGB_Range ? 1 : 0,
        YCbCr_Matrix ? 1 : 0,
        YCbCr_xvYCC ? 1 : 0
    };

    HRESULT hr = pVP->SetVideoProcessStreamState(
        stream,
        DXVAHD_STREAM_STATE_INPUT_COLOR_SPACE,
        sizeof(data),
        &data
        );

    return hr;
}

要件

要件
サポートされている最小のクライアント Windows 7 [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2008 R2 [デスクトップ アプリのみ]
Header dxvahd.h

こちらもご覧ください

DXVA-HD

DXVAHD_STREAM_STATE

Direct3D ビデオ構造

IDXVAHD_VideoProcessor::SetVideoProcessStreamState

Media Foundation Structures