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


Метод IXAudio2SourceVoice::SetFrequencyRatio (xaudio2.h)

Задает коэффициент регулировки частоты голоса.

Синтаксис

HRESULT SetFrequencyRatio(
  [in] float  Ratio,
  [in] UINT32 OperationSet
);

Параметры

[in] Ratio

Коэффициент корректировки частоты. Это значение должно находиться в диапазоне от XAUDIO2_MIN_FREQ_RATIO до параметра MaxFrequencyRatio , указанного при создании голоса (см. раздел IXAudio2::CreateSourceVoice). XAUDIO2_MIN_FREQ_RATIO в настоящее время составляет 0,0005, что позволяет снизить шаг до 11 октав.

[in] OperationSet

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

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

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

Комментарии

Корректировка частоты выражается какчастота целевой частоты / источника. Изменение коэффициента частоты изменяет скорость воспроизведения звука в голосе. Соотношение больше 1,0 приведет к ускорению воспроизведения звука, а соотношение меньше 1,0 приведет к замедлению воспроизведения звука. Кроме того, коэффициент частоты влияет на шаг звука в голосе. Например, значение 1,0 не влияет на звук, тогда как значение 2,0 повышает шаг на одну октаву, а 0,5 понижает его на одну октаву.

Если вызывается метод SetFrequencyRatio с указанием значения Ratio вне допустимого диапазона, метод устанавливает отношение частоты к ближайшему допустимому значению. Также будет создано предупреждение для отладочных сборок.

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

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

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

Требования

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

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

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

IXAudio2SourceVoice