From: Matthias Nick Date: Fri, 4 Dec 2009 15:51:48 +0000 (+0000) Subject: Merged revisions 233046 via svnmerge from X-Git-Tag: 1.6.1.12-rc1~3^2~11 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=ceb3398da3b94e76ee5bd7a9815dd7924da4c6e7;p=thirdparty%2Fasterisk.git Merged revisions 233046 via svnmerge from https://origsvn.digium.com/svn/asterisk/trunk ................ r233046 | mnick | 2009-12-04 09:38:33 -0600 (Fri, 04 Dec 2009) | 17 lines Merged revisions 233014 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r233014 | mnick | 2009-12-04 09:17:03 -0600 (Fri, 04 Dec 2009) | 11 lines Warning message gets displayed only once Added additional field 'int display_inband_dtmf_warning', which when set to '1' displays the warning ('Inband DTMF is not supported on codec %s. Use RFC2833'), and when set to '0' doesn't display the warning. Otherwise you would get hundreds of warnings every second. (closes issue #15769) Reported by: falves11 Patches: patch_15769_14.txt uploaded by mnick (license 874) Tested by: mnick, falves11 ........ ................ git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@233048 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- diff --git a/main/dsp.c b/main/dsp.c index b352382805..eaa5c66c33 100644 --- a/main/dsp.c +++ b/main/dsp.c @@ -389,6 +389,7 @@ struct ast_dsp { int digitmode; int faxmode; int dtmf_began; + int display_inband_dtmf_warning; float genergy; int mute_fragments; fragment_t mute_data[5]; @@ -1300,7 +1301,10 @@ struct ast_frame *ast_dsp_process(struct ast_channel *chan, struct ast_dsp *dsp, shortdata[x] = AST_ALAW(odata[x]); break; default: - ast_log(LOG_WARNING, "Inband DTMF is not supported on codec %s. Use RFC2833\n", ast_getformatname(af->subclass)); + /*Display warning only once. Otherwise you would get hundreds of warnings every second */ + if (dsp->display_inband_dtmf_warning) + ast_log(LOG_WARNING, "Inband DTMF is not supported on codec %s. Use RFC2833\n", ast_getformatname(af->subclass)); + dsp->display_inband_dtmf_warning = 0; return af; } @@ -1465,6 +1469,7 @@ struct ast_dsp *ast_dsp_new(void) dsp->faxmode = DSP_FAXMODE_DETECT_CNG; /* Initialize digit detector */ ast_digit_detect_init(&dsp->digit_state, dsp->digitmode & DSP_DIGITMODE_MF); + dsp->display_inband_dtmf_warning = 1; /* Initialize initial DSP progress detect parameters */ ast_dsp_prog_reset(dsp); /* Initialize fax detector */