Обзор аудиодрайверов WDM
Аудиодрайверы модели windows (WDM) используют компоненты потоковой передачи ядра (KS), которые работают в режиме ядра и являются частью операционной системы.
Поставщики оборудования должны принять несколько решений по проектированию, прежде чем приступить к разработке звукового оборудования на основе Windows.
Первым решением является разработка звукового устройства, требующего пользовательского драйвера, поставляемого поставщиком. Windows поддерживает операционные системы для устройств PCI, USB и IEEE 1394, которые соответствуют рекомендациям по универсальной аудиоархитектуре Майкрософт (UAA). Поставщику не нужно предоставлять пользовательский драйвер для звукового устройства, совместимого с UAA.
Однако если требуется пользовательский аудиодрайв, предоставляемый поставщиком, поставщик должен решить, должен ли он работать в сочетании с системным драйвером PortCls (Portcls.sys) или системным драйвером класса AVStream (Ks.sys). И PortCls, и AVStream являются частью операционной системы Windows. PortCls является правильным выбором для большинства звуковых адаптеров. Дополнительные сведения о классах PortCl см. в статье Общие сведения о классе port. Дополнительные сведения о AVStream см. в разделе Обзор AVStream.
При проектировании драйвера пользовательского адаптера, использующего PortCls, устройства звукового адаптера становятся доступными для приложений, использующих WaveRT. Дополнительные сведения см. в статье Введение в драйвер порта WaveRT.
Два дополнительных решения включают представление топологии адаптера и закрепление диапазонов данных в звуковых приложениях. Топология — это логическая карта путей к данным и узлов управления в цепи адаптера. Диапазоны данных определяют форматы данных, которые устройства могут поддерживать в потоках волн и MIDI. Оба решения влияют на то, как устройства на звуковом адаптере отображаются в приложениях.
При принятии всех упомянутых ранее решений поставщик оборудования должен взвесить ценность повышения производительности и затраты на их реализацию. Другой вопрос заключается в том, можно ли создать определенное решение для работы с рядом продуктов семейства Windows. В этом разделе представлен обзор этих проблем, а также ссылки на более подробную документацию по конкретным темам.
Этот раздел содержит следующие подразделы: