summaryrefslogtreecommitdiffstats
path: root/plugins/audio/audio-api.h
diff options
context:
space:
mode:
authorManuel Bachmann <manuel.bachmann@iot.bzh>2016-01-11 02:43:19 +0100
committerManuel Bachmann <manuel.bachmann@iot.bzh>2016-01-11 02:43:19 +0100
commitf16675ed24fd331903b8d6ef5d8ac07f6acbd6b0 (patch)
tree2852205153bdd62560f05eae05b899905942b376 /plugins/audio/audio-api.h
parent14c6ab749e9ccfdde8d191c10e2d0426da53df1f (diff)
Audio Plugin: add PulseAudio support
If PulseAudio development libraries are present, Audio plugin will now support it. It may still fall back to ALSA if a PulseAudio server is not found at runtime. PulseAudio backend supports multiple clients using one audio adapter. (+ various fixes and style improvements) Signed-off-by: Manuel Bachmann <manuel.bachmann@iot.bzh>
Diffstat (limited to 'plugins/audio/audio-api.h')
-rw-r--r--plugins/audio/audio-api.h21
1 files changed, 9 insertions, 12 deletions
diff --git a/plugins/audio/audio-api.h b/plugins/audio/audio-api.h
index b6669ec9..77d6e152 100644
--- a/plugins/audio/audio-api.h
+++ b/plugins/audio/audio-api.h
@@ -20,26 +20,23 @@
#define AUDIO_API_H
#include "audio-alsa.h"
+#ifdef HAVE_PULSE
+#include "audio-pulse.h"
+#endif
/* global plugin handle, should store everything we may need */
typedef struct {
int devCount;
} pluginHandleT;
-
-/* structure holding one audio card with current usage status */
-typedef struct {
- char *name;
- void *handle; /* handle to implementation (ALSA, PulseAudio...) */
- } audioDevT;
/* private client context [will be destroyed when client leaves] */
typedef struct {
- audioDevT *radio; /* pointer to client audio card */
- int idx; /* audio card index within global array */
- int volume[8]; /* audio volume (8 channels) : 0-100 */
- unsigned int channels; /* audio channels : 1(mono)/2(stereo)... */
- unsigned char mute; /* audio muted : 0(false)/1(true) */
- unsigned char is_playing; /* audio is playing: 0(false)/1(true) */
+ void *audio_dev; /* handle to implementation (ALSA, PulseAudio...) */
+ int idx; /* audio card index within global array */
+ int volume[8]; /* audio volume (8 channels) : 0-100 */
+ unsigned int channels; /* audio channels : 1(mono)/2(stereo)... */
+ unsigned char mute; /* audio muted : 0(false)/1(true) */
+ unsigned char is_playing; /* audio is playing: 0(false)/1(true) */
} audioCtxHandleT;