KSAUDIO_MICROPHONE_COORDINATES構造体 (ksmedia.h)

KSAUDIO_MICROPHONE_COORDINATES構造体は、マイク配列内の 1 つのマイクの種類と座標を指定します。

構文

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

メンバー

usType

この座標位置で使用されているマイクの種類を指定します。 このメンバーの値は、次の表に示す KSMICARRAY_MICTYPE 列挙値のいずれかです。

マイクの種類
KSMICARRAY_MICTYPE_OMNIDIRECTIONAL 全方向性
KSMICARRAY_MICTYPE_SUBCARDIOID Sub カーディオイド
KSMICARRAY_MICTYPE_CARDIOID カーディオイド
KSMICARRAY_MICTYPE_SUPERCARDIOID スーパーカーディオイド
KSMICARRAY_MICTYPE_HYPERCARDIOID Hyper カーディオイド
KSMICARRAY_MICTYPE_8SHAPED 8 字形
KSMICARRAY_MICTYPE_VENDORDEFINED 0x0F

マイクの種類が KSMICARRAY_MICTYPE_VENDORDEFINED の場合は、値を 0x0F に設定する必要があります。 さらに、最も重要なビットは、マイクの種類をさらに定義します。

wXCoord

マイクの符号付き X 座標をミリメートル単位で指定します。 許容される値の範囲は-32768 ~ 32767 です。値は 32767 です。

wYCoord

マイクの符号付き Y 座標をミリメートル単位で指定します。 許容される値の範囲は-32768 ~ 32767 です。値は 32767 です。

wZCoord

マイクの符号付き Z 座標をミリメートル単位で指定します。 許容される値の範囲は-32768 ~ 32767 です。値は 32767 です。

wVerticalAngle

-15708 から +15708 までの値を指定します。 10,000 で除算すると、ラジアン角度の測定が行えます。

wHorizontalAngle

-31416 から +31416 までの値を指定します。 10,000 で除算すると、ラジアン角度の測定が行えます。

注釈

wHorizontalAnglewVerticalAngle の説明を理解するには、次の図を検討してください。

配列内の 3 つのマイク (マイク 1、マイク 2、マイク 3) を示す図。マイク2とマイク3は、x軸に平行な中心線を持ち、向きに垂直な角度を持たない互いに平行です。マイク 1 は、x 軸と平行ではない中心線を持ち、その向きに対する垂直方向の角度も備えています。

x は、マイク配列の中心からユーザーの最も可能性の高い場所 (つまり、画面に垂直) を指す軸にします。 正はユーザーに向かって、負は画面の後ろにあります。 x 軸に垂直な横軸 (つまり、画面の左側から右へ) で y を指定します。 肯定的なのはユーザーの権利です。負の値は、ユーザーの左側にあります。 z を縦軸とします。

次に、前の図に示すように、配列に 3 つのマイクがあるとします。 また、マイク (マイク 1) の 1 つが、 マイク 1 を通る青い中心線で示されているように、x 軸と平行でない水平方向に向いているとします。 ここで、(x,y,z) 座標系の原点 (0,0,0) を通過し、 Mic 1 の中心線と平行な線を想像すると、正の x 軸とマイクの中心線の x-y 平面への投影の間に水平な角度があることがわかります。 この角度は wHorizontalAngle で表されます。

マイクの 1 つ (マイク 1 など) が下に浸されたり、上がったりした場合、このマイクは、その中心線と x-y 平面への中心線の投影の間に垂直な角度を持つことになります。 この角度は wVerticalAngle で表されます。

Windows でマイク配列を処理する方法の詳細については、Windows ホワイト ペーパーの マイク配列のサポートに 関するページを参照してください。

要件

要件
Header ksmedia.h (Ksmedia.h を含む)