Méthode CPullPin.Receive

[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 Receive méthode est appelée lorsque l’objet reçoit un exemple de média de la broche de sortie. La classe dérivée doit implémenter cette méthode.

Syntaxe

virtual HRESULT Receive(
   IMediaSample *pSample
) = 0;

Paramètres

pSample

Pointeur vers l’interface IMediaSample de l’exemple multimédia.

Valeur renvoyée

Retourne une valeur HRESULT . Le renvoi d’une valeur autre que S_OK arrête le thread d’extraction de données.

Notes

Cette méthode est appelée chaque fois qu’un nouvel exemple arrive de la broche de sortie. Écrivez cette méthode de la même manière que la méthode IMemInputPin::Receive .

Les horodatages de l’exemple spécifient les décalages d’octet par rapport à la position de début d’origine spécifiée dans la méthode CPullPin::Seek .

La position de début est arrondie à la limite d’alignement la plus proche, et la position d’arrêt est arrondie à la limite d’alignement la plus proche. En outre, si la position d’arrêt dépasse la durée totale, la durée est utilisée à la place.

Tous les horodatages sont donnés sous la forme d’un décalage d’octet multiplié par 10 000 000, défini comme la constante UNITS. Ainsi, en principe, une seconde est un octet. Pour rechercher les décalages d’octet réels, appelez IMediaSample::GetTime et divisez les résultats par UNITÉS.

Configuration requise

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

Voir aussi

Classe CPullPin