CSourceStream, classe
[La fonctionnalité associée à cette page, DirectShow, est une fonctionnalité héritée. Il a été remplacé par MediaPlayer, IMFMediaEngine et Audio/Video Capture in Media Foundation. Ces fonctionnalités ont été optimisées pour Windows 10 et Windows 11. Microsoft recommande vivement que le nouveau code utilise MediaPlayer, IMFMediaEngine et Audio/Video Capture dans Media Foundation au lieu de DirectShow, si 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 CSourceStream fournit une broche de sortie pour la classe de filtre CSource .
Pour plus d’informations sur l’utilisation de cette classe, consultez CSource. Cette classe hérite de la classe CAMThread , qui fournit un thread de travail pour la diffusion en continu des données à partir de l’épingle. La classe CSourceStream implémente les méthodes d’assistance suivantes pour envoyer des requêtes au thread :
- CSourceStream::Exit
- CSourceStream::Init
- CSourceStream::P ause
- CSourceStream::Run
- CSourceStream::Stop
La première requête adressée au thread doit être Init. La demande de sortie met fin au thread. Dans la pratique, il n’est pas nécessaire d’appeler directement l’une de ces méthodes, car les méthodes CSourceStream::Active et CSourceStream::Inactive de l’épingle les appellent selon les besoins.
La classe fournit également plusieurs méthodes « handler » :
Ceux-ci ne font rien dans la classe de base, mais la classe dérivée peut les remplacer.
Variables de membre protégé | Description |
---|---|
m_pFilter | Pointeur vers le filtre qui contient cette broche. |
Méthodes protégées | Description |
OnThreadCreate | Appelé lorsque le thread de streaming est initialisé. Virtuel. |
OnThreadDestroy | Appelé lorsque le thread de diffusion en continu est sur le point de se fermer. Virtuel. |
OnThreadStartPlay | Appelé au début de la méthode CSourceStream::D oBufferProcessingLoop . Virtuel. |
Actif | Avertit l’épingle que le filtre est maintenant actif. |
Inactif | Avertit l’épingle que le filtre n’est plus actif. |
GetRequest | Attend la demande de thread suivante. |
CheckRequest | Vérifie s’il existe une demande de thread, sans blocage. |
ThreadProc | Procédure de thread. Virtuel. |
DoBufferProcessingLoop | Génère des données multimédias et les remet à la broche d’entrée en aval. Virtuel. |
CheckMediaType | Détermine si l’épingle accepte un type de média spécifique. Virtuel. |
GetMediaType | Récupère un type de média préféré. Virtuel. |
Méthodes publiques | Description |
CSourceStream | Méthode du constructeur. |
~ CSourceStream | Méthode de destructeur. Virtuel. |
Init | Initialise le thread de streaming. |
Quitter | Signale au thread de streaming de quitter. |
Exécuter | Signale l’exécution du thread de streaming. |
Suspendre | Signale au thread de streaming qu’il devient actif. |
Arrêter | Signale au thread de diffusion en continu qu’il s’arrête. |
Méthodes virtuelles pures | Description |
FillBuffer | Remplit un exemple de média avec des données. |
IPin, méthodes | Description |
QueryId | Récupère un identificateur pour l’épingle. |
Configuration requise
Condition requise | Valeur |
---|---|
En-tête |
|
Bibliothèque |
|