Описания разъёмов для динамических аудиоподустройств

В Windows Vista и более поздних версиях свойство KSPROPERTY_JACK_DESCRIPTION предоставляет сведения о джеке или коллекции разъемов на вложенных устройствах в звуковом адаптере. (В этом контексте термин subdevice является синонимом фильтра KS.) Значение свойства — это массив одной или нескольких структур KSJACK_DESCRIPTION . Каждая структура описывает цвет, тип соединителя и физическое расположение джека. Кроме того, структура содержит элемент IsConnected , который имеет значение TRUE , если устройство аудио конечной точки, например микрофон или наушники, подключено к джеку и имеет значение FALSE , если джек пуст. Чтобы указать значение up-to-date для IsConnected, драйвер адаптера для динамического субустройства зависит от возможностей определения наличия джека аудиооборудования. Для статического подустройства (без обнаружения присутствия джека) элемент IsConnected всегда должен быть TRUE. Дополнительные сведения см. в разделе "Свойство описания Джека".

Когда пользователь вставляет штекер в разъём на динамическом подустройстве, драйвер адаптера должен вызвать функцию PcRegisterSubdevice, чтобы зарегистрировать подустройство. Пока вложенный элемент остается зарегистрированным, если драйвер адаптера получает IOCTL, содержащий запрос KSPROPERTY_JACK_DESCRIPTION для вложенного элемента, драйвер должен задать для члена IsConnected значение свойства TRUE.

Когда пользователь удаляет штекер из разъема на динамическом субустройстве, драйвер адаптера должен вызвать метод IUnregisterSubdevice::UnregisterSubdevice чтобы удалить регистрацию субустройства. Хотя вложенный элемент не зарегистрирован, если драйвер адаптера получает IOCTL, содержащий запрос KSPROPERTY_JACK_DESCRIPTION для вложенных параметров, драйвер должен задать для элемента IsConnected значение FALSE.