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


SysTray и SndVol32

Программа SndVol32 (Sndvol32.exe) управляет настройками громкости для различных источников звука (например, волн, компакт-дисков и синтезатора), а также настройкой громкости master. Программа SndVol32 представлена значком говорящего, который отображается в области уведомлений панели задач, которая по умолчанию отображается в правом нижнем углу экрана Windows.

Программа SysTray (Systray.exe) отвечает за отображение значка говорящего, когда он включен, и за скрытие значка динамика при его выключении. В Windows XP значок динамика по умолчанию скрыт. Во всех других версиях Windows, включая Windows XP с пакетом обновления 1 (SP1), значок динамика отображается по умолчанию.

В Windows XP выполните следующие действия, чтобы отобразить значок динамика на панели задач:

  1. В панель управления щелкните значок Звуковые и звуковые устройства (или просто запустите mmsys.cpl).

  2. На вкладке Громкость выберите значок Разместить том в поле проверка панели задач.

Если уровень громкости звука карта можно изменить под управлением программного обеспечения, на панели задач появится значок динамика. Вы можете изменить параметр master громкости, щелкнув его одним щелчком и настроив ползунок громкости.

Во время входа SysTray запрашивает у аудиодрайвера линию микшера с типом компонента MIXERLINE_COMPONENTTYPE_DST_SPEAKERS (назначение говорящего) или MIXERLINE_COMPONENTTYPE_DST_HEADPHONES (назначение наушников), чтобы определить, должен ли отображаться значок динамика. Если ни тот из этих типов компонентов не найден, SysTray не отображает значок динамика. Если строка находится, она запрашивает строку, чтобы определить, содержит ли она элемент управления отключением звука. SysTray завершает обработку строки микшера времени входа, внутренне сохраняя идентификатор строки и отключает идентификатор элемента управления для дальнейшего использования.

Программа SndVol32 также предоставляет пользовательский интерфейс для управления всеми элементами управления громкости в системе. Когда пользователь дважды щелкает значок динамика в области уведомлений (или просто запускает Sndvol32.exe), SndVol32 отображает окно "Главный том", содержащее ползунки для управления уровнем громкости master и громкости в различных источниках звука. В этом случае SndVol32 использует другой алгоритм для определения того, что он отображает. Для ползунка громкости master он ищет первый элемент управления громкости в назначении "master" (например, назначение с нумерованным нулем). Обычно это место назначения говорящего.

При выполнении SndVol32 он запрашивает драйвер mixer-line в поисках набора элементов управления, о котором ему известно. Чтобы отобразить ползунок, строка SOURCE должна содержать по крайней мере один из следующих элементов управления:

  • Регулятор громкости

  • Отключение звука элемента управления

  • Расширенный элемент управления (AGC, бас или тройная частота)

Если ни один из этих элементов управления не найден, SndVol32 не отображает панель. Исходная строка, просто являясь частью мультиплекса без элементов управления, недостаточно для отображения. Это ограничение можно легко обойти, вставив в топологию поддельный элемент управления MUTE, чтобы отобразить панели. Когда строка просто передается в мультиплексный интерфейс, поле Выбрать для мультиплексов скрывает элемент управления MUTE.

Узлы топологии WDM Audio, которые не хорошо сопоставляются с элементом управления линией микшера, не отображаются в SndVol32. Дополнительные сведения о том, какие узлы претворяются в элементы управления линии микшера, см. в разделе Узлы топологии . Драйвер линии микшера WDM преобразует некоторые узлы в элементы управления, но SndVol32 отображает только набор элементов управления, о котором он знает.

Сведения о диапазонах громкости и уровнях громкости по умолчанию в различных версиях Windows см. в разделе Параметры громкости звука по умолчанию.