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) |