IGraphConfig::P ushThroughData-Methode (strmif.h)
[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 PushThroughData
-Methode pusht Daten durch das Filterdiagramm an den angegebenen Pin.
Syntax
HRESULT PushThroughData(
[in] IPin *pOutputPin,
[in] IPinConnection *pConnection,
[in] HANDLE hEventAbort
);
Parameter
[in] pOutputPin
Zeiger auf die IPin-Schnittstelle eines Ausgabestifts im Filterdiagramm.
[in] pConnection
Zeiger auf die IPinConnection-Schnittstelle eines Eingabestifts im Filterdiagramm. Dieser Parameter kann NULL sein.
[in] hEventAbort
Handle für ein Ereignis. Wenn der Aufrufer ein Filter ist, der einen seiner Datenverarbeitungsthreads aufruft, sollte dieser Parameter ein Handle für ein Ereignis sein, das signalisiert wird, wenn der Filter in einen beendeten Zustand versetzt wird. Andernfalls kann dieser Parameter NULL sein. Weitere Informationen finden Sie in den Hinweisen.
Rückgabewert
Gibt bei erfolgreicher Ausführung S_OK zurück. Gibt andernfalls einen Fehlercode zurück, der einer der folgenden Werte sein kann, oder andere, die nicht aufgeführt sind.
Rückgabecode | Beschreibung |
---|---|
|
Fehler beim Zuweisen des erforderlichen Arbeitsspeichers. |
|
Ein Kandidateneingabenadel konnte nicht gefunden werden. |
|
Der Filterzustand wurde während des Vorgangs geändert. |
Bemerkungen
Diese Methode durchläuft alle ausstehenden Daten von einem angegebenen Ausgabenadel bis zu einem angegebenen Eingabenadel. Optional können Sie die Eingabenadel nicht angegeben lassen und die Methode das Filterdiagramm nach dem besten Kandidaten durchsuchen lassen. Rufen Sie diese Methode nicht über den Thread auf, der Daten pusht.
Wenn ein Filter diese Methode in einem seiner eigenen Datenverarbeitungsthreads aufruft, entsteht das Potenzial für einen Deadlock. Die -Methode ruft eine Sperre für das Filterdiagramm ab, die verhindern kann, dass der Filter beim Empfangen eines Aufrufs von IMediaFilter::Stop beendet wird. Um diese Situation zu verhindern, verwendet die -Methode ein Handle für ein vom Filter bereitgestelltes Ereignisobjekt. Der Filter sollte das Ereignis signalisieren, wenn er einen Aufruf der Stop-Methode empfängt.
Anforderungen
Unterstützte Mindestversion (Client) | Windows XP [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2003 [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | strmif.h (include Dshow.h) |
Bibliothek | Strmiids.lib |