Partilhar via


Manuseadores de Data-Intersection

Esta seção discute os tratadores de interseção de dados nos drivers de áudio do Microsoft Windows Driver Model (WDM). Para uma discussão mais ampla sobre o tratamento de interseção de dados para filtros KS em geral, consulte Interseções de Intervalo de Dados no AVStream.

Em versões mais antigas do Windows, como o Windows XP, o driver do sistema SysAudio constrói um dispositivo de áudio virtual conectando pares de pinos de filtro de áudio para formar um gráfico de filtro de áudio. Antes de um pino de origem num filtro poder ser conectado a um pino de destino de outro, SysAudio deve negociar um formato comum que os dois pinos possam usar para trocar dados. Os detalhes dessa negociação são amplamente delegados aos manipuladores de interseção de dados que são implementados nos filtros individuais.

Da mesma forma, no Windows Vista e posterior, o mecanismo de áudio deve negociar um formato de fluxo comum com o manipulador de interseção de dados no filtro de onda que representa o dispositivo de renderização de áudio.

Um driver de adaptador cria um filtro WaveRT para um dispositivo de áudio ao associar um dos seus drivers de miniporta ao driver de porta correspondente de Portcls.sys. O driver de porta contém um manipulador de interseção de dados padrão, mas o manipulador padrão sempre dá ao manipulador de interseção de dados proprietário do driver de miniporta a primeira oportunidade de determinar um formato comum. No entanto, se o manipulador proprietário recusar essa oportunidade, o manipulador padrão do driver de porta determinará o formato.

O manipulador de interseção de dados padrão do driver de porta foi projetado para lidar com os recursos de hardware mais comuns. Para dispositivos de áudio simples, o manipulador padrão fornece uma alternativa conveniente para implementar um manipulador proprietário no driver do adaptador. No entanto, adaptadores com recursos mais avançados podem precisar de manipuladores proprietários para expor todos os recursos do hardware.

O restante desta seção descreve algumas das limitações do manipulador de interseção de dados padrão do driver de porta e apresenta as técnicas necessárias para projetar um manipulador de interseção de dados proprietário para um driver de adaptador. São abordados os seguintes tópicos:

Intersecção de dados

Manipuladores padrão de Data-Intersection

Manipuladores proprietários Data-Intersection

Restrições de hardware na frequência da amostra

Tamanho do buffer de saída

Intervalos de dados com valores discretos

Curingas

Data-Range Propriedades