Metodo IAsyncReader::WaitForNext (strmif.h)
[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 WaitForNext
metodo attende il completamento della richiesta di lettura in sospeso successiva.
Sintassi
HRESULT WaitForNext(
[in] DWORD dwTimeout,
[out] IMediaSample **ppSample,
[out] DWORD_PTR *pdwUser
);
Parametri
[in] dwTimeout
Specifica un timeout in millisecondi. Usare il valore INFINITE per attendere in modo indefinito
[out] ppSample
Indirizzo di una variabile che riceve un puntatore dell'interfaccia IMediaSample .
[out] pdwUser
Puntatore a una variabile che riceve il valore del parametro dwUser specificato nel metodo IAsyncReader::Request .
Valore restituito
Restituisce un valore HRESULT . Di seguito sono indicati alcuni valori possibili.
Codice restituito | Descrizione |
---|---|
|
Timeout scaduto oppure il pin viene scaricato. |
|
Il pin sta scaricando. |
|
Si è verificato un errore di lettura. |
|
Operazione completata. |
|
Raggiunto la fine del file; recuperate meno byte rispetto alle richieste. |
Commenti
Se il metodo ha esito positivo, il parametro ppSample contiene un puntatore a un esempio multimediale, il cui buffer contiene i dati richiesti. Chiamare il metodo IMediaSample::GetTime e dividere i risultati per 10.000.000 per determinare i byte di inizio e arresto. Gli esempi possono essere restituiti in ordine non ordinato. Rilasciare l'esempio al termine dell'elaborazione dei dati.
Il metodo ha esito negativo se il pin viene scaricato. Tuttavia, può restituire un esempio vuoto in ppSample. Se *ppSample non è NULL, rilasciare l'esempio ed eliminarlo. Per altre informazioni, vedere IAsyncReader::BeginFlush.
Se si verifica un errore di lettura, il filtro di origine invia un evento di errore a Filter Graph Manager; il chiamante non deve segnalare un errore.
Requisiti
Client minimo supportato | Windows 2000 Professional [solo app desktop] |
Server minimo supportato | Windows 2000 Server [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | strmif.h (include Dshow.h) |
Libreria | Strmiids.lib |