用途:为 C/C++ 实时音频开发提供数字信号处理算法与技巧参考,源自 musicdsp.org 社区档案积累的实践经验。适合在实现音频滤波器、效果器、合成器或分析器,编写 processBlock()、process() 或逐样本处理循环,设计双二阶、Moog 梯形、状态变量、FIR、Linkwitz-Riley 等滤波器,以及构建延迟线、混响、压缩器、波形整形、立体声处理、生成带限波形与包络、进行快速数学近似和防非规格化优化时使用。若需对特定模拟电路做拓扑级精确仿真(比对原理图或 SPICE 参考),还应加载 circuit-to-dsp,由它决定结构、求解器、积分器与采样率;本技能提供基础模块。
主要能力按参考文件划分:filters.md 覆盖双二阶/RBJ、Moog 梯形、状态变量、FIR、直流阻断、共振峰、参数平滑、分频;effects.md 覆盖延迟、混响、压缩/限制、相位/哇音、波形整形/失真、lo-fi、立体声、卷积;synthesis.md 覆盖振荡器、带限波形、FM/PM、DSF、噪声、包络、切比雪夫波形整形、LFO;analysis.md 覆盖 FFT、DFT、Goertzel、Walsh-Hadamard、包络跟随、节拍检测、LPC、限制;utilities.md 覆盖快速数学(exp、log、sin、sqrt)、插值、削波、非规格化、抖动、MIDI 转换、参数映射、基准测试、无锁 FIFO。
实现原则:系数必须由采样率推导,不得硬编码 44100 Hz 假设;防非规格化(加入极小偏移或使用 flush-to-zero 编译选项);用一阶低通平滑参数,避免瞬时改变系数或增益造成爆音;音频线程不得分配内存、加锁或调用阻塞 OS 函数,应预分配缓冲、以无锁方式传参、热循环避免虚函数派发;多数数字滤波器经双线性变换由模拟原型导出,高频精度不足时可做频率预畸变。代码约定:音频样本用 float、系数计算用 double,符号用 sampleRate/sr、M_PI,状态变量为类成员而非常量;频率单位默认 Hz。
限制:资料未提供该技能的安装命令、许可、收费与平台支持等信息,暂未提供;内容以参考文档形式组织,需按任务读取对应文件。