WavePci Miniport Driver

Importante L'uso di WavePci non è più consigliato, invece usare WaverRT.

Un driver miniport WavePci gestisce le funzioni dipendenti dall'hardware di un dispositivo wave-rendering o wave-capture con hardware DMA a dispersione/raccolta che può trasferire dati audio da o verso qualsiasi posizione in memoria fisica. Un dispositivo wave che non ha la possibilità di eseguire trasferimenti a dispersione/raccolta o è in grado di accedere solo alle aree limitate nella memoria fisica deve usare invece un driver miniport WaveCyclic .

Un driver miniport WavePci deve implementare due interfacce:

  • L'interfaccia miniport esegue l'inizializzazione del driver miniport, l'enumerazione del canale e la creazione del flusso.

  • L'interfaccia del flusso gestisce un flusso d'onda ed espone la maggior parte delle funzionalità del driver miniport.

L'interfaccia miniport, IMiniportWavePci, eredita i metodi nell'interfaccia IMiniport . IMiniportWavePci fornisce i metodi aggiuntivi seguenti:

IMiniportWavePci::Init

Inizializza l'oggetto miniport.

IMiniportWavePci::NewStream

Crea un nuovo oggetto flusso.

IMiniportWavePci::Service

Notifica al driver miniport di una richiesta di servizio.

L'interfaccia di flusso IMiniportWavePciStream eredita i metodi dall'interfaccia IUnknown . IMiniportWavePciStream offre i metodi aggiuntivi seguenti:

IMiniportWavePciStream::GetAllocatorFraming

Ottiene i parametri di allocator-frame preferiti del driver miniport per il flusso d'onda.

IMiniportWavePciStream::GetPosition

Ottiene la posizione corrente del dispositivo nel flusso d'onda.

IMiniportWavePciStream::MappingAvailable

Indica che è disponibile un nuovo mapping dal driver della porta.

IMiniportWavePciStream::NormalizePhysicalPosition

Converte un valore di posizione del buffer fisico in un valore basato sul tempo.

IMiniportWavePciStream::RevokeMappings

Revoca i mapping rilasciati in precedenza.

IMiniportWavePciStream::Service

Notifica all'oggetto flusso di una richiesta di servizio.

IMiniportWavePciStream::SetFormat

Imposta il formato dei dati del flusso d'onda.

IMiniportWavePciStream::SetState

Imposta lo stato del flusso d'onda.