lkml.org 
[lkml]   [2003]   [Jan]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [Asterisk] DTMF noise
Thomas Tonino wrote:
> Roy Sigurd Karlsbakk wrote:
>
>> so - we DO NOT need a 'simplistic' DTMF decoder.
>
>
> You need a good one. But good can be simplistic, is what I'm saying.
>
> DTMF was designed to be easy to decode reliably. Complex doesn't
> automatically mean better.
>

I haven't looked at the code, but I'd recommend using a bank of Goertzel
filters -


http://www.google.com/search?hl=en&lr=&ie=ISO-8859-1&q=Goertzel+filter+DTMF&btnG=Google+Search

The basic idea is that you have 8 filters (for the 4 row and 4 column
frequencies), as well as 8 filters looking at the first harmonic of the
8 frequencies. You then compare the energies in each frequency - if you
see significant energy in the harmonic filter bank, discard the signal.
That prevents you from detecting speech as DTMF, since speech will
usually have harmonics that a good DTMF signal won't.

Since the Goertzel filters are simple, they can be implemented in fixed
point math rather than floating point. At work, we've done this on a
Motorola 56301 DSP, which is a fixed-point DSP. I think there's an app
note from Moto on this - I'll check when I get into work today.

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 13:32    [W:0.075 / U:3.636 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site