IXAudio2Voice::SetOutputMatrix 메서드(xaudio2.h)
음성에 대한 최종 출력의 각 채널 볼륨 수준을 설정합니다. 이러한 채널은 지정된 대상 음성의 입력 채널에 매핑됩니다.
구문
\\HRESULT SetOutputMatrix(
[in] IXAudio2Voice *pDestinationVoice,
[in] UINT32 SourceChannels,
[in] UINT32 DestinationChannels,
[in] const float *pLevelMatrix,
[in] UINT32 OperationSet
);
매개 변수
[in] pDestinationVoice
볼륨 수준을 설정할 대상 IXAudio2Voice 에 대한 포인터입니다.
[in] SourceChannels
음성의 출력 채널 수를 확인합니다. 체인의 마지막 효과에 의해 생성되는 채널의 수입니다.
[in] DestinationChannels
대상 음성의 입력 채널 수를 확인합니다.
[in] pLevelMatrix
대상 음성으로 전송되는 [SourceChannels × DestinationChannels] 볼륨 수준의 배열입니다. 원본 채널 S 에서 대상 채널 D 로 전송되는 수준은 pLevelMatrix[SourceChannels × D + S] 형식으로 지정됩니다.
예를 들어 2개 채널 스테레오 입력을 5.1 출력으로 렌더링하여 전면 채널에 가중치를 적용하지만 가운데 및 빈도가 낮은 채널에는 없는 경우 행렬에는 다음 표에 표시된 값이 있을 수 있습니다.
출력 | 왼쪽 입력 [배열 인덱스] | 오른쪽 입력 [배열 인덱스] |
---|---|---|
왼쪽 | 1.0 [0] | 0.0 [1] |
오른쪽 | 0.0 [2] | 1.0 [3] |
프런트 센터 | 0.0 [4] | 0.0 [5] |
Lfe | 0.0 [6] | 0.0 [7] |
후면 왼쪽 | 0.8 [8] | 0.0 [9] |
오른쪽 후면 | 0.0 [10] | 0.8 [11] |
[in] OperationSet
이 호출을 지연된 일괄 처리의 일부로 식별합니다. 자세한 내용은 XAudio2 작업 집합 개요를 참조하세요.
반환 값
성공하면 S_OK 반환하고, 그렇지 않으면 오류 코드를 반환합니다. 오류 코드에 대한 설명은 XAudio2 오류 코드를 참조하세요.
설명
마스터링 음성이 매트릭스 혼합 없이 디바이스에 직접 쓰기 때문에 이 방법은 원본 및 서브믹스 음성에만 유효합니다.
볼륨 수준은 -XAUDIO2_MAX_VOLUME_LEVEL 및 XAUDIO2_MAX_VOLUME_LEVEL(-2²에서 2²) 사이의 부동 소수점 진폭 승수로 표현되며 최대 게인은 144.5dB입니다. 볼륨 수준이 1.0이면 감쇠 또는 게인이 없고 0은 침묵을 의미합니다. 음수 수준은 오디오의 위상을 반전하는 데 사용할 수 있습니다. 볼륨 제어에 대한 자세한 내용은 XAudio2 볼륨 및 피치 컨트롤을 참조하세요.
X3DAudio 함수 X3DAudioCalculate는 소리의 위치와 수신기 위치에 따라 SetOutputMatrix와 함께 사용할 출력 매트릭스를 생성할 수 있습니다.
플랫폼 요구 사항
Windows 10(XAudio2.9); Windows 8, Windows Phone 8(XAudio 2.8); DirectX SDK(XAudio 2.7)요구 사항
대상 플랫폼 | Windows |
헤더 | xaudio2.h |