Minidrivers de arquitetura do driver de difusão
Os minidrivers BDA (Arquitetura do Driver de Difusão) controlam o hardware que executa as seguintes operações:
Ajustando um sinal de transmissão digital
Rebaixando o sinal digital
Capturando quadros do sinal digital
Demultiplexing do sinal em fluxos de vídeo, áudio e dados
Os minidrivers BDA são minidrivers AVStream executados sob o módulo AVStream no driver de streaming de kernel ks.sys. O AVStream é um driver de classe que fornece um modelo de classe de streaming de kernel unificado para minidrivers de áudio e vídeo e que dá suporte ao uso de objetos COM sem alterar binários de minidriver existentes. O driver de classe AVStream fornece grande parte do comportamento padrão necessário para fazer o filtro de um minidriver funcionar como um filtro compatível com streaming de kernel WDM. Para simplificar a tarefa de escrever minidrivers BDA, você pode usar a biblioteca de suporte do BDA (Bdasup.lib) de funções incluídas no WDK (Microsoft Windows Driver Kit). Essa biblioteca fornece um tratamento padrão extensivo para a propriedade e os conjuntos de métodos do minidriver BDA.
Normalmente, os gravadores de driver só precisam codificar as estruturas de modelo estáticas apropriadas, registrá-las na biblioteca de suporte do BDA e, em seguida, permitir que a biblioteca forneça tratamento padrão para todas as propriedades e métodos. Em alguns casos, um minidriver BDA deve interceptar uma solicitação de propriedade ou método e executar operações apropriadas.
A figura a seguir mostra uma visão geral da arquitetura para minidrivers BDA:
As seções a seguir descrevem os detalhes de implementação de um minidriver BDA, discutem detalhes de alguns conjuntos de propriedades e métodos e contêm código de exemplo que mostra como interceptar determinadas propriedades e métodos:
Inicializando um minidriver BDA
Definindo tabelas de automação
Usando conjuntos de propriedades e métodos do BDA