Compartilhar via


Evitando a cópia de dados

Você pode melhorar o desempenho do driver projetando seu hardware de áudio para evitar a cópia desnecessária de dados.

Você pode obter os melhores resultados implementando seu hardware para executar o DMA de dispersão/coleta verdadeiro e escrevendo um driver de miniporto WavePci para gerenciar o hardware. Seu dispositivo pode acessar diretamente buffers de dados de reprodução ou buffers de registro vazios onde quer que estejam localizados na memória do sistema. Isso elimina muitas intervenções desnecessárias de software e cópia de dados demoradas.

No entanto, se você estiver projetando um dispositivo WaveCyclic, poderá melhorar seu desempenho tornando seu buffer de hardware diretamente acessível como memória do sistema. Isso elimina a sobrecarga de copiar dados de um buffer intermediário na memória do sistema.

Além disso, se o dispositivo exigir um formato de áudio com uma ordenação de canal incompatível com os formatos de áudio WDM padrão, o driver poderá ter que executar a conversão in-loco de cada quadro de áudio em um buffer intermediário antes que o hardware possa processá-lo. Isso pode prejudicar o desempenho. Para obter informações adicionais, consulte Dados de áudio de vários canais e Arquivos WAVE.