Собственные служебные программы Speaker-Configuration
Примечание Эти сведения относятся к Windows XP и более ранним операционным системам. Начиная с Windows Vista, IDirectSound::GetSpeakerConfig и IDirectSound::SetSpeakerConfig устарели.
Поставщики оборудования иногда предоставляют собственные служебные программы настройки динамиков для использования со звуковыми драйверами вместо диалогового окна динамиков в панель управления. У таких служебных программ есть потенциальная проблема: иногда они изменяют конфигурацию динамиков собственным способом, который не уведомляет Windows об этом изменении. Это может привести к плохому взаимодействию с пользователем, если параметры в защищаемой служебной программе не соответствуют параметрам в панель управления. Если вы считаете, что для вашего устройства требуется проприетарная служебная программа, выполните следующие действия для интеграции программы с Windows:
Реализуйте узел DAC в драйвере, который поддерживает свойство KSPROPERTY_AUDIO_CHANNEL_CONFIG . Через этот узел Windows немедленно информирует драйвер об изменениях, внесенных пользователем в панель управления.
Разработайте служебную программу настройки для управления конфигурацией динамиков, вызвав методы DirectSound GetSpeakerConfig и SetSpeakerConfig.
Вызов SetSpeakerConfig информирует DirectSound (и Windows) об изменениях, внесенных вашей программой в конфигурацию динамика. Кроме того, код инициализации служебной программы должен вызывать GetSpeakerConfig, чтобы определить, изменил ли пользователь какие-либо параметры с помощью панель управления. Если это так, служебная программа должна отражать эти изменения в пользовательском интерфейсе.
Если устройство поддерживает многоканальные форматы, которые не имеют точных эквивалентов Windows, служебная программа настройки должна выполнять следующие действия:
При переходе на конфигурацию динамика, которая не имеет точного эквивалента Windows, вызовите SetSpeakerConfig с ближайшим эквивалентом Windows. Это дополнение к выполнению проприетарных вызовов, необходимых для настройки драйвера.
При переходе на конфигурацию говорящего, которая имеет точный эквивалент Windows, вызовите SetSpeakerConfig , чтобы обновить режим динамиков.
Если вы сделаете Windows более осведомленным о возможностях устройства, DirectSound может включить некоторые функции, которые иначе не могли бы включить (например, многоканальный сдвиг 3D).