Partager via


Méthode IFilterGraph::AddFilter (strmif.h)

[La fonctionnalité associée à cette page, DirectShow, est une fonctionnalité héritée. Il a été remplacé par MediaPlayer, IMFMediaEngine et Audio/Video Capture dans Media Foundation. Ces fonctionnalités ont été optimisées pour Windows 10 et Windows 11. Microsoft recommande vivement au nouveau code d’utiliser MediaPlayer, IMFMediaEngine et La capture audio/vidéo dans Media Foundation au lieu de DirectShow, lorsque cela est possible. Microsoft suggère que le code existant qui utilise les API héritées soit réécrit pour utiliser les nouvelles API si possible.]

La AddFilter méthode ajoute un filtre au graphique.

Syntaxe

HRESULT AddFilter(
  [in] IBaseFilter *pFilter,
  [in] LPCWSTR     pName
);

Paramètres

[in] pFilter

Pointeur vers l’interface IBaseFilter du filtre à ajouter.

[in] pName

Pointeur vers une chaîne de caractères larges contenant un nom pour le filtre.

Valeur renvoyée

Retourne une valeur HRESULT . Les valeurs possibles sont les suivantes.

Code de retour Description
S_OK
Opération réussie.
VFW_S_DUPLICATE_NAME
Ajout réussi d’un filtre avec un nom en double.
E_FAIL
Échec.
E_OUTOFMEMORY
Mémoire insuffisante.
E_POINTER
Argument pointeur NULL .
VFW_E_CERTIFICATION_FAILURE
L’utilisation de ce filtre est limitée par une clé logicielle.
VFW_E_DUPLICATE_NAME
Échec de l’ajout d’un filtre avec un nom dupliqué.

Notes

Le nom du filtre peut être NULL, auquel cas le Gestionnaire de graphes de filtre génère un nom. Si le nom n’est pas NULL et n’est pas unique, cette méthode modifie le nom dans une tentative de génération d’un nouveau nom unique. Si cela réussit, cette méthode retourne VFW_S_DUPLICATE_NAME. S’il ne peut pas générer un nom unique, il retourne VFW_E_DUPLICATE_NAME.

AddFilter appelle la méthode IBaseFilter::JoinFilterGraph du filtre pour informer le filtre qu’il a été ajouté. AddFilter doit être appelé avant d’essayer d’utiliser la méthode IGraphBuilder::Connect, IFilterGraph::ConnectDirect ou IGraphBuilder::Render pour connecter ou restituer des broches appartenant au filtre ajouté.

Le Gestionnaire de graphes de filtre contient un nombre de références sur le filtre jusqu’à ce que le filtre soit supprimé du graphe ou que le gestionnaire de graphes de filtre soit libéré.

Configuration requise

   
Client minimal pris en charge Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
Plateforme cible Windows
En-tête strmif.h (include Dshow.h)
Bibliothèque Strmiids.lib

Voir aussi

Codes d’erreur et de réussite

IFilterGraph Interface