structure KSDS3D_ITD_PARAMS (ksmedia.h)
La structure KSDS3D_ITD_PARAMS spécifie les paramètres appliqués par l’algorithme ITD (Interaural Time Delay) au canal gauche ou droit dans un nœud 3D (KSNODETYPE_3D_EFFECTS).
Syntaxe
typedef struct {
LONG Channel;
FLOAT VolSmoothScale;
FLOAT TotalDryAttenuation;
FLOAT TotalWetAttenuation;
LONG SmoothFrequency;
LONG Delay;
} KSDS3D_ITD_PARAMS, *PKSDS3D_ITD_PARAMS;
Membres
Channel
Spécifie le numéro de canal (le canal 0 est le canal gauche ; le canal 1 est le canal droit).
VolSmoothScale
Spécifie le facteur de rampe pour la mise à l’échelle des niveaux de volume. Pour plus d’informations, consultez la section Remarques suivante.
TotalDryAttenuation
Spécifie le facteur d’atténuation du signal « sec » (le signal d’origine avant d’appliquer un filtre à faible passe pour produire un effet mufflé). Pour plus d’informations, consultez la section Remarques suivante.
TotalWetAttenuation
Spécifie le facteur d’atténuation pour le signal « humide » (le signal mufflé après l’application du filtre à faible passe). Pour plus d’informations, consultez la section Remarques suivante.
SmoothFrequency
Spécifie l’exemple de fréquence du flux audio. Lorsque vous passez à une nouvelle valeur TotalDryAttenuation ou TotalWetAttenuation valeur, l’algorithme ITD a besoin de cette valeur pour déterminer le nombre d’échantillons sur lesquels appliquer le lissage afin d’effectuer la transition dans un intervalle de temps fixe. Par exemple, l’algorithme ITD implémenté par le pilote système KMixer utilise un intervalle de temps de transition d’environ 1/8 seconde.
Delay
Spécifie le délai de temps pour ce canal. Le délai est exprimé sous la forme d’un nombre entier d’échantillons.
Remarques
Cette structure est utilisée par la structure KSDS3D_ITD_PARAMS_MSG, que la demande de propriété KSPROPERTY_ITD3D_PARAMS utilise pour spécifier les paramètres ITD pour les canaux de gauche et de droite d’un flux audio 3D.
Le Delay membre spécifie le montant par lequel le canal actuel retarde le son provenant de la source. Le délai interaural est la différence entre les deux canaux.
Le signal atténué est la somme du signal sec atténué et du signal humide atténué :
TotalDryAttenuation + TotalWetAttenuation
L’augmentation de la taille de TotalWetAttenuation par rapport à TotalDryAttenuation produit un son de plus en plus mufflé. Les deux facteurs d’atténuation sont calculés à partir de la position, de l’orientation et du cône sonore de la source sonore.
Lorsqu’KSPROPERTY_ITD3D_PARAMS une requête set-property change TotalDryAttenuation ou TotalWetAttenuation, la modification du niveau d’atténuation est lisse sur un certain nombre d’échantillons afin d’éviter de générer des bruits de clic impétueux. Le membre VolSmoothScale spécifie la quantité à laquelle mettre à l’échelle l’atténuation du signal pendant chaque étape du processus de lissage. Ce paramètre est soit une valeur légèrement inférieure à 1 si l’atténuation augmente ou est légèrement supérieure à 1 si l’atténuation diminue. À chaque étape du processus de lissage, l’atténuation de l’étape précédente est multipliée par ce paramètre. Le processus se termine lorsque l’atténuation cible est atteinte.
Exigences
Exigence | Valeur |
---|---|
d’en-tête | ksmedia.h (include Ksmedia.h) |