Audiofilter, Pins und Knoten

Ein WDM-Adaptertreiber (Microsoft Windows Driver Model) macht seine Audiohardware als Sammlung von Filterfabriken verfügbar, von denen jede eine oder mehrere Filterinstanzen erstellen kann. Ein Kernelstreaming -Filterobjekt (KS) kann eine Audiohardwarefunktion kapseln, die eine Art digitaler Verarbeitung der Wellenaudiodaten ausführt, die durch den Filter gestreamt werden. Beispielsweise kann der Filter ein Rendering oder eine Synthese eines Datenstroms durchführen oder einem Stream Hall hinzufügen.

Ein Filter instance Pin-Fabriken verfügbar macht, von denen jede eine oder mehrere Pininstanzen erstellen kann. Diese Pins können mit den Pins anderer Filter verbunden werden, um Filterdiagramme zu erzeugen. Um Teil eines Audiofilterdiagramms zu sein, muss ein Filter über eine oder mehrere Pininstanzen verfügen.

Ein Pin stellt einen Eingabe- oder Ausgabeverbindungspunkt dar, über den ein Datenstrom in den Filter eintritt oder diesen verlässt. Jeder Pin gibt den Bereich der Datenformate an, den er unterstützen kann, und nur ein Stream mit einem kompatiblen Format kann durch den Pin fließen.

Ein Filter für ein WDM-Audiogerät macht seine interne Topologie in Form von Knoten und Verbindungen verfügbar.

Topologieknoten liegen auf den Datenpfaden, die den Filter durchlaufen. Ein Knoten stellt einen Steuerungspunkt innerhalb des Filters dar. Jeder Knoten kapselt logisch einen modularen Blöcke der Filterfunktionalität und führt eine digitale Signalverarbeitung für den Datenstrom durch, der den Knoten durchläuft. Ein Knoten kann beispielsweise eine Lautstärkeregelung darstellen, die unter Softwaresteuerung angepasst werden kann.

Das Filterobjekt gibt auch die Verbindungen zwischen den verschiedenen Pins und Knoten an. Implizit in diesen Verbindungen ist die Reihenfolge der Knoten entlang der einzelnen Datenpfade durch den Filter.

In diesem Abschnitt werden die Features von Filtern, Pins und Knoten vorgestellt, die für WDM-Audiotreiber spezifisch sind. Die folgenden Themen werden erörtert:

Audiofilter

Filterfabriken

Pin-Fabriken

Knoten und Verbindungen

Audiofilterdiagramme

Wellenfilter

MIDI- und DirectMusic-Filter

Topologiefilter

Eine allgemeinere Diskussion zu Kernelstreamingfiltern, Pins und Knoten finden Sie unter KS Minidriver Architecture.