KSDS3D_ITD_PARAMS構造体 (ksmedia.h)
KSDS3D_ITD_PARAMS構造体は、3D ノード (KSNODETYPE_3D_EFFECTS) の左右のチャネルに対して、音間遅延 (ITD) アルゴリズムによって適用されるパラメーターを指定します。
構文
typedef struct {
LONG Channel;
FLOAT VolSmoothScale;
FLOAT TotalDryAttenuation;
FLOAT TotalWetAttenuation;
LONG SmoothFrequency;
LONG Delay;
} KSDS3D_ITD_PARAMS, *PKSDS3D_ITD_PARAMS;
メンバー
Channel
チャネル番号を指定します (チャネル 0 は左チャネル、チャネル 1 は右チャネル)。
VolSmoothScale
ボリューム レベルのスケーリングの傾斜率を指定します。 詳細については、「解説」を参照してください。
TotalDryAttenuation
"ドライ" 信号の減衰係数を指定します (ローパス フィルターを適用してこもった効果を生成する前の元の信号)。 詳細については、「解説」を参照してください。
TotalWetAttenuation
"wet" 信号の減衰係数を指定します (ローパス フィルタが適用された後のマッフル信号)。 詳細については、「解説」を参照してください。
SmoothFrequency
オーディオ ストリームのサンプル周波数を指定します。 新しい TotalDryAttenuation 値または TotalWetAttenuation 値に変更する場合、ITD アルゴリズムでは、一定の時間間隔内で遷移を完了するために、スムージングを適用するサンプルの数を決定するために、この値が必要です。 たとえば、 KMixer システム ドライバー によって実装される ITD アルゴリズムでは、約 1/8 秒の遷移時間間隔が使用されます。
Delay
このチャネルの遅延時間を指定します。 遅延は、整数のサンプル数として表されます。
注釈
この構造体は 、KSDS3D_ITD_PARAMS_MSG 構造体によって使用されます。この構造体は、 KSPROPERTY_ITD3D_PARAMS プロパティ要求が 3D オーディオ ストリームの左右のチャネルの ITD パラメーターを指定するために使用します。
Delay メンバーは、現在のチャネルがソースから到着するサウンドを遅延させる量を指定します。 相互運用時間遅延は、2 つのチャネル間の遅延の差です。
減衰信号は、減衰ドライ信号と減衰ウェット信号の合計です。
TotalDryAttenuation + TotalWetAttenuation
TotalWetAttenuation のサイズを TotalDryAttenuation に対して大きくすると、音がますますこもります。 2 つの減衰係数は、音源の位置、向き、およびサウンド コーンから計算されます。
set-property 要求KSPROPERTY_ITD3D_PARAMS TotalDryAttenuation または TotalWetAttenuation のいずれかが変更されると、誤ったクリック ノイズが生成されないようにするため、減衰レベルの変更は多数のサンプルで平滑化されます。 VolSmoothScale メンバーは、スムージング プロセスの各ステップで信号の減衰をスケーリングする量を指定します。 このパラメーターは、減衰が増加している場合は 1 より少し小さい値か、減衰が減少している場合は 1 よりわずかに大きい値です。 スムージング プロセスの各ステップで、前のステップからの減衰にこのパラメーターが乗算されます。 ターゲットの減衰に達すると、プロセスが完了します。
要件
要件 | 値 |
---|---|
Header | ksmedia.h (Ksmedia.h を含む) |