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


Метод IAudioEndpointVolume::SetMasterVolumeLevelScalar (endpointvolume.h)

Метод SetMasterVolumeLevelScalar задает master уровень громкости аудиопотока, который входит или покидает устройство конечной точки звука. Уровень громкости выражается как нормализованное звуковое значение в диапазоне от 0,0 до 1,0.

Синтаксис

HRESULT SetMasterVolumeLevelScalar(
  [in] float   fLevel,
  [in] LPCGUID pguidEventContext
);

Параметры

[in] fLevel

Новый уровень тома master. Уровень выражается в виде нормализованного значения в диапазоне от 0,0 до 1,0.

[in] pguidEventContext

Значение контекста для метода IAudioEndpointVolumeCallback::OnNotify . Этот параметр указывает на GUID контекста события. Если вызов SetMasterVolumeLevelScalar изменяет уровень тома конечной точки, все клиенты, которые зарегистрировали интерфейсы IAudioEndpointVolumeCallback с этой конечной точкой, будут получать уведомления. В реализации метода OnNotify клиент может проверить GUID контекста события, чтобы определить, является ли он или другой клиент источником события изменения тома. Если вызывающий объект предоставляет указатель NULL для этого параметра, подпрограмма уведомления получает значение GUID контекста GUID_NULL.

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

Если метод завершается успешно, возвращает значение S_OK. В случае сбоя возможные коды возврата включают, помимо прочего, значения, показанные в следующей таблице.

Код возврата Описание
E_INVALIDARG
Параметр fLevel выходит за пределы диапазона от 0,0 до 1,0.
E_OUTOFMEMORY
Недостаточно памяти.

Комментарии

Уровень громкости нормализуется в диапазоне от 0,0 до 1,0, где 0,0 — минимальный уровень громкости, а 1,0 — максимальный уровень. В этом диапазоне связь нормализованного уровня громкости с затуханием амплитуды сигнала описывается нелинейной звуковой кривой. Обратите внимание, что форма кривой может измениться в будущих версиях Windows. Дополнительные сведения о кривых с коникой звука см. в разделе Аудио-конусообразные элементы управления громкости.

Нормализованные уровни громкости, передаваемые этому методу, подходят для представления положения элементов управления громкостями в окнах приложений и на экранных дисплеях.

Пример кода, который вызывает SetMasterVolumeLevelScalar, см. в разделе Элементы управления громкостью конечных точек.

Требования

   
Минимальная версия клиента Windows Vista [классические приложения | Приложения UWP]
Минимальная версия сервера Windows Server 2008 [классические приложения | Приложения UWP]
Целевая платформа Windows
Header endpointvolume.h

См. также раздел

Интерфейс IAudioEndpointVolume

Интерфейс IAudioEndpointVolumeCallback

IAudioEndpointVolumeCallback::OnNotify