XAudio2 API

XAudio2 API 기술에 대한 개요입니다.

XAudio2 API를 개발하려면 다음 헤더가 필요합니다.

이 기술에 대한 프로그래밍 지침은 다음을 참조하세요.

클래스

 
CXAPOBase

IXAPO 인터페이스의 기본 구현입니다.
CXAPOParametersBase

IXAPOParameters 인터페이스의 기본 구현입니다.

열거형

 
HrtfDirectivityType

여러 주식 지향성 패턴 중 하나를 나타냅니다.
HrtfDistanceDecayType

소리에 적용된 거리 기반 감쇠 유형을 나타냅니다.
HrtfEnvironment

여러 주식 환경 유형 중 하나를 나타냅니다.
XAPO_BUFFER_FLAGS

스트림 버퍼의 내용을 설명합니다.
XAUDIO2_FILTER_TYPE

필터 유형을 나타냅니다.

Functions

 
AddRef

XAudio2 개체에 대한 참조를 추가합니다.
BeginProcess

현재 프로세스 매개 변수를 반환합니다.
CalcInputFrames

지정된 출력 프레임 수를 생성하는 데 필요한 입력 프레임 수를 반환합니다.
CalcOutputFrames

지정된 수의 입력 프레임에서 생성되는 출력 프레임 수를 반환합니다.
CommitChanges

지정된 식별자를 사용하여 태그가 지정된 작업 집합을 원자적으로 적용합니다.
CreateFX

요청된 XAPOFX 효과의 instance 만듭니다.
CreateHrtfApo

HRTF(헤드 관련 전송 함수) 처리를 위한 IXAPO 인터페이스의 instance 만듭니다.
CreateMasteringVoice

마스터 음성을 만들고 구성합니다.
CreateSourceVoice

원본 음성을 만들고 구성합니다.
CreateSubmixVoice

서브믹스 음성을 만들고 구성합니다.
CXAPOBase

CXAPOBase 클래스의 instance 만듭니다.
CXAPOParametersBase

CXAPOParametersBase 클래스의 instance 만듭니다.
DestroyVoice

음성을 파괴합니다. 필요한 경우 음성을 중지하고 XAudio2 그래프에서 제거합니다.
DisableEffect

음성의 효과 체인에서 지정된 위치에서 효과를 사용하지 않도록 설정합니다.
불연속

XAudio2 음성에 현재 큐에 있는 마지막 버퍼 다음에 더 이상 버퍼가 제공되지 않음을 알 수 있습니다.
EnableEffect

음성의 효과 체인에서 지정된 위치에서 효과를 사용하도록 설정합니다.
EndProcess

CXAPOParametersBase에 XAPO가 현재 프로세스 매개 변수에 대한 액세스를 완료했음을 알 수 있습니다.
ExitLoop

현재 루프 영역의 끝에 도달하면 음성 반복을 중지합니다.
FlushSourceBuffers

음성 큐에서 보류 중인 모든 오디오 버퍼를 제거합니다.
GetChannelMask

이 음성의 채널 마스크를 반환합니다.
GetChannelVolumes

채널당 음성의 볼륨 수준을 반환합니다.
GetEffectParameters

음성 효과 체인에서 지정된 효과의 현재 효과별 매개 변수를 반환합니다.
GetEffectState

음성의 효과 체인에서 지정된 위치에 있는 효과의 실행 상태를 반환합니다.
GetFilterParameters

음성의 필터 매개 변수를 가져옵니다.
GetFrequencyRatio

음성의 주파수 조정 비율을 반환합니다.
GetOutputFilterParameters

이 음성의 송신 중 하나에서 필터 매개 변수를 반환합니다.
GetOutputMatrix

음성에 대한 최종 출력의 각 채널 볼륨 수준을 가져옵니다. 이러한 채널은 지정된 대상 음성의 입력 채널에 매핑됩니다.
GetParameters

효과별 매개 변수에 대한 현재 값을 가져옵니다.
GetPerformanceData

사용 가능한 메모리 또는 CPU 사용량과 같은 현재 리소스 사용량 세부 정보를 반환합니다.
GetRegistrationProperties

XAPO의 등록 속성을 반환합니다.
GetRegistrationPropertiesInternal

XAPO가 만들어진 등록 속성을 포함하는 XAPO_REGISTRATION_PROPERTIES 구조체에 대한 포인터를 반환합니다.
GetState

음성의 현재 커서 위치 데이터를 반환합니다.
GetVoiceDetails

음성의 생성 플래그, 입력 채널 및 샘플 속도에 대한 정보를 반환합니다.
GetVolume

음성의 현재 전체 볼륨 수준을 가져옵니다.
초기화

효과별 초기화를 수행합니다.
IsInputFormatSupported

특정 입력 형식이 지정된 출력 형식에 대해 지원되는지 쿼리합니다.
IsLocked

XAPO가 잠겨 있는지 여부를 쿼리합니다.
IsOutputFormatSupported

특정 출력 형식이 지정된 입력 형식에 대해 지원되는지 쿼리합니다.
LockForProcess

XAudio2에서 호출되어 XAPO의 입력 및 출력 구성을 잠그면 실시간 스레드에서 Process가 호출되기 전에 최종 초기화를 수행할 수 있습니다.
OnBufferEnd

음성이 버퍼 처리를 완료할 때 호출됩니다.
OnBufferStart

음성이 새 오디오 버퍼 처리를 시작하려고 할 때 호출됩니다.
OnCriticalError

XAudio2를 종료하고 다시 시작해야 하는 중요한 시스템 오류가 발생하는 경우 호출됩니다.
OnLoopEnd

음성이 루프의 끝 위치에 도달하면 호출됩니다.
OnProcessingPassEnd

오디오 처리 패스가 종료된 직후 XAudio2에서 호출됩니다.
OnProcessingPassStart

오디오 처리 단계가 시작되기 직전에 XAudio2에서 호출됩니다.
OnSetParameters

사용자 정의 매개 변수 유효성 검사를 허용하기 위해 IXAPOParameters::SetParameters에서 호출됩니다.
OnStreamEnd

음성이 연속 오디오 스트림 재생을 막 마쳤을 때 호출됩니다.
OnVoiceError

음성 처리 중에 심각한 오류가 발생할 때 호출됩니다.
OnVoiceProcessingPassEnd

음성에 대한 처리 패스가 종료된 직후에 호출됩니다.
OnVoiceProcessingPassStart

XAudio2가 음성의 버퍼 큐에서 데이터를 읽기 직전에 각 음성에 대한 각 처리 단계에서 호출됩니다.
ParametersChanged

마지막 처리 단계 이후 IXAPOParameters::SetParameters가 호출되었는지를 나타냅니다.
처리

지정된 입력 및 출력 버퍼에서 XAPO의 DSP(디지털 신호 처리) 코드를 실행합니다.
ProcessThru

XAPO를 통해 처리할 수 없으면 IXAPO::P rocess 구현에서 호출됩니다.
QueryInterface

XAudio2 개체의 지정된 COM 인터페이스에 대한 쿼리입니다.
RegisterForCallbacks

XAudio2 엔진 콜백 목록에 IXAudio2EngineCallback 포인터를 추가합니다.
릴리스

XAudio2 개체에 대한 참조를 해제합니다.
Reset

프레임 기록에 따라 변수를 다시 설정합니다.
ReverbConvertI3DL2ToNative

I3DL2(대화형 3D 오디오 렌더링 지침 수준 2.0) 매개 변수를 네이티브 XAudio2 매개 변수로 변환하는 인라인 함수입니다.
SetChannelVolumes

채널당 음성의 볼륨 수준을 설정합니다.
SetDebugConfiguration

XAudio2에 대한 전역 디버그 로깅 옵션을 변경합니다.
SetEffectChain

음성의 효과 체인을 바꿉니다.
SetEffectParameters

음성 효과 체인에서 지정된 효과에 대한 매개 변수를 설정합니다.
SetEnvironment

시뮬레이션할 음향 환경을 선택합니다.
SetFilterParameters

음성의 필터 매개 변수를 설정합니다.
SetFrequencyRatio

음성의 주파수 조정 비율을 설정합니다.
SetOutputFilterParameters

이 음성의 송신 중 하나에서 필터 매개 변수를 설정합니다.
SetOutputMatrix

음성에 대한 최종 출력의 각 채널 볼륨 수준을 설정합니다. 이러한 채널은 지정된 대상 음성의 입력 채널에 매핑됩니다.
SetOutputVoices

음성의 출력을 수신할 새 서브믹스 또는 마스터링 음성 집합을 지정합니다.
SetParameters

효과별 매개 변수를 설정합니다.
SetSourceGain

현재 원본 위치에 대한 사용자 지정 직접 경로 게인 값을 설정합니다. HrtfDistanceDecayType 사용자 지정 감쇠 유형으로 재생되는 소리에만 유효합니다.
SetSourceOrientation

수신기의 좌표계와 관련하여 원본 방향에 대한 회전 행렬을 설정합니다.
SetSourcePosition

수신기를 기준으로 소리의 위치를 설정합니다.
SetSourceSampleRate

음성을 만들 때 지정된 속도와 다른 샘플 속도로 원본 데이터를 사용하도록 음성을 다시 구성합니다.
SetVolume

음성의 전체 볼륨 수준을 설정합니다.
시작

음성으로 오디오의 사용 및 처리를 시작합니다. 연결된 서브믹스 또는 마스터링 음성 또는 출력 디바이스에 결과를 전달합니다.
Startengine

오디오 처리 스레드를 시작합니다.
중지

현재 음성으로 오디오 사용을 중지합니다.
StopEngine

오디오 처리 스레드를 중지합니다.
SubmitSourceBuffer

음성 큐에 새 오디오 버퍼를 추가합니다.
UnlockForProcess

LockForProcess 메서드를 사용하여 할당된 변수의 할당을 취소합니다.
UnregisterForCallbacks

XAudio2 엔진 콜백 목록에서 IXAudio2EngineCallback 포인터를 제거합니다.
ValidateFormatDefault

오디오 형식이 지원되는 기본 범위 내에 속하는지 확인합니다.
ValidateFormatPair

XAPO에서 입력 및 출력 형식 쌍 구성을 지원하는지 확인합니다.
X3DAudioCalculate

3D 매개 변수에 대한 DSP 설정을 계산합니다.
X3DAudioInitialize

모든 전역 3D 오디오 상수를 설정합니다.
XAPOAlloc

이후에 애플리케이션에 반환되는 임의의 크기의 구조를 할당해야 하는 IXAPO 메서드에서 사용하는 메모리 할당 매크로입니다.
XAPOFree

XAPOAlloc 매크로를 사용하여 할당된 메모리를 해제하는 데 사용되는 매크로입니다.
XAudio2AmplitudeRatioToDecibels

진폭 비율 값을 decibel 값으로 변환하는 인라인 함수입니다.
XAudio2만들기

새 XAudio2 개체를 만들고 IXAudio2 인터페이스에 대한 포인터를 반환합니다.
XAudio2CreateReverb

새 반향 오디오 처리 개체(APO)를 만들고 포인터를 반환합니다.
XAudio2CreateVolumeMeter

새 볼륨 미터 APO(오디오 처리 개체)를 만들고 포인터를 반환합니다.
XAudio2CutoffFrequencyToOnePoleCoefficient

헤르츠로 표현된 필터 컷오프 주파수에서 XAUDIO2_FILTER_PARAMETERS 구조체의 Frequency 멤버와 함께 사용되는 필터 계수로 변환하는 인라인 함수입니다.
XAudio2CutoffFrequencyToRadians

헤르츠로 표현된 필터 차단 주파수에서 XAUDIO2_FILTER_PARAMETERS 구조체의 Frequency 멤버에 사용되는 라디안 주파수 값으로 변환하는 인라인 함수입니다.
XAudio2DecibelsToAmplitudeRatio

decibel 값을 진폭 비율 값으로 변환하는 인라인 함수입니다.
XAudio2FrequencyRatioToSemitones

빈도 비율 값을 세미톤 값으로 변환하는 인라인 함수입니다.
XAudio2RadiansToCutoffFrequency

XAUDIO2_FILTER_PARAMETERS 사용되는 라디안 주파수에서 hertz의 절대 주파수로 다시 변환하는 인라인 함수입니다.
XAudio2SemitonesToFrequencyRatio

세미톤 값을 주파수 비율 값으로 변환하는 인라인 함수입니다.

인터페이스

 
IXAPO

XAudio2 효과 체인에 사용되는 오디오 처리 개체의 인터페이스입니다.
IXAPOHrtfParameters

HRTF(헤드 관련 전송 함수)가 소리에 적용되는 방식을 제어하는 매개 변수를 설정하는 데 사용되는 인터페이스입니다.
IXAPOParameters

XAPO가 효과별 매개 변수를 사용할 수 있도록 하는 선택적 인터페이스입니다.
IXAudio2

IXAudio2는 모든 오디오 엔진 상태, 오디오 처리 스레드, 음성 그래프 등을 관리하는 XAudio2 개체의 인터페이스입니다.
IXAudio2EngineCallback

IXAudio2EngineCallback 인터페이스에는 IXAudio2 엔진에서 특정 이벤트가 발생할 때 클라이언트에 알리는 메서드가 포함되어 있습니다.
IXAudio2MasteringVoice

마스터 음성은 오디오 출력 디바이스를 나타내는 데 사용됩니다.
IXAudio2SourceVoice

원본 음성을 사용하여 오디오 데이터를 XAudio2 처리 파이프라인에 제출합니다.
IXAudio2SubmixVoice

서브믹스 음성은 주로 성능 향상 및 효과 처리에 사용됩니다.
IXAudio2Voice

IXAudio2Voice는 IXAudio2SourceVoice, IXAudio2SubmixVoice 및 IXAudio2MasteringVoice가 파생되는 기본 인터페이스를 나타냅니다. 아래에 나열된 메서드는 모든 음성 서브클래스에 공통적으로 적용됩니다.
IXAudio2VoiceCallback

IXAudio2VoiceCallback 인터페이스에는 지정된 IXAudio2SourceVoice에서 특정 이벤트가 발생할 때 클라이언트에 알리는 메서드가 포함되어 있습니다.

구조체

 
FXECHO_INITDATA

FXECHO XAPOFX와 함께 사용할 초기화 매개 변수입니다.
FXECHO_PARAMETERS

FXECHO XAPOFX와 함께 사용할 매개 변수입니다.
FXEQ_PARAMETERS

FXEQ XAPO와 함께 사용할 매개 변수입니다.
FXMASTERINGLIMITER_PARAMETERS

FXMasteringLimiter XAPO와 함께 사용할 매개 변수입니다.
FXREVERB_PARAMETERS

FXReverb XAPO와 함께 사용할 매개 변수입니다.
HrtfApoInit

HRTF 공간 오디오를 초기화하는 데 사용되는 매개 변수를 지정합니다.
HrtfDirectivity

기본 직접성 패턴 설명자입니다. 소리에 적용되는 직접성의 유형을 설명합니다.
HrtfDirectivityCardioid

심장 지향성 패턴을 설명합니다.
HrtfDirectivityCone

원뿔 방향성을 설명합니다.
HrtfDistanceDecay

거리 기반 감쇠 동작을 설명합니다.
HrtfOrientation

HRTF 직접성 개체의 방향을 나타냅니다.
HrtfPosition

오른손 좌표계를 사용하여 3D 공간의 위치를 나타냅니다.
X3DAUDIO_CONE

방출기 방향과 관련하여 DSP 동작의 크기를 조정하여 단일 채널 비 LFE 방출기 방향성을 지정합니다.
X3DAUDIO_DISTANCE_CURVE

선형 세그먼트로 구성된 명시적 조각 곡선을 정의하여 정규화된 거리와 관련하여 DSP 동작을 직접 정의합니다.
X3DAUDIO_DISTANCE_CURVE_POINT

지정된 정규화된 거리에서 DSP 설정을 정의합니다.
X3DAUDIO_DSP_SETTINGS

X3DAudioCalculate 호출에서 결과를 받습니다.
X3DAUDIO_EMITTER

임의의 수의 사운드 채널과 함께 사용되는 단일 지점 또는 다중 지점 3D 오디오 원본을 정의합니다.
X3DAUDIO_LISTENER

3D 오디오 수신 지점을 정의합니다.
XAPO_LOCKFORPROCESS_PARAMETERS

XAPO가 잠겨 있는 동안 일정하게 유지되는 스트림 버퍼 매개 변수를 정의합니다. IXAPO::LockForProcess 메서드와 함께 사용됩니다.
XAPO_PROCESS_BUFFER_PARAMETERS

한 호출에서 다음 호출로 변경할 수 있는 스트림 버퍼 매개 변수를 정의합니다. Process 메서드와 함께 사용됩니다.
XAPO_REGISTRATION_PROPERTIES

XAPO의 일반적인 특징을 설명합니다. IXAPO::GetRegistrationProperties, CXAPOParametersBase::CXAPOParametersBase 및 CXAPOBase::CXAPOBase와 함께 사용됩니다.
XAUDIO2_BUFFER

IXAudio2SourceVoice::SubmitSourceBuffer와 함께 사용되는 오디오 데이터 버퍼를 나타냅니다.
XAUDIO2_BUFFER_WMA

xWMA 데이터를 제출할 때 IXAudio2SourceVoice::SubmitSourceBuffer와 함께 사용됩니다.
XAUDIO2_DEBUG_CONFIGURATION

XAudio2에 대한 새 전역 디버그 구성을 포함합니다. SetDebugConfiguration 함수와 함께 사용됩니다.
XAUDIO2_EFFECT_CHAIN

효과 체인을 정의합니다.
XAUDIO2_EFFECT_DESCRIPTOR

효과 체인에 사용할 XAPO에 대한 정보를 포함합니다.
XAUDIO2_FILTER_PARAMETERS

원본 음성에 대한 필터 매개 변수를 정의합니다.
XAUDIO2_PERFORMANCE_DATA

성능 정보를 포함합니다. (XAUDIO2_PERFORMANCE_DATA)
XAUDIO2_SEND_DESCRIPTOR

다른 음성에서 보내는 대상인 대상 음성을 정의하고 필터를 사용해야 하는지 여부를 지정합니다.
XAUDIO2_VOICE_DETAILS

음성의 생성 플래그, 입력 채널 및 샘플 속도에 대한 정보를 포함합니다.
XAUDIO2_VOICE_SENDS

단일 출력 음성에서 데이터를 수신하는 음성 집합을 정의합니다.
XAUDIO2_VOICE_STATE

음성의 현재 상태 및 커서 위치 데이터를 반환합니다.
XAUDIO2FX_REVERB_I3DL2_PARAMETERS

ReverbConvertI3DL2ToNative 함수에서 사용할 I3DL2(대화형 3D 오디오 렌더링 지침 수준 2.0) 매개 변수에 대해 설명합니다.
XAUDIO2FX_REVERB_PARAMETERS

반향 APO에서 사용할 매개 변수를 설명합니다.
XAUDIO2FX_VOLUMEMETER_LEVELS

볼륨 미터 APO와 함께 사용할 매개 변수에 대해 설명합니다.