麦克风阵列几何描述符格式
USB 音频麦克风阵列必须向连接到的系统自行描述自身。 这意味着,必须将描述阵列所需的参数嵌入到阵列设备本身中。 使用 GET_MEM 请求从设备检索阵列几何图形信息。
必须以标准格式提供有关 USB 音频设备几何图形的信息。 因此,旨在与 Windows Vista USB 音频类驱动程序配合使用的 USB 麦克风阵列必须提供一个描述符,该描述符将使用下表中定义的信息格式。
Offset | 字段 | 大小 | 值 | 说明 |
---|---|---|---|---|
0 |
guidMicArrayID |
16 |
全局唯一标识符 (GUID) |
用于标记内存中麦克风阵列信息开头的唯一 ID ( {07FE86C1-8948-4db5-B184-C5162D4AD314} )。 |
16 |
wDescriptorLength |
2 |
Number |
麦克风阵列信息的长度(以字节为单位),包括 GUID 和长度字段。 |
18 |
wVersion |
2 |
二进制编码的十进制 (BCD) |
麦克风阵列规范的版本号,后跟此描述符。 |
20 |
wMicArrayType |
2 |
Number |
定义了以下值: 00:线性。 01:平面。 02:三维 (3D)。 03-FFFF:保留 |
22 |
wWorkVertAngBeg |
2 |
Number |
工作音量垂直角度的开始。 |
24 |
wWorkVertAngEnd |
2 |
Number |
工作音量垂直角度的结束。 |
26 |
wWorkHorAngBeg |
2 |
Number |
工作音量水平角度的开始。 |
28 |
wWorkHorAngEnd |
2 |
Number |
工作音量水平角度的结束。 |
30 |
wWorkFreqBandLo |
2 |
Number |
工作频率范围的下限。 |
32 |
wWorkFreqBandHi |
2 |
Number |
工作频率范围的上限。 |
34 |
wNumberOfMics |
2 |
Number |
随后的单个麦克风定义数。 |
36 |
wMicrophoneType(0) |
2 |
Number |
唯一标识麦克风 0 类型的编号: 00:全向 01:子基 02:基 03:超基 04:超高基 05:8 形 0F - FF:供应商定义 |
38 |
wXCoordinate(0) |
2 |
Number |
麦克风 0 的 x 坐标。 |
40 |
wYCoordinate(0) |
2 |
Number |
麦克风 0 的 y 坐标。 |
42 |
wZCoordinate(0) |
2 |
Number |
麦克风 0 的 z 坐标。 |
44 |
wMicVertAngle(0) |
2 |
Number |
麦克风 0 的主响应轴 (MRA) 垂直角度。 |
46 |
wMicHorAngle(0) |
2 |
Number |
麦克风 0 的 MRA 水平角度。 |
... |
... |
... |
... |
麦克风定义 1 到 n-2。 |
34+((n-1)12) |
wMicType(n-1) |
Number |
唯一标识麦克风 n-1 类型的编号: 00:全向 01:子基 02:基 03:超基 04:超高基 05:8 形 0F - FF:供应商定义 |
|
36+((n-1)12) |
wXCoordinate(n-1) |
Number |
麦克风 n-1 的 x 坐标。 |
|
38+((n-1)12) |
wYCoordinate(n-1) |
2 |
Number |
麦克风 n-1 的 y 坐标。 |
40+((n-1)12) |
wZCoordinate(n-1) |
2 |
Number |
麦克风 n-1 的 z 坐标。 |
42+((n-1)12) |
wMicVertAngle(n-1) |
2 |
Number |
麦克风 n-1 的 MRA 垂直角度。 |
44+((n-1)12) |
wMicHorAngle(n-1) |
2 |
Number |
麦克风 n-1 的 MRA 水平角度。 |
有关如何在 4 元素麦克风阵列的描述符中使用此信息格式的详细示例,请参阅如何为 Windows Vista 生成和使用麦克风阵列白皮书的附录 A。
注意
在麦克风阵列信息中包含版本号时,将允许在实现原始规范后更新描述符。 版本号是 BCD 值。 例如,当前版本 (1.0) 表示为 0x0100。
偏移量和大小值以字节为单位。
所有角度均以 1/10000 弧度为单位表示。 例如,3.1416 弧度表示为 31416。 该值的范围可以是 -31416 到 31416(含)。
X-y-z 坐标以毫米表示。 该值的范围可以是 -32767 到 32767(含)。
有关坐标系的方向、轴和角度正方向的信息,请参阅上述麦克风阵列白皮书中的附录 B。
频率值以 Hz 表示。 频率值的范围仅受从 wWorkFreqBandLo 到 wWorkFreqBandHi 的字段大小限制。