Drivers de áudio personalizados
Dispositivos de áudio que não são compatíveis com UAA exigem drivers personalizados fornecidos pelo fornecedor. Além disso, um adaptador de áudio compatível com UAA pode incorporar recursos proprietários que não são compatíveis com os drivers de classe UAA; esses recursos só poderão ser acessados por aplicativos se o fornecedor fornecer um driver de áudio personalizado. Somente os recursos padrão da UAA são acessíveis por meio dos drivers UAA fornecidos pelo sistema. Para obter informações sobre os recursos com suporte para UAA, consulte o white paper Arquitetura de Áudio Universal .
Duas opções estão disponíveis para fornecedores de hardware para escrever drivers de áudio personalizados: desenvolver um driver de adaptador de áudio personalizado para uso com o driver do sistema PortCls (Portcls.sys) ou desenvolver um minidriver personalizado para uso com o driver do sistema de classe AVStream (Ks.sys).
A maioria dos drivers personalizados para adaptadores de áudio usa PortCls, que é fornecido como parte do sistema operacional. O driver do sistema PortCls (Portcls.sys) contém uma infraestrutura interna de driver de áudio que facilita a tarefa de escrever um driver de áudio personalizado. PortCls implementa vários drivers de porta, cada um dos quais é especializado para gerenciar as funções genéricas de um tipo específico de onda, MIDI ou dispositivo de mixer. Depois de selecionar um conjunto apropriado de drivers de porta para gerenciar as funções de áudio no adaptador de áudio, o fornecedor desenvolve um conjunto complementar de drivers de miniporta que funcionam em conjunto com os drivers de porta selecionados e controlam os recursos dependentes de hardware dos dispositivos de áudio.
O fornecedor também pode dar suporte a um dispositivo de áudio desenvolvendo um minidriver de classe AVStream personalizado. O minidriver funciona em conjunto com o driver do sistema de classes AVStream, que é fornecido como parte do sistema operacional. Implementar um driver AVStream é mais difícil do que usar PortCls, mas isso ainda pode ser apropriado para dispositivos que integram áudio e vídeo. Um driver AVStream também pode ser necessário para um dispositivo de áudio USB ou IEEE 1394 existente que não está em conformidade com os requisitos do driver de sistema de classe USBAudio ou AVCAudio fornecido pelo sistema.
Para quase todos os adaptadores de áudio PCI que exigem drivers personalizados fornecidos pelo fornecedor, os fornecedores devem escolher PortCls.
O driver do sistema de classes AVStream (Ks.sys) não tem a maioria das funções de suporte específicas de áudio que existem em PortCls.
Para obter mais informações sobre PortCls, consulte Introdução à classe de porta. Para obter mais informações sobre o AVStream, consulte Visão geral do AVStream.