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


Метод IXAudio2Voice::SetChannelVolumes (xaudio2.h)

Задает уровни громкости для голоса для каждого канала.

Синтаксис

\\HRESULT SetChannelVolumes(
  [in] UINT32      Channels,
  [in] const float *pVolumes,
  [in] UINT32      OperationSet
);

Параметры

[in] Channels

Количество каналов в голосе.

[in] pVolumes

Массив, содержащий новые тома каждого канала в голосе. Массив должен содержать элементы Channels . Дополнительные сведения об уровнях тома см. в разделе Примечания.

[in] OperationSet

Определяет этот вызов как часть отложенного пакета. Дополнительные сведения см. в обзоре наборов операций XAudio2 .

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

Возвращает S_OK в случае успешного выполнения, в противном случае — код ошибки. Описание кодов ошибок XAudio2 см. в разделе Коды ошибок XAudio2 .

Комментарии

SetChannelVolumes управляет уровнями вывода голоса по каналу и применяется сразу после окончательного SRC голоса и перед его отправкой.

Этот метод действителен только для исходных и субмикшных голосов, так как при выборе голосов не указывается объем для каждого канала.

Уровни объема выражаются в виде умножения амплитуды с плавающей запятой между -XAUDIO2_MAX_VOLUME_LEVEL и XAUDIO2_MAX_VOLUME_LEVEL (от -2²⁴ до 2²⁴) с максимальным увеличением 144,5 дБ. Объем 1 означает отсутствие затухания или усиления, а 0 означает тишину. Отрицательные уровни можно использовать для инвертации фазы звука. Дополнительные сведения об управлении громкости см. в разделе Управление громкости xAudio2 .

Примечание. IXAudio2Voice::GetChannelVolumes всегда возвращает уровни тома, которые недавно были заданы IXAudio2Voice::SetChannelVolumes. Однако эти значения могут не действовать: они вступают в силу только при следующем запуске звукового модуля после вызова IXAudio2Voice::SetChannelVolumes (или после соответствующего вызова IXAudio2::CommitChanges , если IXAudio2Voice::SetChannelVolumes был вызван с идентификатором отложенной операции).
 

Требования к платформе

Windows 10 (XAudio2.9); Windows 8, Windows Phone 8 (XAudio 2.8); Пакет SDK для DirectX (XAudio 2.7)

Требования

Требование Значение
Целевая платформа Windows
Header xaudio2.h

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

Практическое руководство. Изменение громкости голоса

IXAudio2Voice