다음을 통해 공유


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 값은 피치를 1 옥타브로, 0.5는 1 옥타브로 낮춥니다.

SetFrequencyRatio가 유효한 범위를 벗어나는 비율 값을 지정하는 경우 메서드는 빈도 비율을 가장 가까운 유효한 값으로 설정합니다. 디버그 빌드에 대한 경고도 생성됩니다.

참고IXAudio2SourceVoice::GetFrequencyRatio 는 항상 음성의 실제 현재 주파수 비율을 반환합니다. 그러나 가장 최근 IXAudio2SourceVoice::SetFrequencyRatio 호출에서 설정한 비율과 일치하지 않을 수 있습니다. 실제 비율은 다음에 IXAudio2SourceVoice::SetFrequencyRatio 호출 후에 오디오 엔진이 실행되거나 해당 IXAudio2::CommitChanges 호출 후에만 변경됩니다. IXAudio2SourceVoice::SetFrequencyRatio 가 지연된 작업 ID로 호출되었으면 입니다.
 

플랫폼 요구 사항

Windows 10(XAudio2.9); Windows 8, Windows Phone 8(XAudio 2.8); DirectX SDK(XAudio 2.7)

요구 사항

요구 사항
대상 플랫폼 Windows
헤더 xaudio2.h

추가 정보

방법: 음성 피치 변경

IXAudio2SourceVoice