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


Метод ISpatialAudioObject::SetVolume (spatialaudioclient.h)

Задает мультипликатор амплитуды звука, который будет применяться к звуковым данным, предоставляемым ISpatialAudioObject перед их отправкой в подсистему отрисовки звука.

Синтаксис

HRESULT SetVolume(
  [in] float volume
);

Параметры

[in] volume

Множитель амплитуды для звуковых данных. Это должно быть значение от 0,0 до 1,0.

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

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

Код возврата Описание
SPTLAUDCLNT_E_OUT_OF_ORDER

ISpatialAudioObjectRenderStreamBase::BeginUpdatingAudioObjects не был вызван до вызова SetVolume.

SPTLAUDCLNT_E_RESOURCES_INVALIDATED

Метод SetEndOfStream был вызван явно или неявно в предыдущем проходе обработки звука. SetEndOfStream вызывается системой неявно, если GetBuffer не вызывается в рамках прохода обработки звука (между вызовами ISpatialAudioObjectRenderStreamBase::BeginUpdatingAudioObjects и ISpatialAudioObjectRenderStreamBase::EndUpdatingAudioObjects).

Комментарии

Если метод SetVolume никогда не вызывается, используется значение по умолчанию 1.0. После вызова SetVolume заданная громкость будет использоваться для звукового объекта, пока громкость не изменится при другом вызове Метода SetVolume.

Требования

   
Целевая платформа Windows
Header spatialaudioclient.h

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

ISpatialAudioObject