CTransInPlaceFilter.Receive-Methode
[Das dieser Seite zugeordnete Feature DirectShow ist ein Legacyfeature. Es wurde durch MediaPlayer, IMFMediaEngine und Audio/Video Capture in Media Foundation ersetzt. Diese Features wurden für Windows 10 und Windows 11 optimiert. Microsoft empfiehlt dringend, dass neuer Code nach Möglichkeit MediaPlayer, IMFMediaEngine und Audio/Video Capture in Media Foundation anstelle von DirectShow verwendet. Microsoft schlägt vor, vorhandenen Code, der die Legacy-APIs verwendet, um nach Möglichkeit die neuen APIs zu verwenden.]
Die Receive
-Methode empfängt ein Medienbeispiel, verarbeitet es und übermittelt es an den nachgeschalteten Filter.
Syntax
HRESULT Receive(
IMediaSample *pSample
);
Parameter
-
pSample
-
Zeiger auf die IMediaSample-Schnittstelle im Beispiel.
Rückgabewert
Gibt einen HRESULT-Wert zurück. Mögliche Werte sind die in der folgenden Tabelle gezeigten Werte.
Rückgabecode | BESCHREIBUNG |
---|---|
|
Erfolgreich |
|
Unerwarteter Fehler |
Bemerkungen
Der Eingabenadel des Filters ruft diese Methode auf, wenn er ein Beispiel empfängt. Der Filter ruft die Transform-Methode auf, die von der abgeleiteten Klasse implementiert werden muss. Die Transform-Methode verarbeitet die Daten. Wenn der Filter nur einen Zuweisungsator verwendet, übergibt er pSample direkt an die Transform-Methode . Andernfalls wird pSample kopiert und die Kopie übergeben.
Wenn die Transform-Methode S_FALSE zurückgibt, löscht die Receive
Methode das Beispiel. Beim ersten gelöschten Beispiel sendet der Filter ein EC_QUALITY_CHANGE-Ereignis an den Filterdiagramm-Manager. Andernfalls liefert der Filter das Ausgabebeispiel, wenn die Transform-Methode S_OK zurückgibt. Dazu wird die IMemInputPin::Receive-Methode auf dem Downstreameingabenadel aufgerufen.
Anforderungen
Anforderung | Wert |
---|---|
Header |
|
Bibliothek |
|