Simple DTMF Encoder & Decoder

Version 1.0.1.4 (12 KB) von DGM
Simple tools for demonstrating encoding and decoding a sequence of DTMF tones.
306 Downloads
Aktualisiert 30. Sep 2022
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);

Zitieren als

DGM (2024). Simple DTMF Encoder & Decoder (https://github.com/291ce4321ac/dgm-dtmf-example/releases/tag/v1.0.1.4), GitHub. Abgerufen.

Kompatibilität der MATLAB-Version
Erstellt mit R2019b
Kompatibel mit allen Versionen
Plattform-Kompatibilität
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

Version Veröffentlicht Versionshinweise
1.0.1.4

See release notes for this release on GitHub: https://github.com/291ce4321ac/dgm-dtmf-example/releases/tag/v1.0.1.4

1.0.1.3

included fex dependencies

1.0.0.3

again

1.0.0.2

description edit again

1.0.0.1

fixed broken description formatting as usual

1.0.0

Um Probleme in diesem GitHub Add-On anzuzeigen oder zu melden, besuchen Sie das GitHub Repository.
Um Probleme in diesem GitHub Add-On anzuzeigen oder zu melden, besuchen Sie das GitHub Repository.