Share via


MFTRegisterLocal, fonction (mfapi.h)

Inscrit une transformation Media Foundation (MFT) dans le processus de l’appelant.

Syntaxe

HRESULT MFTRegisterLocal(
  [in] IClassFactory                *pClassFactory,
  [in] REFGUID                      guidCategory,
  [in] LPCWSTR                      pszName,
  [in] UINT32                       Flags,
  [in] UINT32                       cInputTypes,
  [in] const MFT_REGISTER_TYPE_INFO *pInputTypes,
  [in] UINT32                       cOutputTypes,
  [in] const MFT_REGISTER_TYPE_INFO *pOutputTypes
);

Paramètres

[in] pClassFactory

Pointeur vers l’interface IClassFactory d’un objet de fabrique de classe. La fabrique de classe crée le MFT.

[in] guidCategory

GUID qui spécifie la catégorie du MFT. Pour obtenir la liste des catégories MFT, consultez MFT_CATEGORY.

[in] pszName

Chaîne de caractères larges terminée par un caractère null qui contient le nom convivial de la MFT.

[in] Flags

Or au niveau du bit de zéro ou plusieurs indicateurs de l’énumération _MFT_ENUM_FLAG.

[in] cInputTypes

Nombre d’éléments dans le tableau pInputTypes .

[in] pInputTypes

Pointeur vers un tableau de structures MFT_REGISTER_TYPE_INFO . Chaque membre du tableau spécifie un format d’entrée pris en charge par MFT. Ce paramètre peut être NULL si cInputTypes est égal à zéro.

[in] cOutputTypes

Nombre d’éléments dans le tableau pOutputTypes .

[in] pOutputTypes

Pointeur vers un tableau de structures MFT_REGISTER_TYPE_INFO . Chaque membre du tableau définit un format de sortie pris en charge par MFT. Ce paramètre peut être NULL si cOutputTypes est égal à zéro.

Valeur retournée

Si cette fonction réussit, elle retourne S_OK. Sinon, elle retourne un code d’erreur HRESULT.

Remarques

L’objectif principal de cette fonction est de rendre un MFT disponible pour la résolution de topologie automatique sans rendre le MFT disponible pour d’autres processus ou applications.

Après avoir appelé cette fonction, la MFT peut être énumérée en appelant la fonction MFTEnumEx avec l’indicateur MFT_ENUM_FLAG_LOCALMFT . Le MFT peut être énuméré à partir du même processus, mais n’est pas visible par d’autres processus.

Le paramètre pClassFactory spécifie un objet de fabrique de classe qui crée le MFT. La méthode IClassFactory ::CreateInstance de la fabrique de classes doit retourner un objet qui prend en charge l’interface IMFTransform .

Note La fonction MFTEnumEx récupère une liste de pointeurs IMFActivate . Toutefois, la fabrique de classes n’a pas besoin de prendre en charge l’interface IMFActivate . Au lieu de cela, la fonction MFTEnumEx fournit une implémentation de IMFActivate qui encapsule la fabrique de classes.
 
Pour désinscrire le MFT du processus actuel, appelez MFTUnregisterLocal.

Si vous devez inscrire un MFT dans le processus PMP (Protected Media Path), utilisez l’interface IMFLocalMFTRegistration .

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 7 [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2008 R2 [applications de bureau uniquement]
Plateforme cible Windows
En-tête mfapi.h
Bibliothèque Mfplat.lib
DLL Mfplat.dll

Voir aussi

MFTRegisterLocalByCLSID

Fonctions Media Foundation