Médias e categorias
Tradicionalmente, os fluxos do Microsoft DirectShow foram identificados exclusivamente por seu Tipo de Mídia. Embora isso seja suficiente para renderizar grafos de filtro simples, grafos e grafos mais complexos que refletem uma topologia de hardware exigem informações adicionais para a criação de grafo correta. Para permitir que a criação de grafo de filtro identifique e conecte os pinos corretamente, os minidrivers de captura de vídeo especificam categorias de fluxo às quais seus pinos pertencem, bem como os meios.
As categorias de fluxo são um método para identificar a finalidade principal de um pin. Por exemplo, um filtro de captura pode ter dois pinos de saída com MediaTypes idênticos com suporte em cada pin. No caso em que o filtro dá prioridade a um dos pinos, o pino de prioridade mais alta pode ser atribuído à categoria de fluxo de captura (PINNAME_VIDEO_CAPTURE) e ao pino de prioridade mais baixa para a categoria de fluxo de visualização (PINNAME_VIDEO_PREVIEW).
Os meios são um método para garantir a conectividade entre dois pinos em filtros separados, como o pino de saída de áudio analógico em um filtro de sintonizador de TV (para dar suporte a áudio de TV) e o pino de entrada de áudio de TV em um filtro de áudio de TV. Uma maneira de pensar em um meio é que ele identifica um fio entre o pino de saída de um filtro e o pino de entrada de outro filtro.
As interfaces do construtor de grafo DirectShow, IFilterMapper2 e ICaptureGraphBuilder, usam esses métodos para construir grafos de filtro com base em médias e categorias de fluxo.