DXVA_ProcAmpControlCaps结构 (dxva.h)

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_VideoProcess_YUV2RGB 标志在 DXVA_VideoProcessCaps 结构中返回,则 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