Fluxo de Dados para desenvolvedores de filtro

[O recurso associado a esta página, DirectShow, é um recurso herdado. Ele foi substituído por MediaPlayer, IMFMediaEngine e Captura de Áudio/Vídeo na 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 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.]

Esta seção descreve detalhadamente como os dados se movem pelo grafo de filtro. Ele se concentra no transporte de memória local usando a interface IMemInputPin ou IAsyncReader . Destina-se a desenvolvedores que estão escrevendo seus próprios filtros personalizados. Para obter uma introdução geral sobre como o Microsoft DirectShow lida com o fluxo de dados, consulte Fluxo de Dados no Grafo de Filtro.

Muitos dados passam por um grafo de filtro. Ele se enquadra aproximadamente em duas categorias: dados de mídia e dados de controle. Em geral, os dados de mídia viajam downstream e controlam as viagens de dados upstream. Os dados de mídia incluem os quadros de vídeo, exemplos de áudio, pacotes MPEG e assim por diante que compõem um fluxo, mas também inclui comandos de liberação, notificações de fim de fluxo e outros dados que viajam com o fluxo. Os dados de controle não fazem parte do fluxo de mídia. Exemplos de dados de controle são solicitações de controle de qualidade e comandos seek.

Esta seção contém os artigos a seguir.

Gerenciamento de controle de qualidade

Threads e seções críticas

Escrevendo filtros do DirectShow