Fixed sound device ID bug: application was unable to use device ID zero because this caused pasound.c to autodetect default device
git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@812 74dad513-b988-da41-8d7b-12977e46ad98
diff --git a/pjmedia/src/pjmedia/pasound.c b/pjmedia/src/pjmedia/pasound.c
index 388e410..68c8c7e 100644
--- a/pjmedia/src/pjmedia/pasound.c
+++ b/pjmedia/src/pjmedia/pasound.c
@@ -341,7 +341,7 @@
const PaStreamInfo *paSI;
PaError err;
- if (index <= 0) {
+ if (index < 0) {
index = pa_get_default_input_dev(channel_count);
if (index < 0) {
/* No such device. */
@@ -437,7 +437,7 @@
unsigned paFrames, paRate, paLatency;
PaError err;
- if (index <= 0) {
+ if (index < 0) {
index = pa_get_default_output_dev(channel_count);
if (index < 0) {
/* No such device. */
@@ -542,7 +542,7 @@
unsigned paFrames, paRate, paInputLatency, paOutputLatency;
PaError err;
- if (rec_id <= 0) {
+ if (rec_id < 0) {
rec_id = pa_get_default_input_dev(channel_count);
if (rec_id < 0) {
/* No such device. */
@@ -556,7 +556,7 @@
return PJMEDIA_ESNDINDEVID;
}
- if (play_id <= 0) {
+ if (play_id < 0) {
play_id = pa_get_default_output_dev(channel_count);
if (play_id < 0) {
/* No such device. */
diff --git a/pjsip/src/pjsua-lib/pjsua_core.c b/pjsip/src/pjsua-lib/pjsua_core.c
index 33db066..000d469 100644
--- a/pjsip/src/pjsua-lib/pjsua_core.c
+++ b/pjsip/src/pjsua-lib/pjsua_core.c
@@ -394,6 +394,9 @@
PJ_ASSERT_RETURN(status == PJ_SUCCESS, status);
+ /* Set default sound device ID */
+ pjsua_var.cap_dev = pjsua_var.play_dev = -1;
+
/* Init caching pool. */
pj_caching_pool_init(&pjsua_var.cp, &pj_pool_factory_default_policy, 0);