KSAUDIO_MICROPHONE_COORDINATES-Struktur (ksmedia.h)

Die KSAUDIO_MICROPHONE_COORDINATES-Struktur gibt den Typ und die Koordinaten eines einzelnen Mikrofons im Mikrofonarray an.

Syntax

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

Member

usType

Gibt den Typ des Mikrofons an, das an dieser Koordinatenposition verwendet wird. Der Wert dieses Members ist einer der in der folgenden Tabelle gezeigten KSMICARRAY_MICTYPE Enumerationswerte.

Wert Mikrofontyp
KSMICARRAY_MICTYPE_OMNIDIRECTIONAL Omnidirektional
KSMICARRAY_MICTYPE_SUBCARDIOID Sub cardioid
KSMICARRAY_MICTYPE_CARDIOID Niere
KSMICARRAY_MICTYPE_SUPERCARDIOID Super Cardioid
KSMICARRAY_MICTYPE_HYPERCARDIOID Hyper-Kardioid
KSMICARRAY_MICTYPE_8SHAPED 8-förmig
KSMICARRAY_MICTYPE_VENDORDEFINED 0x0F

Wenn das Mikrofon vom Typ KSMICARRAY_MICTYPE_VENDORDEFINED ist, muss der Wert auf 0x0F festgelegt werden. Darüber hinaus definieren die wichtigsten Bits den Typ des Mikrofons weiter.

wXCoord

Gibt die signierte X-Koordinate des Mikrofons in Millimetern an. Zulässige Werte reichen von -32768 bis einschließlich 32767.

wYCoord

Gibt die signierte Y-Koordinate des Mikrofons in Millimetern an. Zulässige Werte reichen von -32768 bis einschließlich 32767.

wZCoord

Gibt die signierte Z-Koordinate des Mikrofons in Millimetern an. Zulässige Werte reichen von -32768 bis einschließlich 32767.

wVerticalAngle

Gibt einen Wert zwischen -15708 und +15708 an. Wenn es durch 10.000 geteilt wird, gibt es eine Bogenmaßwinkelmessung.

wHorizontalAngle

Gibt einen Wert zwischen -31416 und +31416 an. Wenn es durch 10.000 geteilt wird, gibt es eine Bogenmaßwinkelmessung.

Hinweise

Um die Beschreibungen für wHorizontalAngle und wVerticalAngle besser zu verstehen, sehen Sie sich das folgende Diagramm an:

Diagramm mit drei Mikrofonen (Mic 1, Mic 2 und Mic 3) in einem Array. Mic 2 und Mic 3 sind parallel zueinander mit ihren Mittellinien parallel zur x-Achse und ohne vertikalen Winkel zu ihrer Ausrichtung. Mic 1 hat eine Mittellinie, die nicht parallel zur x-Achse ist, und es hat auch einen vertikalen Winkel zu seiner Ausrichtung.

Lassen Sie x die Achse sein, die von der Mitte des Mikrofonarrays auf die wahrscheinlichste Position des Benutzers zeigt, d. h. senkrecht zum Bildschirm. Positiv ist gegenüber dem Benutzer, negativ ist hinter dem Bildschirm. Lassen Sie y durch die horizontale Achse senkrecht zur x-Achse , d. h. von links vom Bildschirm nach rechts. Positiv ist das Recht des Benutzers; negativ ist auf der linken Seite des Benutzers. Lassen Sie z die vertikale Achse sein.

Gehen Sie nun davon aus, dass das Array drei Mikrofone enthält, wie im vorherigen Diagramm dargestellt. Und nehmen Sie auch an, dass eines der Mikrofone (Mic 1) in eine horizontale Richtung zeigt, die nicht parallel zur x-Achse ist, wie durch die blaue Mittellinie durch Mic 1 angegeben. Wenn Sie sich nun eine Linie vorstellen, die durch den Ursprung (0,0,0) des Koordinatensystems (x,y,z) verläuft und parallel zur Mittellinie von Mic 1 verläuft, werden Sie feststellen, dass es einen horizontalen Winkel zwischen der positiven x-Achse und der Projektion der Mittellinie des Mikrofons auf die x-y-Ebene gibt. Dieser Winkel wird durch wHorizontalAngle dargestellt.

Wenn eines der Mikrofone, z. B. Mic 1, nach unten getaucht oder hochgehoben wird, hätte dieses Mikrofon auch einen vertikalen Winkel zwischen seiner Mittellinie und der Projektion seiner Mittellinie auf die x-y-Ebene. Dieser Winkel wird durch wVerticalAngle dargestellt.

Weitere Informationen zum Verarbeiten eines Mikrofonarrays in Windows finden Sie im Whitepaper Mikrofonarrayunterstützung in Windows .

Anforderungen

Anforderung Wert
Header ksmedia.h (include Ksmedia.h)