Поделиться через


Мини-накопители архитектуры драйвера широковещательного вещания

Мини-устройства для архитектуры драйвера широковещательного вещания (BDA) управляют оборудованием, которое выполняет следующие операции:

  • Настройка цифрового сигнала вещания

  • Демодюляция цифрового сигнала

  • Запись кадров цифрового сигнала

  • Демультлексирование сигнала на видео, аудио и потоки данных

Мини-накопители BDA — это мини-драйверы AVStream, которые выполняются в модуле AVStream в драйвере потоковой передачи ядра ks.sys. AVStream — это драйвер класса, который предоставляет унифицированную модель класса потоковой передачи ядра для аудио- и видеодрайверов и поддерживает использование COM-объектов без изменения существующих двоичных файлов мини-накопителей. Драйвер класса AVStream обеспечивает большую часть поведения по умолчанию, необходимого для того, чтобы фильтр мини-driver работал как фильтр, совместимый с потоком ядра WDM. Чтобы упростить написание мини-накопителей BDA, можно использовать библиотеку поддержки BDA (Bdasup.lib) функций, входящей в комплект драйверов Microsoft Windows (WDK). Эта библиотека обеспечивает обширную обработку по умолчанию для свойств и наборов методов мини-драйвера BDA.

Как правило, средства записи драйверов должны только кодировать соответствующие статические структуры шаблонов, регистрировать их в библиотеке поддержки BDA, а затем предоставлять библиотеке обработку по умолчанию для всех свойств и методов. В некоторых случаях мини-накопитель BDA должен перехватывать запрос свойства или метода и выполнять соответствующие операции.

На следующем рисунке показан обзор архитектуры мини-драйверов BDA.

Общие сведения об архитектуре мини-драйвера bda.

В следующих разделах описываются сведения о реализации мини-драйвера BDA, обсуждаются сведения о некоторых свойствах и наборах методов, а также приведен пример кода, в котором показано, как перехватывать определенные свойства и методы.

Инициализация мини-накопителя BDA

Запуск мини-накопителя BDA

Создание таблиц диспетчеризации

Определение таблиц автоматизации

Инициализация фильтра BDA

Использование наборов свойств и методов BDA

Кэширование сведений о закреплении для DirectShow

Защита мини-накопителя BDA

Подключение между контактами фильтров для мини-драйверов BDA