Share via


Minidriver der Broadcast-Treiberarchitektur

BDA-Minitreiber (Broadcast Driver Architecture) steuern Hardware, die die folgenden Vorgänge ausführt:

  • Optimieren eines digitalen Broadcastsignals

  • Demodulieren des digitalen Signals

  • Erfassen von Frames des digitalen Signals

  • Demultiplexing des Signals in Video-, Audio- und Datenströme

BDA-Minitreiber sind AVStream-Minitreiber, die unter dem AVStream-Modul im Kernelstream-Treiber ks.sysausgeführt werden. AVStream ist ein Klassentreiber, der ein einheitliches Kernel-Streamingklassenmodell für Audio- und Video-Minidriver bereitstellt und die Verwendung von COM-Objekten unterstützt, ohne vorhandene Minitreiberbinärdateien zu ändern. Der AVStream-Klassentreiber bietet einen Großteil des Standardverhaltens, das erforderlich ist, damit der Filter eines Minitreibers als WDM-Kernelstreaming-kompatibler Filter funktioniert. Um das Schreiben von BDA-Minidrivern zu vereinfachen, können Sie die BDA-Supportbibliothek (Bdasup.lib) von Funktionen verwenden, die im Microsoft Windows Driver Kit (WDK) enthalten sind. Diese Bibliothek bietet eine umfassende Standardbehandlung für die Eigenschaften und Methodensätze des BDA-Minitreibers.

In der Regel müssen Treiberautoren nur die entsprechenden statischen Vorlagenstrukturen codieren, sie bei der BDA-Unterstützungsbibliothek registrieren und die Bibliothek dann die Standardbehandlung für alle Eigenschaften und Methoden bereitstellen. In einigen Fällen muss ein BDA-Minidriver eine Eigenschafts- oder Methodenanforderung abfangen und entsprechende Vorgänge ausführen.

Die folgende Abbildung zeigt eine Architekturübersicht für BDA-Minidriver:

Diagrammübersicht der bda minidriver-Architektur.

In den folgenden Abschnitten werden Implementierungsdetails für einen BDA-Minidriver beschrieben, Details zu einigen Eigenschaften- und Methodensätzen erläutert und Beispielcode enthalten, der zeigt, wie bestimmte Eigenschaften und Methoden abgefangen werden:

Initialisieren eines BDA Minidrivers

Starten eines BDA Minidrivers

Erstellen von Dispatchtabellen

Definieren von Automatisierungstabellen

Initialisieren eines BDA-Filters

Verwenden von BDA-Eigenschaften und -Methodensätzen

Zwischenspeichern von Pininformationen für DirectShow

Sichern eines BDA Minidrivers

Herstellen einer Verbindung zwischen Pins von Filtern für BDA Minidriver