Udostępnij przez


Sterownik WavePci Miniport

Ważny Użycie metody WavePci nie jest już zalecane, zamiast tego należy użyć narzędzia WaverRT.

Sterownik miniportu WavePci zarządza funkcjami zależnymi od sprzętu urządzenia do renderowania lub przechwytywania dźwięku, które posiada sprzęt rozproszonego/zbierającego DMA, zdolny do przesyłania danych audio do lub z dowolnej lokalizacji w pamięci fizycznej. Urządzenie falowe, które nie ma możliwości wykonywania transferów rozrzutu/zebrania lub może uzyskać dostęp tylko do ograniczonych regionów w pamięci fizycznej, powinno zamiast tego użyć sterownika miniportu WaveCyclic.

Sterownik miniportu WavePci powinien implementować dwa interfejsy:

  • Interfejs miniportu wykonuje inicjowanie sterowników miniportu, wyliczenie kanału i tworzenie strumienia.

  • Interfejs strumienia zarządza strumieniem falowym i uwidacznia większość funkcji sterownika miniportu.

Interfejs miniportu IMiniportWavePci dziedziczy metody w interfejsie IMiniport . Interfejs IMiniportWavePci udostępnia następujące dodatkowe metody:

IMiniportWavePci::Init

Inicjuje obiekt miniportu.

IMiniportWavePci::NewStream

Tworzy nowy obiekt strumienia.

IMiniportWavePci::Service

Powiadamia sterownik miniportu o żądaniu obsługi.

Interfejs strumienia IMiniportWavePciStream dziedziczy metody z interfejsu IUnknown . Usługa IMiniportWavePciStream udostępnia następujące dodatkowe metody:

IMiniportWavePciStream::GetAllocatorFraming

Pobiera preferowane parametry ramowania alokatora sterownika miniportu dla strumienia falowego.

IMiniportWavePciStream::GetPosition

Pobiera bieżące położenie urządzenia w strumieniu falowym.

IMiniportWavePciStream::MappingAvailable

Wskazuje, że nowe mapowanie jest dostępne ze sterownika portu.

IMiniportWavePciStream::NormalizePhysicalPosition

Konwertuje wartość pozycji buforu fizycznego na wartość opartą na czasie.

IMiniportWavePciStream::RevokeMappings

Odwołuje wcześniej wystawione mapowania.

IMiniportWavePciStream::Service

Powiadamia obiekt strumienia o żądaniu usługi.

IMiniportWavePciStream::SetFormat

Ustawia format danych strumienia falowego.

IMiniportWavePciStream::SetState

Ustawia stan strumienia falowego.