summaryrefslogtreecommitdiff
path: root/pjsip
diff options
context:
space:
mode:
authorBenny Prijono <bennylp@teluu.com>2006-08-07 12:11:40 +0000
committerBenny Prijono <bennylp@teluu.com>2006-08-07 12:11:40 +0000
commit0f726e6d59f037f16ec85ea37d46b45d8c381278 (patch)
tree424e5d39b8d0d17a830626dedebd3c5a1ad08646 /pjsip
parentc14e6bf7c11fb28266cab45ccaa477a54fe3fd59 (diff)
Added --auto-conf options in pjsua, also enable speex/3200, and set quality 5 to use large resampling filter
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@659 74dad513-b988-da41-8d7b-12977e46ad98
Diffstat (limited to 'pjsip')
-rw-r--r--pjsip/include/pjsua-lib/pjsua.h4
-rw-r--r--pjsip/src/pjsua-lib/pjsua_media.c19
2 files changed, 19 insertions, 4 deletions
diff --git a/pjsip/include/pjsua-lib/pjsua.h b/pjsip/include/pjsua-lib/pjsua.h
index e2ae3857..ce4a018d 100644
--- a/pjsip/include/pjsua-lib/pjsua.h
+++ b/pjsip/include/pjsua-lib/pjsua.h
@@ -2085,8 +2085,8 @@ struct pjsua_media_config
/**
* Media quality, 0-10, according to this table:
- * 8-10: resampling use large filter,
- * 3-7: resampling use small filter,
+ * 5-10: resampling use large filter,
+ * 3-4: resampling use small filter,
* 1-2: resampling use linear.
* The media quality also sets speex codec quality/complexity to the
* number.
diff --git a/pjsip/src/pjsua-lib/pjsua_media.c b/pjsip/src/pjsua-lib/pjsua_media.c
index 849d1952..0e24e4de 100644
--- a/pjsip/src/pjsua-lib/pjsua_media.c
+++ b/pjsip/src/pjsua-lib/pjsua_media.c
@@ -75,7 +75,7 @@ pj_status_t pjsua_media_subsys_init(const pjsua_media_config *cfg)
#if PJMEDIA_HAS_SPEEX_CODEC
/* Register speex. */
status = pjmedia_codec_speex_init(pjsua_var.med_endpt,
- PJMEDIA_SPEEX_NO_UWB,
+ 0,
pjsua_var.media_cfg.quality,
pjsua_var.media_cfg.quality);
if (status != PJ_SUCCESS) {
@@ -83,6 +83,21 @@ pj_status_t pjsua_media_subsys_init(const pjsua_media_config *cfg)
status);
return status;
}
+
+ /* Set speex/16000 to higher priority*/
+ codec_id = pj_str("speex/16000");
+ pjmedia_codec_mgr_set_codec_priority(
+ pjmedia_endpt_get_codec_mgr(pjsua_var.med_endpt),
+ &codec_id, PJMEDIA_CODEC_PRIO_NORMAL+2);
+
+ /* Set speex/8000 to next higher priority*/
+ codec_id = pj_str("speex/8000");
+ pjmedia_codec_mgr_set_codec_priority(
+ pjmedia_endpt_get_codec_mgr(pjsua_var.med_endpt),
+ &codec_id, PJMEDIA_CODEC_PRIO_NORMAL+1);
+
+
+
#endif /* PJMEDIA_HAS_SPEEX_CODEC */
#if PJMEDIA_HAS_ILBC_CODEC
@@ -145,7 +160,7 @@ pj_status_t pjsua_media_subsys_init(const pjsua_media_config *cfg)
/* Init options for conference bridge. */
opt = PJMEDIA_CONF_NO_DEVICE;
if (pjsua_var.media_cfg.quality >= 3 &&
- pjsua_var.media_cfg.quality <= 7)
+ pjsua_var.media_cfg.quality <= 4)
{
opt |= PJMEDIA_CONF_SMALL_FILTER;
}