Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Граф фильтров KS — это коллекция фильтров KS, которые были подключены вместе для обработки одного или нескольких потоков данных. Граф фильтра звука — это граф фильтра KS, состоящий из фильтров, обрабатывающих потоки звуковых данных. Например, на следующем рисунке показана упрощенная схема графа аудиофильтра, который выполняет отрисовку и запись звука.
На рисунке граф фильтров простирается от контактов в верхней части двух волновых фильтров к контактам в нижней части двух топологических фильтров. Модули программного обеспечения в пользовательском режиме и внешние звуковые устройства (т. е. динамик и микрофон) лежат за пределами графа.
Четыре фильтра в нижней половине рисунка представляют аппаратные устройства на звуковом адаптере, который может отображать и захватывать потоки волн. Каждый из фильтров, показанных на рисунке, реализуется путем привязки драйвера порта к мини-драйверу. Драйвер адаптера формирует фильтр волн путем привязки драйвера порта WaveRT, WavePci или WaveCyclic к соответствующему драйверу минипорта WaveXxx . Драйвер адаптера формирует фильтр топологии, привязав драйвер порта топологии к драйверу мини-порта топологии.
В левой части рисунка аудиопоток из приложения DirectSound или waveOut (сверху) воспроизводится через динамик (внизу). Справа приложение DirectSoundCapture или waveIn (вверху) записывает поток, поступающий из микрофона (внизу). С обеих сторон экземпляр аудиодвижка, который выполняет микширование для системы в Windows Vista, вставляется между волновым фильтром и приложением. (В Windows Server 2003, Windows XP, Windows 2000 и Windows Me/98 драйвер системы KMixer является системным миксером .)
Звуковой модуль — это универсальный фильтр программного обеспечения, который работает в пользовательском режиме и может легко преобразоваться между различными форматами звука и частотами выборки на своих исходных и приемниковых пин-кодах. Звуковой модуль обычно может адаптироваться к различиям между форматом потока, на который настроено оборудование, и форматом потока, который ожидает приложение.
В нижней части предыдущего рисунка исходный контакт, который управляет динамиком, и приемный контакт, который принимает сигнал микрофона, помечены как мостовые контакты. Переходной пин соединяет границу между графом фильтров и внешним окружением.
На предыдущем рисунке путь к данным, показанный между каждым фильтром волн и соответствующим фильтром топологии, обычно представляет физическое подключение: фиксированное аппаратное подключение к звуковому адаптеру, которое не может быть настроено программным обеспечением.
Поскольку контакт моста или штырь с физическим подключением подключён постоянно, штырь существует неявно и не может быть создан или удален. Таким образом, нет объектов привязки моста (экземпляров привязки моста) для отправки IRPs, хотя вы можете запросить объект фильтра на предмет свойств KSPROPSETID_Pin его привязок моста. То же правило применяется к закреплению с физическими подключениями.
Сигнал, проходящий через штырь моста или физическое подключение, может быть аналоговым или цифровым.
Например, на предыдущем рисунке два штырька моста оба обрабатывают аналоговые сигналы. Штифт слева передает выходной сигнал от ЦАП (цифрового к аналоговому преобразователя), который подключен к динамику. Штекер моста справа получает сигнал от микрофона, который подается в АЦП (аналого-цифровой преобразователь). Однако штифт моста может также использоваться как соединитель S/PDIF на звуковом устройстве. В этом случае сигнал, проходящий через контакт моста, является цифровым, а не аналоговым.