CBaseInputPin.ReceiveMultiple, méthode

La ReceiveMultiple méthode reçoit un tableau d’exemples. Cette méthode implémente la méthode IMemInputPin::ReceiveMultiple .

Syntaxe

HRESULT ReceiveMultiple(
   IMediaSample **pSamples,
   long         nSamples,
   long         *nSamplesProcessed
);

Paramètres

pSamples

Adresse d’un tableau de pointeurs IMediaSample , de taille nSamples.

nSamples

Nombre d’échantillons à traiter.

nSamplesProcessed

Pointeur vers une variable qui reçoit le nombre d’échantillons traités.

Valeur retournée

Retourne une valeur HRESULT . Les valeurs possibles incluent celles répertoriées dans le tableau suivant.

Code de retour Description
S_OK
Opération réussie.
S_FALSE
L’épingle est en cours de vidage ; l’échantillon a été rejeté.
E_POINTER
Argument de pointeur NULL.
VFW_E_INVALIDMEDIATYPE
Type de média non valide.
VFW_E_RUNTIME_ERROR
Une erreur d’exécution s’est produite.
VFW_E_WRONG_STATE
L’épingle est arrêtée.

Notes

Cette méthode se comporte comme la méthode CBaseInputPin::Receive , mais reçoit un tableau d’exemples. Dans la classe de base, la méthode effectue une boucle dans le tableau et appelle Receive avec chaque exemple. Remplacez cette fonction si votre filtre peut traiter des lots d’échantillons plus efficacement que de les traiter un par un.

Spécifications

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

Voir aussi

CBaseInputPin, classe