Files
XCEngine/docs/api/audio/equalizer/equalizer.md
ssdfasd 161a0896d5 docs: 添加 Audio 模块和 Components 模块 API 文档
- 新增 Audio 模块文档 (54 个文件)
  - AudioSystem 单例类及 20 个方法页
  - AudioMixer 混音器类及 11 个方法页
  - IAudioBackend、IAudioEffect 接口
  - FFTFilter、Reverbation、Equalizer、HRTF 效果类
  - WASAPIBackend Windows 后端
  - AudioConfig、Audio3DParams 等结构体
  - 9 个枚举类型文档
- 新增 Components 模块文档 (3 个文件)
  - AudioSourceComponent 音频源组件
  - AudioListenerComponent 音频监听器组件
- 更新 docs/api/main.md 添加模块导航
2026-03-22 01:56:16 +08:00

68 lines
2.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Equalizer
**命名空间**: `XCEngine::Audio`
**类型**: `class`
**头文件**: `XCEngine/Audio/Equalizer.h`
**描述**: 多频段参数均衡器。
## 概述
Equalizer 是基于双二阶滤波器Biquad Filter的多频段参数均衡器实现。它支持设置任意数量的频段每个频段可独立调节频率、增益Gain/dB和 Q 值。可用于调整音频频谱响应,实现低音增强、高音切平等效果。
## 公共方法
| 方法 | 描述 |
|------|------|
| [`Equalizer`](constructor.md) | 构造函数 |
| [`~Equalizer`](destructor.md) | 析构函数 |
| [`ProcessAudio`](process-audio.md) | 处理均衡后的音频 |
| [`SetBandCount`](set-band-count.md) | 设置频段数量 |
| [`GetBandCount`](get-band-count.md) | 获取频段数量 |
| [`SetBandFrequency`](set-band-frequency.md) | 设置频段频率 |
| [`GetBandFrequency`](get-band-frequency.md) | 获取频段频率 |
| [`SetBandGain`](set-band-gain.md) | 设置频段增益 |
| [`GetBandGain`](get-band-gain.md) | 获取频段增益 |
| [`SetBandQ`](set-band-q.md) | 设置频段 Q 值 |
| [`GetBandQ`](get-band-q.md) | 获取频段 Q 值 |
| [`SetEnabled`](set-enabled.md) | 设置启用状态 |
| [`IsEnabled`](is-enabled.md) | 检查启用状态 |
| [`SetWetMix`](set-wet-mix.md) | 设置湿信号混合比例 |
| [`GetWetMix`](get-wet-mix.md) | 获取湿信号混合比例 |
## 使用示例
```cpp
#include <XCEngine/Audio/Equalizer.h>
using namespace XCEngine::Audio;
void SetupEqualizer() {
Equalizer* eq = new Equalizer();
eq->SetBandCount(4);
eq->SetBandFrequency(0, 100.0f);
eq->SetBandGain(0, 3.0f);
eq->SetBandQ(0, 1.0f);
eq->SetBandFrequency(1, 1000.0f);
eq->SetBandGain(1, 0.0f);
eq->SetBandQ(1, 1.0f);
eq->SetBandFrequency(2, 5000.0f);
eq->SetBandGain(2, -2.0f);
eq->SetBandQ(2, 1.0f);
eq->SetBandFrequency(3, 10000.0f);
eq->SetBandGain(3, 0.0f);
eq->SetBandQ(3, 1.0f);
}
```
## 相关文档
- [Audio 模块总览](../audio.md) - Audio 模块总览
- [IAudioEffect](../i-audio-effect/i-audio-effect.md) - 音频效果接口