From: "Lu, Han" han.lu@intel.com
Add default name for the playback and capture devices, in case they were not set by user through '-D', '-P' or '-C' options. The patch was tested on Ubuntu and Chrome OS.
Signed-off-by: Lu, Han han.lu@intel.com
diff --git a/bat/alsa.c b/bat/alsa.c index 5eaa25b..5775748 100644 --- a/bat/alsa.c +++ b/bat/alsa.c @@ -377,12 +377,6 @@ void *playback_alsa(struct bat *bat) retval_play = 0; memset(&sndpcm, 0, sizeof(sndpcm));
- if (bat->playback.device == NULL) { - fprintf(bat->err, _("No PCM device for playback: exit\n")); - retval_play = 1; - goto exit1; - } - err = snd_pcm_open(&sndpcm.handle, bat->playback.device, SND_PCM_STREAM_PLAYBACK, 0); if (err != 0) { @@ -533,12 +527,6 @@ void *record_alsa(struct bat *bat) retval_record = 0; memset(&sndpcm, 0, sizeof(sndpcm));
- if (bat->capture.device == NULL) { - fprintf(bat->err, _("No PCM device for capture: exit\n")); - retval_record = 1; - goto exit1; - } - err = snd_pcm_open(&sndpcm.handle, bat->capture.device, SND_PCM_STREAM_CAPTURE, 0); if (err != 0) { diff --git a/bat/bat.c b/bat/bat.c index ddb60b7..9c637f2 100644 --- a/bat/bat.c +++ b/bat/bat.c @@ -473,6 +473,10 @@ static int bat_init(struct bat *bat) return err; }
+ /* Set default playback and capture devices */ + if (bat->playback.device == NULL && bat->capture.device == NULL) + bat->playback.device = bat->capture.device = DEFAULT_DEV_NAME; + /* Determine capture file */ if (bat->local) { bat->capture.file = bat->playback.file; diff --git a/bat/common.h b/bat/common.h index 7346d9f..5417c0e 100644 --- a/bat/common.h +++ b/bat/common.h @@ -16,6 +16,7 @@ #include <alsa/asoundlib.h>
#define TEMP_RECORD_FILE_NAME "/tmp/bat.wav.XXXXXX" +#define DEFAULT_DEV_NAME "default"
#define OPT_BASE 300 #define OPT_LOG (OPT_BASE + 1)