Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Func.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
1.58 Mб
Скачать

AuxSetVolume

MMRESULT auxSetVolume( UINT uDeviceID, DWORD dwVolume );

Возвращаемое значение

В случае успешного завершения возвращает значение MMSYSERR_NOERROR. В противном случае возвращает значение:

  • MMSYSERR_BADDEVICEID — указанный идентификатор устройства имеет значение, выходящее за допустимый диапазон.

Аргументы

  1. uDeviceID — идентификатор вспомогательного устройства вывода аудио информации, уровень воспроизведения которого следует установить. Идентификаторы устройства определяются числом установленных в системе аналогичных устройств. Идентификатор устройства может принимать любое значение в пределах от нуля до величины, на единице меньшей числа устройств в системе. Для определения числа вспомогательных аудио устройств в системе используется функция auxGetNumDevs.

  2. dwVolume — новое значение уровня воспроизведения. Младшее слово этой переменной содержит уровень воспроизведения по левому каналу, а старшее слово — по правому каналу. Значение 0xFFFF соответствует максимальному уровню воспроизведения, а значение 0x0000 — тишине.

  3. Если устройство не допускает раздельной регулировки по левому и правому каналам, уровень воспроизведения монофонического сигнала следует записать в младшее слово данной переменной, поскольку содержимое старшего слова будет игнорироваться.

Примечание

Функция auxSetVolume позволяет установить новое значение уровня воспроизведения указанного вспомогательного устройства вывода аудио информации.

Не все устройства допускают регулировку уровня воспроизведения. Для определения того, поддерживает ли данное устройство регулировку уровня воспроизведения, следует вызвать функцию auxGetDevCaps и проверить значение флага AUXCAPS_VOLUME в переменной dwSupport возвращаемого данной функцией объекта структуры AUXCAPS.

Для определения того, допускает ли данное устройство раздельную регулировку уровня воспроизведения по левому и правому каналам, следует вызвать функцию auxGetDevCaps и проверить значение флага AUXCAPS_LRVOLUME в переменной dwSupport возвращаемого данной функцией объекта структуры AUXCAPS.

Многие устройства не используют полную 16-битную шкалу громкости и используют только старшие разряды установленного уровня воспроизведения. Например, если устройство использует только 4 бита для управления уровнем воспроизведения, то задание в данной функции уровней воспроизведения 0x4000, 0x4FFF или 0x43BE приведёт к установке единого физического уровня воспроизведения 0x4000. При использовании функции auxGetVolume для получения текущего значения уровня воспроизведения независимо от используемого в устройстве формата представления будет возвращено значение, установленное функцией auxSetVolume.

Значения уровней воспроизведения задаются в логарифмической шкале. Этому субъективный уровень повышения громкости будет одинаковым при повышении уровня воспроизведения с 0x5000 до 0x6000 и с 0x4000 до 0x5000.

Описание данной функции содержится в файле заголовка mmsystem.h. При работе с данной функцией следует включить в проект библиотеку winmm.lib.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]