/
kodi-100.14-use-alsa-and-pulse-together.patch
79 lines (76 loc) · 2.38 KB
/
kodi-100.14-use-alsa-and-pulse-together.patch
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
diff -Naur a/xbmc/cores/AudioEngine/AESinkFactory.cpp b/xbmc/cores/AudioEngine/AESinkFactory.cpp
--- a/xbmc/cores/AudioEngine/AESinkFactory.cpp 2016-01-12 22:00:19.000000000 +0100
+++ b/xbmc/cores/AudioEngine/AESinkFactory.cpp 2016-01-25 10:25:46.375653966 +0100
@@ -28,6 +28,9 @@
#elif defined(TARGET_RASPBERRY_PI)
#include "Sinks/AESinkPi.h"
#include "Sinks/AESinkALSA.h"
+ #if defined(HAS_PULSEAUDIO)
+ #include "Sinks/AESinkPULSE.h"
+ #endif
#elif defined(TARGET_DARWIN_IOS)
#include "Sinks/AESinkDARWINIOS.h"
#elif defined(TARGET_DARWIN_OSX)
@@ -67,6 +70,9 @@
#elif defined(TARGET_RASPBERRY_PI)
driver == "PI" ||
driver == "ALSA" ||
+ #if defined(HAS_PULSEAUDIO)
+ driver == "PULSE" ||
+ #endif
#elif defined(TARGET_DARWIN_IOS)
driver == "DARWINIOS" ||
#elif defined(TARGET_DARWIN_OSX)
@@ -108,6 +114,10 @@
#elif defined(TARGET_RASPBERRY_PI)
if (driver == "PI")
sink = new CAESinkPi();
+ #if defined(HAS_PULSEAUDIO)
+ if (driver == "PULSE")
+ sink = new CAESinkPULSE();
+ #endif
#if defined(HAS_ALSA)
if (driver == "ALSA")
sink = new CAESinkALSA();
@@ -209,6 +219,16 @@
if(!info.m_deviceInfoList.empty())
list.push_back(info);
#endif
+ #if defined(HAS_PULSEAUDIO)
+ info.m_deviceInfoList.clear();
+ info.m_sinkName = "PULSE";
+ CAESinkPULSE::EnumerateDevicesEx(info.m_deviceInfoList, force);
+ if(!info.m_deviceInfoList.empty())
+ {
+ list.push_back(info);
+ return;
+ }
+ #endif
#elif defined(TARGET_DARWIN_IOS)
info.m_deviceInfoList.clear();
@@ -253,21 +273,20 @@
CLog::Log(LOGNOTICE, "User specified Sink %s could not be enumerated", envSink.c_str());
}
- #if defined(HAS_PULSEAUDIO)
+ #if defined(HAS_ALSA)
info.m_deviceInfoList.clear();
- info.m_sinkName = "PULSE";
- CAESinkPULSE::EnumerateDevicesEx(info.m_deviceInfoList, force);
+ info.m_sinkName = "ALSA";
+ CAESinkALSA::EnumerateDevicesEx(info.m_deviceInfoList, force);
if(!info.m_deviceInfoList.empty())
{
list.push_back(info);
- return;
}
#endif
- #if defined(HAS_ALSA)
+ #if defined(HAS_PULSEAUDIO)
info.m_deviceInfoList.clear();
- info.m_sinkName = "ALSA";
- CAESinkALSA::EnumerateDevicesEx(info.m_deviceInfoList, force);
+ info.m_sinkName = "PULSE";
+ CAESinkPULSE::EnumerateDevicesEx(info.m_deviceInfoList, force);
if(!info.m_deviceInfoList.empty())
{
list.push_back(info);