오디오 토폴로지 노드

WDM 오디오 드라이버 프레임워크는 오디오 디바이스에 대한 표준 토폴로지 노드 집합을 정의합니다. 미니포트 드라이버는 노드 집합과 노드 간의 연결을 지정하여 디바이스의 오디오 토폴로지를 설명합니다. SysAudio 시스템 드라이버는 이 정보를 사용하여 클라이언트 애플리케이션에 표시되는 오디오 필터 그래프를 생성합니다.

토폴로지의 각 데이터 경로는 핀에서 시작되거나 끝나고 데이터 경로를 따라 구슬로 간주될 수 있는 일부 노드를 통과합니다. 데이터 경로의 각 노드는 데이터 경로 내에서 해당 노드를 고유하게 식별하는 노드 ID(본질적으로 인덱스)로 식별됩니다. 두 개의 핀 인스턴스에는 동일한 ID의 노드가 있을 수 있지만 핀 instance 노드 ID의 조합은 오디오 토폴로지 내의 각 노드를 고유하게 식별합니다.

토폴로지 노드는 노드 속성 집합을 지원합니다. 노드 속성은 속성이 속한 내부 노드를 식별하는 노드 ID를 포함하여 고정 속성과 다릅니다. 특정 노드에 get- 또는 set-property 요청을 보내기 위해 클라이언트는 대상 핀 instance 외에도 대상 노드 ID를 지정합니다. 핀의 속성 처리기가 요청을 받으면 노드 ID를 보고 해당 노드의 처리기에 요청을 전달합니다.

다음 목록에는 더 일반적으로 사용되는 오디오 토폴로지 노드 유형이 포함되어 있습니다.

KSNODETYPE_3D_EFFECTS

KSNODETYPE_ACOUSTIC_ECHO_CANCEL

KSNODETYPE_ADC

KSNODETYPE_AGC

KSNODETYPE_AUDIO_ENGINE

KSNODETYPE_AUDIO_KEYWORDDETECTOR

KSNODETYPE_CHORUS

KSNODETYPE_DAC

KSNODETYPE_DELAY

KSNODETYPE_DEMUX

KSNODETYPE_DEV_SPECIFIC

KSNODETYPE_DMSYNTH

KSNODETYPE_DMSYNTH_CAPS

KSNODETYPE_DRM_DESCRAMBLE

KSNODETYPE_EQUALIZER

KSNODETYPE_FM_RX

KSNODETYPE_LOUDNESS

KSNODETYPE_MICROPHONE_ARRAY_PROCESSOR

KSNODETYPE_MUTE

KSNODETYPE_MUX

KSNODETYPE_NOISE_SUPPRESS

KSNODETYPE_PEAKMETER

KSNODETYPE_PROLOGIC_DECODER

KSNODETYPE_PROLOGIC_ENCODER

KSNODETYPE_REVERB

KSNODETYPE_SRC

KSNODETYPE_STEREO_ENHANCE

KSNODETYPE_STEREO_WIDE

KSNODETYPE_SUM

KSNODETYPE_SUPERMIX

KSNODETYPE_SWMIDI

KSNODETYPE_SWSYNTH

KSNODETYPE_SYNTHESIZER

KSNODETYPE_TELEPHONY_BIDI

KSNODETYPE_TONE

KSNODETYPE_VOLUME