# AudioMixer **命名空间**: `XCEngine::Audio` **类型**: `class` **头文件**: `XCEngine/Audio/AudioMixer.h` **描述**: 音频混音器,管理效果链、通道音量和 3D 空间化参数。 ## 概述 AudioMixer 是 XCEngine 音频模块中的混音器类,负责将多个音频效果串联处理、管理通道音量和 3D 空间化参数。混音器支持添加或移除 IAudioEffect 效果(如 Reverbation、Equalizer、FFTFilter),支持输出到父混音器形成混音树结构。 ## 公共方法 | 方法 | 描述 | |------|------| | [`AudioMixer`](constructor.md) | 构造函数 | | [`~AudioMixer`](destructor.md) | 析构函数 | | [`SetVolume`](set-volume.md) | 设置混音器音量 | | [`GetVolume`](get-volume.md) | 获取混音器音量 | | [`SetMute`](set-mute.md) | 设置静音状态 | | [`IsMute`](is-mute.md) | 检查静音状态 | | [`AddEffect`](add-effect.md) | 添加音频效果 | | [`RemoveEffect`](remove-effect.md) | 移除音频效果 | | [`ClearEffects`](clear-effects.md) | 清除所有效果 | | [`ProcessAudio`](process-audio.md) | 处理音频数据 | | [`SetOutputMixer`](set-output-mixer.md) | 设置输出混音器 | | [`GetOutputMixer`](get-output-mixer.md) | 获取输出混音器 | | [`Set3DParams`](set-3d-params.md) | 设置 3D 空间化参数 | | [`Get3DParams`](get-3d-params.md) | 获取 3D 空间化参数 | | [`SetChannelVolume`](set-channel-volume.md) | 设置通道音量 | | [`GetChannelVolume`](get-channel-volume.md) | 获取通道音量 | ## 使用示例 ```cpp #include #include #include using namespace XCEngine::Audio; void SetupMixerWithEffects() { AudioMixer* mixer = new AudioMixer(); mixer->SetVolume(0.8f); Reverbation* reverb = new Reverbation(); reverb->SetRoomSize(0.5f); reverb->SetWetMix(0.3f); Equalizer* eq = new Equalizer(); eq->SetBandCount(4); mixer->AddEffect(eq); mixer->AddEffect(reverb); } void RouteToParentMixer(AudioMixer* child, AudioMixer* parent) { child->SetOutputMixer(parent); } ``` ## 相关文档 - [Audio 模块总览](../audio.md) - Audio 模块总览 - [IAudioEffect](../i-audio-effect/i-audio-effect.md) - 音频效果接口 - [Audio3DParams](../audio-3d-params/audio-3d-params.md) - 3D 空间化参数