From: Michael Jerris Date: Thu, 15 Feb 2007 14:32:34 +0000 (+0000) Subject: make the 2833 dtmf increase the sequence number before it sends instead of after... X-Git-Tag: v1.0-beta1~1083 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=813c4cd85dccdfcab38ec76572189a034aaad726;p=thirdparty%2Ffreeswitch.git make the 2833 dtmf increase the sequence number before it sends instead of after. The net result of this is, we are still doing it wrong (sending both and audio packet with the same sequence number as our 2833 packet) but because we increment it first, the ua should get our 2833 packet with that sequence number before it gets the audio packet with that sequence number. This should help dtmf interop on ua's that were discarding rtp packets received with a sequence number that it had already received. git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4285 d0543943-73ff-0310-b7d9-9358b9ac24b2 --- diff --git a/src/switch_rtp.c b/src/switch_rtp.c index 5d602adc46..a672dc2a66 100644 --- a/src/switch_rtp.c +++ b/src/switch_rtp.c @@ -657,6 +657,7 @@ static void do_2833(switch_rtp_t *rtp_session) for (x = 0; x < loops; x++) { + rtp_session->dtmf_data.out_digit_seq++; switch_rtp_write_manual(rtp_session, rtp_session->dtmf_data.out_digit_packet, 4, @@ -674,7 +675,6 @@ static void do_2833(switch_rtp_t *rtp_session) duration, rtp_session->dtmf_data.out_digit_seq); - rtp_session->dtmf_data.out_digit_seq++; } } @@ -701,6 +701,7 @@ static void do_2833(switch_rtp_t *rtp_session) for (x = 0; x < 3; x++) { + rtp_session->dtmf_data.out_digit_seq++; switch_rtp_write_manual(rtp_session, rtp_session->dtmf_data.out_digit_packet, 4, @@ -718,7 +719,6 @@ static void do_2833(switch_rtp_t *rtp_session) rtp_session->dtmf_data.out_digit_sofar, 0, rtp_session->dtmf_data.out_digit_seq); - rtp_session->dtmf_data.out_digit_seq++; } free(rdigit);