PFND3D11_1DDI_VIDEOPROCESSORSETSTREAMALPHA回调函数 (d3d10umddi.h)
为视频处理器上的输入流设置平面 alpha。
语法
PFND3D11_1DDI_VIDEOPROCESSORSETSTREAMALPHA Pfnd3d111DdiVideoprocessorsetstreamalpha;
void Pfnd3d111DdiVideoprocessorsetstreamalpha(
D3D10DDI_HDEVICE unnamedParam1,
D3D11_1DDI_HVIDEOPROCESSOR unnamedParam2,
UINT unnamedParam3,
BOOL unnamedParam4,
FLOAT unnamedParam5
)
{...}
参数
unnamedParam1
hDevice [in]
显示设备的句柄(图形上下文)。
unnamedParam2
hVideoProcessor [in]
通过调用 CreateVideoProcessor 函数创建的视频处理器对象的句柄。
unnamedParam3
StreamIndex [in]
输入流的从零开始的索引。
unnamedParam4
启用 [in]
如果 TRUE,则会在视频处理器上启用 alpha 混合。
unnamedParam5
Alpha [in]
指向指定平面 alpha 值的 FLOAT 值的指针。 该值的范围可以是 0.0(透明)到 1.0(不透明)。
注意 如果 Enable 参数 FALSE,则忽略此参数。
返回值
没有
言论
默认情况下,alpha 混合处于禁用状态。
对于每个像素,目标颜色值的计算方式如下:
Cd = Cs * (As * Ap * Ae) + Cd * (1.0 - As * Ap * Ae)
哪里:
-
Cd
= 目标像素的颜色值 -
Cs
= 源像素的颜色值 -
As
= 每像素源 alpha -
Ap
= 平面 alpha 值 -
Ae
= 调色板输入 alpha 值或 1.0
注意 调色板输入 alpha 值仅适用于淡化的颜色格式,并且仅当设备通过 GetVideoProcessorCaps 函数播发对 D3D11_1DDI_VIDEO_PROCESSOR_FEATURE_CAPS_ALPHA_PALETTE 功能的支持时。 否则,此因子等于 1.0。
驱动程序报告其支持通过 GetVideoProcessorCaps 函数返回的 D3D11_1DDI_VIDEO_PROCESSOR_CAPS 结构中的输入流的立体声 alpha 混合的能力。 如果驱动程序支持 D3D11_1DDI_VIDEO_PROCESSOR_FEATURE_CAPS_ALPHA_STREAM 功能,则可以启用或禁用它来生成立体声视频帧。
注意 如果驱动程序不支持 D3D11_1DDI_VIDEO_PROCESSOR_FEATURE_CAPS_STEREO 功能,Microsoft Direct3D 运行时不会调用 VideoProcessorSetStreamAlpha 函数。
要求
要求 | 价值 |
---|---|
最低支持的客户端 | Windows 8 |
支持的最低服务器 | Windows Server 2012 |
目标平台 | 桌面 |
标头 | d3d10umddi.h (包括 D3d10umddi.h) |