声音频均衡器原理
声音频均衡器是一种音频处理设备,用于调节不同频率范围的声音信号的音量。其原理是通过调节不同频率范围的增益,来改变声音信号在不同频率上的能量分布,从而实现音频的均衡。
声音频均衡器通常分为不同的频段,比如低频、中频和高频。每个频段上都有一个控制器,用于调节该频段上的增益。当你调节频均衡器时,实际上是调节不同频段上的增益,从而改变这些频段的音量。
例如,如果你想增强低音效果,你可以将低频段的增益调高。如果你想强调人声,在中频段增加一些增益可以使人声更加清晰。而如果你想减弱某些频率范围的声音,你可以将相应频段的增益调低。
通过调整不同频段上的增益,声音频均衡器可以使音频更加平衡,改善声音的质量和表现力。
均衡器可以让声音达到不同的听觉效果:古典、爵士、流行、增强重低音、摇滚等等。如图是酷我音乐播放器的均衡器界面:
在讨论均衡器的实现原理之前 先要介绍几个音频相关的名词:
频率
声音在一个周期的震动次数 单位是赫兹(hz)不同频率的声音 其音色是不一样的,频率越低声音就越低沉
人的耳朵能听到的频繁范围是20Hz~20000Hz
音色
不同频率的声音 听起来有不同的听觉感受
频段
以某个频率为中心、向两边延伸的频率范围 称之为频段
增益
标识衰减或增强声音的大小。单位是db,0代表不衰减也不增强,每6db为一个声压级,即6db标识声音增大一倍,-6db标识声音衰减到原来的一半
均衡器的实现原理 通过设置特定频段的增益,达到不同的播放效果。比如前面那张图片 是酷狗的古典效果设置图 从图中可以知道需要设置的各频段及增益值为:
- 60 hz为中心的频段:增益为 0db
- 170 hz为中心的频段:增益为 0db
- 370 hz为中心的频段:增益为 0db
- 600 hz为中心的频段:增益为 0db
- 1000 hz为中心的频段:增益为 0db
- 3000 hz为中心的频段:增益为 0db
- 6000 hz为中心的频段:增益为 -4db
- 12000 hz为中心的频段:增益为 -4db
- 14000 hz为中心的频段:增益为 -4db
- 1500 hz为中心的频段:增益为 -6db
FLOAT fCenter; 中心频率,单位hz,取值范围是20Hz~20000Hz
FLOAT fBandwidth; 频宽, 表示以fCenter为中心向两边延伸这么多的一个频段 取值范围是 1.0f~36.0f, 通常用12
FLOAT fGain; 增益值 单位db,取值范围 -15.fdb~15.fdb, 0表示原音 建议不大于12db或小于-12db 否则会有杂音
本人在测试时,实际在超过6db或小于-6db时,因参数与音频数据的问题,偶尔会有小的杂音。
混音大魔王
混音大魔王是一款自己搞的音乐播放器,其中EQ的代码移植的是EqualizerAPO中的代码。
参考资料:[DirectSound] 基于DirectSound的音频均衡器实现