次の方法で共有


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 を含む)

こちらもご覧ください

KSDS3D_ITD_PARAMS_MSG

KSPROPERTY_ITD3D_PARAMS