Метод IChannelAudioVolume::SetAllVolumes (audioclient.h)
Метод SetAllVolumes задает отдельные уровни громкости для всех каналов в звуковом сеансе.
Синтаксис
HRESULT SetAllVolumes(
[in] UINT32 dwCount,
[in] const float *pfVolumes,
[in] LPCGUID EventContext
);
Параметры
[in] dwCount
Количество элементов в массиве pfVolumes . Этот параметр должен равняться количеству каналов в формате потока для звукового сеанса. Чтобы получить количество каналов, вызовите метод IChannelAudioVolume::GetChannelCount .
[in] pfVolumes
Указатель на массив уровней громкости для каналов в звуковом сеансе. Количество элементов в массиве pfVolumes задается параметром dwCount . Вызывающий объект записывает уровень громкости для каждого канала в элемент массива, индекс которого соответствует номеру канала. Если формат потока для аудиосеанса имеет N каналов, каналы нумеруются от 0 до N–1. Допустимые уровни тома находятся в диапазоне от 0,0 до 1,0.
[in] EventContext
Указатель на GUID контекста события. Если вызов этого метода создает событие изменения объема канала, диспетчер сеансов отправляет уведомления всем клиентам, которые зарегистрировали интерфейсы IAudioSessionEvents с диспетчером сеансов. Диспетчер сеансов включает значение указателя EventContext с каждым уведомлением. Получив уведомление, клиент может определить, является ли он или другой клиент источником события, проверив значение EventContext . Эта схема зависит от того, выбирает клиент значение для этого параметра, которое является уникальным среди всех клиентов в сеансе. Если вызывающий объект предоставляет указатель NULL для этого параметра, метод уведомления клиента получает указатель контекста NULL .
Возвращаемое значение
Если метод завершается успешно, возвращает значение S_OK. В случае сбоя возможные коды возврата включают, помимо прочего, значения, показанные в следующей таблице.
Код возврата | Описание |
---|---|
|
Параметр dwCount не равен числу каналов в формате потока для звукового сеанса или значение элемента массива pfVolumes не находится в диапазоне от 0,0 до 1,0. |
|
Параметр pfVolumes имеет значение NULL. |
|
Устройство конечной точки аудио отключено, звуковое оборудование или связанные аппаратные ресурсы были перенастроены, отключены, удалены или иным образом недоступны для использования. |
|
Служба звука Windows не запущена. |
Комментарии
При успешном выполнении этого метода создается событие изменения объема канала независимо от того, отличается ли какой-либо из новых уровней тома канала по значению от предыдущих уровней тома канала.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows Vista [только классические приложения] |
Минимальная версия сервера | Windows Server 2008 [только классические приложения] |
Целевая платформа | Windows |
Header | audioclient.h |