Compartilhar via


Gráficos de filtro de áudio

Um grafo de filtro KS é uma coleção de filtros KS que foram conectados para processar um ou mais fluxos de dados. Um grafo de filtro de áudio é um grafo de filtro KS que consiste em filtros que processam fluxos de dados de áudio. Por exemplo, a figura a seguir é um diagrama simplificado de um grafo de filtro de áudio que executa a renderização e a captura de áudio.

Diagrama ilustrando um grafo de filtro de áudio simples para renderização e captura.

Na figura, o grafo de filtro se estende dos pinos na parte superior dos dois filtros de onda até os pinos na parte inferior dos dois filtros de topologia. Os módulos de software do modo de usuário e os dispositivos de áudio externos (ou seja, o alto-falante e o microfone) ficam fora do grafo.

Os quatro filtros na metade inferior da figura representam dispositivos de hardware em um adaptador de áudio que podem renderizar e capturar fluxos de ondas. Cada um dos filtros mostrados na figura é implementado associando um driver de porta a um driver de miniporta. O driver do adaptador forma um filtro de onda associando o driver de porta WaveRT, WavePci ou WaveCyclic a um driver de miniporto WaveXxx correspondente. O driver do adaptador forma um filtro de topologia associando o driver de porta de topologia a um driver de miniporta de topologia.

No lado esquerdo da figura, o fluxo de áudio de um aplicativo DirectSound ou waveOut (superior) é reproduzido por meio de um alto-falante (inferior). No lado direito, um aplicativo DirectSoundCapture ou waveIn (superior) registra o fluxo que é inserido de um microfone (inferior). Em ambos os lados, uma instância do mecanismo de áudio, que executa a combinação para o sistema no Windows Vista, é interposta entre o filtro de onda e o aplicativo. (No Windows Server 2003, Windows XP, Windows 2000 e Windows Me/98, o driver do sistema KMixer é o mixer do sistema.)

O mecanismo de áudio é um filtro de software versátil que é executado no modo de usuário e pode converter prontamente entre uma variedade de formatos de áudio e taxas de exemplo em seus pinos de origem e coletor. O mecanismo de áudio normalmente pode acomodar as diferenças entre o formato de fluxo para o qual o hardware está configurado e o formato de fluxo esperado pelo aplicativo.

Na parte inferior da figura anterior, o pino de origem que conduz o alto-falante e o pino do coletor que recebe o sinal de microfone são rotulados como pinos de ponte. Um pino de ponte conecta o limite entre um grafo de filtro e o mundo externo.

Na figura anterior, o caminho de dados mostrado entre cada filtro de onda e seu filtro de topologia correspondente normalmente representa uma conexão física: uma conexão de hardware fixa no adaptador de áudio que não pode ser configurada pelo software.

Como um pino de ponte ou um pino com uma conexão física está permanentemente conectado, o pino existe implicitamente e não pode ser instanciado ou excluído. Portanto, não há objetos de pino de ponte (instâncias de pinos de ponte) para os quais enviar IRPs, embora você possa consultar um objeto de filtro para as propriedades KSPROPSETID_Pin de seus pinos de ponte. A mesma regra se aplica a pinos com conexões físicas.

O sinal que passa por um pino de ponte ou conexão física pode ser analógico ou digital.

Por exemplo, na figura anterior, os dois pinos de ponte manipulam sinais analógicos. O pino de ponte à esquerda transmite o sinal de saída de um DAC (conversor digital para analógico), que conduz um alto-falante. O pino de ponte à direita recebe o sinal de um microfone, que insere um ADC (conversor analógico para digital). No entanto, um pino de ponte também pode representar um conector S/PDIF em um dispositivo de áudio. Nesse caso, o sinal que passa pelo pino da ponte é digital e não analógico.