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;
Angehörige
usType
Gibt den Mikrofontyp an, der an dieser Koordinatenposition verwendet wird. Der Wert dieses Elements ist einer der KSMICARRAY_MICTYPE Enumerationswerte in der folgenden Tabelle.
Wert | Mikrofontyp |
---|---|
KSMICARRAY_MICTYPE_OMNIDIRECTIONAL | Omnidirektional |
KSMICARRAY_MICTYPE_SUBCARDIOID | Sub kardioid |
KSMICARRAY_MICTYPE_CARDIOID | Kardioide |
KSMICARRAY_MICTYPE_SUPERCARDIOID | Super-Kardioid |
KSMICARRAY_MICTYPE_HYPERCARDIOID | Hyper-Kardioid |
KSMICARRAY_MICTYPE_8SHAPED | 8-förmige |
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 Mikrofontyp weiter.
wXCoord
Gibt die signierte X-Koordinate des Mikrofons in Millimeter an. Zulässige Werte reichen von -32768 bis einschließlich 32767.
wYCoord
Gibt die signierte Y-Koordinate des Mikrofons in Millimeter an. Zulässige Werte reichen von -32768 bis einschließlich 32767.
wZCoord
Gibt die signierte Z-Koordinate des Mikrofons in Millimeter an. Zulässige Werte reichen von -32768 bis einschließlich 32767.
wVerticalAngle
Gibt einen Wert zwischen -15708 und +15708 an. Dividiert durch 10.000 wird ein Bogenwinkelmaß verwendet.
wHorizontalAngle
Gibt einen Wert zwischen -31416 und +31416 an. Dividiert durch 10.000 wird ein Bogenwinkelmaß verwendet.
Bemerkungen
Um die Beschreibungen für wHorizontalAngle und wVerticalAngle-besser zu verstehen, sollten Sie das folgende Diagramm berücksichtigen:
Lassen Sie x die Achse sein, die von der Mitte des Mikrofonarrays zur wahrscheinlichsten 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 die linke Seite des Benutzers. Lassen Sie z die vertikale Achse sein.
Gehen Sie nun davon aus, dass es drei Mikrofone im Array gibt, wie im vorherigen Diagramm dargestellt. Und gehen Sie auch davon aus, 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 1angegeben. Wenn Sie sich nun eine Linie vorstellen, die den Ursprung (0,0,0) des Koordinatensystems (x,y,z) durchläuft und parallel zur Mittellinie von Mic 1ist, stellen Sie fest, 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 wHorizontalAngledargestellt.
Wenn eines der Mikrofone, z. B. Mic 1, nach unten getaucht oder hochgezogen 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 wVerticalAngledargestellt.
Weitere Informationen zum Verarbeiten eines Mikrofonarrays in Windows finden Sie in der Mikrofonarrayunterstützung in Windows Whitepaper.
Anforderungen
Anforderung | Wert |
---|---|
Header- | ksmedia.h (enthalten Ksmedia.h) |