Structure MFVideoAlphaBitmapParams (evr9.h)
Spécifie la façon dont le convertisseur vidéo amélioré (EVR) fusionne une image bitmap avec la vidéo.
Syntaxe
typedef struct MFVideoAlphaBitmapParams {
DWORD dwFlags;
COLORREF clrSrcKey;
RECT rcSrc;
MFVideoNormalizedRect nrcDest;
FLOAT fAlpha;
DWORD dwFilterMode;
} MFVideoAlphaBitmapParams;
Membres
dwFlags
OR au niveau du bit d’un ou de plusieurs indicateurs de l’énumération MFVideoAlphaBitmapFlags . Ces indicateurs indiquent les autres membres de la structure qui contiennent des informations valides.
clrSrcKey
Clé de couleur source. Ce membre est utilisé si le membre dwFlags contient l’indicateur MFVideoAlphaBitmap_SrcColorKey. Tous les pixels de la bitmap qui correspondent à la clé de couleur sont rendus sous forme de pixels transparents.
Vous ne pouvez pas spécifier de touche de couleur si vous fusionnez une surface Direct3D avec une alpha par pixel (D3DFMT_A8R8G8B8).
rcSrc
Rectangle source. Le rectangle source définit la région de l’image bitmap qui est mélangée en alpha avec la vidéo. Le rectangle source est donné en pixels et est relatif à l’image bitmap d’origine.
Si vous fusionnez une image bitmap GDI, vous devez remplir cette structure lorsque vous appelez IMFVideoMixerBitmap::SetAlphaBitmap.
Si vous mélangez une surface Direct3D et que le membre dwFlags contient l’indicateur MFVideoAlphaBitmap_EntireDDS, le membre rcSrc est ignoré. Si l’indicateur est absent, vous devez renseigner le membre rcSrc .
Après avoir défini l’image bitmap initiali, vous pouvez mettre à jour le rectangle source en appelant IMFVideoMixerBitmap::UpdateAlphaBitmapParameters. Pour mettre à jour le rectangle source, définissez l’indicateur MFVideoAlphaBitmap_SrcColorKey dans le membre dwFlags .
Le rectangle source ne peut pas être un rectangle vide et ne peut pas dépasser les limites de l’image bitmap.
nrcDest
Rectangle de destination. Le rectangle de destination définit la région de l’image vidéo composite qui reçoit l’image bitmap mixte alpha. Le rectangle de destination est spécifié en tant que rectangle normalisé à l’aide de la structure MFVideoNormalizedRect .
Ce membre est utilisé si le membre dwFlags contient l’indicateur MFVideoAlphaBitmap_DestRect. Sinon, le rectangle de destination par défaut est {0, 0, 1, 1}.
fAlpha
Valeur de fusion alpha. Ce membre est utilisé si le membre dwFlags contient l’indicateur MFVideoAlphaBitmap_Alpha. Sinon, la valeur par défaut est 1.0 (opaque). La plage valide est comprise entre 0,0 et 1,0, inclus.
Cette valeur est appliquée à l’image bitmap entière. Pour créer des régions transparentes, utilisez le membre clrSrcKey ou utilisez une surface DirectDraw avec l’alpha par pixel.
dwFilterMode
Mode de filtrage Direct3D à utiliser lors de l’opération de fusion alpha. Spécifiez le mode de filtre en tant que valeur D3DTEXTUREFILTERTYPE. Pour plus d’informations, consultez la documentation Direct3D.
Ce membre est utilisé si le membre dwFlags contient l’indicateur MFVideoAlphaBitmap_FilterMode. Sinon, la valeur par défaut est D3DTEXF_POINT.
Le filtrage de points est particulièrement utile pour les images qui contiennent du texte et qui ne sont pas étirées.
Spécifications
Client minimal pris en charge | Windows Vista [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2008 [applications de bureau uniquement] |
En-tête | evr9.h |