Partager via


structure KSAUDIO_MICROPHONE_COORDINATES (ksmedia.h)

La structure KSAUDIO_MICROPHONE_COORDINATES spécifie le type et les coordonnées d’un seul microphone dans le réseau de microphones.

Syntaxe

typedef struct {
  USHORT usType;
  SHORT  wXCoord;
  SHORT  wYCoord;
  SHORT  wZCoord;
  SHORT  wVerticalAngle;
  SHORT  wHorizontalAngle;
} KSAUDIO_MICROPHONE_COORDINATES, *PKSAUDIO_MICROPHONE_COORDINATES;

Membres

usType

Spécifie le type de microphone utilisé à cet emplacement de coordonnées. La valeur de ce membre est l’une des valeurs d’énumération KSMICARRAY_MICTYPE indiquées dans le tableau suivant.

Valeur Type de microphone
KSMICARRAY_MICTYPE_OMNIDIRECTIONAL Omnidirectionnel
KSMICARRAY_MICTYPE_SUBCARDIOID Sous-cardioïde
KSMICARRAY_MICTYPE_CARDIOID Cardioïde
KSMICARRAY_MICTYPE_SUPERCARDIOID Super cardioïde
KSMICARRAY_MICTYPE_HYPERCARDIOID Hyper cardioïde
KSMICARRAY_MICTYPE_8SHAPED 8 formes
KSMICARRAY_MICTYPE_VENDORDEFINED 0x0F

Si le microphone est de type KSMICARRAY_MICTYPE_VENDORDEFINED, la valeur doit être définie sur 0x0F. En outre, les bits les plus significatifs définissent davantage le type de microphone.

wXCoord

Spécifie la coordonnée X signée du microphone, en millimètres. Les valeurs acceptables vont de -32768 à 32767, inclus.

wYCoord

Spécifie la coordonnée Y signée du microphone, en millimètres. Les valeurs acceptables vont de -32768 à 32767, inclus.

wZCoord

Spécifie la coordonnée Z signée du microphone, en millimètres. Les valeurs acceptables vont de -32768 à 32767, inclus.

wVerticalAngle

Spécifie une valeur comprise entre -15708 et +15708. Divisé par 10 000, il donne une mesure d’angle de radian.

wHorizontalAngle

Spécifie une valeur comprise entre -31416 et +31416. Divisé par 10 000, il donne une mesure d’angle de radian.

Remarques

Pour mieux comprendre les descriptions de wHorizontalAngle et wVerticalAngle, considérez le diagramme suivant :

Diagramme montrant trois microphones (Mic 1, Mic 2 et Mic 3) dans un tableau. Mic 2 et Mic 3 sont parallèles l’un à l’autre avec leurs lignes centrale parallèles à l’axe X et sans angle vertical de leur orientation. Mic 1 a une ligne centrale qui n’est pas parallèle à l’axe X et il a également un angle vertical par rapport à son orientation.

Soit x l’axe qui pointe du centre du réseau de microphones vers l’emplacement le plus probable de l’utilisateur, c’est-à-dire perpendiculaire à l’écran. Le positif est envers l’utilisateur, le négatif est derrière l’écran. Laissez y par l’axe horizontal perpendiculaire à l’axe x, c’est-à-dire de la gauche de l’écran à droite. Positif est à droite de l’utilisateur ; négatif est à gauche de l’utilisateur. Soit z l’axe vertical.

Supposons maintenant qu’il existe trois microphones dans le tableau, comme illustré dans le diagramme précédent. Et supposons également que l’un des microphones (Mic 1) soit pointé dans une direction horizontale qui n’est pas parallèle à l’axe des x, comme indiqué par la ligne centrale bleue par le micro 1. Maintenant, quand vous imaginez une ligne qui traverse l’origine (0,0,0) du système de coordonnées (x,y,z) et qui est parallèle à la ligne centrale de Mic 1, vous constaterez qu’il existe un angle horizontal entre l’axe des X positifs et la projection de la ligne centrale du micro sur le plan x-y. Cet angle est représenté par wHorizontalAngle.

Si l’un des microphones, par exemple mic 1, est plongé vers le bas ou levé, ce microphone aurait également un angle vertical entre sa ligne centrale et la projection de sa ligne centrale sur le plan x-y. Cet angle est représenté par wVerticalAngle.

Pour plus d’informations sur le traitement d’un tableau de microphones dans Windows, consultez le livre blanc Prise en charge du tableau de microphones dans Windows .

Configuration requise

Condition requise Valeur
En-tête ksmedia.h (inclure Ksmedia.h)