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;

Member

InputChannels

Gibt die Anzahl der Eingabekanäle an.

OutputChannels

Gibt die Anzahl der Ausgabekanäle an.

Capabilities

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

Bemerkungen

Die Tabelle "Funktionen " wird als zweidimensionales Array gespeichert:

KSAUDIO_MIX_CAPS Capabilities[M*N];

Die Tabelle ist eine M-by-N-Matrix, die M-Eingabekanäle in N-Ausgabekanäle ordnet. In der folgenden Tabelle wird die Zuordnung der Arrayelemente "Capabilities" mit den M*N-Eingabeausgabepfaden des Supermixer-Knotens dargestellt.

Arrayelement 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
Funktionen[M*N-1] Eingabekanal M-1 zum Ausgabekanal N-1

Mit anderen Worten, die Mischerkappen für den Pfad vom Eingabekanal i zum Ausgabekanal j sind in Funktionen[i * N + j] enthalten. Wenn kein Pfad von eingabe i zum Ausgabe j vorhanden ist, legen Sie das Element "Stummschalten" des Matrixelements (i,j) auf TRUE fest.

Die Größe der Tabelle wird aus der KSAUDIO_MIXCAP_TABLE Struktur berechnet, die von einer KSPROPERTY_AUDIO_MIX_LEVEL_CAPS Get-Eigenschaftsanforderung abgerufen wird. Wenn die Elemente "InputChannels" und "OutputChannels" der Struktur die Werte mundn aufweisen, wird der gesamtspeicher, der für die KSAUDIO_MIXCAP_TABLE-Struktur und das KSAUDIO_MIX_CAPS Array erforderlich ist, als berechnet.

sizeof(KSAUDIO_MIXCAP_TABLE) + (mn - 1)sizeof(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 wird, sollte der Miniporttreiber nur die ersten beiden Elemente der KSAUDIO_MIXCAP_TABLE-Struktur, InputChannels und OutputChannels ausfüllen. Der Client kann dann eine zweite Eigenschaftsanforderung mit genügend Speicherplatz senden, um die Funktionen aller Kanäle zu enthalten.

Requirements (Anforderungen)

   
Header ksmedia.h (einschließlich Ksmedia.h)

Weitere Informationen

KSAUDIO_MIX_CAPS

KSNODETYPE_SUPERMIX

KSPROPERTY_AUDIO_MIX_LEVEL_CAPS

KSPROPERTY_AUDIO_MIX_LEVEL_TABLE