Freigeben über


IAMGraphStreams::FindUpstreamInterface-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 FindUpstreamInterface Methode durchsucht das Filterdiagramm nach einer angegebenen Schnittstelle, Upstream von einem angegebenen Pin aus.

Syntax

HRESULT FindUpstreamInterface(
  [in]  IPin   *pPin,
  [in]  REFIID riid,
  [out] void   **ppvInterface,
  [in]  DWORD  dwFlags
);

Parameter

[in] pPin

Zeiger auf die IPin-Schnittstelle eines Pins. Der Pin muss zu einem Filter im Filterdiagramm gehören.

[in] riid

Verweis auf einen Schnittstellenbezeichner (Interface Identifier, IID), der die zu findende Schnittstelle angibt.

[out] ppvInterface

Adresse eines Voidzeigers. Wenn die Methode erfolgreich ist, erhält diese Variable einen Zeiger auf die durch riid angegebene Schnittstelle.

[in] dwFlags

Kombination von Flags aus der AM_INTF_SEARCH_FLAGS Enumeration, die angibt, was gesucht werden soll (Pins oder Filter).

Rückgabewert

Gibt einen der folgenden HRESULT-Werte zurück.

Rückgabecode Beschreibung
E_NOINTERFACE
Schnittstelle nicht gefunden.
E_POINTER
Ungültiger Zeiger.
S_OK
Erfolg.

Hinweise

Wenn dwFlags null ist, sucht diese Methode nach der Schnittstelle in der folgenden Reihenfolge:

  1. Sie fragt den von pPin angegebenen Pin ab.
  2. Wenn pPin ein Eingabenadel ist, wird FindUpstreamInterface rekursiv auf dem Ausgabepin aufgerufen, der mit pPin verbunden ist, falls vorhanden.

    Wenn pPin ein Ausgabepin ist, fragt er den Filter ab, der pPin besitzt. Anschließend wird eine Liste der Eingabenadeln im Filter erstellt, die interne Verbindungen mit pPin aufweisen, und ruft FindUpstreamInterface rekursiv für diese Eingabepins auf.

    Um eine Liste von Eingabenadeln mit internen Verbindungen zu erstellen, führt die Methode folgendes aus:

Es wird am ersten Objekt beendet, das gefunden wird, das die Schnittstelle unterstützt. Sie können die durchsuchten Objekte (Filter, Eingabenadeln oder Ausgabepins) einschränken, indem Sie dwFlags auf einen Wert ungleich 0 festlegen.
Hinweis Die ICaptureGraphBuilder2::FindInterface-Methode implementiert einen allgemeineren Ansatz für dieses Problem und wird in den meisten Situationen bevorzugt.
 

Anforderungen

Anforderung Wert
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

Weitere Informationen

Fehler- und Erfolgscodes

IAMGraphStreams-Schnittstelle