Freigeben über


KSDS3D_ITD_PARAMS Struktur (ksmedia.h)

Die KSDS3D_ITD_PARAMS Struktur gibt die Parameter an, die vom ITD-Algorithmus (Interaural Time Delay) auf den linken oder rechten Kanal in einem 3D-Knoten (KSNODETYPE_3D_EFFECTS) angewendet werden.

Syntax

typedef struct {
  LONG  Channel;
  FLOAT VolSmoothScale;
  FLOAT TotalDryAttenuation;
  FLOAT TotalWetAttenuation;
  LONG  SmoothFrequency;
  LONG  Delay;
} KSDS3D_ITD_PARAMS, *PKSDS3D_ITD_PARAMS;

Angehörige

Channel

Gibt die Kanalnummer an (Kanal 0 ist der linke Kanal; Kanal 1 ist der richtige Kanal).

VolSmoothScale

Gibt den Rampenfaktor für die Skalierung von Volumeebenen an. Weitere Informationen finden Sie im folgenden Abschnitt "Hinweise".

TotalDryAttenuation

Gibt den Dämpfungsfaktor für das "trocken"-Signal an (das ursprüngliche Signal, bevor ein Low-Pass-Filter angewendet wird, um einen muffigen Effekt zu erzeugen). Weitere Informationen finden Sie im folgenden Abschnitt "Hinweise".

TotalWetAttenuation

Gibt den Dämpfungsfaktor für das "nasse" Signal an (das Muffled-Signal, nachdem der Low-Pass-Filter angewendet wurde). Weitere Informationen finden Sie im folgenden Abschnitt "Hinweise".

SmoothFrequency

Gibt die Beispielhäufigkeit des Audiodatenstroms an. Wenn Sie zu einem neuen TotalDryAttenuation oder TotalWetAttenuation Wert wechseln, benötigt der ITD-Algorithmus diesen Wert, um die Anzahl der Proben zu bestimmen, um die Glättung anzuwenden, um den Übergang innerhalb eines festen Zeitintervalls abzuschließen. Beispielsweise verwendet der vom KMixer-Systemtreiber implementierte ITD-Algorithmus ein Übergangszeitintervall von ungefähr 1/8 Sekunden.

Delay

Gibt die Zeitverzögerung für diesen Kanal an. Die Verzögerung wird als ganze Zahl von Beispielen ausgedrückt.

Bemerkungen

Diese Struktur wird von der KSDS3D_ITD_PARAMS_MSG-Struktur verwendet, die die KSPROPERTY_ITD3D_PARAMS-Eigenschaftsanforderung verwendet, um die ITD-Parameter für die linken und rechten Kanäle eines 3D-Audiostreams anzugeben.

Der Delay Member gibt den Betrag an, um den der aktuelle Kanal den Von der Quelle eingehenden Sound verzögert. Die interaurale Zeitverzögerung ist der Unterschied zwischen den beiden Kanälen.

Das Dämpfungssignal ist die Summe des abgeschwächten Trockensignals und des abgeschwächten nassen Signals:

TotalDryAttenuation + TotalWetAttenuation

Das Erhöhen der Größe von TotalWetAttenuation relativ zu TotalDryAttenuation erzeugt einen zunehmend muffigen Sound. Die beiden Dämpfungsfaktoren werden aus der Position, Ausrichtung und Klangkegel der Soundquelle berechnet.

Wenn eine KSPROPERTY_ITD3D_PARAMS Set-Property-Anforderung entweder TotalDryAttenuation oder TotalWetAttenuationändert, wird die Änderung der Dämpfungsebene über eine Reihe von Beispielen geglättet, um zu vermeiden, dass Rauschen verursacht werden. Der VolSmoothScale Member gibt den Betrag an, um den die Dämpfung des Signals während jedes Schritts im Glättungsprozess skaliert werden soll. Dieser Parameter ist entweder ein Wert, der etwas kleiner als 1 ist, wenn die Dämpfung steigt oder etwas größer als 1 ist, wenn die Dämpfung abnimmt. Bei jedem Schritt im Glättungsprozess wird die Dämpfung aus dem vorherigen Schritt mit diesem Parameter multipliziert. Der Vorgang wird abgeschlossen, wenn die Zieldämpfung erreicht wird.

Anforderungen

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

Siehe auch

KSDS3D_ITD_PARAMS_MSG

KSPROPERTY_ITD3D_PARAMS