KSNODETYPE_3D_EFFECTS
Узел KSNODETYPE_3D_EFFECTS представляет процессор трехмерных эффектов для конкретного устройства 3D HAL (уровень аппаратного ускорения), который лежит в основе API IDirectSound3DBuffer и IDirectSound3DListener (описано в документации по Microsoft Windows SDK). Трехмерный узел имеет один входной поток с одним или двумя каналами и один выходной поток с n каналами. Он помещает отдельные каналы входного потока в поле трехмерного звука выходного потока.
Входной поток для трехмерного узла обычно содержит один канал. В DirectSound 8.0 и более поздних версиях с трехмерными эффектами можно создавать только буферы МОНО PCM. Более ранние версии DirectSound, однако, поддерживают трехмерные узлы с моно- и стерео входными потоками, а драйверы должны поддерживать и то, и другое, чтобы обеспечить совместимость со старыми приложениями.
Узел KSNODETYPE_3D_EFFECTS используется для управления конфигурацией динамиков DirectSound с помощью следующих необязательных свойств:
KSPROPERTY_AUDIO_CHANNEL_CONFIG
KSPROPERTY_AUDIO_STEREO_SPEAKER_GEOMETRY
Дополнительные сведения см. в разделе Параметры Speaker-Configuration DirectSound.
Кроме того, directSound требует, чтобы узел KSNODETYPE_3D_EFFECTS поддерживал следующие свойства 3D-прослушивателя и 3D-буфера:
KSPROPERTY_DIRECTSOUND3DBUFFER_ALL
KSPROPERTY_DIRECTSOUND3DBUFFER_POSITION
KSPROPERTY_DIRECTSOUND3DBUFFER_VELOCITY
KSPROPERTY_DIRECTSOUND3DBUFFER_CONEANGLES
KSPROPERTY_DIRECTSOUND3DBUFFER_CONEORIENTATION
KSPROPERTY_DIRECTSOUND3DBUFFER_CONEOUTSIDEVOLUME
KSPROPERTY_DIRECTSOUND3DBUFFER_MINDISTANCE
KSPROPERTY_DIRECTSOUND3DBUFFER_MAXDISTANCE
KSPROPERTY_DIRECTSOUND3DBUFFER_MODE
KSPROPERTY_DIRECTSOUND3DLISTENER_ALL
KSPROPERTY_DIRECTSOUND3DLISTENER_POSITION
KSPROPERTY_DIRECTSOUND3DLISTENER_VELOCITY
KSPROPERTY_DIRECTSOUND3DLISTENER_ORIENTATION
KSPROPERTY_DIRECTSOUND3DLISTENER_DISTANCEFACTOR
KSPROPERTY_DIRECTSOUND3DLISTENER_ROLLOFFFACTOR
KSPROPERTY_DIRECTSOUND3DLISTENER_DOPPLERFACTOR
KSPROPERTY_DIRECTSOUND3DLISTENER_BATCH
Узел KSNODETYPE_3D_EFFECTS может реализовать функцию передачи относительно головы (HRTF), в этом случае он должен поддерживать следующие необязательные свойства:
KSPROPERTY_HRTF3D_FILTER_FORMAT
Узел KSNODETYPE_3D_EFFECTS может реализовать алгоритм межауральной задержки времени (ITD), в этом случае он должен поддерживать следующее необязательное свойство: