asdfuser pushed a commit to branch master.
commit 4db03f700cfaa8261db11a3a0c7162f0e7b71f0d
Author: Daniel Willmann <[email protected]>
Date: Fri May 3 16:40:09 2013 +0100
ecore_audio: Add alsa support
This is not well tested and thus disabled by default
Signed-off-by: Daniel Willmann <[email protected]>
---
configure.ac | 16 ++++++++++++++--
src/Makefile_Ecore_Audio.am | 8 ++++++++
src/lib/ecore_audio/Ecore_Audio.h | 2 ++
src/lib/ecore_audio/ecore_audio_private.h | 8 --------
4 files changed, 24 insertions(+), 10 deletions(-)
diff --git a/configure.ac b/configure.ac
index 5e0b3fe..1418f63 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2461,8 +2461,19 @@ EFL_LIB_START_OPTIONAL([Ecore_Audio], [test
"${want_audio}" = "yes"])
### Additional options to configure
-# ALSA support is still not there, thus no option for it yet.
-want_alsa="no"
+# ALSA support is not well tested, disable by default
+AC_ARG_ENABLE([alsa],
+ [AC_HELP_STRING([--enable-alsa],
+ [enable alsa sound support. @<:@default=enabled@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ want_alsa="yes"
+ else
+ want_alsa="no"
+ fi
+ ],
+ [want_alsa="no"])
+
# sndfile is mandatory otherwise it won't read from/write to files.
# TODO: if confirmed sndfile is mandatory, remove this variable
@@ -2520,6 +2531,7 @@ EFL_ADD_FEATURE([ECORE_AUDIO], [sndfile])
### Checks for library functions
EFL_LIB_END_OPTIONAL([Ecore_Audio])
+AM_CONDITIONAL([HAVE_ECORE_AUDIO_ALSA], [test "x${want_alsa}" = "xyes"])
AM_CONDITIONAL([HAVE_ECORE_AUDIO_PULSE], [test "x${want_pulseaudio}" = "xyes"])
AM_CONDITIONAL([HAVE_ECORE_AUDIO_SNDFILE], [test "x${want_sndfile}" = "xyes"])
diff --git a/src/Makefile_Ecore_Audio.am b/src/Makefile_Ecore_Audio.am
index 35a414c..62f2485 100644
--- a/src/Makefile_Ecore_Audio.am
+++ b/src/Makefile_Ecore_Audio.am
@@ -27,6 +27,14 @@ lib_ecore_audio_libecore_audio_la_LIBADD = @ECORE_AUDIO_LIBS@
lib_ecore_audio_libecore_audio_la_DEPENDENCIES = @ECORE_AUDIO_INTERNAL_LIBS@
lib_ecore_audio_libecore_audio_la_LDFLAGS = @EFL_LTLIBRARY_FLAGS@
+if HAVE_ECORE_AUDIO_ALSA
+dist_installed_ecoreaudiomainheaders_DATA += \
+lib/ecore_audio/ecore_audio_obj_out_alsa.h
+
+lib_ecore_audio_libecore_audio_la_SOURCES += \
+lib/ecore_audio/ecore_audio_obj_out_alsa.c
+endif
+
if HAVE_ECORE_AUDIO_PULSE
dist_installed_ecoreaudiomainheaders_DATA += \
lib/ecore_audio/ecore_audio_obj_out_pulse.h
diff --git a/src/lib/ecore_audio/Ecore_Audio.h
b/src/lib/ecore_audio/Ecore_Audio.h
index e977060..5e67634 100644
--- a/src/lib/ecore_audio/Ecore_Audio.h
+++ b/src/lib/ecore_audio/Ecore_Audio.h
@@ -212,6 +212,8 @@ EAPI int ecore_audio_shutdown(void);
#include <ecore_audio_obj_out_pulse.h>
+#include <ecore_audio_obj_out_alsa.h>
+
/**
* @}
*/
diff --git a/src/lib/ecore_audio/ecore_audio_private.h
b/src/lib/ecore_audio/ecore_audio_private.h
index 35afa85..a28ca7c 100644
--- a/src/lib/ecore_audio/ecore_audio_private.h
+++ b/src/lib/ecore_audio/ecore_audio_private.h
@@ -146,14 +146,6 @@ extern Eina_List *ecore_audio_modules;
#ifdef HAVE_ALSA
/* ecore_audio_alsa */
-struct _Ecore_Audio_Alsa
-{
- ECORE_MAGIC;
- snd_pcm_t *handle;
- unsigned int channels;
- unsigned int samplerate;
-};
-
Ecore_Audio_Module *ecore_audio_alsa_init(void);
void ecore_audio_alsa_shutdown(void);
#endif /* HAVE_ALSA */
--
------------------------------------------------------------------------------
Get 100% visibility into Java/.NET code with AppDynamics Lite
It's a free troubleshooting tool designed for production
Get down to code-level detail for bottlenecks, with <2% overhead.
Download for free and get started troubleshooting in minutes.
http://p.sf.net/sfu/appdyn_d2d_ap2