Driver de Miniporto WavePci
Importante O uso de WavePci não é mais recomendado, em vez disso, use WaverRT.
Um driver de miniporto WavePci gerencia as funções dependentes de hardware de um dispositivo de renderização de onda ou de captura de onda que tem hardware DMA de dispersão/coleta que pode transferir dados de áudio de ou para qualquer local na memória física. Um dispositivo de onda que não tem a capacidade de executar transferências de dispersão/coleta ou é capaz de acessar apenas regiões restritas na memória física deve usar um driver de miniporto WaveCyclic .
Um driver de miniporto WavePci deve implementar duas interfaces:
A interface de miniporte executa a inicialização do driver de miniporto, a enumeração de canal e a criação de fluxo.
A interface de fluxo gerencia um fluxo de ondas e expõe a maior parte da funcionalidade do driver de miniport.
A interface de miniport, IMiniportWavePci, herda os métodos na interface IMiniport . IMiniportWavePci fornece os seguintes métodos adicionais:
Inicializa o objeto miniport.
Cria um novo objeto de fluxo.
Notifica o driver de miniporto de uma solicitação de serviço.
A interface de fluxo, IMiniportWavePciStream, herda os métodos da interface IUnknown . IMiniportWavePciStream fornece os seguintes métodos adicionais:
IMiniportWavePciStream::GetAllocatorFraming
Obtém os parâmetros preferenciais de enquadramento de alocador do driver de miniport para o fluxo de ondas.
IMiniportWavePciStream::GetPosition
Obtém a posição atual do dispositivo no fluxo de ondas.
IMiniportWavePciStream::MappingAvailable
Indica que um novo mapeamento está disponível no driver de porta.
IMiniportWavePciStream::NormalizePhysicalPosition
Converte um valor de posição de buffer físico em um valor baseado em tempo.
IMiniportWavePciStream::RevokeMappings
Revoga mapeamentos emitidos anteriormente.
IMiniportWavePciStream::Service
Notifica o objeto de fluxo de uma solicitação de serviço.
IMiniportWavePciStream::SetFormat
Define o formato de dados do fluxo de ondas.
IMiniportWavePciStream::SetState
Define o estado do fluxo de ondas.