Purpose
The purpose of this lab is to design a system to decode DTMF tones.
Assignment
The sole assignment is to write a Matlab function dtmfdecode that decodes DTMF tones and produces a transcript of the number that it encodes.
function str = dtmfdecode(s, fs)
% DTMFDECODE Decode DTMF tones
% str = decodedtmf(s, fs)
% Accepts a array, s, which corresponds to the DTMF tones
% sampled at fs.
% Produces a string transcript that decodes the tones.
In this project, you will be given a .wav file created from tones keyed in by a phone. Here's what you know about these phone tones:
There are between 1 and 10 tones in the file.
The tones have a minimum length of 100 msecs
The tones are separated from each other by a minimum of 50 msecs of silence.
The signal-to-noise ratio will be at least 20 dB. That is, the energy of a section of the file which corresponds to a tone will be at least 10 time greater than a section of the file that corresponds to silence.
The amplitude of the data has been normalized to 1.
There can be a variable amount of 'lead-in' silence at the beginning of the file and 'leadout' silence at the end. The amount could be zero.