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
= 每像素源 alphaAp
= 平面 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) |