summaryrefslogtreecommitdiff
path: root/pjsip/src/pjsua-lib/pjsua_media.c
diff options
context:
space:
mode:
Diffstat (limited to 'pjsip/src/pjsua-lib/pjsua_media.c')
-rw-r--r--pjsip/src/pjsua-lib/pjsua_media.c14
1 files changed, 11 insertions, 3 deletions
diff --git a/pjsip/src/pjsua-lib/pjsua_media.c b/pjsip/src/pjsua-lib/pjsua_media.c
index 2a8146c4..3c92c0ea 100644
--- a/pjsip/src/pjsua-lib/pjsua_media.c
+++ b/pjsip/src/pjsua-lib/pjsua_media.c
@@ -1012,15 +1012,15 @@ PJ_DEF(pj_status_t) pjsua_set_snd_dev( int capture_dev,
unsigned clock_rates[] = { 0, 22050, 44100, 48000, 11025, 32000, 8000};
unsigned selected_clock_rate = 0;
unsigned i;
+ pjmedia_snd_stream *strm;
+ pjmedia_snd_stream_info si;
+ pj_str_t tmp;
pj_status_t status = -1;
/* Close existing sound port */
close_snd_dev();
- cap_info = pjmedia_snd_get_dev_info(capture_dev);
- play_info = pjmedia_snd_get_dev_info(playback_dev);
-
/* Set default clock rate */
clock_rates[0] = pjsua_var.media_cfg.clock_rate;
@@ -1094,6 +1094,14 @@ PJ_DEF(pj_status_t) pjsua_set_snd_dev( int capture_dev,
pjsua_var.cap_dev = capture_dev;
pjsua_var.play_dev = playback_dev;
+ /* Update sound device name. */
+ strm = pjmedia_snd_port_get_snd_stream(pjsua_var.snd_port);
+ pjmedia_snd_stream_get_info(strm, &si);
+ play_info = pjmedia_snd_get_dev_info(si.rec_id);
+
+ pjmedia_conf_set_port0_name(pjsua_var.mconf,
+ pj_cstr(&tmp, play_info->name));
+
return PJ_SUCCESS;
}