Metodo CBaseMediaFilter.GetState

[La funzionalità associata a questa pagina, DirectShow, è una funzionalità legacy. È stata sostituita da MediaPlayer, FMMediaEngine 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, FMMediaEngine e Audio/Video Capture in Media Foundation anziché DirectShow, quando possibile. Microsoft suggerisce che il codice esistente che usa le API legacy venga riscritto per usare le nuove API, se possibile.

Il GetState metodo recupera lo stato dell'oggetto (in esecuzione, arrestato o sospeso). Questo metodo implementa il metodo IMediaFilter::GetState .

Sintassi

HRESULT GetState(
   DWORD        dwMilliSecsTimeout,
   FILTER_STATE *State
);

Parametri

dwMilliSecsTimeout

Intervallo di timeout, in millisecondi.

State

Puntatore a una variabile che riceve un membro del tipo enumerato FILTER_STATE , che indica lo stato dell'oggetto.

Valore restituito

Restituisce S_OK o E_POINTER.

Commenti

Nella classe base tutte le transizioni di stato sono sincrone e il parametro dwMilliSecsTimeout viene ignorato. Se una classe derivata esegue transizioni di stato asincrone, deve eseguire l'override di questo metodo per attendere durante le transizioni di stato, con un timeout di dwMilliSecsTimeout millisecondi.

Requisiti

Requisito Valore
Intestazione
Amfilter.h (include Streams.h)
Libreria
Strmbase.lib (build al dettaglio);
Strmbasd.lib (build di debug)

Vedi anche

Classe CBaseMediaFilter