如何放大某些音频样本,特别是放大某个频率?

时间:2011-12-08 08:19:16

标签: audio signal-processing

任何人都可以提供样本伪代码或共享一些包含示例代码的现有链接。

例如,我有一个1kHz或2kHz或8kHz左右的混音,我想实时提升某些频率,如1kHz。

阅读一些DSP书籍和资源让我很困惑。

2 个答案:

答案 0 :(得分:1)

您只需设计并实施合适的digital filter即可。这是一个庞大而复杂的主题领域,所以你不会在这里得到一个简单的答案。作为第一步,最好的事情可能是阅读一本关于DSP的好的入门书,例如: Understanding DSP by Rick Lyons,对于初学者来说非常好,因为它在数学上并不太重,并且比大多数这样的入门DSP书籍更具实用性。

对于这个特定的应用程序,虽然你想要做的是类似于实现graphic equalizer,并且如果你使用例如,有许多关于如何实现这种事情的指示“图形均衡器”作为搜索词。

答案 1 :(得分:0)

数字滤波背后有很多数学方法。对不起,我认为至少要了解基本的过滤器(比如电子产品中使用的过滤器)非常重要。如果您不想完成基础知识:最好使用音频图形均衡器,您可以使用(虚拟)滑块。如果您想要实现一个非常具体的过滤器,请继续阅读。

实时:取决于您的计算平台。如果这是一个小型micro(如AVR,Microchip PIC,..),您将需要一个有效的算法。这可能是IIR带通滤波器。等效的图形均衡器由多个带通滤波器组成,所有滤波器总和在一起。见http://en.wikipedia.org/wiki/Infinite_impulse_response

更加计算密集的算法使用FIR滤波器。在这种情况下,您还可以控制滤波信号的相位。 http://en.wikipedia.org/wiki/Finite_impulse_response

如果找到算法(即IIR),则需要计算系数。算法很简单,计算系数不是。

我找到了一本与您的问题相符的书:Audio digital signal processing in real time 我浏览了它;它似乎有正确的答案。