오디오 디바이스 DDI 참조

오디오 디바이스 DDI 참조 기술 개요입니다.

오디오 디바이스 DDI 참조를 개발하려면 다음 헤더가 필요합니다.

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

열거형

 
APO_FLAG

APO_FLAG 열거형은 APO(오디오 처리 개체)에서 플래그로 사용되는 상수를 정의합니다.
APO_LOG_LEVEL

IAudioProcessingObjectLoggingService::ApoLog로 기록된 APO 이벤트의 수준을 지정합니다.
APO_NOTIFICATION_TYPE

APO_NOTIFICATION 형식을 지정합니다.
APO_REFERENCE_STREAM_PROPERTIES

IApoAcousticEchoCancellation2::GetDesiredReferenceStreamProperties 콜백 메서드에 대한 루프백 스트림 속성을 지정합니다.
AUDIO_SYSTEMEFFECT_STATE

SAPO(시스템 효과 오디오 처리 개체) 오디오 효과의 상태를 지정합니다.
DEVICE_ORIENTATION_TYPE

형식 APO_NOTIFICATION_TYPE_DEVICE_ORIENTATION 알림에 대한 디바이스 방향 값을 지정합니다.
KSPROPERTY_AUDIOEFFECTSDISCOVERY

KSPROPERTY_AUDIOEFFECTSDISCOVERY 열거형은 API(오디오 처리 개체) 목록에서 사용되는 상수를 정의합니다.

Functions

 
AcceptInput

보조 입력 중 하나에서 APO에 대한 입력을 제공합니다.
AddAuxiliaryInput

보조 입력을 APO에 추가하고 초기화 매개 변수를 제공합니다.
AERT_Allocate

AERT_Allocate 유틸리티 함수는 오디오 처리 개체에서 사용할 메모리 세그먼트를 할당하고 잠가줍니다.
AERT_Free

AERT_Free 유틸리티 함수는 오디오 처리 개체가 오디오 데이터를 처리하는 데 사용할 수 있도록 AERT_Allocate 함수에 의해 잠긴 메모리를 해제합니다.
ApoLog

APO 이벤트를 기록합니다.
APOProcess

APOProcess 메서드를 사용하면 APO가 처리 단계를 통과합니다.
CalcInputFrames

CalcInputFrames 메서드는 APO가 지정된 수의 출력 프레임을 생성하는 데 필요한 입력 프레임 수를 반환합니다.
CalcOutputFrames

CalcOutputFrames 메서드는 APO가 지정된 수의 입력 프레임에 필요한 출력 프레임 수를 반환합니다.
커밋

변경한 후 이 메서드는 변경 내용을 저장합니다.
CreateAudioMediaType

CreateAudioMediaType 함수는 호출자가 지정한 형식을 사용하여 오디오 형식을 설명하는 미디어 형식 개체를 만듭니다.
CreateAudioMediaTypeFromUncompressedAudioFormat

CreateAudioMediaTypeFromUncompressedAudioFormat 함수는 UNCOMPRESSEDAUDIOFORMAT 구조에 제공된 정보를 사용하여 오디오 형식을 설명하는 미디어 형식 개체를 만듭니다.
GetApoNotificationRegistrationInfo

클라이언트가 APO 엔드포인트 및 시스템 효과 알림에 대한 알림 콜백을 수신하도록 등록할 수 있도록 시스템에서 호출됩니다.
GetApoNotificationRegistrationInfo2

클라이언트가 APO 엔드포인트 및 시스템 효과 알림에 대한 알림 콜백을 수신하도록 등록할 수 있도록 시스템에서 호출됩니다. 이 메서드는 현재 디바이스에서 실행 중인 Windows 버전에서 지원되는 알림 유형을 확인하는 데 사용할 수 있는 매개 변수를 추가합니다.
GetAt

항목의 속성 배열에서 속성 키를 가져옵니다.
GetAudioFormat

GetAudioFormat 메서드는 오디오 데이터 형식에 대한 WAVEFORMATEX 구조를 반환합니다.
GetControllableSystemEffectsList

호출자가 현재 효과 목록을 가져올 수 있도록 시스템 효과 sAPO(오디오 처리 개체) 오디오 효과에 의해 구현됩니다.
GetCount

이 메서드는 파일에 연결된 속성 수의 개수를 반환합니다.
GetDesiredReferenceStreamProperties

연결된 오디오 엔드포인트에서 지원되는 경우 루프백 스트림에 대한 속성 집합을 요청합니다.
GetEffectsList

GetEffectsList 메서드는 현재 활성 상태인 오디오 처리 효과 목록을 검색하는 데 사용되며 목록이 변경되면 신호를 받을 이벤트를 저장합니다.
Getformat

GetFormat 메서드는 사용자 지정 형식의 IAudioMediaType 표현을 검색합니다.
GetFormatCount

GetFormatCount 메서드는 시스템 효과 sAPO(오디오 처리 개체)에서 지원하는 사용자 지정 형식의 수를 검색합니다.
GetFormatRepresentation

GetFormatRepresentation 메서드는 사용자 인터페이스에 표시될 수 있도록 사용자 지정 형식의 문자열 표현을 검색합니다.
GetInputChannelCount

GetInputChannelCount는 이 APO에 대한 입력 채널 수(프레임당 샘플)를 반환합니다.
GetLatency

GetLatency 메서드는 이 APO의 대기 시간을 반환합니다. 대기 시간은 APO의 처리 패스를 트래버스하는 데 프레임이 걸리는 시간입니다.
GetPreferredInputFormat

API가 제공된 출력 형식에 대한 기본 입력 형식을 지정할 수 있도록 하는 콜백 함수입니다.
GetPreferredOutputFormat

API가 제공된 입력 형식에 대한 기본 출력 형식을 지정할 수 있도록 하는 콜백 함수입니다.
GetRealTimeWorkQueue

APO가 실시간 우선 순위로 실행해야 하는 작업을 예약하는 데 사용할 수 있는 작업 큐의 ID를 가져옵니다.
GetRegistrationProperties

GetRegistrationProperties는 APO(오디오 처리 개체)의 등록 속성을 반환합니다.
GetUncompressedAudioFormat

IAudioMediaType::GetUncompressedAudioFormat은 오디오 데이터 형식에 대한 정보를 반환합니다.
GetValue

이 메서드는 특정 속성에 대 한 데이터를 검색 합니다.
HandleNotification

APO 엔드포인트 또는 시스템 효과에 대한 변경 내용을 클라이언트에 알리기 위해 시스템에서 호출됩니다.
초기화

Initialize 메서드는 APO를 초기화하고 가변 길이의 데이터를 지원합니다.
IsCompressedFormat

IsCompressedFormat 메서드는 오디오 데이터 형식이 압축된 형식인지 여부를 결정합니다.
IsEqual

IsEqual 메서드는 두 미디어 형식을 비교하고 동일한지 여부를 결정합니다.
IsInputFormatSupported

특정 보조 입력 형식이 APO에서 지원되는지 확인합니다.
IsInputFormatSupported

이 메서드는 Windows Vista 오디오 엔진과 협상하여 오디오 데이터 스트림에 대한 데이터 형식을 설정합니다.
IsOutputFormatSupported

IsOutputFormatSupported 메서드는 특정 출력 형식이 지원되는지 확인하는 데 사용됩니다.
LockForProcess

LockForProcess 메서드는 APO가 잠겨 있고 데이터를 처리할 준비가 되었는지 확인하는 데 사용됩니다.
RemoveAuxiliaryInput

APO에서 보조 입력을 제거합니다.
Reset

Reset 메서드는 APO를 원래 상태로 다시 설정합니다. 이 메서드는 APO의 입력 또는 출력에 연결된 연결 개체를 변경하지 않습니다.
SetAudioDeviceModulesManager

IAudioDeviceModulesManager의 instance IAudioDeviceModulesClient 인터페이스를 구현하는 API(오디오 처리 개체)에 전달하기 위해 시스템에서 호출됩니다.
SetAudioSystemEffectState

호출자가 효과 상태를 설정할 수 있도록 SAPO(시스템 효과 오디오 처리 개체) 오디오 효과에 의해 구현됩니다.
SetValue

이 메서드는 속성 값을 설정하거나 기존 값을 바꾸거나 제거합니다.
UnlockForProcess

UnlockForProcess 메서드는 LockForProcess 메서드에 의해 APO에 부과된 잠금을 해제합니다.

인터페이스

 
IApoAcousticEchoCancellation

이 인터페이스는 AEC(음향 에코 취소) 시나리오를 사용하도록 AMO에 의해 구현됩니다.
IApoAcousticEchoCancellation2

API가 참조 스트림의 원하는 속성을 지정할 수 있도록 IAcousticEchoCancellation을 확장합니다.
IApoAuxiliaryInputConfiguration

오디오 엔진이 보조 입력 스트림을 추가하고 제거할 수 있도록 API가 구현할 수 있는 메서드를 제공합니다.
IApoAuxiliaryInputRT

APO의 보조 입력을 구동하는 데 사용되는 실시간 안전 인터페이스입니다.
IAudioDeviceModulesClient

API(오디오 처리 개체)는 IAudioDeviceModulesManager instance 대한 참조를 얻기 위해 이 인터페이스를 구현합니다.
IAudioMediaType

IAudioMediaType 인터페이스는 sAPO가 적절한 오디오 데이터 형식에 대해 오디오 엔진과 협상하는 데 사용되는 정보를 가져올 수 있도록 하는 메서드를 노출합니다.
IAudioProcessingObject

시스템 효과 SAPO(오디오 처리 개체)는 일반적으로 실시간 프로세스 스레드에서 사용되거나 호출됩니다.
IAudioProcessingObjectConfiguration

IAudioProcessingObjectConfiguration 인터페이스는 APO를 구성하는 데 사용됩니다. 이 인터페이스는 메서드를 사용하여 처리를 위해 APO를 잠그고 잠금을 해제합니다.
IAudioProcessingObjectLoggingService

API에 대한 로깅 서비스를 나타냅니다.
IAudioProcessingObjectNotifications

APO 엔드포인트 및 시스템 효과 알림에 대한 일반적인 오디오 관련 알림을 등록하고 수신하기 위해 클라이언트에서 구현합니다.
IAudioProcessingObjectNotifications2

APO 엔드포인트 및 시스템 효과 알림에 대한 일반적인 오디오 관련 알림을 등록하고 수신하기 위해 클라이언트에서 구현합니다. 이 인터페이스는 현재 디바이스에서 실행 중인 Windows 버전에서 지원되는 알림 유형을 확인하는 기능을 추가합니다.
IAudioProcessingObjectPreferredFormatSupport

이 인터페이스는 API가 기본 입력 또는 출력 형식을 지정할 수 있도록 하기 위해 구현됩니다.
IAudioProcessingObjectRT

이 인터페이스는 실시간 모드에서 작동할 수 있으며 해당 메서드를 양식 실시간 처리 스레드라고 할 수 있습니다.
IAudioProcessingObjectRTQueueService

API에 대한 실시간 작업 큐 서비스를 나타냅니다.
IAudioSystemEffects

IAudioSystemEffects 인터페이스는 IUnknown에서 상속되는 기본 메서드를 사용하며 Initialize 메서드를 구현해야 합니다.
IAudioSystemEffects2

IAudioSystemEffects2 인터페이스는 지정된 모드에서 처리 개체에 대한 정보를 검색하기 위해 Windows 8.1 도입되었습니다.
IAudioSystemEffects3

APOInitSystemEffects3 구조체를 IAudioProcessingObject::Initialize 메서드에 전달해야 하는 클라이언트에 의해 구현됩니다.
IAudioSystemEffectsCustomFormats

IAudioSystemEffectsCustomFormats 인터페이스는 Windows Vista 이상 버전의 Windows에서 지원됩니다.
IPropertyStore

이 인터페이스는 속성 값을 열거하고 조작하는 데 사용되는 메서드를 노출합니다.

구조체

 
AcousticEchoCanceller_Reference_Input

현재 AEC(Acoustic Echo Cancellation) 구성과 관련된 확장된 정보를 포함합니다.
APO_NOTIFICATION

APO 엔드포인트 또는 시스템 효과에 대한 변경에 대한 알림을 나타냅니다.
APO_NOTIFICATION_DESCRIPTOR

요청된 APO 알림을 지정합니다.
APO_REG_PROPERTIES

APO_REG_PROPERTIES 구조체는 IAudioProcessingObject::GetRegistrationProperties에서 APO(오디오 처리 개체)의 등록 속성을 반환하는 데 사용됩니다.
APOInitBaseStruct

APOInitBaseStruct 구조체는 IAudioProcessingObject::Initialize의 다른 초기화 데이터보다 우선해야 하는 기본 초기화 헤더입니다.
APOInitSystemEffects

APOInitSystemEffects 구조체는 초기화를 위해 시스템 효과 APO에 전달됩니다.
APOInitSystemEffects2

초기화를 위해 APO(오디오 처리 개체)에 추가 초기화 컨텍스트를 제공할 수 있도록 APOInitSystemEffects2 구조체가 Windows 8.1 도입되었습니다.
APOInitSystemEffects3

APO 초기화 매개 변수를 제공하여 APOInitSystemEffects2를 확장하여 로깅에 대한 서비스 공급자를 지정하는 기능을 추가합니다.
AUDIO_ENDPOINT_PROPERTY_CHANGE_APO_NOTIFICATION_DESCRIPTOR

엔드포인트 속성 변경 APO 알림을 지정합니다.
AUDIO_ENDPOINT_PROPERTY_CHANGE_NOTIFICATION

속성 변경 APO 알림을 나타냅니다.
AUDIO_ENDPOINT_VOLUME_APO_NOTIFICATION_DESCRIPTOR

엔드포인트 볼륨 APO 알림을 지정합니다.
AUDIO_ENDPOINT_VOLUME_CHANGE_NOTIFICATION

오디오 엔드포인트 볼륨 변경 APO 알림을 나타냅니다.
AUDIO_ENDPOINT_VOLUME_CHANGE_NOTIFICATION2

오디오 엔드포인트 볼륨 변경 APO 알림을 나타냅니다. 볼륨 변경 이벤트에 대한 추가 정보를 제공하는 업데이트된 AUDIO_ENDPOINT_VOLUME_CHANGE_NOTIFICATION 버전입니다.
AUDIO_ENVIRONMENT_STATE_CHANGE_NOTIFICATION

오디오 환경 변경 APO 알림을 나타냅니다.
AUDIO_MICROPHONE_BOOST_APO_NOTIFICATION_DESCRIPTOR

엔드포인트 마이크 부스트 APO 알림을 지정합니다.
AUDIO_MICROPHONE_BOOST_NOTIFICATION

오디오 마이크 부스트 APO 알림을 나타냅니다.
AUDIO_SYSTEMEFFECT

SAPO(시스템 효과 오디오 처리 개체) 오디오 효과를 나타냅니다.
AUDIO_SYSTEMEFFECTS_PROPERTY_CHANGE_NOTIFICATION

시스템 오디오 효과 APO 알림을 나타냅니다.
AUDIO_VOLUME_NOTIFICATION_DATA2

볼륨 변경 알림 이벤트에 대한 정보를 나타냅니다. 이 구조체는 AUDIO_ENDPOINT_VOLUME_CHANGE_NOTIFICATION2 구조체에서 사용됩니다.
KSP_PINMODE

KSP_PINMODE 구조체는 핀 팩터리에 대해 핀 속성 및 지원되는 오디오 처리 모드를 지정합니다.
MDEVICECAPSEX

MDEVICECAPSEX 구조에는 PnP(플러그 앤 플레이) 디바이스 드라이버에 대한 디바이스 기능 정보가 포함되어 있습니다.
MIDIOPENDESC

MIDIOPENDESC 구조체는 MIDI 디바이스를 여는 방법에 대한 정보를 제공하는 클라이언트로 채워진 구조체입니다.
UNCOMPRESSEDAUDIOFORMAT

UNCOMPRESSEDAUDIOFORMAT 구조체는 압축되지 않은 오디오 데이터 형식의 프레임 속도, 채널 마스크 및 기타 특성을 지정합니다.
WAVEFORMATEX

WAVEFORMATEX 구조체는 웨이브 오디오 스트림의 데이터 형식을 지정합니다.