Partager via


Architecture des pilotes de diffusion Minidrivers

Les minidrivers BDA (Broadcast Driver Architecture) contrôlent le matériel qui effectue les opérations suivantes :

  • Réglage d’un signal de diffusion numérique

  • Démodulation du signal numérique

  • Capture de trames du signal numérique

  • Démultiplexer le signal en flux vidéo, audio et de données

Les minidrivers BDA sont des minidrivers AVStream qui s’exécutent sous le module AVStream dans le pilote de streaming du noyau ks.sys. AVStream est un pilote de classe qui fournit un modèle de classe de diffusion en continu de noyau unifié pour les minidrivers audio et vidéo, et qui prend en charge l’utilisation d’objets COM sans modifier les fichiers binaires de minidriver existants. Le pilote de classe AVStream fournit une grande partie du comportement par défaut requis pour que le filtre d’un minidriver fonctionne en tant que filtre conforme au streaming de noyau WDM. Pour simplifier la tâche d’écriture de minidrivers BDA, vous pouvez utiliser la bibliothèque de support BDA (Bdasup.lib), incluant des fonctions, du Kit de pilotes Microsoft Windows (WDK). Cette bibliothèque fournit une gestion complète par défaut des jeux de propriétés et de méthodes de BDA minidriver.

En règle générale, les développeurs de pilotes doivent uniquement coder les structures de modèle statique appropriées, les enregistrer auprès de la bibliothèque de support BDA, puis laisser la bibliothèque fournir une gestion par défaut pour toutes les propriétés et méthodes. Dans certains cas, un minidriver BDA doit intercepter une requête de propriété ou de méthode et effectuer les opérations appropriées.

La figure suivante montre une vue d’ensemble architecturale pour les minidrivers BDA :

vue d’ensemble du diagramme de l’architecture minidriver bda.

Les sections suivantes décrivent les détails de l’implémentation d’un minidriver BDA, décrivent les détails de certains ensembles de propriétés et de méthodes, et contiennent un exemple de code qui montre comment intercepter certaines propriétés et méthodes :

Initialisation d’un minidriver BDA

Démarrage d’un minidriver BDA

Création de tables de répartition

Définition de tables d'automatisation

Initialisation d’un filtre BDA

Utilisation des jeux de méthodes et de propriétés BDA

Mise en cache des informations de broche pour DirectShow

Sécurisation d’un minidriver BDA

Connexion entre broches de filtres pour les minidrivers BDA