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 (播放) 。

含义
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) 。 (传统 YCbCr) ,默认状态值为零。

含义
0
传统 YCbCr
1
扩展 YCbCr (xvYCC)

Nominal_Range

指定 D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE

在 Windows 8.1 中引入。

Reserved

保留。 设置为零。

注解

RGB_Range 成员适用于 RGB 输出,而 YCbCr_MatrixYCbCr_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 范围内允许比白色更白的值。 使用扩展 YCbCr 时,驱动程序不应将 luma 值剪辑到名义 16–235 范围。

要求

要求
最低受支持的客户端 Windows 8 [桌面应用 |UWP 应用]
最低受支持的服务器 Windows Server 2012 [桌面应用 |UWP 应用]
标头 d3d11.h

另请参阅

Direct3D 11 视频结构