XAPOFX の概要
XAPOFX は、XAudio2 で使用する XAPO インターフェイスを実装するオーディオ効果のコレクションです。 XAPOFX には、いくつかの効果と、効果インスタンスを作成するための一般的なメカニズムが含まれています。
含まれる効果
次の表では、XAPOFX に含まれる効果について説明します。
効果 | 説明 | パラメーター構造 | パラメーター定数 | 要件 |
---|---|---|---|---|
FXECHO | エコー効果。 | FXECHO_PARAMETERS | FXECHO 定数 | FLOAT32 オーディオ形式のみをサポートします。 |
FXEQ | 4バンドの等化器。 | FXEQ_PARAMETERS | FXEQ 定数 | FLOAT32 オーディオ形式のみをサポートします。 サンプル レートは 22,000 Hz から 48,000 Hz の間である必要があります。 |
FXMasteringLimiter | ボリュームリミッター。 | FXMASTERINGLIMITER_PARAMETERS | FXMASTERINGLIMIT 定数 | FLOAT32 オーディオ形式のみをサポートします。 |
FXReverb | シンプルなリバーブエフェクト。 XAudio2 は、 XAudio2CreateReverb でインスタンス化できる Princeton Digital Reverb を実装する効果も提供します。 |
FXREVERB_PARAMETERS | FXREVERB 定数 | FLOAT32 オーディオ形式のみをサポートします。 また、モノラル出力へのモノラル入力とステレオ出力へのステレオ入力のみをサポートします。 |
XAPOFX に含まれる効果のインスタンスの作成
XAPOFX は、効果インスタンスを作成するための一般的なメカニズムとして CreateFX 関数を提供します。 CreateFX は効果の CLSID を受け取り、効果のインスタンスへの IUnknown インターフェイス ポインターを返します。
XAudio2 での XAPOFX の使用
CreateFX でインスタンス化された効果は、音声にアタッチすることで XAudio2 で使用されます。 各 XAudio2 音声には、0 個以上のオーディオ効果を含むエフェクト チェーンがあります。 音声に送信されたオーディオ データは、音声の出力ターゲットに送信される前に、チェーン内の各エフェクトを介して渡されます。 音声は各エフェクトの出力を受け取り、チェーン内にエフェクトが残らなくなるまでチェーン内の次の効果に送ります。 XAudio2 音声に XAPOFX 効果をアタッチするには、エフェクトの情報 をXAUDIO2_EFFECT_CHAIN 構造体に入力し、 IXAudio2Voice::SetEffectChain に渡します。
XAudio2 エフェクト チェーンの詳細については、「 XAudio2 Audio Effects」を参照してください。
XAudio2 で XAPOFX を使用する例については、「 方法: XAudio2 で XAPOFX を使用する」を参照してください。
XAudio2 暗黙的な効果
XAPOFX によって提供される XAPO のライブラリに加えて、XAudio2 には、リバーブとボリューム メーターのオーディオエフェクトが組み込まれています。 これらの組み込みの効果は 、XAudio2CreateReverb と XAudio2CreateVolumeMeter を使用して作成できます。 これらの組み込み効果のいずれかを使用する例については、「 方法: 効果チェーンを作成 する」を参照してください。
関連トピック