Simple DTMF Encoder & Decoder
版本 1.0.1.4 (12.0 KB) 作者:
DGM
Simple tools for demonstrating encoding and decoding a sequence of DTMF tones.
This is a relatively simple implementation intended mainly to help deal with questions asked by students. These should not require any special toolboxes and should be more clearly understandable to new users. Tested in R2019b, R2015b, and R2009b.
I make no assurance of the robustness of this implementation in practical applications.
% %%%%%%%%%%%%%%%%%%%%%%%%%%
SIGNAL = dtmfencode(KEYS,{OPTIONS})
Encode a sequence of DTMF tones in an audio signal.
Each tone in the sequence is separated by a period of silence.
The minimum typical tone and space duration used by equipment
is 40 ms.
KEYS is a character vector made from the keys on a 4x4 keypad:
123A
456B
789C
*0#D
OPTIONS are key value pairs:
'toneduration' specifies the length of the tones (default 0.2s)
'spaceduration' specifies the intertone silence (default 0.1s)
'fs' specifies sampling frequency (default 8000 Hz)
Output SIGNAL is a vector describing a time-domain audio signal
% %%%%%%%%%%%%%%%%%%%%%%%%%%
KEYS = dtmfdecode(SIGNAL,{SAMPLEFREQ})
Decode a sequence of DTMF tones in an audio signal.
If called without any output arguments, a figure window
will be opened, displaying the tone spectra and frequency
bins associated with the DTMF source tones.
Each tone in the sequence should be separated by a period of
silence. For normalized signals, the minimum tone duration
and spacing are both well below 40ms.
SIGNAL is a vector describing a time-domain audio signal.
SAMPLEFREQ is the sampling frequency used by SIGNAL (Hz)
This is expected to be at least 3300. (default 8000)
Output KEYS is a character vector
Example:
mysignal = dtmfencode('8675309');
themdigits = dtmfdecode(mysignal);
引用格式
DGM (2024). Simple DTMF Encoder & Decoder (https://github.com/291ce4321ac/dgm-dtmf-example/releases/tag/v1.0.1.4), GitHub. 检索来源 .
MATLAB 版本兼容性
创建方式
R2019b
兼容任何版本
平台兼容性
Windows macOS Linux标签
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!FEX_dependencies/ifversion_fex
FEX_dependencies/subplot_tight
要查看或报告此来自 GitHub 的附加功能中的问题,请访问其 GitHub 仓库。
要查看或报告此来自 GitHub 的附加功能中的问题,请访问其 GitHub 仓库。