Partager via


Classe CBasePin

[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.]

Hiérarchie de classes cbasepin

La CBasePin classe est une classe abstraite qui implémente une broche générique.

Les rubriques suivantes décrivent comment utiliser cette classe :

Variables membres protégées Description
m_pName Nom du code pin.
m_Connected Pointeur vers la broche connectée à cette broche.
m_dir Direction de la broche.
m_pLock Pointeur vers un objet de section critique.
m_bRunTimeError Indicateur qui indique si une erreur d’exécution s’est produite.
m_bCanReconnectWhenActive Indicateur qui indique si la broche prend en charge la reconnexion dynamique.
m_bTryMyTypesFirst Indicateur qui indique si la broche tente ses propres types de médias préférés avant ceux de l’épingle de réception.
m_pFilter Pointeur vers le filtre qui a créé l’épingle.
m_pQSink Pointeur vers l’objet qui gère les messages de qualité.
m_TypeVersion Version actuelle de l’ensemble des types de médias préférés.
m_mt Type de média pour la connexion de broche actuelle.
m_tStart Heure de début du segment.
m_tStop Heure d’arrêt du segment.
m_dRate Taux de segment.
Méthodes protégées Description
DisplayPinInfo Trace une connexion d’épingle pendant le débogage.
DisplayTypeInfo Affiche des informations sur le type de média pendant le débogage.
TentativeConnexion Se connecte à une autre broche à l’aide d’un type de média spécifié.
TryMediaTypes Avec une liste de types de médias, tente d’effectuer une connexion à l’aide de l’un de ces types.
AgreeMediaType Recherche un type de média pour créer une connexion d’épingle.
DisconnectInternal Interrompt la connexion de broche actuelle.
Méthodes publiques Description
CBasePin Méthode du constructeur.
~ CBasePin Méthode de destructeur. Virtuel.
IsConnected Détermine si la broche est connectée à une autre broche.
GetConnected Récupère la broche connectée à cette broche.
IsStopped Détermine si le filtre contenant cette broche est arrêté.
GetMediaTypeVersion Récupère un numéro de version pour l’ensemble des types de médias préférés. Virtuel.
IncrémentTypeVersion Incrémente le numéro de version sur l’ensemble des types de médias préférés.
Actif Avertit la broche que le filtre est maintenant actif. Virtuel.
Inactif Avertit la broche que le filtre n’est plus actif. Virtuel.
Exécuter Avertit la broche que le filtre est en cours d’exécution. Virtuel.
SetMediaType Définit le type de média pour la connexion. Virtuel.
CheckConnect Détermine si une connexion de broche est appropriée. Virtuel.
BreakConnect Libère le code pin d’une connexion. Virtuel.
CompleteConnect Termine une connexion à une autre broche. Virtuel.
GetMediaType Récupère un type de média préféré, par valeur d’index. Virtuel.
CurrentStopTime Récupère l’heure d’arrêt du segment.
CurrentStartTime Récupère l’heure de début du segment.
CurrentRate Récupère le taux de segment.
Nom Récupère l’identificateur de broche.
SetReconnectWhenActive Spécifie si la broche prend en charge les reconnexions dynamiques.
CanReconnectWhenActive Demande si la broche prend en charge les reconnexions dynamiques.
Méthodes virtuelles pures Description
CheckMediaType Détermine si le code pin accepte un type de média spécifique.
Méthodes IPin Description
Connecter Connecte la broche à une autre broche.
ReceiveConnection Accepte une connexion à partir d’une autre broche.
Déconnecter Interrompt la connexion de broche actuelle.
ConnectedTo Récupère la broche connectée à cette broche.
ConnectionMediaType Récupère le type de média pour la connexion de broche actuelle, le cas échéant.
QueryPinInfo Récupère des informations sur l’épingle.
QueryDirection Récupère la direction de la broche (entrée ou sortie).
QueryId Récupère l’identificateur de broche.
QueryAccept Détermine si le code pin accepte un type de média spécifié.
EnumMediaTypes Énumère les types de média préférés de l’épingle.
QueryInternalConnections Récupère les broches connectées en interne à cette broche (dans le filtre).
EndOfStream Avertit le code pin qu’aucune donnée supplémentaire n’est attendue.
NewSegment Avertit l’épingle que les exemples multimédias reçus après cet appel sont regroupés en tant que segment.
Méthodes IQualityControl Description
Notifier Avertit l’épingle qu’une modification de qualité est demandée.
SetSink Définit un gestionnaire de qualité externe.

Configuration requise

Condition requise Valeur
En-tête
Amfilter.h (include Streams.h)
Bibliothèque
Strmbase.lib (builds de vente au détail) ;
Strmbasd.lib (builds de débogage)