dxva.h) (DXVA_ProcAmpControlCaps 结构

DXVA_ProcAmpControlCaps结构标识硬件支持的 ProcAmp 操作。

语法

typedef struct _DXVA_ProcAmpControlCaps {
  DWORD     Size;
  DWORD     InputPool;
  D3DFORMAT d3dOutputFormat;
  DWORD     ProcAmpControlProps;
  DWORD     VideoProcessingCaps;
} DXVA_ProcAmpControlCaps, *LPDXVA_ProcAmpControlCaps;

成员

Size

指定此结构的大小(以字节为单位)。

InputPool

指示应从中分配 ProcAmp 控制源图面的内存池。 有关详细信息,请参阅 Microsoft Window SDK 文档中的 D3DPOOL 枚举。

d3dOutputFormat

指示输出帧的 Direct3D 图面格式。 通常,ProcAmp 设备以与输入图面格式匹配的图面格式输出帧。 此成员可确保 VMR 或其他视频呈现器能够向 ProcAmp 控制硬件提供输出帧图面的正确格式。 如果在 DXVA_VideoProcessCaps 结构中返回 DXVA_VideoProcess_YUV2RGB 标志,则 VMR 假定此成员以及 RGB32 格式指定了有效的输出格式。

ProcAmpControlProps

标识硬件支持的 ProcAmp 操作。 驱动程序应返回以下 ProcAmp 操作的逻辑组合。

说明
DXVA_ProcAmp_None 不允许执行任何操作。
DXVA_ProcAmp_Brightness 允许对视频图像进行亮度调整。
DXVA_ProcAmp_Contrast 允许对视频图像进行对比度调整。
DXVA_ProcAmp_Hue 允许对视频图像进行色调调整。
DXVA_ProcAmp_Saturation 允许对视频图像进行饱和度调整。

VideoProcessingCaps

标识可以由 ProcAmp 控制硬件与请求的 ProcAmp 调整同时执行的操作。 驱动程序应返回以下 ProcAmp 操作之一的逻辑组合。

说明
DXVA_VideoProcess_None 不允许执行任何操作。
DXVA_VideoProcess_YUV2RGB 允许从 YUV 颜色空间到 RGB 颜色空间的视频转换。 对于每个颜色分量,使用的 RGB 格式至少具有 8 位精度。 如果可能,可以避免 VMR 中的缓冲区复制。 请注意,不需要从 RGB 颜色空间转换为 YUV 颜色空间。
DXVA_VideoProcess_StretchX 如果硬件能够水平拉伸或收缩,则可以在视频进行 ProcAmp 调整的同时执行纵横比更正。
DXVA_VideoProcess_StretchY 纵横比调整与常规图片大小调整操作相结合,以在应用程序定义的合成空间内缩放视频图像。 这是罕见的,不是一个基本功能。 最好是在调整 ProcAmp 调整所需的缩放的同时,完成调整视频大小以适应应用程序窗口所需的缩放。 这可避免累积项目。
DXVA_VideoProcess_AlphaBlend 指示当 alpha 值发生更改时,VMR 不会执行缓冲区复制。 应用程序很少会更改与视频流关联的常量 alpha 值,因此这是一项低优先级功能。

要求

要求
最低受支持的客户端 仅限 DirectX 9.0 及更高版本。
标头 dxva.h (包括 Dxva.h)

另请参阅

DXVA_ProcAmpControlProp

DXVA_VideoProcessCaps