Freigeben über


WaveRT Miniport-Treiber

Der WaveRT-Miniporttreiber wird in Windows Vista und späteren Windows-Betriebssystemen unterstützt und verwaltet die hardwareabhängigen Funktionen eines Wave-Rendering- oder Wave-Capture-Audiogeräts. Ein WaveRT-freundliches Audiogerät verfügt über Scatter/Gather-DMA-Hardware, die Audiodaten an oder von einem beliebigen Ort im physischen Speicher übertragen kann.

Ein WaveRT-Miniporttreiber muss zwei Schnittstellen implementieren:

  • IMiniportWaveRT. Diese Schnittstelle führt Miniporttreiberinitialisierung, Kanalenumeration und Streamerstellung durch.

  • IMiniportWaveRTStream. Diese Schnittstelle verwaltet einen Wellenstrom und macht die meisten Funktionen des Miniporttreibers verfügbar.

Informationen zum Entwerfen eines WaveRT-Miniporttreibers, der den WaveRT-Porttreiber ergänzt, finden Sie im Thema Developing a WaveRT Miniport Driver (Entwickeln eines WaveRT-Miniporttreibers ).

IMiniportWaveRT

Die IMiniportWaveRT-Schnittstelle bietet die folgenden Methoden:

IMiniportWaveRT::Init

Initialisiert das Miniportobjekt.

IMiniportWaveRT::NewStream

Erstellt ein neues Streamobjekt.

IMiniportWaveRT::GetDeviceDescription

Gibt einen Zeiger auf eine DEVICE_DESCRIPTION Struktur zurück, die das Gerät beschreibt.

IMiniportWaveRTStream

Die IMiniportWaveRTStream-Schnittstelle erbt die Methoden von der IUnknown-Schnittstelle . IMiniportWaveRTStream bietet die folgenden zusätzlichen Methoden:

IMiniportWaveRTStream::AllocateAudioBuffer Weist einen zyklischen Puffer für Audiodaten zu.

IMiniportWaveRTStream::FreeAudioBuffer

Gibt einen Audiopuffer frei, der zuvor mit einem Aufruf von IMiniportWaveRTStream::AllocateAudioBuffer zugeordnet wurde.

IMiniportWaveRTStream::GetClockRegister

Ruft die Informationen ab, die der Porttreiber benötigen, um das Uhrenregister für das Audiosubsystem und seine Clients verfügbar zu machen.

IMiniportWaveRTStream::GetHWLatency

Ruft Informationen zu Quellen der Streamlatenz in der Audiohardware ab.

IMiniportWaveRTStream::GetPosition

Ruft die aktuelle Wiedergabe- oder Datensatzposition als Byteoffset vom Anfang des Puffers ab.

IMiniportWaveRTStream::GetPositionRegister

Ruft die Informationen ab, die der Porttreiber benötigen, um das Positionsregister für das Audiosubsystem und seine Clients verfügbar zu machen.

IMiniportWaveRTStream::SetFormat

Legt das Datenformat des Wellendatenstroms fest.

IMiniportWaveRTStream::SetState

Ändert den Transportstatus des Audiodatenstroms.