Método IFilterGraph2::AddSourceFilterForMoniker (strmif.h)
[O recurso associado a esta página, DirectShow, é um recurso herdado. Foi substituído por MediaPlayer, IMFMediaEngine e Audio/Video Capture in Media Foundation. Esses recursos foram otimizados para Windows 10 e Windows 11. A Microsoft recomenda fortemente que o novo código use MediaPlayer, IMFMediaEngine e Audio/Video Capture in Media Foundation em vez de DirectShow, quando possível. A Microsoft sugere que o código existente que usa as APIs herdadas seja reescrito para usar as novas APIs, se possível.]
O AddSourceFilterForMoniker
método cria um filtro de origem de um ponteiro IMoniker e adiciona o filtro ao grafo. Por exemplo, você pode obter um moniker para um dispositivo do sistema, como um dispositivo de captura de vídeo, e adicionar um filtro de captura de vídeo para esse dispositivo. (Para obter mais informações sobre monikers de dispositivo do sistema, consulte a interface ICreateDevEnum .)
Sintaxe
HRESULT AddSourceFilterForMoniker(
[in] IMoniker *pMoniker,
[in] IBindCtx *pCtx,
[in] LPCWSTR lpcwstrFilterName,
[out] IBaseFilter **ppFilter
);
Parâmetros
[in] pMoniker
Ponteiro para a interface IMoniker .
[in] pCtx
Ponteiro para uma interface de contexto de associação IBindCtx .
[in] lpcwstrFilterName
Nome do filtro.
[out] ppFilter
Recebe um ponteiro para o ponteiro IBaseFilter do filtro de origem. O chamador deve liberar a interface .
Retornar valor
Retorna e o valor HRESULT . Os possíveis valores incluem os seguintes.
Código de retorno | Descrição |
---|---|
|
Êxito. |
|
Sucesso; mas o nome especificado era uma duplicata, portanto, o Gerenciador de Grafo de Filtro modificou o nome. |
|
Falha. |
|
Memória insuficiente. |
|
Falha ao adicionar um filtro com um nome duplicado. |
|
Não foi possível carregar o filtro de origem para. |
|
O tipo de mídia desse arquivo não é reconhecido. |
Comentários
O Gerenciador de Grafo de Filtro mantém uma contagem de referência no filtro até que o filtro seja removido do grafo ou o Gerenciador de Grafo de Filtro seja liberado.
Exemplos
C++ |
---|
IBaseFilter *pSource = NULL; IMoniker *pMoniker = NULL; |
Requisitos
Cliente mínimo com suporte | Windows 2000 Professional [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows 2000 Server [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | strmif.h (inclua Dshow.h) |
Biblioteca | Strmiids.lib |