- audio: 更新 audio-mixer, equalizer, fft-filter, hrtf, reverbation 方法文档 - resources: 更新资源管理文档 - debug: 新增 renderdoc-capture 文档
54 lines
1.7 KiB
Markdown
54 lines
1.7 KiB
Markdown
# HRTF
|
||
|
||
**命名空间**: `XCEngine::Audio`
|
||
|
||
**类型**: `class`
|
||
|
||
**头文件**: `XCEngine/Audio/HRTF.h`
|
||
|
||
**描述**: 基于头部相关传输函数(Head-Related Transfer Function)的 3D 空间音频处理器。
|
||
|
||
## 概述
|
||
|
||
HRTF 实现了基于头部相关传输函数(Head-Related Transfer Function)的 3D 空间音频算法。它通过计算声音的耳间时间差(ITD)、耳间电平差(ILD)和耳廓线索(Pinna Cues),在双耳耳机或扬声器上重现逼真的 3D 空间音效。支持多普勒效应、交叉馈送(Cross-feed)调节和质量级别设置。
|
||
|
||
## 公共方法
|
||
|
||
| 方法 | 描述 |
|
||
|------|------|
|
||
| `ProcessAudio` | 处理 3D 空间化音频 |
|
||
| `SetEnabled` | 设置启用状态 |
|
||
| `IsEnabled` | 检查启用状态 |
|
||
| `SetHRTFEnabled` | 设置 HRTF 处理启用状态 |
|
||
| `IsHRTFEnabled` | 检查 HRTF 处理启用状态 |
|
||
| `SetQualityLevel` | 设置质量级别 |
|
||
| `GetQualityLevel` | 获取质量级别 |
|
||
| `SetCrossFeed` | 设置交叉馈送值 |
|
||
| `GetCrossFeed` | 获取交叉馈送值 |
|
||
| `SetDopplerShiftEnabled` | 设置多普勒效应启用状态 |
|
||
| `IsDopplerShiftEnabled` | 检查多普勒效应启用状态 |
|
||
| `SetSpeedOfSound` | 设置声速 |
|
||
| `GetSpeedOfSound` | 获取声速 |
|
||
|
||
## 使用示例
|
||
|
||
```cpp
|
||
#include <XCEngine/Audio/HRTF.h>
|
||
|
||
using namespace XCEngine::Audio;
|
||
|
||
void SetupHRTF() {
|
||
HRTF* hrtf = new HRTF();
|
||
hrtf->SetHRTFEnabled(true);
|
||
hrtf->SetQualityLevel(2);
|
||
hrtf->SetCrossFeed(0.2f);
|
||
hrtf->SetDopplerShiftEnabled(true);
|
||
hrtf->SetSpeedOfSound(343.0f);
|
||
}
|
||
```
|
||
|
||
## 相关文档
|
||
|
||
- [Audio 模块总览](../audio.md) - Audio 模块总览
|
||
- [HRTFParams](../hrtf-params/hrtf-params.md) - HRTF 参数结构体
|