![双音多频DTMF](../img/dtmf.jpg)
DTMF编解码器在编码时将击键或数字信息转换成双音信号并发送,解码时在收到的DTMF信号中检测击键或数字信息的存在性。电话机键盘上每一个键通过如图所示的行频与列频唯一确定。DTMF的编解码方案无需过多的计算量,以目前计算机的运算速度,可以很轻松地实现。
由图可知,一个DTMF信号由两个频率的音频信号叠加构成。这两个音频信号的频率来自两组预分配的频率组:行频组或列频组。每一对这样的音频信号唯一表示一个数字或符号。为了产生DTMF信号,可以通过软件产生两个正弦波叠加在一起后发送,解码时软件可以采用改进的Goertzel算法,从频域搜索两个正弦波的存在,从而解调出DTMF信号。