diff options
Diffstat (limited to 'plugins/audio/audio-api.c')
-rw-r--r-- | plugins/audio/audio-api.c | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/plugins/audio/audio-api.c b/plugins/audio/audio-api.c index 4a8d0da1..637f9d03 100644 --- a/plugins/audio/audio-api.c +++ b/plugins/audio/audio-api.c @@ -22,10 +22,18 @@ void _backend_init (const char *name, audioCtxHandleT *ctx) { + char *backend_env = getenv ("AFB_AUDIO_OUTPUT"); + unsigned char res = -1; + # ifdef HAVE_PULSE - if (_pulse_init (name, ctx) < 0) -# endif - _alsa_init (name, ctx); + if (!backend_env || (strcasecmp (backend_env, "Alsa") != 0)) + res = _pulse_init (name, ctx); + if (res < 0) +#endif + res = _alsa_init (name, ctx); + + if (res < 0 && verbose) + fprintf (stderr, "Could not initialize Audio backend\n"); } void _backend_free (audioCtxHandleT *ctx) { |