dsp.c fix incorrect DTMF Digit_Duration.

it's always short by 'hits_to_begin*DTMF_GSIZE', or 25.5ms if hitstobegin=2

(issue ASTERISK-16003)
Tested by: alecdavis
alecdavis (license 585)

Review https://reviewboard.asterisk.org/r/2145/
........

Merged revisions 374475 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........

Merged revisions 374476 from http://svn.asterisk.org/svn/asterisk/branches/10


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/11@374477 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Alec L Davis
2012-10-04 20:06:45 +00:00
parent 2659db6d61
commit 76436d2064

View File

@@ -817,6 +817,7 @@ static int dtmf_detect(struct ast_dsp *dsp, digit_detect_state_t *s, int16_t amp
s->td.dtmf.hits++;
if (s->td.dtmf.hits == s->td.dtmf.hits_to_begin) {
store_digit(s, hit);
s->digitlen[s->current_digits - 1] = s->td.dtmf.hits_to_begin * DTMF_GSIZE;
s->td.dtmf.current_hit = hit;
s->td.dtmf.misses = 0;
}