mirror of
https://github.com/LibreELEC/LibreELEC.tv.git
synced 2025-07-28 13:16:41 +00:00
xbmc: update to xbmc-13.alpha-4af3b54
Signed-off-by: Stephan Raue <stephan@openelec.tv>
This commit is contained in:
parent
a54157ae2c
commit
fd78503f54
@ -17,7 +17,7 @@
|
|||||||
################################################################################
|
################################################################################
|
||||||
|
|
||||||
PKG_NAME="xbmc-theme-Confluence"
|
PKG_NAME="xbmc-theme-Confluence"
|
||||||
PKG_VERSION="13.alpha-18cebf0"
|
PKG_VERSION="13.alpha-4af3b54"
|
||||||
PKG_REV="1"
|
PKG_REV="1"
|
||||||
PKG_ARCH="any"
|
PKG_ARCH="any"
|
||||||
PKG_LICENSE="GPL"
|
PKG_LICENSE="GPL"
|
||||||
|
@ -17,7 +17,7 @@
|
|||||||
################################################################################
|
################################################################################
|
||||||
|
|
||||||
PKG_NAME="xbmc"
|
PKG_NAME="xbmc"
|
||||||
PKG_VERSION="13.alpha-18cebf0"
|
PKG_VERSION="13.alpha-4af3b54"
|
||||||
PKG_REV="1"
|
PKG_REV="1"
|
||||||
PKG_ARCH="any"
|
PKG_ARCH="any"
|
||||||
PKG_LICENSE="GPL"
|
PKG_LICENSE="GPL"
|
||||||
|
@ -1,15 +1,15 @@
|
|||||||
From 8369ed76d9a39bd96f15f5a78cf6fa0e66183b1c Mon Sep 17 00:00:00 2001
|
From 63de0e201993d4d4ce245afd7ac9187324ecb200 Mon Sep 17 00:00:00 2001
|
||||||
From: Rainer Hochecker <fernetmenta@online.de>
|
From: Rainer Hochecker <fernetmenta@online.de>
|
||||||
Date: Sun, 2 Feb 2014 13:01:09 +0100
|
Date: Sun, 2 Feb 2014 13:01:09 +0100
|
||||||
Subject: [PATCH 1/3] ActiveAE: add method for re-init after device/eld change
|
Subject: [PATCH 1/3] ActiveAE: add method for re-init after device/eld change
|
||||||
|
|
||||||
---
|
---
|
||||||
xbmc/cores/AudioEngine/AEFactory.cpp | 6 ++++++
|
xbmc/cores/AudioEngine/AEFactory.cpp | 6 ++++
|
||||||
xbmc/cores/AudioEngine/AEFactory.h | 1 +
|
xbmc/cores/AudioEngine/AEFactory.h | 1 +
|
||||||
.../AudioEngine/Engines/ActiveAE/ActiveAE.cpp | 22 ++++++++++++++++++++++
|
.../AudioEngine/Engines/ActiveAE/ActiveAE.cpp | 34 ++++++++++++++++++++++
|
||||||
xbmc/cores/AudioEngine/Engines/ActiveAE/ActiveAE.h | 2 ++
|
xbmc/cores/AudioEngine/Engines/ActiveAE/ActiveAE.h | 4 +++
|
||||||
xbmc/cores/AudioEngine/Interfaces/AE.h | 5 +++++
|
xbmc/cores/AudioEngine/Interfaces/AE.h | 5 ++++
|
||||||
5 files changed, 36 insertions(+)
|
5 files changed, 50 insertions(+)
|
||||||
|
|
||||||
diff --git a/xbmc/cores/AudioEngine/AEFactory.cpp b/xbmc/cores/AudioEngine/AEFactory.cpp
|
diff --git a/xbmc/cores/AudioEngine/AEFactory.cpp b/xbmc/cores/AudioEngine/AEFactory.cpp
|
||||||
index 3094bdf..fff42a6 100644
|
index 3094bdf..fff42a6 100644
|
||||||
@ -38,14 +38,26 @@ index 9a340cc..1d55513 100644
|
|||||||
static void RegisterAudioCallback(IAudioCallback* pCallback);
|
static void RegisterAudioCallback(IAudioCallback* pCallback);
|
||||||
static void UnregisterAudioCallback();
|
static void UnregisterAudioCallback();
|
||||||
diff --git a/xbmc/cores/AudioEngine/Engines/ActiveAE/ActiveAE.cpp b/xbmc/cores/AudioEngine/Engines/ActiveAE/ActiveAE.cpp
|
diff --git a/xbmc/cores/AudioEngine/Engines/ActiveAE/ActiveAE.cpp b/xbmc/cores/AudioEngine/Engines/ActiveAE/ActiveAE.cpp
|
||||||
index 76e0fa8..0ecf5f3 100644
|
index 0a4aba0..d363c88 100644
|
||||||
--- a/xbmc/cores/AudioEngine/Engines/ActiveAE/ActiveAE.cpp
|
--- a/xbmc/cores/AudioEngine/Engines/ActiveAE/ActiveAE.cpp
|
||||||
+++ b/xbmc/cores/AudioEngine/Engines/ActiveAE/ActiveAE.cpp
|
+++ b/xbmc/cores/AudioEngine/Engines/ActiveAE/ActiveAE.cpp
|
||||||
@@ -425,6 +425,23 @@ void CActiveAE::StateMachine(int signal, Protocol *port, Message *msg)
|
@@ -425,6 +425,35 @@ void CActiveAE::StateMachine(int signal, Protocol *port, Message *msg)
|
||||||
}
|
}
|
||||||
msg->Reply(CActiveAEControlProtocol::ACC);
|
msg->Reply(CActiveAEControlProtocol::ACC);
|
||||||
return;
|
return;
|
||||||
+ case CActiveAEControlProtocol::DEVICECHANGE:
|
+ case CActiveAEControlProtocol::DEVICECHANGE:
|
||||||
|
+ time_t now;
|
||||||
|
+ time(&now);
|
||||||
|
+ while (!m_extLastDeviceChange.empty() && (now - m_extLastDeviceChange.front() > 0))
|
||||||
|
+ {
|
||||||
|
+ m_extLastDeviceChange.pop();
|
||||||
|
+ }
|
||||||
|
+ if (m_extLastDeviceChange.size() > 2)
|
||||||
|
+ {
|
||||||
|
+ CLog::Log(LOGWARNING,"CActiveAE - received %ld device change events within one second", m_extLastDeviceChange.size());
|
||||||
|
+ return;
|
||||||
|
+ }
|
||||||
|
+ m_extLastDeviceChange.push(now);
|
||||||
+ UnconfigureSink();
|
+ UnconfigureSink();
|
||||||
+ m_sink.EnumerateSinkList(true);
|
+ m_sink.EnumerateSinkList(true);
|
||||||
+ LoadSettings();
|
+ LoadSettings();
|
||||||
@ -65,7 +77,7 @@ index 76e0fa8..0ecf5f3 100644
|
|||||||
case CActiveAEControlProtocol::PAUSESTREAM:
|
case CActiveAEControlProtocol::PAUSESTREAM:
|
||||||
CActiveAEStream *stream;
|
CActiveAEStream *stream;
|
||||||
stream = *(CActiveAEStream**)msg->data;
|
stream = *(CActiveAEStream**)msg->data;
|
||||||
@@ -2270,6 +2287,11 @@ void CActiveAE::KeepConfiguration(unsigned int millis)
|
@@ -2269,6 +2298,11 @@ void CActiveAE::KeepConfiguration(unsigned int millis)
|
||||||
m_controlPort.SendOutMessage(CActiveAEControlProtocol::KEEPCONFIG, &timeMs, sizeof(unsigned int));
|
m_controlPort.SendOutMessage(CActiveAEControlProtocol::KEEPCONFIG, &timeMs, sizeof(unsigned int));
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -78,10 +90,18 @@ index 76e0fa8..0ecf5f3 100644
|
|||||||
{
|
{
|
||||||
Message *reply;
|
Message *reply;
|
||||||
diff --git a/xbmc/cores/AudioEngine/Engines/ActiveAE/ActiveAE.h b/xbmc/cores/AudioEngine/Engines/ActiveAE/ActiveAE.h
|
diff --git a/xbmc/cores/AudioEngine/Engines/ActiveAE/ActiveAE.h b/xbmc/cores/AudioEngine/Engines/ActiveAE/ActiveAE.h
|
||||||
index debc8e1..b222b4e 100644
|
index debc8e1..225c694 100644
|
||||||
--- a/xbmc/cores/AudioEngine/Engines/ActiveAE/ActiveAE.h
|
--- a/xbmc/cores/AudioEngine/Engines/ActiveAE/ActiveAE.h
|
||||||
+++ b/xbmc/cores/AudioEngine/Engines/ActiveAE/ActiveAE.h
|
+++ b/xbmc/cores/AudioEngine/Engines/ActiveAE/ActiveAE.h
|
||||||
@@ -73,6 +73,7 @@ class CActiveAEControlProtocol : public Protocol
|
@@ -28,6 +28,7 @@
|
||||||
|
#include "cores/AudioEngine/Interfaces/AESound.h"
|
||||||
|
#include "cores/AudioEngine/AEFactory.h"
|
||||||
|
#include "guilib/DispResource.h"
|
||||||
|
+#include <queue>
|
||||||
|
|
||||||
|
// ffmpeg
|
||||||
|
#include "DllAvFormat.h"
|
||||||
|
@@ -73,6 +74,7 @@ class CActiveAEControlProtocol : public Protocol
|
||||||
INIT = 0,
|
INIT = 0,
|
||||||
RECONFIGURE,
|
RECONFIGURE,
|
||||||
SUSPEND,
|
SUSPEND,
|
||||||
@ -89,7 +109,7 @@ index debc8e1..b222b4e 100644
|
|||||||
MUTE,
|
MUTE,
|
||||||
VOLUME,
|
VOLUME,
|
||||||
PAUSESTREAM,
|
PAUSESTREAM,
|
||||||
@@ -224,6 +225,7 @@ class CActiveAE : public IAE, private CThread
|
@@ -224,6 +226,7 @@ class CActiveAE : public IAE, private CThread
|
||||||
virtual bool SupportsQualityLevel(enum AEQuality level);
|
virtual bool SupportsQualityLevel(enum AEQuality level);
|
||||||
virtual bool IsSettingVisible(const std::string &settingId);
|
virtual bool IsSettingVisible(const std::string &settingId);
|
||||||
virtual void KeepConfiguration(unsigned int millis);
|
virtual void KeepConfiguration(unsigned int millis);
|
||||||
@ -97,6 +117,14 @@ index debc8e1..b222b4e 100644
|
|||||||
|
|
||||||
virtual void RegisterAudioCallback(IAudioCallback* pCallback);
|
virtual void RegisterAudioCallback(IAudioCallback* pCallback);
|
||||||
virtual void UnregisterAudioCallback();
|
virtual void UnregisterAudioCallback();
|
||||||
|
@@ -292,6 +295,7 @@ class CActiveAE : public IAE, private CThread
|
||||||
|
XbmcThreads::EndTime m_extDrainTimer;
|
||||||
|
unsigned int m_extKeepConfig;
|
||||||
|
bool m_extDeferData;
|
||||||
|
+ std::queue<time_t> m_extLastDeviceChange;
|
||||||
|
|
||||||
|
enum
|
||||||
|
{
|
||||||
diff --git a/xbmc/cores/AudioEngine/Interfaces/AE.h b/xbmc/cores/AudioEngine/Interfaces/AE.h
|
diff --git a/xbmc/cores/AudioEngine/Interfaces/AE.h b/xbmc/cores/AudioEngine/Interfaces/AE.h
|
||||||
index f91dc4c..dd32897 100644
|
index f91dc4c..dd32897 100644
|
||||||
--- a/xbmc/cores/AudioEngine/Interfaces/AE.h
|
--- a/xbmc/cores/AudioEngine/Interfaces/AE.h
|
||||||
@ -116,18 +144,18 @@ index f91dc4c..dd32897 100644
|
|||||||
1.8.5.1
|
1.8.5.1
|
||||||
|
|
||||||
|
|
||||||
From 2bd151eee2ecd136fff03cc65d0ba29e848815d8 Mon Sep 17 00:00:00 2001
|
From e2ec5c813f726351d43dae210288bef43bdb19e6 Mon Sep 17 00:00:00 2001
|
||||||
From: fritsch <Peter.Fruehberger@gmail.com>
|
From: fritsch <Peter.Fruehberger@gmail.com>
|
||||||
Date: Mon, 3 Feb 2014 19:57:19 +0100
|
Date: Mon, 3 Feb 2014 19:57:19 +0100
|
||||||
Subject: [PATCH 2/3] AESinkPULSE: Use Callback to use Factory's DeviceChange()
|
Subject: [PATCH 2/3] AESinkPULSE: Use Callback to use Factory's DeviceChange()
|
||||||
|
|
||||||
---
|
---
|
||||||
xbmc/cores/AudioEngine/Sinks/AESinkPULSE.cpp | 48 ++++++++++++++++++++++++++--
|
xbmc/cores/AudioEngine/Sinks/AESinkPULSE.cpp | 46 ++++++++++++++++++++++++++--
|
||||||
xbmc/cores/AudioEngine/Sinks/AESinkPULSE.h | 4 +++
|
xbmc/cores/AudioEngine/Sinks/AESinkPULSE.h | 4 +++
|
||||||
2 files changed, 49 insertions(+), 3 deletions(-)
|
2 files changed, 47 insertions(+), 3 deletions(-)
|
||||||
|
|
||||||
diff --git a/xbmc/cores/AudioEngine/Sinks/AESinkPULSE.cpp b/xbmc/cores/AudioEngine/Sinks/AESinkPULSE.cpp
|
diff --git a/xbmc/cores/AudioEngine/Sinks/AESinkPULSE.cpp b/xbmc/cores/AudioEngine/Sinks/AESinkPULSE.cpp
|
||||||
index d227b2d..bdf2c8e 100644
|
index a04a2a8..8888880 100644
|
||||||
--- a/xbmc/cores/AudioEngine/Sinks/AESinkPULSE.cpp
|
--- a/xbmc/cores/AudioEngine/Sinks/AESinkPULSE.cpp
|
||||||
+++ b/xbmc/cores/AudioEngine/Sinks/AESinkPULSE.cpp
|
+++ b/xbmc/cores/AudioEngine/Sinks/AESinkPULSE.cpp
|
||||||
@@ -189,6 +189,29 @@ static void StreamLatencyUpdateCallback(pa_stream *s, void *userdata)
|
@@ -189,6 +189,29 @@ static void StreamLatencyUpdateCallback(pa_stream *s, void *userdata)
|
||||||
@ -160,21 +188,19 @@ index d227b2d..bdf2c8e 100644
|
|||||||
struct SinkInfoStruct
|
struct SinkInfoStruct
|
||||||
{
|
{
|
||||||
AEDeviceInfoList *list;
|
AEDeviceInfoList *list;
|
||||||
@@ -405,7 +428,12 @@ static void SinkInfoRequestCallback(pa_context *c, const pa_sink_info *i, int eo
|
@@ -406,7 +429,10 @@ static void SinkInfoRequestCallback(pa_context *c, const pa_sink_info *i, int eo
|
||||||
|
|
||||||
bool CAESinkPULSE::Initialize(AEAudioFormat &format, std::string &device)
|
bool CAESinkPULSE::Initialize(AEAudioFormat &format, std::string &device)
|
||||||
{
|
{
|
||||||
- m_IsAllocated = false;
|
- m_IsAllocated = false;
|
||||||
+
|
|
||||||
+ {
|
+ {
|
||||||
+ CSingleLock lock(m_sec);
|
+ CSingleLock lock(m_sec);
|
||||||
+ m_IsAllocated = false;
|
+ m_IsAllocated = false;
|
||||||
+ }
|
+ }
|
||||||
+
|
m_passthrough = false;
|
||||||
m_BytesPerSecond = 0;
|
m_BytesPerSecond = 0;
|
||||||
m_BufferSize = 0;
|
m_BufferSize = 0;
|
||||||
m_Channels = 0;
|
@@ -423,6 +449,16 @@ bool CAESinkPULSE::Initialize(AEAudioFormat &format, std::string &device)
|
||||||
@@ -421,6 +449,16 @@ bool CAESinkPULSE::Initialize(AEAudioFormat &format, std::string &device)
|
|
||||||
|
|
||||||
pa_threaded_mainloop_lock(m_MainLoop);
|
pa_threaded_mainloop_lock(m_MainLoop);
|
||||||
|
|
||||||
@ -191,7 +217,7 @@ index d227b2d..bdf2c8e 100644
|
|||||||
struct pa_channel_map map;
|
struct pa_channel_map map;
|
||||||
pa_channel_map_init(&map);
|
pa_channel_map_init(&map);
|
||||||
|
|
||||||
@@ -593,20 +631,24 @@ bool CAESinkPULSE::Initialize(AEAudioFormat &format, std::string &device)
|
@@ -595,20 +631,24 @@ bool CAESinkPULSE::Initialize(AEAudioFormat &format, std::string &device)
|
||||||
}
|
}
|
||||||
|
|
||||||
pa_threaded_mainloop_unlock(m_MainLoop);
|
pa_threaded_mainloop_unlock(m_MainLoop);
|
||||||
@ -201,7 +227,7 @@ index d227b2d..bdf2c8e 100644
|
|||||||
format.m_frameSize = frameSize;
|
format.m_frameSize = frameSize;
|
||||||
format.m_frameSamples = format.m_frames * format.m_channelLayout.Count();
|
format.m_frameSamples = format.m_frames * format.m_channelLayout.Count();
|
||||||
m_format = format;
|
m_format = format;
|
||||||
format.m_dataFormat = passthrough ? AE_FMT_S16NE : format.m_dataFormat;
|
format.m_dataFormat = m_passthrough ? AE_FMT_S16NE : format.m_dataFormat;
|
||||||
|
|
||||||
Pause(false);
|
Pause(false);
|
||||||
+ {
|
+ {
|
||||||
@ -216,10 +242,10 @@ index d227b2d..bdf2c8e 100644
|
|||||||
{
|
{
|
||||||
+ CSingleLock lock(m_sec);
|
+ CSingleLock lock(m_sec);
|
||||||
m_IsAllocated = false;
|
m_IsAllocated = false;
|
||||||
|
m_passthrough = false;
|
||||||
|
|
||||||
if (m_Stream)
|
|
||||||
diff --git a/xbmc/cores/AudioEngine/Sinks/AESinkPULSE.h b/xbmc/cores/AudioEngine/Sinks/AESinkPULSE.h
|
diff --git a/xbmc/cores/AudioEngine/Sinks/AESinkPULSE.h b/xbmc/cores/AudioEngine/Sinks/AESinkPULSE.h
|
||||||
index 2992d81..202a3cb 100644
|
index 9fa301f..1a2284d 100644
|
||||||
--- a/xbmc/cores/AudioEngine/Sinks/AESinkPULSE.h
|
--- a/xbmc/cores/AudioEngine/Sinks/AESinkPULSE.h
|
||||||
+++ b/xbmc/cores/AudioEngine/Sinks/AESinkPULSE.h
|
+++ b/xbmc/cores/AudioEngine/Sinks/AESinkPULSE.h
|
||||||
@@ -22,9 +22,11 @@
|
@@ -22,9 +22,11 @@
|
||||||
@ -247,7 +273,7 @@ index 2992d81..202a3cb 100644
|
|||||||
1.8.5.1
|
1.8.5.1
|
||||||
|
|
||||||
|
|
||||||
From aa942d3a2db5497b3ad19e981dc7cff3142c2b7b Mon Sep 17 00:00:00 2001
|
From 3bc44eab85cc050bfd4b53d2d80f4afdf5822855 Mon Sep 17 00:00:00 2001
|
||||||
From: fritsch <Peter.Fruehberger@gmail.com>
|
From: fritsch <Peter.Fruehberger@gmail.com>
|
||||||
Date: Wed, 5 Feb 2014 09:21:38 +0100
|
Date: Wed, 5 Feb 2014 09:21:38 +0100
|
||||||
Subject: [PATCH 3/3] AESinkPULSE: Track Change Event again - don't do anything
|
Subject: [PATCH 3/3] AESinkPULSE: Track Change Event again - don't do anything
|
||||||
@ -258,7 +284,7 @@ Subject: [PATCH 3/3] AESinkPULSE: Track Change Event again - don't do anything
|
|||||||
1 file changed, 5 insertions(+)
|
1 file changed, 5 insertions(+)
|
||||||
|
|
||||||
diff --git a/xbmc/cores/AudioEngine/Sinks/AESinkPULSE.cpp b/xbmc/cores/AudioEngine/Sinks/AESinkPULSE.cpp
|
diff --git a/xbmc/cores/AudioEngine/Sinks/AESinkPULSE.cpp b/xbmc/cores/AudioEngine/Sinks/AESinkPULSE.cpp
|
||||||
index bdf2c8e..152cfd7 100644
|
index 8888880..21131ae 100644
|
||||||
--- a/xbmc/cores/AudioEngine/Sinks/AESinkPULSE.cpp
|
--- a/xbmc/cores/AudioEngine/Sinks/AESinkPULSE.cpp
|
||||||
+++ b/xbmc/cores/AudioEngine/Sinks/AESinkPULSE.cpp
|
+++ b/xbmc/cores/AudioEngine/Sinks/AESinkPULSE.cpp
|
||||||
@@ -209,6 +209,11 @@ static void SinkChangedCallback(pa_context *c, pa_subscription_event_type_t t, u
|
@@ -209,6 +209,11 @@ static void SinkChangedCallback(pa_context *c, pa_subscription_event_type_t t, u
|
Loading…
x
Reference in New Issue
Block a user