summaryrefslogtreecommitdiff
path: root/configure.ac
diff options
context:
space:
mode:
authorIvan Furs <i.furs@samsung.com>2017-10-03 11:21:07 -0700
committerCedric BAIL <cedric@osg.samsung.com>2017-10-03 11:36:49 -0700
commit7a98f617e94ef42787e06e685a8d5e7be34fff21 (patch)
tree595ff6be26da68a2eca1a690f0fd8bf3b404e2b7 /configure.ac
parentfa2faff41b0396917b7a1da98a9f262cffc82723 (diff)
ecore_audio: a minimal template for playing sound on WINDOWS is added
Summary: Realization of audio data playback through WASAPI (Windows Audio Session API).(minimal) WASAPI model: 1. Find a playback device (in the default system) 2. Register the client on the playback device. 3. Create a playback format for audio data. 4. Initialize the client with the created format, and access mode, .... 5. Take the object-rendering from the client for play the data stream. 6. Play data stream ecore_audio model: 1. create a object for play the data stream(out object) 2. create a object to receive the data stream(in object) 3. register in the out-object the in-object 4. play data stream Necessary: Realize the ecore_audio object to play the data stream using the WASAPI model. How implemented: 1. The object ecore_audio_out_wasapi is implemented 2. object ecore_audio_out_wasapi - the object constructor is find a playback device (in the default system)(WASAPI) 3. _ecore_audio_out_wasapi_ecore_audio_out_input_attach - register in the out-object the in-object    3.1 Register the client on the playback device.(WASAPI)    3.2 Create a playback format for audio data.(WASAPI)    3.3 Initialize the client with the created format, and access mode, ....(WASAPI) 4. _write_cb - play data    4.1 Take the object-rendering from the client for play the data stream.(WASAPI)    4.2 Play data stream(WASAPI) Reviewers: cedric, vtorri, raster, an.kroitor, NikaWhite, FurryMyad, rimmed, t.naumenko, Jaehyun, bowonryu Reviewed By: vtorri, NikaWhite Subscribers: artem.popov, cedric, jpeg Tags: #windows Differential Revision: https://phab.enlightenment.org/D5029 Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Diffstat (limited to 'configure.ac')
-rw-r--r--configure.ac22
1 files changed, 20 insertions, 2 deletions
diff --git a/configure.ac b/configure.ac
index ff49983..93ecf88 100644
--- a/configure.ac
+++ b/configure.ac
@@ -3930,6 +3930,8 @@ want_alsa="no"
3930# TODO: and the EFL_OPTIONAL_DEPEND_PKG(), use EFL_DEPEND_PKG() 3930# TODO: and the EFL_OPTIONAL_DEPEND_PKG(), use EFL_DEPEND_PKG()
3931want_sndfile="yes" 3931want_sndfile="yes"
3932 3932
3933want_wasapiaudio="no"
3934
3933AC_ARG_ENABLE([pulseaudio], 3935AC_ARG_ENABLE([pulseaudio],
3934 [AS_HELP_STRING([--disable-pulseaudio],[disable pulseaudio sound support. @<:@default=enabled@:>@])], 3936 [AS_HELP_STRING([--disable-pulseaudio],[disable pulseaudio sound support. @<:@default=enabled@:>@])],
3935 [ 3937 [
@@ -3937,7 +3939,12 @@ AC_ARG_ENABLE([pulseaudio],
3937 want_pulseaudio="yes" 3939 want_pulseaudio="yes"
3938 else 3940 else
3939 want_pulseaudio="no" 3941 want_pulseaudio="no"
3940 CFOPT_WARNING="xyes" 3942 if test "x${have_win32}" = "xyes" ; then
3943 want_wasapiaudio="yes"
3944 else
3945 want_wasapiaudio="no"
3946 CFOPT_WARNING="xyes"
3947 fi
3941 fi 3948 fi
3942 ], 3949 ],
3943 [want_pulseaudio="yes"]) 3950 [want_pulseaudio="yes"])
@@ -3971,6 +3978,10 @@ if test "x${want_sndfile}" = "xyes" ; then
3971 PKG_CHECK_MODULES([ECORE_AUDIO_SNDFILE], [sndfile]) 3978 PKG_CHECK_MODULES([ECORE_AUDIO_SNDFILE], [sndfile])
3972 AC_DEFINE([HAVE_SNDFILE], [1], [Sndfile support]) 3979 AC_DEFINE([HAVE_SNDFILE], [1], [Sndfile support])
3973fi 3980fi
3981if test "x${want_wasapiaudio}" = "xyes" ; then
3982 EFL_ADD_LIBS([ECORE_AUDIO], [-luuid -lwinmm -lksuser])
3983 AC_DEFINE([HAVE_WASAPI], [1], [Wasapiaudio support])
3984fi
3974 3985
3975dnl EFL_OPTIONAL_DEPEND_PKG([ECORE_AUDIO_ALSA], [${want_alsa}], [ALSA], [alsa]) 3986dnl EFL_OPTIONAL_DEPEND_PKG([ECORE_AUDIO_ALSA], [${want_alsa}], [ALSA], [alsa])
3976dnl EFL_OPTIONAL_DEPEND_PKG([ECORE_AUDIO_PULSE], [${want_pulseaudio}], [PULSE], [libpulse]) 3987dnl EFL_OPTIONAL_DEPEND_PKG([ECORE_AUDIO_PULSE], [${want_pulseaudio}], [PULSE], [libpulse])
@@ -3981,6 +3992,7 @@ EFL_EVAL_PKGS([ECORE_AUDIO])
3981EFL_ADD_FEATURE([ECORE_AUDIO], [alsa]) 3992EFL_ADD_FEATURE([ECORE_AUDIO], [alsa])
3982EFL_ADD_FEATURE([ECORE_AUDIO], [pulseaudio]) 3993EFL_ADD_FEATURE([ECORE_AUDIO], [pulseaudio])
3983EFL_ADD_FEATURE([ECORE_AUDIO], [sndfile]) 3994EFL_ADD_FEATURE([ECORE_AUDIO], [sndfile])
3995EFL_ADD_FEATURE([ECORE_AUDIO], [wasapiaudio])
3984 3996
3985### Checks for header files 3997### Checks for header files
3986 3998
@@ -3997,6 +4009,7 @@ EFL_ADD_FEATURE([ECORE_AUDIO], [sndfile])
3997EFL_LIB_END_OPTIONAL([Ecore_Audio]) 4009EFL_LIB_END_OPTIONAL([Ecore_Audio])
3998AM_CONDITIONAL([HAVE_ECORE_AUDIO_PULSE], [test "x${want_pulseaudio}" = "xyes"]) 4010AM_CONDITIONAL([HAVE_ECORE_AUDIO_PULSE], [test "x${want_pulseaudio}" = "xyes"])
3999AM_CONDITIONAL([HAVE_ECORE_AUDIO_SNDFILE], [test "x${want_sndfile}" = "xyes"]) 4011AM_CONDITIONAL([HAVE_ECORE_AUDIO_SNDFILE], [test "x${want_sndfile}" = "xyes"])
4012AM_CONDITIONAL([HAVE_ECORE_AUDIO_WASASPI], [test "x${want_wasapiaudio}" = "xyes"])
4000 4013
4001#### End of Ecore_Audio 4014#### End of Ecore_Audio
4002 4015
@@ -4764,8 +4777,13 @@ AC_ARG_ENABLE([multisense],
4764 if test "x${want_pulseaudio}" = "xyes"; then 4777 if test "x${want_pulseaudio}" = "xyes"; then
4765 want_multisense="yes" 4778 want_multisense="yes"
4766 else 4779 else
4767 want_multisense="no" 4780 if test "x${want_wasapiaudio}" = "xyes"; then
4781 want_multisense="yes"
4782 else
4783 want_multisense="no"
4784 fi
4768 fi 4785 fi
4786
4769 ]) 4787 ])
4770 4788
4771# TODO: should we keep or remove these? 4789# TODO: should we keep or remove these?