KSAUDIO_MIC_ARRAY_GEOMETRY structure (ksmedia.h)
The KSAUDIO_MIC_ARRAY_GEOMETRY structure specifies the type and the geometry of the microphone array. The usNumberOfMicrophones member indicates the number of microphones in the physical array. The KsMicCoord member is a variable of type KSAUDIO_MICROPHONE_COORDINATES and is an array of structures. The number of entries in this array is given by the value of the usNumberOfMicrophones member.
Syntax
typedef struct {
USHORT usVersion;
USHORT usMicArrayType;
SHORT wVerticalAngleBegin;
SHORT wVerticalAngleEnd;
SHORT wHorizontalAngleBegin;
SHORT wHorizontalAngleEnd;
USHORT usFrequencyBandLo;
USHORT usFrequencyBandHi;
USHORT usNumberOfMicrophones;
KSAUDIO_MICROPHONE_COORDINATES KsMicCoord[1];
} KSAUDIO_MIC_ARRAY_GEOMETRY, *PKSAUDIO_MIC_ARRAY_GEOMETRY;
Members
usVersion
Specifies the version number of the KSAUDIO_MIC_ARRAY_GEOMETRY structure. This member is a BCD value and is currently set to 0x0100, which represents a version number of 1.0.
usMicArrayType
Specifies the type of microphone array in use. This member can be any one of the KSMICARRAY_MICARRAYTYPE enumeration values shown in the following table.
Value | Microphone array type |
---|---|
KSMICARRAY_MICARRAYTYPE_LINEAR | Linear |
KSMICARRAY_MICARRAYTYPE_PLANAR | Planar |
KSMICARRAY_MICARRAYTYPE_3D | 3D |
wVerticalAngleBegin
Specifies the vertical angle of the start of the working volume of the microphone array.
wVerticalAngleEnd
Specifies the vertical angle of the end of the working volume of the microphone array.
wHorizontalAngleBegin
Work Volume HorizontalAngle Begin
wHorizontalAngleEnd
Work Volume HorizontalAngle End
usFrequencyBandLo
Specifies the low end of the frequency range for the microphone array.
usFrequencyBandHi
Specifies the high end of the frequency range for the microphone array.
usNumberOfMicrophones
Specifies the number of microphones in the microphone array.
KsMicCoord[1]
Specifies the array of KSAUDIO_MICROPHONE_COORDINATES structures that contains the locations of the microphones in the array.
Remarks
All angle values are expressed in units of 1/10000th of a radian. For example, 3.1416 radians is expressed as 31416 units. Acceptable values range from -31416 to 31416 units.
All coordinate values are expressed in millimeters. Acceptable values range from -32768 to 32767, inclusive.
Frequency values are expressed in Hertz (Hz).
For more information about how to process a microphone array in Windows, see the Microphone array support in Windows white paper.
Requirements
Requirement | Value |
---|---|
Header | ksmedia.h (include Ksmedia.h) |