Driver porta WavePci
Importante L'uso di WavePci non è più consigliato, invece usare WaverRT.
Il driver della porta WavePci gestisce la riproduzione o la registrazione di un flusso d'onda da un dispositivo audio in grado di eseguire trasferimenti DMA a dispersione/raccolta da o verso qualsiasi posizione in memoria fisica. Con DMA a dispersione/raccolta, il dispositivo può elaborare i dati audio in un buffer costituito da una serie di mapping. Ogni mapping è un blocco di memoria fisicamente contigua, ma i mapping successivi non sono necessariamente contigui tra loro. Il dispositivo compatibile con WavePci è una funzione hardware su una scheda audio. In genere, l'adattatore fa parte di un chipset integrato sulla scheda madre o è montato su una scheda audio che collega uno slot PCI sulla scheda madre. Il driver dell'adattatore fornisce un driver miniport WavePci corrispondente che si associa all'oggetto driver di porta WavePci per formare un filtro di onda in grado di acquisire o eseguire il rendering di un flusso d'onda.
Il driver della porta WavePci espone un'interfaccia IPortWavePci al driver miniport. IPortWavePci eredita i metodi nell'interfaccia di base IPort. Inoltre, IPortWavePci fornisce i metodi seguenti:
IPortWavePci::NewMasterDmaChannel
Crea un nuovo oggetto canale DMA master. IPortWavePci::Notify
Notifica al driver di porta che il controller DMA ha avanzato una nuova posizione nel flusso audio. Il driver di porta WavePci espone anche un'interfaccia IPortWavePciStream a ognuno degli oggetti flusso del driver miniport. IPortWavePciStream eredita i metodi nell'interfaccia di base IUnknown. IPortWavePciStream fornisce i metodi aggiuntivi seguenti:
IPortWavePciStream::GetMapping
Ottiene il mapping successivo dal driver della porta. IPortWavePciStream::ReleaseMapping
Rilascia un mapping ottenuto in precedenza da una chiamata GetMapping . IPortWavePciStream::TerminatePacket
Termina un pacchetto di I/O anche se viene riempito solo parzialmente con i dati di acquisizione. Un pacchetto di I/O è una parte del buffer audio costituito da tutti i mapping associati a un particolare IRP di mapping.
Gli oggetti porta WavePci e miniport comunicano tra loro tramite le rispettive interfacce IPortWavePci e IMiniportWavePci . Inoltre, le interfacce IPortWavePciStream e IMiniportWavePciStream comunicano tra loro tramite le rispettive interfacce IPortWavePciStream e IMiniportWavePciStream .