Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
[O recurso associado a esta página, DirectShow, é um recurso herdado. Foi substituído por MediaPlayer, IMFMediaEnginee Audio/Video Capture in Media Foundation. Esses recursos foram otimizados para Windows 10 e Windows 11. A Microsoft recomenda vivamente que o novo código utilize MediaPlayer, IMFMediaEngine e Captura de Áudio/Vídeo no 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 DirectShow fornece vários componentes que podem ser usados para criar gráficos de filtro. Estes incluem o seguinte:
- Filter Graph Manager. Este objeto controla o gráfico de filtro. Ele suporta o IGraphBuilder, IMediaControle interfaces de IMediaEventEx, entre outros. Todos os aplicativos DirectShow usam esse objeto em algum momento, embora em alguns casos outro objeto crie o Gerenciador de Gráfico de Filtro para o aplicativo.
- Capture Graph Builder. Este objeto fornece métodos adicionais para a criação de gráficos de filtro. Ele foi originalmente projetado para construir gráficos que executam captura de vídeo (daí o nome), mas é útil para muitos outros tipos de gráfico de filtro personalizado. Ele suporta o ICaptureGraphBuilder2 interface.
- Mapeador de Filtros e System Device Enumerator. Esses objetos localizam filtros que estão registrados no sistema do usuário ou que representam dispositivos de hardware.
- DVD Graph Builder. Este objeto cria gráficos de filtro para reprodução e navegação de DVD. Ele suporta o IDvdGraphBuilder interface.
Ligação Inteligente
O termo "Intelligent Connect" abrange um conjunto de algoritmos que o Filter Graph Manager usa para construir todo ou parte de um gráfico de filtro. Sempre que o Filter Graph Manager requer filtros adicionais para completar o gráfico, ele faz aproximadamente o seguinte:
- Se houver um filtro atualmente no gráfico, com pelo menos um pino de entrada desconectado, o Gerenciador de gráficos de filtro tentará usar esse filtro.
- Caso contrário, o Gerenciador de Gráfico de Filtro procurará no Registro filtros que possam aceitar o tipo de mídia correto para a conexão. Cada filtro tem um valor de registro chamado "Mérito", que indica aproximadamente a probabilidade de o filtro ser útil para completar o gráfico. O Gerenciador de Gráficos de Filtros tenta filtros em ordem de valor de mérito. Para cada tipo de fluxo (como áudio, vídeo ou MIDI), o renderizador padrão tem um alto mérito. Os descodificadores também têm um elevado mérito. Os filtros para fins especiais têm baixo mérito.
Se o Gerenciador de Gráficos de Filtros ficar preso, ele voltará atrás e tentará uma combinação diferente de filtros. Você pode encontrar os detalhes exatos no tópico Intelligent Connect.
Tópicos relacionados