struttura KSDS3D_ITD_PARAMS (ksmedia.h)
La struttura KSDS3D_ITD_PARAMS specifica i parametri applicati dall'algoritmo ITD (Interaural Time Delay) al canale sinistro o destro in un nodo 3D (KSNODETYPE_3D_EFFECTS).
Sintassi
typedef struct {
LONG Channel;
FLOAT VolSmoothScale;
FLOAT TotalDryAttenuation;
FLOAT TotalWetAttenuation;
LONG SmoothFrequency;
LONG Delay;
} KSDS3D_ITD_PARAMS, *PKSDS3D_ITD_PARAMS;
Membri
Channel
Specifica il numero di canale (channel 0 è il canale sinistro; channel 1 è il canale destro).
VolSmoothScale
Specifica il fattore di rampa per il ridimensionamento dei livelli di volume. Per altre informazioni, vedere la sezione Osservazioni seguente.
TotalDryAttenuation
Specifica il fattore di attenuazione per il segnale "secco" (il segnale originale prima di applicare un filtro a basso passaggio per produrre un effetto muffled). Per altre informazioni, vedere la sezione Osservazioni seguente.
TotalWetAttenuation
Specifica il fattore di attenuazione per il segnale "bagnato" (il segnale muffled dopo l'applicazione del filtro a basso passaggio). Per altre informazioni, vedere la sezione Osservazioni seguente.
SmoothFrequency
Specifica la frequenza di campionamento del flusso audio. Quando si passa a un nuovo valore TotalDryAttenuation o TotalWetAttenuation valore, l'algoritmo ITD richiede questo valore per determinare il numero di campioni su cui applicare lo smoothing per completare la transizione entro un intervallo di tempo fisso. Ad esempio, l'algoritmo ITD implementato dal driver di sistema KMixer usa un intervallo di tempo di transizione di circa 1/8 secondi.
Delay
Specifica il ritardo di tempo per questo canale. Il ritardo viene espresso come numero intero di campioni.
Osservazioni
Questa struttura viene utilizzata dalla struttura KSDS3D_ITD_PARAMS_MSG, usata dalla richiesta di proprietà KSPROPERTY_ITD3D_PARAMS per specificare i parametri ITD per i canali sinistro e destro di un flusso audio 3D.
Il membro Ritardo specifica l'importo in base al quale il canale corrente ritarda il suono proveniente dall'origine. Il ritardo di tempo interaurale è la differenza nei ritardi tra i due canali.
Il segnale attenuato è la somma del segnale secco attenuato e del segnale bagnato attenuato:
TotalDryAttenuation + TotalWetAttenuation
Aumentando le dimensioni di TotalWetAttenuation rispetto alla TotalDryAttenuation produce un suono sempre più muffled. I due fattori di attenuazione vengono calcolati dalla posizione, dall'orientamento e dal cono audio della sorgente audio.
Quando una richiesta di KSPROPERTY_ITD3D_PARAMS proprietà impostata cambia totalDryAttenuation o totalWetAttenuation, la modifica del livello di attenuazione viene smussata su un numero di campioni per evitare di generare rumori di clic spuri. Il membro VolSmoothScale specifica la quantità in base alla quale ridimensionare l'attenuazione del segnale durante ogni passaggio del processo di smoothing. Questo parametro è leggermente inferiore a 1 se l'attenuazione aumenta o leggermente maggiore di 1 se l'attenuazione diminuisce. In ogni passaggio del processo di smoothing, l'attenuazione del passaggio precedente viene moltiplicata per questo parametro. Il processo viene completato quando viene raggiunta l'attenuazione della destinazione.
Fabbisogno
Requisito | Valore |
---|---|
intestazione | ksmedia.h (include Ksmedia.h) |