XAPOFX 概觀
XAPOFX 是實作 XAPO 介面以用於 XAudio2 的音訊效果集合。 XAPOFX 包含數個效果,以及建立效果實例的常見機制。
包含的效果
下表描述 XAPOFX 中包含的效果。
影響 | 描述 | 參數結構 | 參數常數 | 要求 |
---|---|---|---|---|
FXECHO | 回音效果。 | FXECHO_PARAMETERS | FXECHO 常數 | 僅支援FLOAT32音訊格式。 |
FXEQ | 四頻段等化器。 | FXEQ_PARAMETERS | FXEQ 常數 | 僅支援FLOAT32音訊格式。 取樣速率必須介於 22,000 Hz 和 48,000 Hz 之間。 |
FXMasteringLimiter | 音量限制器。 | FXMASTERINGLIMITER_PARAMETERS | FXMASTERINGLIMIT 常數 | 僅支援FLOAT32音訊格式。 |
FXReverb | 簡單的殘響效果。 XAudio2 也提供實作普林斯頓數位混響效果的功能,可以透過 XAudio2CreateReverb來實現。 |
FXREVERB_PARAMETERS | FXREVERB 常數 | 僅支援FLOAT32音訊格式。 此外,它僅支援單聲道輸入至單聲道輸出,以及立體聲輸入至立體聲輸出。 |
建立包含在 XAPOFX 中的效果的實例
XAPOFX 提供 CreateFX 函式作為建立效果實例的常見機制。 CreateFX 以效果的 CLSID 作為輸入,並返回效果實例的 IUnknown 介面指標。
在 XAudio2 中使用 XAPOFX
使用 CreateFX 具現化的效果,會藉由將它們附加至語音,在 XAudio2 中使用。 每個 XAudio2 語音都有包含零個或多個音訊效果的效果鏈。 傳送至語音的音訊數據會先通過鏈結中的每個效果,再傳送至語音的輸出目標。 語音會取得每個效果的輸出,並將它饋送至鏈結中的下一個效果,直到沒有任何效果留在鏈結中為止。 若要將 XAPOFX 效果附加至 XAudio2 語音,請將效果的資訊填入 XAUDIO2_EFFECT_CHAIN 結構,然後將其傳遞給 IXAudio2Voice::SetEffectChain。
如需 XAudio2 效果鏈結的詳細資訊,請參閱 XAudio2 音訊效果。
如需在 XAudio2 中使用 XAPOFX 的範例,請參閱 如何:在 XAudio2 中使用 XAPOFX。
XAudio2 隱含效果
除了 XAPOFX 提供的 XAPO 庫之外,XAudio2 還具備內建的殘響和音量計音訊效果。 您可以使用 XAudio2CreateReverb 和 XAudio2CreateVolumeMeter來建立這些內建效果。 如需使用下列其中一個內建效果的範例,請參閱 如何:建立效果鏈結。
相關主題