Freigeben über


KSAUDIO_MIXCAP_TABLE Struktur (ksmedia.h)

Die KSAUDIO_MIXCAP_TABLE Struktur gibt die Mischfunktionen eines Supermixerknotens (KSNODETYPE_SUPERMIX) an. Diese Struktur wird verwendet, um den Datenwert für die KSPROPERTY_AUDIO_MIX_LEVEL_CAPS-Eigenschaft abzurufen oder festzulegen.

Syntax

typedef struct {
  ULONG            InputChannels;
  ULONG            OutputChannels;
  KSAUDIO_MIX_CAPS Capabilities[1];
} KSAUDIO_MIXCAP_TABLE, *PKSAUDIO_MIXCAP_TABLE;

Angehörige

InputChannels

Gibt die Anzahl der Eingabekanäle an.

OutputChannels

Gibt die Anzahl der Ausgabekanäle an.

Capabilities[1]

Enthält den ersten Eintrag in einem zweidimensionalen Array von KSAUDIO_MIX_CAPS Strukturen. Angesichts eines Supermixerknotens mit m Eingabekanälen und n Ausgabekanälen enthält das Array m* Elemente. Jedes Element beschreibt die Mix-Level-Funktionen des Pfads von einem bestimmten Eingabekanal zu einem bestimmten Ausgabekanal.

Bemerkungen

Die Capabilities Tabelle wird als zweidimensionales Array gespeichert:

KSAUDIO_MIX_CAPS Capabilities[M*N];

Die Tabelle ist eine M-by-N-Matrix, die M-Eingabekanälen N-Ausgabekanäle zuordnet. Die folgende Tabelle zeigt die Zuordnung von Capabilities Arrayelementen zu den M*N-Eingabeausgabepfaden des Supermixerknotens.

Feldelement Eingabeausgabepfad
Funktionen[0] Eingabekanal 0 zum Ausgabekanal 0
Funktionen[1] Eingabekanal 0 zum Ausgabekanal 1
Funktionen[N-1] Eingabekanal 0 zum Ausgabekanal N-1
Funktionen[N] Eingabekanal 1 zum Ausgabekanal 0
Funktionen[N+1] Eingabekanal 1 zum Ausgabekanal 1
Funktionen[2N-1] Eingabekanal 1 zum Ausgabekanal N-1
Capabilities[M*N-1] Eingabekanal M-1 zum Ausgabekanal N-1

Anders ausgedrückt: Die Mischerkappen für den Pfad vom Eingabekanal i zum Ausgabekanal j sind in Funktionenenthalten [i * N + j]. Wenn kein Pfad von eingaben i zum Ausgeben jvorhanden ist, legen Sie das Element des Matrixelements stummschalten (i,j) auf TRUEfest.

Die Größe der Tabelle wird aus der KSAUDIO_MIXCAP_TABLE Struktur berechnet, die von einer KSPROPERTY_AUDIO_MIX_LEVEL_CAPS Abrufen der Eigenschaftsanforderung abgerufen wird. Wenn die InputChannels und OutputChannels-Member der Struktur die Werte m und nhaben, wird der gesamt für die KSAUDIO_MIXCAP_TABLE Struktur erforderliche Speicher sowie das KSAUDIO_MIX_CAPS Array als berechnet.

Größe(KSAUDIO_MIXCAP_TABLE) + (mn - 1)Größe(KSAUDIO_MIX_CAPS)

Wenn der Client eine anfängliche KSPROPERTY_AUDIO_MIX_LEVEL_CAPS Anforderung sendet, in der die Eigenschaftsgröße als 2*Sizeof(ULONG) angegeben ist, sollte der Miniporttreiber nur die ersten beiden Member der KSAUDIO_MIXCAP_TABLE Struktur ausfüllen, InputChannels und OutputChannels. Der Client kann dann eine zweite Eigenschaftsanforderung senden, der genügend Speicherplatz zugeordnet ist, um die Funktionen aller Kanäle zu enthalten.

Anforderungen

Anforderung Wert
Header- ksmedia.h (enthalten Ksmedia.h)

Siehe auch

KSAUDIO_MIX_CAPS

KSNODETYPE_SUPERMIX

KSPROPERTY_AUDIO_MIX_LEVEL_CAPS

KSPROPERTY_AUDIO_MIX_LEVEL_TABLE