Formato del descrittore geometry della matrice microfono
Una matrice di microfoni audio USB deve descriversi al sistema a cui è connesso. Ciò significa che i parametri necessari per descrivere la matrice devono essere incorporati nel dispositivo array stesso. Le informazioni sulla geometria della matrice vengono recuperate dal dispositivo usando una richiesta di GET_MEM .
Le informazioni sulla geometria del dispositivo audio USB devono essere fornite in un formato standard. Di conseguenza, le matrici di microfoni USB destinate a funzionare con il driver di classe audio USB di Windows Vista devono fornire un descrittore che usa il formato di informazioni definito nella tabella seguente.
Offset | Campo | Dimensione | Valore | Descrizione |
---|---|---|---|---|
0 |
guidMicArrayID |
16 |
Identificatore univoco globale (GUID) |
ID univoco che contrassegna l'inizio delle informazioni sulla matrice del microfono in memoria ( {07FE86C1-8948-4db5-B184-C5162D4AD314} ). |
16 |
wDescriptorLength |
2 |
Number |
Lunghezza in byte delle informazioni sulla matrice del microfono, inclusi i campi GUID e lunghezza. |
18 |
wVersion |
2 |
Decimale codificato binario (BCD) |
Numero di versione della specifica della matrice del microfono, seguito da questo descrittore. |
20 |
wMicArrayType |
2 |
Number |
Vengono definiti i valori seguenti: 00: lineare. 01: Planare. 02: tridimensionale (3D). 03-FFFF: riservato |
22 |
wWorkVertAngBeg |
2 |
Number |
Inizio dell'angolo verticale del volume di lavoro. |
24 |
wWorkVertAngEnd |
2 |
Number |
Estremità verticale del volume di lavoro. |
26 |
wWorkHorAngBeg |
2 |
Number |
Inizio dell'angolo orizzontale del volume di lavoro. |
28 |
wWorkHorAngEnd |
2 |
Number |
Estremità orizzontale del volume di lavoro. |
30 |
wWorkFreqBandLo |
2 |
Number |
Limite inferiore dell'intervallo di frequenza di lavoro. |
32 |
wWorkFreqBandHi |
2 |
Number |
Limite superiore dell'intervallo di frequenza di lavoro. |
34 |
wNumberOfMics |
2 |
Number |
Numero di singole definizioni di microfono che seguono. |
36 |
wMicrophoneType(0) |
2 |
Number |
Numero che identifica in modo univoco il tipo di microfono 0: 00: Omni-Directional 01: SubCardioid 02: Cardioid 03: SuperCardioid 04: HyperCardioid 05: 8 a forma 0F - FF: Fornitore definito |
38 |
wXCoordinate(0) |
2 |
Number |
Coordinata x del microfono 0. |
40 |
wYCoordinate(0) |
2 |
Number |
Coordinata y del microfono 0. |
42 |
wZCoordinate(0) |
2 |
Number |
Coordinata z del microfono 0. |
44 |
wMicVertAngle(0) |
2 |
Number |
Angolo verticale dell'asse di risposta principale (MRA) del microfono 0. |
46 |
wMicHorAngle(0) |
2 |
Number |
Angolo orizzontale MRA del microfono 0. |
... |
... |
... |
... |
Definizioni del microfono da 1 a n-2. |
34+((n-1)12) |
wMicType(n-1) |
Number |
Numero che identifica in modo univoco il tipo di microfono n-1: 00: Omni-Directional 01: SubCardioid 02: Cardioid 03: SuperCardioid 04: HyperCardioid 05: 8 a forma 0F - FF: Fornitore definito |
|
36+((n-1)12) |
wXCoordinate(n-1) |
Number |
Coordinata x del microfono n-1. |
|
38+((n-1)12) |
wYCoordinate(n-1) |
2 |
Number |
Coordinata y del microfono n-1. |
40+((n-1)12) |
wZCoordinate(n-1) |
2 |
Number |
Coordinata z del microfono n-1. |
42+((n-1)12) |
wMicVertAngle(n-1) |
2 |
Number |
Angolo verticale MRA del microfono n-1. |
44+((n-1)12) |
wMicHorAngle(n-1) |
2 |
Number |
Angolo orizzontale MRA del microfono n-1. |
Per un esempio dettagliato su come usare questo formato di informazioni in un descrittore per una matrice di microfoni a 4 elementi, vedere Appendice A del white paper How to Build and Use Microphone Arrays for Windows Vista .For a detailed example about how to use this information format in a descriptor for a 4-element microphone array arrays for Windows Vista.
Nota
Quando si include un numero di versione nelle informazioni sulla matrice del microfono, il descrittore può essere aggiornato dopo l'implementazione delle specifiche originali. Il numero di versione è un valore BCD. Ad esempio, la versione corrente (1.0) è rappresentata come 0x0100.
I valori di offset e dimensione sono in byte.
Tutti gli angoli sono espressi in unità di 1/10000 radianti. Ad esempio, 3.1416 radianti è espresso come 31416. Il valore può variare da -31416 a 31416 inclusi.
Le coordinate X-y-z sono espresse in millimetri. Il valore può variare da -32767 a 32767 inclusi.
Per informazioni sull'orientamento, sugli assi e sulle direzioni positive degli angoli del sistema di coordinate, vedere l'Appendice B nel white paper sulla matrice di microfoni a cui si fa riferimento sopra.
I valori di frequenza sono espressi in Hz. L'intervallo di valori di frequenza è delimitato solo dalle dimensioni del campo da wWorkFreqBandLo a wWorkFreqBandHi.