[Freeswitch-svn] [commit] r12903 - freeswitch/trunk/src/mod/endpoints/mod_sofia

FreeSWITCH SVN anthm at freeswitch.org
Fri Apr 3 08:07:10 PDT 2009


Author: anthm
Date: Fri Apr  3 10:07:10 2009
New Revision: 12903

Log:
add rtp-autofix-timing (defauts to true even when not present) set to false to disable it

Modified:
   freeswitch/trunk/src/mod/endpoints/mod_sofia/mod_sofia.c
   freeswitch/trunk/src/mod/endpoints/mod_sofia/mod_sofia.h
   freeswitch/trunk/src/mod/endpoints/mod_sofia/sofia.c

Modified: freeswitch/trunk/src/mod/endpoints/mod_sofia/mod_sofia.c
==============================================================================
--- freeswitch/trunk/src/mod/endpoints/mod_sofia/mod_sofia.c	(original)
+++ freeswitch/trunk/src/mod/endpoints/mod_sofia/mod_sofia.c	Fri Apr  3 10:07:10 2009
@@ -716,7 +716,7 @@
 						return SWITCH_STATUS_GENERR;
 					}
 					
-					if (tech_pvt->check_frames++ < MAX_CODEC_CHECK_FRAMES) {
+					if (sofia_test_pflag(tech_pvt->profile, PFLAG_AUTOFIX_TIMING) && tech_pvt->check_frames++ < MAX_CODEC_CHECK_FRAMES) {
 						if (!tech_pvt->read_impl.encoded_bytes_per_packet) {
 							tech_pvt->check_frames = MAX_CODEC_CHECK_FRAMES;
 							goto skip;

Modified: freeswitch/trunk/src/mod/endpoints/mod_sofia/mod_sofia.h
==============================================================================
--- freeswitch/trunk/src/mod/endpoints/mod_sofia/mod_sofia.h	(original)
+++ freeswitch/trunk/src/mod/endpoints/mod_sofia/mod_sofia.h	Fri Apr  3 10:07:10 2009
@@ -183,6 +183,7 @@
 	PFLAG_DISABLE_NAPTR,
 	PFLAG_AUTOFLUSH,
 	PFLAG_NAT_OPTIONS_PING,
+	PFLAG_AUTOFIX_TIMING,
 	/* No new flags below this line */
 	PFLAG_MAX
 } PFLAGS;

Modified: freeswitch/trunk/src/mod/endpoints/mod_sofia/sofia.c
==============================================================================
--- freeswitch/trunk/src/mod/endpoints/mod_sofia/sofia.c	(original)
+++ freeswitch/trunk/src/mod/endpoints/mod_sofia/sofia.c	Fri Apr  3 10:07:10 2009
@@ -1680,6 +1680,12 @@
 						} else {
 							sofia_clear_pflag(profile, PFLAG_AUTOFLUSH);
 						}
+					} else if (!strcasecmp(var, "rtp-autofix-timing")) {
+						if (switch_true(val)) {
+							sofia_set_pflag(profile, PFLAG_AUTOFIX_TIMING);
+						} else {
+							sofia_clear_pflag(profile, PFLAG_AUTOFIX_TIMING);
+						}
 					} else if (!strcasecmp(var, "nat-options-ping")) {
 						if (switch_true(val)) {
 							sofia_set_pflag(profile, PFLAG_NAT_OPTIONS_PING);
@@ -1947,6 +1953,7 @@
 				sofia_set_pflag(profile, PFLAG_STUN_ENABLED);
 				sofia_set_pflag(profile, PFLAG_DISABLE_100REL);
 				profile->auto_restart = 1;
+				sofia_set_pflag(profile, PFLAG_AUTOFIX_TIMING);
 
 				for (param = switch_xml_child(settings, "param"); param; param = param->next) {
 					char *var = (char *) switch_xml_attr_soft(param, "name");
@@ -2218,6 +2225,12 @@
 						} else {
 							sofia_clear_pflag(profile, PFLAG_AUTOFLUSH);
 						}
+					} else if (!strcasecmp(var, "rtp-autofix-timing")) {
+						if (switch_true(val)) {
+							sofia_set_pflag(profile, PFLAG_AUTOFIX_TIMING);
+						} else {
+							sofia_clear_pflag(profile, PFLAG_AUTOFIX_TIMING);
+						}
 					} else if (!strcasecmp(var, "nat-options-ping")) {
 						if (switch_true(val)) {
 							sofia_set_pflag(profile, PFLAG_NAT_OPTIONS_PING);



More information about the Freeswitch-svn mailing list