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

请参阅

增强的视频呈现器

IMFVideoMixerBitmap::UpdateAlphaBitmapParameters

MFVideoAlphaBitmap

媒体基础结构