ICaptureGraphBuilder2::FindInterface
9/8/2008
Este método localiza o gráfico para uma interface especificada, a partir um filtro especificado. Você pode restringir a pesquisa para uma seção do gráfico upstream ou downstream do filtro, ou restringi-lo a uma determinada categoria pino ou tipo de mídia.
Syntax
HRESULT FindInterface(
const GUID* pCategory,
const GUID* pType,
IBaseFilter* pf,
REFIID riid,
void** ppint
);
Parameters
pCategory
[no] Ponteiro para uma GUID que especifica critérios de pesquisa. Consulte " Comentários " para obter mais informações. O seguinte valores são possíveis:- & LOOK_UPSTREAM_ONLY
- & LOOK_DOWNSTREAM_ONLY
- Uma categoria pino a partir de AMPROPERTY_PIN_CATEGORY propriedade definida (consulte Conjunto de propriedades de pino).
- NULL
Consulte " Comentários " para obter mais informações.
- pType
[no] Ponteiro para uma GUID que especifica o principal de um pino saída, tipo de mídia ou NULL.
- PF
[no] Ponteiro para o Interface IBaseFilter do filtro. O método Inicia a pesquisa desse filtro.
- riid
[no] Identificador de interface (IID) da interface para localizar.
- ppint
[out] Endereço de uma variável que recebe o ponteiro interface. Não se esqueça versão o ponteiro interface recuperados quando você terminar com a interface.
Return Value
Retorna um HRESULT valor. Valores possíveis incluem o seguinte.
Return código | Descrição |
---|---|
S_OK |
O sucesso. |
E_FAIL |
Falha. |
E_NOINTERFACE |
Nenhuma interface suportada. |
E_POINTER |
NULL argumento ponteiro. |
Remarks
Em um gráfico captura, vários filtros e pinos podem expor interfaces de configuração Propriedades como compactação parâmetros (Interface IAMVideoCompression) ou transmitir formatos (Interface IAMStreamConfig). Você pode usar esse método para localizar uma interface, sem escrever codificar especial que percorre o gráfico.
Observação
Fazer não chamar este método para obter um Interface IVideoWindow ponteiro.Sempre consulta o filtro gráfico Gerenciador para esta interface.Caso contrário, o filtro gráfico Gerenciador não responderá corretamente a alterações no resolução de tela e outros eventos.
Se a pasta pCategory parâmetro é NULL, este método localiza o gráfico inteiro para a interface solicitada. Iniciando a partir de filtro especificado pelo PF parâmetro, ele consultará o seguinte objetos no gráfico.
- O filtro
- Pinos do filtro
- Todos os filtros downstream, incluindo seus pinos
- Todos os filtros upstream, incluindo seus pinos
Você pode restringir a pesquisa por configuração de pCategory e pType parâmetros, como segue:
- Se pCategory é igual a & LOOK_UPSTREAM_ONLY, a pesquisa começa a partir entrada do filtro de fixa e continua upstream. Ela não inclui o filtro ou nada downstream a partir de filtro. O pType parâmetro será ignorado.
- Se pCategory é igual a & LOOK_DOWNSTREAM_ONLY, a pesquisa começa a partir saída pinos do filtro de e continua downstream. Ela não inclui o filtro ou nada upstream a partir de filtro. O pType parâmetro será ignorado.
- Se pCategory Especifica uma categoria pino, a parte downstream da pesquisa é restrita a saída pinos no filtro que correspondem a categoria pino tanto o tipo de mídia fornecido na pType parâmetro. Neste maiúsculas e minúsculas, o método também procura o filtro e tudo upstream a partir de filtro.
Pino categorias são úteis para localizar as interfaces pino filtros captura. De exemplo, um filtro de captura pode ter separar pinos para captura e visualizar. Se você especificar uma categoria pino, você também deve especificar o tipo de mídia, fazer determinados o método seleciona o filtro correto e pino.
Alguns vídeo filtros captura tem um vídeo porta pino (PIN_CATEGORY_VIDEOPORT) instead of um pino visualizar. Se você especificar PIN_CATEGORY_PREVIEW e MEDIATYPE_Video (consulte Tipos de mídia), o método trata qualquer vídeo pinos porta como visualizar pinos. Seu aplicativo não é necessário testar para essa possibilidade.
Aplicativos do DirectShow e Filtros do DirectShow têm diferentes requisitos biblioteca arquivo de inclusão e link.
Para obter mais informações, consulte Configurando O ambiente de criação.
Requirements
Windows Embedded CE | Windows Embedded CE 6.0 and later |
Windows Mobile | Pocket PC for Windows Mobile Version 5.0 and later, Smartphone for Windows Mobile Version 5.0 and later |
Note | Microsoft DirectShow applications and DirectShow filters have different include file and Library requirements For more information, see Setting Up the Build Environment |
See Also
Reference
ICaptureGraphBuilder2 Interface
IBaseFilter Interface
IAMVideoCompression Interface
IAMStreamConfig Interface
IVideoWindow Interface
Media Types and Sub Types