> 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.
The original idea does one better by splitting high and low bands first. If that
is combined with Goertzel it might be even better: by looking at how much low
band energy there is total versus the low detected tone, and the same for the
high band total versus the high band detected tone. Only if the detected tone is
sufficiently strong compared to the total band it is in should the tone be
triggered.
But it may be more expensive computationally than doing twice the number of
Goertzel filters.
Harmonics seem like a bad idea. In between frequencies are better, but using the
total band energy must be the most sure way to detect interference.
Thomas
-
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/