我在读麦克风的原始波浪. (这部分工作,我可以发送给扬声器,得到一个很好的回声.)
为了简单起见,我想说,我想在波形数据中检测DTMF音.实际上,我想检测任何频率,而不只是DTMF中的频率.但是我总是知道我正在寻找哪个频率.
我已经尝试通过FFT运行它,但如果我想要检测中的高精度(说它只有20毫秒),似乎不是很有效率.我可以将其检测到大约200 ms的精度.
我对算法有什么选择?
是否有任何.Net库?
解决方法
如果您想要检测特定频率(如DTMF输入),您可能需要查看
Goertzel algorithm.基于该算法的Sourceforge有一个
C# DTMF generator/detector库.