summaryrefslogtreecommitdiff
path: root/pjsip
diff options
context:
space:
mode:
authorBenny Prijono <bennylp@teluu.com>2006-04-27 22:37:08 +0000
committerBenny Prijono <bennylp@teluu.com>2006-04-27 22:37:08 +0000
commitccc07a592e872946cd1e07677cd767f7448bc979 (patch)
tree2b44b0cbfccb86e5f1e6efa6874a87b75643b697 /pjsip
parent4bab78a009cbfc57426066ebb5070e7609d4be04 (diff)
Initial support for stereo codecs, and added L16 codecs. Also better handling for case remote media is restarted
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@412 74dad513-b988-da41-8d7b-12977e46ad98
Diffstat (limited to 'pjsip')
-rw-r--r--pjsip/src/pjsua-lib/pjsua_core.c36
-rw-r--r--pjsip/src/pjsua-lib/pjsua_settings.c2
2 files changed, 35 insertions, 3 deletions
diff --git a/pjsip/src/pjsua-lib/pjsua_core.c b/pjsip/src/pjsua-lib/pjsua_core.c
index 461aebb3..0bfb062c 100644
--- a/pjsip/src/pjsua-lib/pjsua_core.c
+++ b/pjsip/src/pjsua-lib/pjsua_core.c
@@ -662,6 +662,21 @@ static pj_status_t init_media(void)
pjsua.codec_cnt++;
#endif /* PJMEDIA_HAS_GSM_CODEC */
+#if PJMEDIA_HAS_L16_CODEC
+ /* Register L16 */
+ status = pjmedia_codec_l16_init(pjsua.med_endpt, 0);
+ if (status != PJ_SUCCESS) {
+ pjsua_perror(THIS_FILE, "Error initializing L16 codec",
+ status);
+ return status;
+ }
+
+ pjsua.codec_arg[pjsua.codec_cnt] = pj_str("l16");
+ pjsua.codec_deinit[pjsua.codec_cnt] = &pjmedia_codec_l16_deinit;
+ pjsua.codec_cnt++;
+#endif /* PJMEDIA_HAS_L16_CODEC */
+
+
#if PJMEDIA_HAS_G711_CODEC
/* Register PCMA and PCMU */
status = pjmedia_codec_g711_init(pjsua.med_endpt);
@@ -731,6 +746,23 @@ static pj_status_t init_media(void)
}
#endif /* PJMEDIA_HAS_GSM_CODEC */
+#if PJMEDIA_HAS_L16_CODEC
+ /* Is it l16? */
+ else if (!pj_stricmp2(&pjsua.codec_arg[i], "l16")) {
+
+ status = pjmedia_codec_l16_init(pjsua.med_endpt, 0);
+ if (status != PJ_SUCCESS) {
+ pjsua_perror(THIS_FILE, "Error initializing L16 codec",
+ status);
+ return status;
+ }
+
+ pjsua.codec_deinit[i] = &pjmedia_codec_l16_deinit;
+
+ pjsua.clock_rate = 44100;
+ }
+#endif /* PJMEDIA_HAS_L16_CODEC */
+
#if PJMEDIA_HAS_G711_CODEC
/* Is it pcma/pcmu? */
else if (!pj_stricmp2(&pjsua.codec_arg[i], "pcmu") ||
@@ -794,8 +826,8 @@ static pj_status_t init_media(void)
pj_str_t port_name;
/* Create the file player port. */
- status = pjmedia_file_player_port_create( pjsua.pool, pjsua.wav_file,
- 0, -1, NULL,
+ status = pjmedia_wav_player_port_create( pjsua.pool, pjsua.wav_file,
+ 0, 0, -1, NULL,
&pjsua.file_port);
if (status != PJ_SUCCESS) {
pjsua_perror(THIS_FILE,
diff --git a/pjsip/src/pjsua-lib/pjsua_settings.c b/pjsip/src/pjsua-lib/pjsua_settings.c
index 4a02ca11..d811f288 100644
--- a/pjsip/src/pjsua-lib/pjsua_settings.c
+++ b/pjsip/src/pjsua-lib/pjsua_settings.c
@@ -675,7 +675,7 @@ static void dump_media_session(pjmedia_session *session)
i,
info.stream_info[i].fmt.encoding_name.slen,
info.stream_info[i].fmt.encoding_name.ptr,
- info.stream_info[i].fmt.sample_rate / 1000,
+ info.stream_info[i].fmt.clock_rate / 1000,
dir,
rem_addr, rem_port));