오디오 디바이스 DDI 참조
오디오 디바이스 DDI 참조 기술 개요입니다.
오디오 디바이스 DDI 참조를 개발하려면 다음 헤더가 필요합니다.
- audiomediatype.h
- audioenginebaseapo.h
- audioengineextensionapo.h
- baseaudioprocessingobject.h
- msapofxproxy.h
이 기술에 대한 프로그래밍 지침은 다음을 참조하세요.
열거형
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 구조체는 웨이브 오디오 스트림의 데이터 형식을 지정합니다. |