Partager via


Méthode IPin ::QueryInternalConnections (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 méthode QueryInternalConnections récupère les broches connectées en interne à cette broche (dans le filtre).

Syntaxe

HRESULT QueryInternalConnections(
  [out]     IPin  **apPin,
  [in, out] ULONG *nPin
);

Paramètres

[out] apPin

Adresse d’un tableau de pointeurs IPin . L’appelant alloue le tableau. La méthode remplit le tableau avec des pointeurs IPin . Si nPin est égal à zéro, ce paramètre peut avoir la valeur NULL.

[in, out] nPin

En entrée, spécifie la taille du tableau. Sur la sortie, spécifie le nombre de broches connectées en interne.

Valeur retournée

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

Code de retour Description
S_FALSE
Taille insuffisante du tableau.
S_OK
Réussite.
E_NOTIMPL
Non implémenté.

Remarques

Cette méthode retourne des informations sur le mappage interne du filtre entre les broches d’entrée et les broches de sortie. En d’autres termes, il décrit comment les broches d’entrée fournissent des données aux broches de sortie.

Dans la plupart des filtres, chaque broche d’entrée se connecte à chaque broche de sortie. Par exemple, dans un filtre de transformation, une entrée se connecte à une sortie ; dans un filtre de fractionnement, une entrée se connecte à plusieurs sorties. Dans ce cas, la méthode doit simplement retourner E_NOTIMPL.

Sinon, la méthode retourne un tableau de pointeurs IPin , un pour chaque broche mappée en interne à la broche que vous avez interrogée. Si vous appelez la méthode sur une broche d’entrée, le tableau contient des pointeurs vers des broches de sortie, et inversement.

L’appelant alloue le tableau de pointeurs IPin . Pour obtenir la taille de tableau requise, appelez la méthode une fois avec apPin égal à NULL. La taille est retournée dans le paramètre nPin . Ensuite, allouez le tableau et appelez à nouveau la méthode, en définissant apPin comme égal à l’adresse du tableau et nPin à la taille du tableau. La méthode remplit ensuite le tableau avec des pointeurs IPin . Chaque pointeur retourné a un nombre de références en suspens et doit être libéré par l’appelant.

Cette méthode a une autre utilisation désormais déconseillée : le Gestionnaire de graphes de filtre traite un filtre comme étant un filtre de rendu si au moins une broche d’entrée implémente cette méthode mais retourne zéro dans nPin. Toutefois, si vous écrivez un nouveau filtre de convertisseur, vous devez implémenter l’interface IAMFilterMiscFlags au lieu d’utiliser cette méthode pour indiquer que le filtre est un convertisseur.

Configuration requise

Condition requise Valeur
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

IPin Interface