CBaseInputPin.ReceiveMultiple-Methode

[Das dieser Seite zugeordnete Feature DirectShow ist ein Legacyfeature. Es wurde von MediaPlayer, IMFMediaEngine und Audio/Video Capture in Media Foundation abgelöst. Diese Features wurden für Windows 10 und Windows 11 optimiert. Microsoft empfiehlt dringend, dass neuer Code mediaPlayer, IMFMediaEngine und Audio/Video Capture in Media Foundation anstelle von DirectShow verwendet, wenn möglich. Microsoft schlägt vor, dass vorhandener Code, der die Legacy-APIs verwendet, so umgeschrieben wird, dass nach Möglichkeit die neuen APIs verwendet werden.]

Die ReceiveMultiple -Methode empfängt ein Array von Beispielen. Diese Methode implementiert die IMemInputPin::ReceiveMultiple-Methode .

Syntax

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

Parameter

pSamples

Adresse eines Arrays von IMediaSample-Zeigern der Größe nSamples.

nSamples

Anzahl der zu verarbeitenden Beispiele.

nSamplesProcessed

Zeiger auf eine Variable, die die Anzahl der verarbeiteten Stichproben empfängt.

Rückgabewert

Gibt einen HRESULT-Wert zurück. Mögliche Werte sind die in der folgenden Tabelle aufgeführten Werte.

Rückgabecode BESCHREIBUNG
S_OK
Erfolg.
S_FALSE
Der Pin wird derzeit geleert; das Beispiel wurde abgelehnt.
E_POINTER
NULL-Zeigerargument.
VFW_E_INVALIDMEDIATYPE
Ungültiger Medientyp.
VFW_E_RUNTIME_ERROR
Ein Laufzeitfehler ist aufgetreten.
VFW_E_WRONG_STATE
Der Pin wird beendet.

Bemerkungen

Diese Methode verhält sich wie die CBaseInputPin::Receive-Methode , empfängt jedoch ein Array von Beispielen. In der Basisklasse durchläuft die -Methode das Array und ruft Mit jedem Beispiel Receive auf. Überschreiben Sie diese Funktion, wenn Ihr Filter Probenbatches effizienter verarbeiten kann, als sie einzeln zu verarbeiten.

Anforderungen

Anforderung Wert
Header
Amfilter.h (streams.h einschließen)
Bibliothek
Strmbase.lib (Einzelhandelsbuilds);
Strmbasd.lib (Debugbuilds)

Siehe auch

CBaseInputPin-Klasse