aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--configure.in1
-rw-r--r--tools/depends/target/Makefile5
-rw-r--r--xbmc/cores/AudioEngine/AESinkFactory.cpp15
3 files changed, 17 insertions, 4 deletions
diff --git a/configure.in b/configure.in
index a82483e82d..7acb37af9b 100644
--- a/configure.in
+++ b/configure.in
@@ -718,7 +718,6 @@ case $use_platform in
use_arch="arm"
use_cpu=arm1176jzf-s
use_hardcoded_tables="yes"
- use_alsa="no"
ARCH="arm"
AC_DEFINE(HAS_EGLGLES, [1], [Define if supporting EGL based GLES Framebuffer])
USE_OMXLIB=1; AC_DEFINE([HAVE_OMXLIB],[1],["Define to 1 if OMX libs is enabled"])
diff --git a/tools/depends/target/Makefile b/tools/depends/target/Makefile
index f5374b2e54..73a939cde8 100644
--- a/tools/depends/target/Makefile
+++ b/tools/depends/target/Makefile
@@ -58,10 +58,11 @@ LINUX_SYSTEM_LIBS=
ifeq ($(OS),linux)
#not for raspberry pi
ifneq ($(TARGET_PLATFORM),raspberry-pi)
- DEPENDS += alsa-lib libsdl linux-system-libs
- ALSA_LIB = alsa-lib
+ DEPENDS += libsdl linux-system-libs
LINUX_SYSTEM_LIBS = linux-system-libs
endif
+ DEPENDS += alsa-lib
+ ALSA_LIB = alsa-lib
FFMPEG_DEPENDS = gnutls
endif
diff --git a/xbmc/cores/AudioEngine/AESinkFactory.cpp b/xbmc/cores/AudioEngine/AESinkFactory.cpp
index e42d9738c5..715b4f113a 100644
--- a/xbmc/cores/AudioEngine/AESinkFactory.cpp
+++ b/xbmc/cores/AudioEngine/AESinkFactory.cpp
@@ -27,6 +27,7 @@
#include "Sinks/AESinkAUDIOTRACK.h"
#elif defined(TARGET_RASPBERRY_PI)
#include "Sinks/AESinkPi.h"
+ #include "Sinks/AESinkALSA.h"
#elif defined(TARGET_DARWIN_IOS)
#include "Sinks/AESinkDARWINIOS.h"
#elif defined(TARGET_DARWIN_OSX)
@@ -66,6 +67,7 @@ void CAESinkFactory::ParseDevice(std::string &device, std::string &driver)
driver == "AUDIOTRACK" ||
#elif defined(TARGET_RASPBERRY_PI)
driver == "PI" ||
+ driver == "ALSA" ||
#elif defined(TARGET_DARWIN_IOS)
driver == "DARWINIOS" ||
#elif defined(TARGET_DARWIN_OSX)
@@ -105,7 +107,12 @@ IAESink *CAESinkFactory::TrySink(std::string &driver, std::string &device, AEAud
#elif defined(TARGET_ANDROID)
sink = new CAESinkAUDIOTRACK();
#elif defined(TARGET_RASPBERRY_PI)
+ if (driver == "PI")
sink = new CAESinkPi();
+ #if defined(HAS_ALSA)
+ if (driver == "ALSA")
+ sink = new CAESinkALSA();
+ #endif
#elif defined(TARGET_DARWIN_IOS)
sink = new CAESinkDARWINIOS();
#elif defined(TARGET_DARWIN_OSX)
@@ -196,7 +203,13 @@ void CAESinkFactory::EnumerateEx(AESinkInfoList &list, bool force)
CAESinkPi::EnumerateDevicesEx(info.m_deviceInfoList, force);
if(!info.m_deviceInfoList.empty())
list.push_back(info);
-
+ #if defined(HAS_ALSA)
+ info.m_deviceInfoList.clear();
+ info.m_sinkName = "ALSA";
+ CAESinkALSA::EnumerateDevicesEx(info.m_deviceInfoList, force);
+ if(!info.m_deviceInfoList.empty())
+ list.push_back(info);
+ #endif
#elif defined(TARGET_DARWIN_IOS)
info.m_deviceInfoList.clear();