[asterisk-dev] DTMF detection in dsp.c intolerant?

Tony Mountifield tony at softins.clara.co.uk
Wed Aug 22 09:04:20 CDT 2007

In article <46CC3389.1090704 at fnords.org>,
Eric \"ManxPower\" Wieling <eric at fnords.org> wrote:
> relaxdtmf=yes is the most common cause of this issue.

I'm not sure whether you mean relaxdtmf=yes is supposed to make it worse
or better, but I have tried both settings. The systems originally had
relaxdtmf=no, and when we started getting these missing digit problems,
I tried changing it to relaxdtmf=yes. It didn't solve the problem, but
the current setting is "yes".

Looking at the code, it appears that relaxdtmf just allows a larger
difference in the amplitude of the two tones, and tolerates a bit more
second harmonic of the Row tone.

I think the problem is more fundamental than relaxdtmf.

I might end up having to abstract the Asterisk dsp routines into a test
harness and feeding my captured audio to them, but that will be time
consuming, and I'm hoping for other ideas to try first.


> Tony Mountifield wrote:
> > I'm posting this to -dev because I believe the answer will relate to the
> > code in dsp.c for DTMF detection.
> > 
> > I have a system connected to the PSTN using EuroISDN over E1 with aLaw
> > encoding. When it has answered a call, it listens for a DTMF string which
> > contains command codes for the specific application.
> > 
> > Asterisk seems to be very intolerant of slight discrepancies in the DTMF
> > tones. We are finding that with calls from certain locations, it will
> > often miss digits, even though to the ear the audio sounds clear. Calls
> > from other locations will be completely reliable.
> > [..snip..]
Tony Mountifield
Work: tony at softins.co.uk - http://www.softins.co.uk
Play: tony at mountifield.org - http://tony.mountifield.org

More information about the asterisk-dev mailing list