Metodo IAMGraphStreams::FindUpstreamInterface (strmif.h)

[La funzionalità associata a questa pagina, DirectShow, è una funzionalità legacy. È stata sostituita da MediaPlayer, IMFMediaEngine e Audio/Video Capture in Media Foundation. Queste funzionalità sono state ottimizzate per Windows 10 e Windows 11. Microsoft consiglia vivamente che il nuovo codice usi MediaPlayer, IMFMediaEngine e Audio/Video Capture in Media Foundation invece di DirectShow, quando possibile. Microsoft suggerisce che il codice esistente che usa le API legacy venga riscritto per usare le nuove API, se possibile.

Il FindUpstreamInterface metodo cerca nel grafico dei filtri un'interfaccia specificata, upstream da un pin specificato.

Sintassi

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

Parametri

[in] pPin

Puntatore all'interfaccia IPin di un pin. Il pin deve appartenere a un filtro nel grafico del filtro.

[in] riid

Riferimento a un identificatore di interfaccia (IID) che specifica l'interfaccia da trovare.

[out] ppvInterface

Indirizzo di un puntatore void. Se il metodo ha esito positivo, questa variabile riceve un puntatore all'interfaccia specificata da riid.

[in] dwFlags

Combinazione di flag dall'enumerazione AM_INTF_SEARCH_FLAGS , specificando cosa cercare (pin o filtri).

Valore restituito

Restituisce uno dei valori HRESULT seguenti.

Codice restituito Descrizione
E_NOINTERFACE
Interfaccia non trovata.
E_POINTER
Puntatore non valido.
S_OK
Operazione completata.

Commenti

Se dwFlags è zero, questo metodo cerca l'interfaccia nell'ordine seguente:

  1. Esegue una query sul pin specificato da pPin.
  2. Se pPin è un pin di input, chiama FindUpstreamInterface in modo ricorsivo sul pin di output connesso a pPin, se presente.

    Se pPin è un pin di output, esegue una query sul filtro proprietario di pPin. Crea quindi un elenco di pin di input nel filtro con connessioni interne a pPin e chiama FindUpstreamInterface in modo ricorsivo su tali pin di input.

    Per creare un elenco di pin di input con connessioni interne, il metodo esegue le operazioni seguenti:

Si arresta al primo oggetto trovato che supporta l'interfaccia . È possibile limitare gli oggetti in cui viene eseguita la ricerca (filtri, pin di input o pin di output) impostando dwFlags su un valore diverso da zero.
Nota Il metodo ICaptureGraphBuilder2::FindInterface implementa un approccio più generale a questo problema e nella maggior parte delle situazioni è preferibile.
 

Requisiti

Requisito Valore
Client minimo supportato Windows XP [solo app desktop]
Server minimo supportato Windows Server 2003 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione strmif.h (include Dshow.h)
Libreria Strmiids.lib

Vedi anche

Codici di errore e di esito positivo

Interfaccia IAMGraphStreams