次の方法で共有


KSDS3D_HRTF_INIT_MSG構造体 (ksmedia.h)

KSDS3D_HRTF_INIT_MSG構造体は、ヘッド相対転送関数 (HRTF) の初期化に使用するパラメーター設定を指定します。

構文

typedef struct {
  ULONG                      Size;
  KSDS3D_HRTF_FILTER_QUALITY Quality;
  FLOAT                      SampleRate;
  ULONG                      MaxFilterSize;
  ULONG                      FilterTransientMuteLength;
  ULONG                      FilterOverlapBufferLength;
  ULONG                      OutputOverlapBufferLength;
  ULONG                      Reserved;
} KSDS3D_HRTF_INIT_MSG, *PKSDS3D_HRTF_INIT_MSG;

メンバーズ

Size

構造体のサイズをバイト単位で指定します。

Quality

HRTF フィルター品質レベルを指定します。 このパラメーターを、次のいずれかのKSDS3D_HRTF_FILTER_QUALITY列挙値に設定します。

  • LIGHT_FILTERは、優れた品質効果を生み出す効率的なアルゴリズムを選択します。
  • FULL_FILTERは、高品質の効果を生成するが、より多くの処理時間を必要とするアルゴリズムを選択します。

SampleRate

各チャネルを再生するサンプル レートを 1 秒あたりのサンプル数 (ヘルツ) で指定します。 たとえば、22,050 の値は 22.05 kHz のサンプル レートを指定します。

MaxFilterSize

最大フィルター サイズをバイト単位で指定します。 フィルターが直接形式の場合、最大サイズはフィルターの順序です (分子と分母の順序は等しくなります)。 フィルターがカスケード形式の場合、最大サイズは二重係数の最大数です。

FilterTransientMuteLength

新しいフィルタの初期トランジェント信号が出力信号に導入されないようにするために、新しいフィルタへのクロスフェードを遅延させる時間を指定します。 遅延は、新しいフィルターによって生成された初期サンプルの数として指定されます。 この間、出力は古いフィルターからのみ取得されます。

FilterOverlapBufferLength

フィルター出力をミュートおよびクロスフェードするサンプルの合計数を指定します。

OutputOverlapBufferLength

方位角 0 を越えて遷移した後に出力チャネルをクロスフェードするサンプルの数を指定します。 このメンバーは、KSDS3D_HRTF_PARAMS_MSGCrossFadeOutput メンバーによって出力チャネルのクロスフェードが有効になっている場合に使用されます。

Reserved

引っ込み思案。 0 に設定します。

備考

この構造体は、KSPROPERTY_HRTF3D_INITIALIZE プロパティによって使用されます。

Quality の値FULL_FILTERとLIGHT_FILTERは、Microsoft Windows SDK ドキュメントで説明されているGUID_DS3DALG_HRTF_FULLとGUID_DS3DALG_HRTF_LIGHTの設定に対応します。

詳細については、KSPROPSETID_Hrtf3dを参照してください。

必要条件

要件 価値
ヘッダー ksmedia.h (Ksmedia.h を含む)

関連項目

KSDS3D_HRTF_PARAMS_MSG

KSPROPERTY_HRTF3D_INITIALIZE

KSPROPSETID_Hrtf3d