Compartilhar via


Dispositivos de áudio virtual

Os dispositivos de áudio virtual representam os grafos de filtro que renderizam e capturam conteúdo de áudio. O driver de áudio do sistema (SysAudio) usa os componentes de hardware e software disponíveis para determinar os grafos de filtro a serem compilados.

Para obter mais informações sobre o driver de áudio do sistema, consulte Driver do Sistema SysAudio.

Os clientes do SysAudio incluem o DirectSound e o driver do sistema WDMAud, que serve como a interface entre drivers de áudio WDM e as APIs multimídia do Microsoft Windows específicas de áudio waveIn, waveOut, midiIn, midiOut, mixer e aux (descritos em SDK do Microsoft Windows documentação).

O utilitário KsStudio no WDK (Kit de Driver do Windows) é um exemplo de um aplicativo que ignora o SysAudio e permite que os usuários construam grafos de filtro manualmente.

Após a enumeração de dispositivo PnP, o SysAudio faz um balanço dos componentes de hardware e software de áudio registrados para determinar como construir os vários grafos de filtro de áudio que seus clientes podem exigir.

Depois de determinar a lista de grafos de filtro que ele pode criar com base nos componentes de hardware e software disponíveis, o SysAudio registra esses grafos como dispositivos de áudio virtual para reprodução, gravação, entrada/saída MIDI e combinação. O SysAudio reserva a categoria de registro KSCATEGORY_AUDIO_DEVICE exclusivamente para seus dispositivos de áudio virtual. Os drivers de adaptador não devem se registrar nessa categoria.

Um cliente SysAudio pode tratar uma fábrica de filtros para um dispositivo de áudio virtual de forma semelhante a uma fábrica de filtros para um componente de hardware ou software. Quando solicitado por um cliente a instanciar um determinado pino em um dispositivo virtual, o SysAudio constrói o grafo automaticamente e gerencia as conexões de pino internas do grafo de forma transparente para o cliente. Isso permite que o cliente trate um grafo de filtro como um único filtro, evitando assim complexidades do gerenciamento de grafo, como comunicação entre filtros.