Classe CRenderedInputPin
[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 classe CRenderedInputPin est une classe de base permettant d’implémenter une broche d’entrée sur un renderer. Cette classe est conçue pour les filtres de convertisseur qui ne dérivent pas de la classe CBaseRenderer . (Les filtres qui dérivent de CBaseRenderer doivent utiliser la classe CRendererInputPin pour la broche d’entrée.)
Pour utiliser cette classe, vous devez effectuer au moins les opérations suivantes :
- Déclarez une nouvelle classe de broche qui hérite de CRenderedInputPin.
- Dans votre classe pin, déclarez un objet de section critique pour contenir le verrou de diffusion en continu. Vous pouvez utiliser la classe CCritSec à cet effet. Pour plus d’informations, consultez Threads et sections critiques.
- Remplacez CRenderedInputPin::EndOfStream pour contenir le verrou de streaming.
- Implémentez les méthodes IMemInputPin::Receive, CBasePin::CheckMediaType et CBasePin::GetMediaType .
- Dans votre filtre, implémentez CBaseFilter::GetPin pour retourner une instance de votre classe pin.
Vous pouvez utiliser cette classe dans un convertisseur qui a plusieurs broches d’entrée. Cette classe hérite de la classe CBaseInputPin .
Variables membres protégées | Description |
---|---|
m_bAtEndOfStream | Indique si la fin du flux a été atteinte. |
m_bCompleteNotified | Indique si le code pin a envoyé un événement EC_COMPLETE au Gestionnaire de graphes de filtre. |
Méthodes publiques | Description |
Actif | Avertit la broche que le filtre est maintenant actif. |
CRenderedInputPin | Méthode du constructeur. |
Exécuter | Avertit la broche que le filtre est en cours d’exécution. |
Méthodes IPin | Description |
EndFlush | Met fin à une opération de vidage. |
EndOfStream | Avertit le code pin qu’aucune donnée supplémentaire n’est attendue tant que le filtre n’a pas reçu une nouvelle commande d’exécution. |
Configuration requise
Condition requise | Valeur |
---|---|
En-tête |
|
Bibliothèque |
|