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와 함께 사용할 매개 변수에 대해 설명합니다. |