一、混响reverb效果
1、实现的经典Schroeder混响模型,4个梳状滤波器(C1、C2、C3、C4)+2个全通滤波器(A1、A2)组合而成。
2、实现较为复杂的Moorer混响模型,结构如下
首先数据经过18个点FIR滤波器,这个滤波器系数是根据不同空间环境总结出来,这里提供一份18抽样点做参考,它是模拟波士顿交响乐演播厅得到的。
然后会经过6个低通的梳妆滤波器,最后在经过1个全通滤波器。
二、回音echo效果
echo效果结构较为简单,只是需要较多的内存存放数据,结构如下。decay为衰减系数。
* * gain-in ___
* ibuff -----------+------------------------------------------>| |
* | _________ | |
* | | | * decay 1 | |
* +----->| delay 1 |------------------------->| |
* | |_________| | |
* | _________ | + |
* | | | * decay 2 | |
* +---------->| delay 2 |-------------------->| |
* | |_________| | |
* : _________ | |
* | | | * decay n | |
* +--------------->| delay n |--------------->|___|
* |_________| |
* | * gain-out
* |
* +----->obuff
三、EQ效果
EQ模型使用为Peak滤波器(二阶IIR滤波器),为了增加可操作性,这里使用了5段EQ,频点分别为100hz、500hz、1Khz、4Khz、10Khz,而对应增益可以根据个人调节,确定了这些东西后,通过MATLAB把系数生成即可。
四、其他
1、考虑到F407具有FPU单元,所以数据格式采用为float类型,范围在于[-1,1]之间
2、考虑算法中使用了FIR、IIR滤波器,建议使用ST的DSP库。
欢迎技术交流QQ 736009573