您已经在python中创建了一个源来获取音频文件的基本频率,我想用它来获取DTMF音频中的音调!
但如何从音频中获得低音?
THKS !!
完全即时应用FFT,但它的返回始终是高频。
这里的频率表
http://www.mediacollege.com/audio/tone/dtmf.html
例如,当我得到一个关键字“1”的.wav音频文件时,我只有频率1209
在这种情况下如何获得键“1”的低频是697,FFT不要给我这个:-(
答案 0 :(得分:3)
要获得波形中出现的频率(任何声音,不仅是DTMF和所有其他波形),您都可以应用快速傅立叶变换。
当您将其应用于DTMF时,您将获得信号包含的两个频率的两个峰值。
答案 1 :(得分:3)
由于您只需要使用DTMF的几个频率的信息,您可能想尝试对每个频率使用Goertzel algorithm。你不需要所有的FFT箱;并且您可能能够更准确地定位感兴趣的频率,具体取决于时间窗口,然后FFT区间最终居中的位置。
将Goertzel滤波器的幅度输出与RMS总能量进行比较,以便对音调存在做出一些决定。然后查找表格中的DTMF frequencies以获取代码。