From cf65986843031a5d7284bb6777bc1d42c0cdcacc Mon Sep 17 00:00:00 2001 From: Liong Sauw Ming Date: Tue, 29 Jan 2013 08:24:10 +0000 Subject: Re #1568: (PJSIP 1.x) Apply pjsua_media_config before detecting media change git-svn-id: http://svn.pjsip.org/repos/pjproject/branches/1.x@4337 74dad513-b988-da41-8d7b-12977e46ad98 --- pjsip/src/pjsua-lib/pjsua_media.c | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) (limited to 'pjsip/src') diff --git a/pjsip/src/pjsua-lib/pjsua_media.c b/pjsip/src/pjsua-lib/pjsua_media.c index 55e99d25..53837a8b 100644 --- a/pjsip/src/pjsua-lib/pjsua_media.c +++ b/pjsip/src/pjsua-lib/pjsua_media.c @@ -1646,7 +1646,7 @@ static pj_bool_t is_media_changed(const pjsua_call *call, * by application setting in pjsua_media_cfg. */ if (old_cp->setting.frm_per_pkt != new_cp->setting.frm_per_pkt || - /* old_cp->setting.vad != new_cp->setting.vad || */ + old_cp->setting.vad != new_cp->setting.vad || old_cp->setting.cng != new_cp->setting.cng || old_cp->setting.plc != new_cp->setting.plc || old_cp->setting.penh != new_cp->setting.penh || @@ -1741,6 +1741,19 @@ pj_status_t pjsua_media_channel_update(pjsua_call_id call_id, if (status != PJ_SUCCESS) return status; + /* Override ptime, if this option is specified. */ + if (pjsua_var.media_cfg.ptime != 0) { + si->param->setting.frm_per_pkt = (pj_uint8_t) + (pjsua_var.media_cfg.ptime / si->param->info.frm_ptime); + if (si->param->setting.frm_per_pkt == 0) + si->param->setting.frm_per_pkt = 1; + } + + /* Disable VAD, if this option is specified. */ + if (pjsua_var.media_cfg.no_vad) { + si->param->setting.vad = 0; + } + /* Get audio index from the negotiated SDP */ audio_idx = find_audio_index(local_sdp, PJ_TRUE); @@ -1833,19 +1846,6 @@ pj_status_t pjsua_media_channel_update(pjsua_call_id call_id, } } - /* Override ptime, if this option is specified. */ - if (pjsua_var.media_cfg.ptime != 0) { - si->param->setting.frm_per_pkt = (pj_uint8_t) - (pjsua_var.media_cfg.ptime / si->param->info.frm_ptime); - if (si->param->setting.frm_per_pkt == 0) - si->param->setting.frm_per_pkt = 1; - } - - /* Disable VAD, if this option is specified. */ - if (pjsua_var.media_cfg.no_vad) { - si->param->setting.vad = 0; - } - /* Optionally, application may modify other stream settings here * (such as jitter buffer parameters, codec ptime, etc.) -- cgit v1.2.3