tweak ilbc to default to 30 if no mode= fmtp is defined on the inbound which seems to be the default behavior of everything out there.

git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@12110 d0543943-73ff-0310-b7d9-9358b9ac24b2
This commit is contained in:
Brian West 2009-02-17 19:50:12 +00:00
parent 900907a205
commit 4af5bf963d
2 changed files with 8 additions and 1 deletions

View File

@ -2615,7 +2615,12 @@ uint8_t sofia_glue_negotiate_sdp(switch_core_session_t *session, sdp_session_t *
tech_pvt->iananame = switch_core_session_strdup(session, (char *) mimp->iananame);
tech_pvt->pt = (switch_payload_t) map->rm_pt;
tech_pvt->rm_rate = map->rm_rate;
tech_pvt->codec_ms = mimp->microseconds_per_packet / 1000;
if (!strcasecmp((char *) mimp->iananame, "ilbc") && switch_strlen_zero((char*)map->rm_fmtp)) {
/* default to 30 when no mode is defined for ilbc ONLY */
tech_pvt->codec_ms = 30;
} else {
tech_pvt->codec_ms = mimp->microseconds_per_packet / 1000;
}
tech_pvt->remote_sdp_audio_ip = switch_core_session_strdup(session, (char *) connection->c_address);
tech_pvt->rm_fmtp = switch_core_session_strdup(session, (char *) map->rm_fmtp);
tech_pvt->remote_sdp_audio_port = (switch_port_t) m->m_port;

View File

@ -446,6 +446,8 @@ SWITCH_DECLARE(switch_status_t) switch_core_codec_init(switch_codec_t *codec, co
ms = mms;
}
}
} else if (!strcasecmp(codec_name, "ilbc")) {
ms = 30;
}
/* If no specific codec interval is requested opt for 20ms above all else because lots of stuff assumes it */