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


обработчики Data-Intersection

В этом разделе рассматриваются обработчики пересечения данных в звуковых драйверах Microsoft Windows (WDM). Более широкое обсуждение обработки пересечения данных для фильтров KS в целом см. в разделе "Пересечения диапазонов данных" в AVStream.

В более ранних версиях Windows, таких как Windows XP, системный драйвер SysAudio создает виртуальное звуковое устройство , подключая пары контактов аудиофильтра для формирования графа аудиофильтра. Прежде чем исходный пин на одном фильтре может быть подключен к пину приемника другого, SysAudio должен согласовать общий формат, который оба пина могут использовать для обмена данными. Детали этого согласования в значительной степени делегированы обработчикам пересечения данных, реализованным в отдельных фильтрах.

Аналогичным образом, в Windows Vista и более поздних версиях звуковой механизм должен согласовывать общий формат потока с обработчиком пересечения данных в фильтре волн, представляющего устройство отрисовки звука.

Драйвер адаптера создает фильтр WaveRT для звукового устройства, привязав один из его драйверов минипорта к соответствующему драйверу порта из Portcls.sys. Драйвер порта содержит обработчик пересечения данных по умолчанию, но обработчик по умолчанию всегда предоставит обработчику пересечения данных минипорта собственному драйверу возможность первым определить общий формат. Однако, если собственный обработчик отклоняет эту возможность, обработчик драйвера портов по умолчанию определяет формат.

Обработчик пересечения данных по умолчанию драйвера портов предназначен для работы с наиболее распространенными аппаратными функциями. Для простых звуковых устройств обработчик по умолчанию предоставляет удобную альтернативу реализации собственного обработчика в драйвере адаптера. Однако адаптерам с более продвинутыми функциями могут понадобиться проприетарные обработчики для раскрытия всех возможностей оборудования.

В оставшейся части этого раздела описываются некоторые ограничения обработчика данных драйвера порта по умолчанию и представлены методы, необходимые для разработки собственного обработчика пересечения данных для драйвера адаптера. Рассматриваются следующие темы:

Пересечение данных

Обработчики Data-Intersection по умолчанию

Обработчики Data-Intersection собственного производства

Ограничения оборудования для частоты выборки

Размер выходного буфера

Диапазоны данных с дискретными значениями

Дикие карточки

СвойстваData-Range