Condividi tramite


Metodo IMemAllocatorCallbackTemp::SetNotify (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 SetNotify metodo imposta o rimuove un callback nell'allocatore. L'allocatore chiama il metodo di callback ogni volta che viene chiamato il metodo IMemAllocator::ReleaseBuffer dell'allocatore .

Sintassi

HRESULT SetNotify(
  IMemAllocatorNotifyCallbackTemp *pNotify
);

Parametri

pNotify

Puntatore all'interfaccia IMemAllocatorNotifyCallbackTemp che verrà usata per il callback. Il chiamante deve implementare l'interfaccia . Usare il valore NULL per rimuovere il callback.

Valore restituito

Restituisce S_OK in caso di esito positivo o un codice di errore in caso contrario.

Commenti

Ogni volta che viene chiamato il metodo ReleaseBuffer dell'allocatore, l'allocatore chiama il metodo NotifyRelease nell'interfaccia fornita in pNotify. Il metodo ReleaseBuffer restituisce un campione multimediale all'elenco gratuito dell'allocatore. Gli esempi chiamano questo metodo quando i conteggi dei riferimenti raggiungono zero.

L'allocatore contiene un conteggio dei riferimenti sull'interfaccia IMemAllocatorNotifyCallbackTemp del chiamante. In questo modo è possibile creare conteggi di riferimenti circolari, impedendo il corretto rilascio degli oggetti nel grafico. Pertanto, quando il chiamante non necessita più di notifiche di callback, deve chiamare di nuovo questo metodo con il valore NULL. Un momento appropriato per eseguire questa operazione è quando il grafico si arresta oppure quando i pin vengono disconnessi.

Requisiti

Requisito Valore
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

Vedi anche

Codici di errore e di esito positivo

Interfaccia IMemAllocatorCallbackTemp