Metodo ISampleGrabber::SetCallback
[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.
Nota
[Deprecata. Questa API può essere rimossa dalle versioni future di Windows.]
Il metodo SetCallback specifica un metodo di callback da chiamare sugli esempi in ingresso.
Sintassi
HRESULT SetCallback(
ISampleGrabberCB *pCallback,
long WhichMethodToCallback
);
Parametri
-
pCallback
-
Puntatore a un'interfaccia ISampleGrabberCB contenente il metodo di callback o NULL per annullare il callback.
-
QualeMethodToCallback
-
Indice che specifica il metodo di callback. Deve essere uno dei valori seguenti.
Valore Descrizione 0 Il filtro Sample Grabber chiama il metodo ISampleGrabberCB::SampleCB . Questo metodo riceve un puntatore IMediaSample . 1 Il filtro Sample Grabber chiama il metodo ISampleGrabberCB::BufferCB . Questo metodo riceve un puntatore al buffer contenuto nell'esempio multimediale.
Valore restituito
Se questo metodo ha esito positivo, restituisce S_OK. In caso contrario, restituisce un codice di errore HRESULT .
Commenti
Il thread di elaborazione dati blocca fino a quando il metodo di callback non restituisce. Se il callback non restituisce rapidamente, può interferire con la riproduzione.
Il filtro non richiama la funzione di callback per gli esempi di preroll o per gli esempi in cui il membro dwStreamId della struttura AM_SAMPLE2_PROPERTIES è diverso da AM_STREAM_MEDIA.
Nota
Il file di intestazione Qedit.h non è compatibile con intestazioni Direct3D successive alla versione 7.
Nota
Per ottenere Qedit.h, scaricare l'aggiornamento Microsoft Windows SDK per Windows Vista e .NET Framework 3.0. Qedit.h non è disponibile nella Microsoft Windows SDK per Windows 7 e .NET Framework 3.5 Service Pack 1.
Requisiti
Requisito | Valore |
---|---|
Intestazione |
|
Libreria |
|
Vedi anche