WavePci Miniport-Treiber
Wichtig Die Verwendung von WavePci wird nicht mehr empfohlen. Verwenden Sie stattdessen WaverRT.
Ein WavePci-Miniporttreiber verwaltet die hardwareabhängigen Funktionen eines Wave-Rendering- oder Wave-Capture-Geräts, das über Scatter/Gather DMA-Hardware verfügt, die Audiodaten an einen beliebigen Ort im physischen Speicher übertragen kann. Ein Wave-Gerät, das nicht in der Lage ist, Streu-/Sammlungsübertragungen durchzuführen oder nur auf eingeschränkte Regionen im physischen Speicher zugreifen kann, sollte stattdessen einen WaveCyclic-Miniporttreiber verwenden.
Ein WavePci-Miniporttreiber sollte zwei Schnittstellen implementieren:
Die Miniportschnittstelle führt Miniporttreiberinitialisierung, Kanalaufzählung und Streamerstellung durch.
Die Streamschnittstelle verwaltet einen Wellenstrom und macht die meisten Funktionen des Miniporttreibers verfügbar.
Die Miniportschnittstelle IMiniportWavePci erbt die Methoden in der IMiniport-Schnittstelle . IMiniportWavePci stellt die folgenden zusätzlichen Methoden bereit:
Initialisiert das Miniportobjekt.
Erstellt ein neues Streamobjekt.
Benachrichtigt den Miniporttreiber über eine Serviceanforderung.
Die Streamschnittstelle IMiniportWavePciStream erbt die Methoden von der IUnknown-Schnittstelle . IMiniportWavePciStream stellt die folgenden zusätzlichen Methoden bereit:
IMiniportWavePciStream::GetAllocatorFraming
Ruft die bevorzugten Zuordnungsrahmenparameter des Miniporttreibers für den Wellenstrom ab.
IMiniportWavePciStream::GetPosition
Ruft die aktuelle Position des Geräts im Wellenstrom ab.
IMiniportWavePciStream::MappingAvailable
Gibt an, dass eine neue Zuordnung über den Porttreiber verfügbar ist.
IMiniportWavePciStream::NormalizePhysicalPosition
Konvertiert einen Wert der physischen Pufferposition in einen zeitbasierten Wert.
IMiniportWavePciStream::RevokeMappings
Widerruft zuvor ausgestellte Zuordnungen.
IMiniportWavePciStream::Service
Benachrichtigt das Streamobjekt einer Dienstanforderung.
IMiniportWavePciStream::SetFormat
Legt das Datenformat des Wellenstroms fest.
IMiniportWavePciStream::SetState
Legt den Zustand des Wellenstroms fest.