summaryrefslogtreecommitdiff
path: root/pjsip-apps
diff options
context:
space:
mode:
authorBenny Prijono <bennylp@teluu.com>2006-12-26 02:27:14 +0000
committerBenny Prijono <bennylp@teluu.com>2006-12-26 02:27:14 +0000
commit66ba60640c9016496736679a5f5d4f76ca9c92b4 (patch)
treea71e50cfd9d35fad717f020cc586c2fed0dd540f /pjsip-apps
parent2fe9c7e503a9599ed0361e10bb6ba1c4bf311e4c (diff)
Ticket #51: Added audio level adjustment to PJSUA-API
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@864 74dad513-b988-da41-8d7b-12977e46ad98
Diffstat (limited to 'pjsip-apps')
-rw-r--r--pjsip-apps/src/pjsua/pjsua_app.c26
1 files changed, 24 insertions, 2 deletions
diff --git a/pjsip-apps/src/pjsua/pjsua_app.c b/pjsip-apps/src/pjsua/pjsua_app.c
index 24868a9f..42395174 100644
--- a/pjsip-apps/src/pjsua/pjsua_app.c
+++ b/pjsip-apps/src/pjsua/pjsua_app.c
@@ -76,6 +76,9 @@ static struct app_config
pjmedia_snd_port *snd;
#endif
+ float mic_level,
+ speaker_level;
+
} app_config;
@@ -209,6 +212,7 @@ static void default_config(struct app_config *cfg)
cfg->rec_id = PJSUA_INVALID_ID;
cfg->wav_port = PJSUA_INVALID_ID;
cfg->rec_port = PJSUA_INVALID_ID;
+ cfg->mic_level = cfg->speaker_level = 1.0;
}
@@ -848,7 +852,7 @@ static pj_status_t parse_args(int argc, char *argv[],
default:
PJ_LOG(1,(THIS_FILE,
"Argument \"%s\" is not valid. Use --help to see help",
- argv[pj_optind-1]));
+ argv[pj_optind]));
return -1;
}
}
@@ -1837,7 +1841,7 @@ static void keystroke_help(void)
puts("| # Send DTMF string | cl List ports | d Dump status |");
puts("| dq Dump curr. call quality | cc Connect port | dd Dump detailed |");
puts("| | cd Disconnect port | dc Dump config |");
- puts("| S Send arbitrary REQUEST | | f Save config |");
+ puts("| S Send arbitrary REQUEST | V Adjust audio Volume | f Save config |");
puts("+------------------------------+--------------------------+-------------------+");
puts("| q QUIT |");
puts("+=============================================================================+");
@@ -2713,6 +2717,24 @@ void console_app_main(const pj_str_t *uri_to_call)
}
break;
+ case 'V':
+ /* Adjust audio volume */
+ sprintf(buf, "Adjust mic level: [%4.1fx] ", app_config.mic_level);
+ if (simple_input(buf,text,sizeof(text))) {
+ char *err;
+ app_config.mic_level = (float)strtod(text, &err);
+ pjsua_conf_adjust_rx_level(0, app_config.mic_level);
+ }
+ sprintf(buf, "Adjust speaker level: [%4.1fx] ",
+ app_config.speaker_level);
+ if (simple_input(buf,text,sizeof(text))) {
+ char *err;
+ app_config.speaker_level = (float)strtod(text, &err);
+ pjsua_conf_adjust_tx_level(0, app_config.speaker_level);
+ }
+
+ break;
+
case 'd':
if (menuin[1] == 'c') {
char settings[2000];