2

如果我有一个录制的音频文件 (MP3),有没有办法找出用纯 Python 录制的 DTMF 音调?

(如果没有纯python,那么Java也可以。关键是它应该能够在Google Appengine中运行)

4

2 回答 2

6

首先,您需要以给定的位深度和采样率将 MP3 解码为原始样本的未压缩格式。然后寻找构成每个 DTMF 音调的频率。虽然 FFT 可以用于此,但规范算法是 Goertzel 算法,它利用了在进行转换之前您知道自己关心的频率这一事实:http ://en.wikipedia.org/wiki/Goertzel_algorithm

确实存在一些使用 Goertzel 检测 DTMF 的免费 python 代码,虽然我自己没有尝试过,但请看一下:

http://johnetherton.com/projects/pys60-dtmf-detector

于 2010-06-16T03:33:00.820 回答
1

对数据进行 FFT。您应该在两个音调的频率处获得尖峰。

于 2010-06-16T03:25:35.440 回答