Metodo IFilterGraph2::AddSourceFilterForMoniker (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 AddSourceFilterForMoniker
metodo crea un filtro di origine da un puntatore IMoniker e aggiunge il filtro al grafico. Ad esempio, è possibile ottenere un moniker per un dispositivo di sistema, ad esempio un dispositivo di acquisizione video, e aggiungere un filtro di acquisizione video per tale dispositivo. Per altre informazioni sui moniker del dispositivo di sistema, vedere l'interfaccia ICreateDevEnum .
Sintassi
HRESULT AddSourceFilterForMoniker(
[in] IMoniker *pMoniker,
[in] IBindCtx *pCtx,
[in] LPCWSTR lpcwstrFilterName,
[out] IBaseFilter **ppFilter
);
Parametri
[in] pMoniker
Puntatore all'interfaccia IMoniker .
[in] pCtx
Puntatore a un'interfaccia del contesto di associazione IBindCtx .
[in] lpcwstrFilterName
Nome del filtro.
[out] ppFilter
Riceve un puntatore al puntatore IBaseFilter del filtro di origine. Il chiamante deve rilasciare l'interfaccia.
Valore restituito
Restituisce e valore HRESULT . Di seguito sono indicati alcuni valori possibili.
Codice restituito | Descrizione |
---|---|
|
Operazione completata. |
|
Successo; ma il nome specificato è stato duplicato, quindi Filter Graph Manager ha modificato il nome. |
|
Esito negativo. |
|
Memoria insufficiente. |
|
Impossibile aggiungere un filtro con un nome duplicato. |
|
Impossibile caricare il filtro di origine per . |
|
Il tipo di supporto di questo file non viene riconosciuto. |
Commenti
Filter Graph Manager contiene un conteggio dei riferimenti per il filtro finché il filtro non viene rimosso dal grafico o viene rilasciato Filter Graph Manager.
Esempio
C++ |
---|
IBaseFilter *pSource = NULL; IMoniker *pMoniker = NULL; |
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 |