Einführung in WDM-Audiotreiber
Kernelstreamingdienste (KS) unterstützen die Verarbeitung von Datenströmen im Kernelmodus für Audiodatenströme und für andere Arten kontinuierlicher Medien. Konzeptionell wird ein Stream verarbeitet, während er entlang eines Datenpfads fließt, der eine bestimmte Anzahl von Verarbeitungsknoten enthält. Ein Satz verwandter Knoten wird gruppiert, um einen KS-Filter zu bilden, der einen mehr oder weniger unabhängigen Block von Streamverarbeitungsfunktionen darstellt. Komplexere Funktionen können modular aufgebaut werden, indem mehrere Filter zu einem Filtergraphen kaskadiert werden.
Ein typischer Audioadapter Karte kann Audiogeräte zum Wiedergeben eines Wellenstroms über einen Satz von Lautsprechern, zum Konvertieren des Audiosignals von einem Mikrofon in einen Wellenstrom und zum Synthetisieren von Sound aus einem MIDI-Stream enthalten. Der Adaptertreiber kann jedes dieser Audiogeräte in einen KS-Filter umschließen, den er für das Betriebssystem verfügbar macht. Das Betriebssystem verbindet die Filter mit anderen Filtern, um Filtergraphen zu bilden, die Audiodatenströme im Auftrag von Anwendungsprogrammen verarbeiten.
KS-Filter sind über ihre Pins miteinander verbunden. Eine Pin an einem Audiofilter kann als Audiobuchse betrachtet werden. Ein Client instanziiert einen Eingabe- oder Ausgabepin in einem Filter, wenn der Client einen Datenstrom in diesen Filter weiterleiten muss. In einigen Kontexten können die Begriffe pin und stream austauschbar verwendet werden.
Der Ausgabepin des Upstream Filters ist mit dem Eingabestift des downstream-Filters verbunden. Der Datenstrom vom Ausgabepin muss ein Datenformat aufweisen, das der Eingabepin akzeptieren kann. Die Datenpufferung ist in der Regel erforderlich, um vorübergehende Konflikte in den Raten zu beheben, bei denen ein Ausgabepin Daten erzeugt und von einem Eingabepin genutzt wird.
Ein KS-Filter wird als Kernelmodustreiberobjekt implementiert, das eine Reihe verwandter Streamverarbeitungsfunktionen kapselt. Die Funktionalität kann in Software oder Hardware implementiert werden. In diesem Modell kann ein Audioadapter als Sammlung von Hardwaregeräten angezeigt werden, und der Adaptertreiber macht jedes dieser Geräte für das Audiosystem als individuellen Filter verfügbar.
Ein Adaptertreiber macht eine Sammlung von Filterfabriken für das Audiosystem verfügbar. Jede Filterfactory kann Filter eines bestimmten Typs instanziieren:
Wenn der Adapter ein oder mehrere Geräte enthält, die ähnlich oder identisch sind, gruppiert der Treiber die Filter für diese Geräte in derselben Filterfactory.
Wenn der Adapter mehrere verschiedene Gerätetypen enthält, werden diese Geräte über mehrere verschiedene Filterfabriken präsentiert.
Ein KS-Filter macht eine Sammlung von Pinfactorys für das Audiosystem verfügbar. Jede Pinfactory ist in der Lage, Pins eines bestimmten Typs zu instanziieren. Wenn der Filter einen oder mehrere Pins bereitstellen kann, die ähnlich oder identisch sind, gruppiert der Filter diese Pins in derselben Pinfactory. Beispielsweise kann ein Filter, der eine Audiomischung durchführt, über eine Pinfactory verfügen, die einen einzelnen Ausgabepin instanziieren kann, und eine zweite Pinfactory, die mehrere Eingabestifte instanziieren kann.
KS-Dienste basieren auf dem Windows-Treibermodell. Beachten Sie, dass der Begriff KS-Filter vom Begriff Filtertreiber unterschieden werden muss, der ein weiteres WDM-Konzept ist. Ein Filtertreiber befindet sich in einem WDM-Treiberstapel und kann die E/A-Anforderungspakete (IRPs) abfangen und ändern, die über den Stapel weitergegeben werden. Filtertreiber der oberen und unteren Ebene befinden sich oberhalb bzw. unterhalb des Funktionstreibers. In diesem Abschnitt bezieht sich der Begriff Filter auf einen KS-Filter und nicht auf einen Filtertreiber, sofern nicht anders angegeben. Weitere Informationen zu Filtertreibern finden Sie unter Typen von WDM-Treibern.
Dieser Abschnitt enthält die folgenden Themen:
Grundlegende Funktionen eines WDM-Audiotreibers
Updates und Informationen zu neuen Features der WDM-Audioarchitektur finden Sie auf der Audiotechnologie-Website .