MFVideoAlphaBitmapParams 结构 (evr9.h)
指定增强的视频呈现器 (EVR) alpha 如何将位图与视频混合。
语法
typedef struct MFVideoAlphaBitmapParams {
DWORD dwFlags;
COLORREF clrSrcKey;
RECT rcSrc;
MFVideoNormalizedRect nrcDest;
FLOAT fAlpha;
DWORD dwFilterMode;
} MFVideoAlphaBitmapParams;
成员
dwFlags
MFVideoAlphaBitmapFlags 枚举中的一个或多个标志的按位 OR。 这些标志指示哪些其他结构成员包含有效信息。
clrSrcKey
源颜色键。 如果 dwFlags 成员包含 MFVideoAlphaBitmap_SrcColorKey 标志,则使用此成员。 位图中与颜色键匹配的任何像素都呈现为透明像素。
如果要将 Direct3D 表面与每像素 alpha 混合 (D3DFMT_A8R8G8B8) ,则无法指定颜色键。
rcSrc
源矩形。 源矩形定义与视频进行 alpha 混合的位图区域。 源矩形以像素为单位,相对于原始位图。
如果要对 GDI 位图进行 alpha 混合,则必须在调用 IMFVideoMixerBitmap::SetAlphaBitmap 时填充此结构。
如果要对 Direct3D 图面进行 alpha 混合,并且 dwFlags 成员包含MFVideoAlphaBitmap_EntireDDS标志,则 忽略 rcSrc 成员。 如果标志不存在,则必须填写 rcSrc 成员。
设置 initiali 位图后,可以通过调用 IMFVideoMixerBitmap::UpdateAlphaBitmapParameters 来更新源矩形。 若要更新源矩形,请在 dwFlags 成员中设置MFVideoAlphaBitmap_SrcColorKey标志。
源矩形不能是空矩形,并且不能超过位图的边界。
nrcDest
目标矩形。 目标矩形定义接收 alpha 混合位图的复合视频图像的区域。 使用 MFVideoNormalizedRect 结构将目标矩形指定为规范化矩形。
如果 dwFlags 成员包含 MFVideoAlphaBitmap_DestRect 标志,则使用此成员。 否则,默认目标矩形为 {0, 0, 1, 1}。
fAlpha
Alpha 混合值。 如果 dwFlags 成员包含 MFVideoAlphaBitmap_Alpha 标志,则使用此成员。 否则,默认值为 1.0 (不透明) 。 有效范围为 0.0 到 1.0(含)。
此值应用于整个位图图像。 若要创建透明区域,请使用 clrSrcKey 成员或使用具有每像素 alpha 的 DirectDraw 图面。
dwFilterMode
执行 alpha-blend 操作时要使用的 Direct3D 筛选模式。 将筛选模式指定为 D3DTEXTUREFILTERTYPE 值。 有关详细信息,请参阅 Direct3D 文档。
如果 dwFlags 成员包含 MFVideoAlphaBitmap_FilterMode 标志,则使用此成员。 否则,默认值为 D3DTEXF_POINT。
点筛选对于包含文本且不会拉伸的图像特别有用。
要求
最低受支持的客户端 | Windows Vista [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2008 [仅限桌面应用] |
标头 | evr9.h |