summaryrefslogtreecommitdiff
path: root/libs/ardouralsautil
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2016-02-21 12:44:54 -0500
committerPaul Davis <paul@linuxaudiosystems.com>2016-02-21 12:44:54 -0500
commit3cc4ee8029f9e48c618719af9df9c35c3505e201 (patch)
tree21fa073d1424bd16cfbf5271252363ad0570fe1c /libs/ardouralsautil
parent2d18283379927c661e6862a769a7b8bd8763b743 (diff)
alsa: allow environment variable ARDOUR_ALSA_DEVICE to identify a single, arbitrary ALSA PCM name as the only available/allowed device
Diffstat (limited to 'libs/ardouralsautil')
-rw-r--r--libs/ardouralsautil/devicelist.cc8
1 files changed, 8 insertions, 0 deletions
diff --git a/libs/ardouralsautil/devicelist.cc b/libs/ardouralsautil/devicelist.cc
index 3fdb1401af..f642733182 100644
--- a/libs/ardouralsautil/devicelist.cc
+++ b/libs/ardouralsautil/devicelist.cc
@@ -18,6 +18,8 @@
*/
#include <alsa/asoundlib.h>
+#include <glib.h>
+
#include "pbd/convert.h"
#include "ardouralsautil/devicelist.h"
@@ -34,6 +36,12 @@ ARDOUR::get_alsa_audio_device_names (std::map<std::string, std::string>& devices
string devname;
int cardnum = -1;
int device = -1;
+ const char* fixed_name;
+
+ if ((fixed_name = g_getenv ("ARDOUR_ALSA_DEVICE"))) {
+ devices.insert (make_pair<string,string> (fixed_name, fixed_name));
+ return;
+ }
assert (duplex > 0);