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_MSG の CrossFadeOutput メンバーによって出力 チャネルのクロスフェードが有効になっている場合に使用されます。
Reserved
予約済み。 0 に設定します。
注釈
この構造体は、 KSPROPERTY_HRTF3D_INITIALIZE プロパティによって使用されます。
品質の値FULL_FILTERとLIGHT_FILTERは、Microsoft Windows SDKドキュメントで説明されているGUID_DS3DALG_HRTF_FULLとGUID_DS3DALG_HRTF_LIGHTの設定に対応します。
詳細については、「 KSPROPSETID_Hrtf3d」を参照してください。
要件
要件 | 値 |
---|---|
Header | ksmedia.h (Ksmedia.h を含む) |