xbmc: update to xbmc-14-3f20fb2

Signed-off-by: Stephan Raue <stephan@openelec.tv>
This commit is contained in:
Stephan Raue 2014-08-03 22:31:06 +02:00
parent 3df253529b
commit 50fbf7230f
6 changed files with 204 additions and 272 deletions

View File

@ -17,7 +17,7 @@
################################################################################ ################################################################################
PKG_NAME="xbmc-theme-Confluence" PKG_NAME="xbmc-theme-Confluence"
PKG_VERSION="14-6f26fca" PKG_VERSION="14-3f20fb2"
PKG_REV="1" PKG_REV="1"
PKG_ARCH="any" PKG_ARCH="any"
PKG_LICENSE="GPL" PKG_LICENSE="GPL"

View File

@ -17,7 +17,7 @@
################################################################################ ################################################################################
PKG_NAME="xbmc" PKG_NAME="xbmc"
PKG_VERSION="14-6f26fca" PKG_VERSION="14-3f20fb2"
PKG_REV="1" PKG_REV="1"
PKG_ARCH="any" PKG_ARCH="any"
PKG_LICENSE="GPL" PKG_LICENSE="GPL"

View File

@ -1,7 +1,7 @@
From 88407b12f16fd9b37ac4fb0ef4fc01d4220d15fa Mon Sep 17 00:00:00 2001 From 1a5f6373ff6b5c9b102978ae23bb3015e09c2ca6 Mon Sep 17 00:00:00 2001
From: xbmc <fernetmenta@online.de> From: xbmc <fernetmenta@online.de>
Date: Mon, 28 May 2012 10:34:39 +0200 Date: Mon, 28 May 2012 10:34:39 +0200
Subject: [PATCH 01/31] videoplayer: adapt lateness detection and dropping to Subject: [PATCH 01/29] videoplayer: adapt lateness detection and dropping to
buffering buffering
--- ---
@ -182,7 +182,7 @@ index 741017d..c5b24d6 100644
+ virtual void SetCodecControl(int flags) {} + virtual void SetCodecControl(int flags) {}
}; };
diff --git a/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp b/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp diff --git a/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp b/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp
index 0d4dcd5..2c541f5 100644 index 2db5d99..6920db2 100644
--- a/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp --- a/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp
+++ b/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp +++ b/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp
@@ -167,6 +167,7 @@ CDVDVideoCodecFFmpeg::CDVDVideoCodecFFmpeg() : CDVDVideoCodec() @@ -167,6 +167,7 @@ CDVDVideoCodecFFmpeg::CDVDVideoCodecFFmpeg() : CDVDVideoCodec()
@ -193,7 +193,7 @@ index 0d4dcd5..2c541f5 100644
} }
CDVDVideoCodecFFmpeg::~CDVDVideoCodecFFmpeg() CDVDVideoCodecFFmpeg::~CDVDVideoCodecFFmpeg()
@@ -342,6 +343,14 @@ void CDVDVideoCodecFFmpeg::SetDropState(bool bDrop) @@ -344,6 +345,14 @@ void CDVDVideoCodecFFmpeg::SetDropState(bool bDrop)
{ {
if( m_pCodecContext ) if( m_pCodecContext )
{ {
@ -208,7 +208,7 @@ index 0d4dcd5..2c541f5 100644
// i don't know exactly how high this should be set // i don't know exactly how high this should be set
// couldn't find any good docs on it. think it varies // couldn't find any good docs on it. think it varies
// from codec to codec on what it does // from codec to codec on what it does
@@ -543,6 +552,7 @@ int CDVDVideoCodecFFmpeg::Decode(uint8_t* pData, int iSize, double dts, double p @@ -545,6 +554,7 @@ int CDVDVideoCodecFFmpeg::Decode(uint8_t* pData, int iSize, double dts, double p
void CDVDVideoCodecFFmpeg::Reset() void CDVDVideoCodecFFmpeg::Reset()
{ {
m_started = false; m_started = false;
@ -216,7 +216,7 @@ index 0d4dcd5..2c541f5 100644
m_iLastKeyframe = m_pCodecContext->has_b_frames; m_iLastKeyframe = m_pCodecContext->has_b_frames;
avcodec_flush_buffers(m_pCodecContext); avcodec_flush_buffers(m_pCodecContext);
@@ -640,6 +650,22 @@ bool CDVDVideoCodecFFmpeg::GetPictureCommon(DVDVideoPicture* pDvdVideoPicture) @@ -642,6 +652,22 @@ bool CDVDVideoCodecFFmpeg::GetPictureCommon(DVDVideoPicture* pDvdVideoPicture)
else else
pDvdVideoPicture->pts = DVD_NOPTS_VALUE; pDvdVideoPicture->pts = DVD_NOPTS_VALUE;
@ -239,7 +239,7 @@ index 0d4dcd5..2c541f5 100644
if(!m_started) if(!m_started)
pDvdVideoPicture->iFlags |= DVP_FLAG_DROPPED; pDvdVideoPicture->iFlags |= DVP_FLAG_DROPPED;
@@ -821,3 +847,18 @@ unsigned CDVDVideoCodecFFmpeg::GetAllowedReferences() @@ -823,3 +849,18 @@ unsigned CDVDVideoCodecFFmpeg::GetAllowedReferences()
else else
return 0; return 0;
} }
@ -646,10 +646,10 @@ index 296cae6..4795ca0 100644
2.0.3 2.0.3
From 0c230eb40a84be37b75ff3524945858839733437 Mon Sep 17 00:00:00 2001 From ca470bff36fcc6a8ab30a4205f34c4a215e9851d Mon Sep 17 00:00:00 2001
From: xbmc <fernetmenta@online.de> From: xbmc <fernetmenta@online.de>
Date: Sun, 2 Sep 2012 16:05:21 +0200 Date: Sun, 2 Sep 2012 16:05:21 +0200
Subject: [PATCH 02/31] video player: present correct pts to user for a/v sync Subject: [PATCH 02/29] video player: present correct pts to user for a/v sync
(after buffering in renderer) (after buffering in renderer)
--- ---
@ -701,10 +701,10 @@ index 4795ca0..b60a0ee 100644
2.0.3 2.0.3
From 1b446083247a50ee640f3fbbbfba3269f5c3b1e9 Mon Sep 17 00:00:00 2001 From 10df96a1b9ed083fc294dbf63ec194f64678a8d7 Mon Sep 17 00:00:00 2001
From: Rainer Hochecker <fernetmenta@online.de> From: Rainer Hochecker <fernetmenta@online.de>
Date: Sat, 1 Jun 2013 11:21:19 +0200 Date: Sat, 1 Jun 2013 11:21:19 +0200
Subject: [PATCH 03/31] renderer: bump buffers to 5 Subject: [PATCH 03/29] renderer: bump buffers to 5
--- ---
xbmc/cores/VideoRenderers/BaseRenderer.h | 2 +- xbmc/cores/VideoRenderers/BaseRenderer.h | 2 +-
@ -727,10 +727,10 @@ index fb41ccf..f5e5677 100644
2.0.3 2.0.3
From 9e4070c20193efe1130a26ada3580c436956b230 Mon Sep 17 00:00:00 2001 From 4889fa6842a6a33b6e8392bd6735ffd20e3d02b1 Mon Sep 17 00:00:00 2001
From: xbmc <fernetmenta@online.de> From: xbmc <fernetmenta@online.de>
Date: Mon, 28 May 2012 10:41:31 +0200 Date: Mon, 28 May 2012 10:41:31 +0200
Subject: [PATCH 04/31] videoplayer: update frametime, it might change due to Subject: [PATCH 04/29] videoplayer: update frametime, it might change due to
fps detection fps detection
--- ---
@ -754,10 +754,10 @@ index 75c67a9..fb7ea06 100644
2.0.3 2.0.3
From c2a2ce71fef08fc39b24bad848cbb865b9229cf6 Mon Sep 17 00:00:00 2001 From 4c75b9140604b9eeb8ccd25fef8cd99396f63238 Mon Sep 17 00:00:00 2001
From: xbmc <fernetmenta@online.de> From: xbmc <fernetmenta@online.de>
Date: Mon, 28 May 2012 10:43:06 +0200 Date: Mon, 28 May 2012 10:43:06 +0200
Subject: [PATCH 05/31] videoplayer: give streams with invalid fps a chance for Subject: [PATCH 05/29] videoplayer: give streams with invalid fps a chance for
fps detection fps detection
--- ---
@ -781,10 +781,10 @@ index fb7ea06..af7a443 100644
2.0.3 2.0.3
From 9679baba7fd0f000d11ff1c213480a48958a7f0a Mon Sep 17 00:00:00 2001 From 4cfd387c0d1cefd90f6274121513c344705e1a02 Mon Sep 17 00:00:00 2001
From: xbmc <fernetmenta@online.de> From: xbmc <fernetmenta@online.de>
Date: Mon, 28 May 2012 10:49:05 +0200 Date: Mon, 28 May 2012 10:49:05 +0200
Subject: [PATCH 06/31] dvdplayer: allow rewinding at end of stream, do a seek Subject: [PATCH 06/29] dvdplayer: allow rewinding at end of stream, do a seek
after rewind after rewind
--- ---
@ -792,7 +792,7 @@ Subject: [PATCH 06/31] dvdplayer: allow rewinding at end of stream, do a seek
1 file changed, 7 insertions(+), 1 deletion(-) 1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/xbmc/cores/dvdplayer/DVDPlayer.cpp b/xbmc/cores/dvdplayer/DVDPlayer.cpp diff --git a/xbmc/cores/dvdplayer/DVDPlayer.cpp b/xbmc/cores/dvdplayer/DVDPlayer.cpp
index 93df78c..fbff9fd 100644 index a2ac2c6..b3d7c3d 100644
--- a/xbmc/cores/dvdplayer/DVDPlayer.cpp --- a/xbmc/cores/dvdplayer/DVDPlayer.cpp
+++ b/xbmc/cores/dvdplayer/DVDPlayer.cpp +++ b/xbmc/cores/dvdplayer/DVDPlayer.cpp
@@ -1582,7 +1582,7 @@ void CDVDPlayer::HandlePlaySpeed() @@ -1582,7 +1582,7 @@ void CDVDPlayer::HandlePlaySpeed()
@ -821,10 +821,10 @@ index 93df78c..fbff9fd 100644
2.0.3 2.0.3
From 48ed6dd5a189e4013ec4bdef193882d18f5a5fc3 Mon Sep 17 00:00:00 2001 From 5d3daa2e5faaf0506a43e602600de054700167f6 Mon Sep 17 00:00:00 2001
From: xbmc <fernetmenta@online.de> From: xbmc <fernetmenta@online.de>
Date: Mon, 20 Aug 2012 16:06:39 +0200 Date: Mon, 20 Aug 2012 16:06:39 +0200
Subject: [PATCH 07/31] dvdplayer: observe pts counter overflow Subject: [PATCH 07/29] dvdplayer: observe pts counter overflow
--- ---
.../cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp | 197 ++++++++++++++++++++- .../cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp | 197 ++++++++++++++++++++-
@ -832,7 +832,7 @@ Subject: [PATCH 07/31] dvdplayer: observe pts counter overflow
2 files changed, 200 insertions(+), 1 deletion(-) 2 files changed, 200 insertions(+), 1 deletion(-)
diff --git a/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp b/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp diff --git a/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp b/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp
index 0041c23..59ff17c 100644 index 03cd1d7..080b3d2 100644
--- a/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp --- a/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp
+++ b/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp +++ b/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp
@@ -18,7 +18,6 @@ @@ -18,7 +18,6 @@
@ -851,7 +851,7 @@ index 0041c23..59ff17c 100644
#include "stdint.h" #include "stdint.h"
#endif #endif
#include "DVDDemuxFFmpeg.h" #include "DVDDemuxFFmpeg.h"
@@ -445,6 +445,9 @@ bool CDVDDemuxFFmpeg::Open(CDVDInputStream* pInput) @@ -447,6 +447,9 @@ bool CDVDDemuxFFmpeg::Open(CDVDInputStream* pInput)
CreateStreams(); CreateStreams();
@ -861,7 +861,7 @@ index 0041c23..59ff17c 100644
return true; return true;
} }
@@ -585,6 +588,12 @@ double CDVDDemuxFFmpeg::ConvertTimestamp(int64_t pts, int den, int num) @@ -587,6 +590,12 @@ double CDVDDemuxFFmpeg::ConvertTimestamp(int64_t pts, int den, int num)
if (pts == (int64_t)AV_NOPTS_VALUE) if (pts == (int64_t)AV_NOPTS_VALUE)
return DVD_NOPTS_VALUE; return DVD_NOPTS_VALUE;
@ -874,7 +874,7 @@ index 0041c23..59ff17c 100644
// do calculations in floats as they can easily overflow otherwise // do calculations in floats as they can easily overflow otherwise
// we don't care for having a completly exact timestamp anyway // we don't care for having a completly exact timestamp anyway
double timestamp = (double)pts * num / den; double timestamp = (double)pts * num / den;
@@ -724,6 +733,24 @@ DemuxPacket* CDVDDemuxFFmpeg::Read() @@ -726,6 +735,24 @@ DemuxPacket* CDVDDemuxFFmpeg::Read()
m_pkt.pkt.pts = AV_NOPTS_VALUE; m_pkt.pkt.pts = AV_NOPTS_VALUE;
} }
@ -899,7 +899,7 @@ index 0041c23..59ff17c 100644
// copy contents into our own packet // copy contents into our own packet
pPacket->iSize = m_pkt.pkt.size; pPacket->iSize = m_pkt.pkt.size;
@@ -857,7 +884,16 @@ bool CDVDDemuxFFmpeg::SeekTime(int time, bool backwords, double *startpts) @@ -859,7 +886,16 @@ bool CDVDDemuxFFmpeg::SeekTime(int time, bool backwords, double *startpts)
ret = av_seek_frame(m_pFormatContext, -1, seek_pts, backwords ? AVSEEK_FLAG_BACKWARD : 0); ret = av_seek_frame(m_pFormatContext, -1, seek_pts, backwords ? AVSEEK_FLAG_BACKWARD : 0);
if(ret >= 0) if(ret >= 0)
@ -916,7 +916,7 @@ index 0041c23..59ff17c 100644
} }
if(m_iCurrentPts == DVD_NOPTS_VALUE) if(m_iCurrentPts == DVD_NOPTS_VALUE)
@@ -876,6 +912,165 @@ bool CDVDDemuxFFmpeg::SeekTime(int time, bool backwords, double *startpts) @@ -878,6 +914,165 @@ bool CDVDDemuxFFmpeg::SeekTime(int time, bool backwords, double *startpts)
return (ret >= 0); return (ret >= 0);
} }
@ -1107,10 +1107,10 @@ index 08eb3df..dd89584 100644
2.0.3 2.0.3
From a178c584cf800702210406c383d2cfa8ba582b34 Mon Sep 17 00:00:00 2001 From 7f17dc86fad3c003be4fa1bcdc6bf1b9362f8147 Mon Sep 17 00:00:00 2001
From: xbmc <fernetmenta@online.de> From: xbmc <fernetmenta@online.de>
Date: Tue, 2 Oct 2012 13:02:10 +0200 Date: Tue, 2 Oct 2012 13:02:10 +0200
Subject: [PATCH 08/31] dvdplayer: avoid short screen flicker caused by Subject: [PATCH 08/29] dvdplayer: avoid short screen flicker caused by
unnecessary reconfigure of renderer unnecessary reconfigure of renderer
--- ---
@ -1143,10 +1143,10 @@ index af7a443..cc6e88c 100644
2.0.3 2.0.3
From 775a19a406601c73266feefa98b151e102c1cee6 Mon Sep 17 00:00:00 2001 From 6a3924dd51b9de56f38f60bf736e60aa969c6f40 Mon Sep 17 00:00:00 2001
From: xbmc <fernetmenta@online.de> From: xbmc <fernetmenta@online.de>
Date: Thu, 11 Oct 2012 12:05:50 +0200 Date: Thu, 11 Oct 2012 12:05:50 +0200
Subject: [PATCH 09/31] vdpau: advanced settings for auto deinterlacing Subject: [PATCH 09/29] vdpau: advanced settings for auto deinterlacing
--- ---
xbmc/cores/dvdplayer/DVDCodecs/Video/VDPAU.cpp | 8 ++++---- xbmc/cores/dvdplayer/DVDCodecs/Video/VDPAU.cpp | 8 ++++----
@ -1174,7 +1174,7 @@ index 0c71532..345c442 100644
if (deint != -1) if (deint != -1)
{ {
diff --git a/xbmc/settings/AdvancedSettings.cpp b/xbmc/settings/AdvancedSettings.cpp diff --git a/xbmc/settings/AdvancedSettings.cpp b/xbmc/settings/AdvancedSettings.cpp
index d1797ac..a8acb0c 100644 index 5f3f2d8..f42970c 100644
--- a/xbmc/settings/AdvancedSettings.cpp --- a/xbmc/settings/AdvancedSettings.cpp
+++ b/xbmc/settings/AdvancedSettings.cpp +++ b/xbmc/settings/AdvancedSettings.cpp
@@ -156,6 +156,8 @@ void CAdvancedSettings::Initialize() @@ -156,6 +156,8 @@ void CAdvancedSettings::Initialize()
@ -1212,10 +1212,10 @@ index 7e50a63..980138e 100644
2.0.3 2.0.3
From 53ae554c72f826f6a65f94bb888c6c3e9f1db80c Mon Sep 17 00:00:00 2001 From 06dc66c7b370f9e016c03e3cc22b2583d21b4d10 Mon Sep 17 00:00:00 2001
From: xbmc <fernetmenta@online.de> From: xbmc <fernetmenta@online.de>
Date: Fri, 2 Nov 2012 13:20:03 +0100 Date: Fri, 2 Nov 2012 13:20:03 +0100
Subject: [PATCH 10/31] player: fix rewind Subject: [PATCH 10/29] player: fix rewind
--- ---
xbmc/cores/dvdplayer/DVDMessage.h | 5 ++++- xbmc/cores/dvdplayer/DVDMessage.h | 5 ++++-
@ -1263,7 +1263,7 @@ index a365821..07366df 100644
class CDVDMsgPlayerSeekChapter : public CDVDMsg class CDVDMsgPlayerSeekChapter : public CDVDMsg
diff --git a/xbmc/cores/dvdplayer/DVDPlayer.cpp b/xbmc/cores/dvdplayer/DVDPlayer.cpp diff --git a/xbmc/cores/dvdplayer/DVDPlayer.cpp b/xbmc/cores/dvdplayer/DVDPlayer.cpp
index fbff9fd..5c1ab1a 100644 index b3d7c3d..a267559 100644
--- a/xbmc/cores/dvdplayer/DVDPlayer.cpp --- a/xbmc/cores/dvdplayer/DVDPlayer.cpp
+++ b/xbmc/cores/dvdplayer/DVDPlayer.cpp +++ b/xbmc/cores/dvdplayer/DVDPlayer.cpp
@@ -1583,11 +1583,13 @@ void CDVDPlayer::HandlePlaySpeed() @@ -1583,11 +1583,13 @@ void CDVDPlayer::HandlePlaySpeed()
@ -1276,7 +1276,7 @@ index fbff9fd..5c1ab1a 100644
&& m_SpeedState.lasttime != GetTime()) && m_SpeedState.lasttime != GetTime())
{ {
m_SpeedState.lastpts = m_dvdPlayerVideo.GetCurrentPts(); m_SpeedState.lastpts = m_dvdPlayerVideo.GetCurrentPts();
m_SpeedState.lasttime = GetTime(); m_SpeedState.lasttime = (double) GetTime();
+ m_SpeedState.lastabstime = CDVDClock::GetAbsoluteClock(); + m_SpeedState.lastabstime = CDVDClock::GetAbsoluteClock();
// check how much off clock video is when ff/rw:ing // check how much off clock video is when ff/rw:ing
// a problem here is that seeking isn't very accurate // a problem here is that seeking isn't very accurate
@ -1285,8 +1285,8 @@ index fbff9fd..5c1ab1a 100644
{ {
CLog::Log(LOGDEBUG, "CDVDPlayer::Process - Seeking to catch up"); CLog::Log(LOGDEBUG, "CDVDPlayer::Process - Seeking to catch up");
int64_t iTime = (int64_t)DVD_TIME_TO_MSEC(m_clock.GetClock() + m_State.time_offset + 500000.0 * m_playSpeed / DVD_PLAYSPEED_NORMAL); int64_t iTime = (int64_t)DVD_TIME_TO_MSEC(m_clock.GetClock() + m_State.time_offset + 500000.0 * m_playSpeed / DVD_PLAYSPEED_NORMAL);
- m_messenger.Put(new CDVDMsgPlayerSeek(iTime, (GetPlaySpeed() < 0), true, false, false, true)); - m_messenger.Put(new CDVDMsgPlayerSeek((int) iTime, (GetPlaySpeed() < 0), true, false, false, true));
+ m_messenger.Put(new CDVDMsgPlayerSeek(iTime, (GetPlaySpeed() < 0), true, false, false, true, false)); + m_messenger.Put(new CDVDMsgPlayerSeek((int) iTime, (GetPlaySpeed() < 0), true, false, false, true, false));
} }
} }
} }
@ -1430,17 +1430,17 @@ index b60a0ee..ecd2d20 100644
2.0.3 2.0.3
From d507617b934c83b13a1bc49e8885722f058e1b61 Mon Sep 17 00:00:00 2001 From 81f0ce5da5cf8fb773c96156de4591f962853ff5 Mon Sep 17 00:00:00 2001
From: xbmc <fernetmenta@online.de> From: xbmc <fernetmenta@online.de>
Date: Thu, 28 Mar 2013 15:18:53 +0100 Date: Thu, 28 Mar 2013 15:18:53 +0100
Subject: [PATCH 11/31] OMXPlayer: some caching fixes for pvr Subject: [PATCH 11/29] OMXPlayer: some caching fixes for pvr
--- ---
xbmc/cores/omxplayer/OMXPlayer.cpp | 3 ++- xbmc/cores/omxplayer/OMXPlayer.cpp | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-) 1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/xbmc/cores/omxplayer/OMXPlayer.cpp b/xbmc/cores/omxplayer/OMXPlayer.cpp diff --git a/xbmc/cores/omxplayer/OMXPlayer.cpp b/xbmc/cores/omxplayer/OMXPlayer.cpp
index 29ea4ae..0df8aba 100644 index b135741..8965fe2 100644
--- a/xbmc/cores/omxplayer/OMXPlayer.cpp --- a/xbmc/cores/omxplayer/OMXPlayer.cpp
+++ b/xbmc/cores/omxplayer/OMXPlayer.cpp +++ b/xbmc/cores/omxplayer/OMXPlayer.cpp
@@ -2524,7 +2524,8 @@ void COMXPlayer::HandleMessages() @@ -2524,7 +2524,8 @@ void COMXPlayer::HandleMessages()
@ -1457,17 +1457,17 @@ index 29ea4ae..0df8aba 100644
2.0.3 2.0.3
From 6873226a091f9ad66e72dbfd88dd6f608dd5adbe Mon Sep 17 00:00:00 2001 From 37d547fba784e6b8066f6d72ae43a308eaaec032 Mon Sep 17 00:00:00 2001
From: xbmc <fernetmenta@online.de> From: xbmc <fernetmenta@online.de>
Date: Thu, 28 Mar 2013 20:50:59 +0100 Date: Thu, 28 Mar 2013 20:50:59 +0100
Subject: [PATCH 12/31] fix incorrect display of fps when dr kicks in Subject: [PATCH 12/29] fix incorrect display of fps when dr kicks in
--- ---
xbmc/Application.cpp | 3 ++- xbmc/Application.cpp | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-) 1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/xbmc/Application.cpp b/xbmc/Application.cpp diff --git a/xbmc/Application.cpp b/xbmc/Application.cpp
index a25f44f..027172e 100644 index 397bfa4..fda7929 100644
--- a/xbmc/Application.cpp --- a/xbmc/Application.cpp
+++ b/xbmc/Application.cpp +++ b/xbmc/Application.cpp
@@ -2336,10 +2336,11 @@ void CApplication::Render() @@ -2336,10 +2336,11 @@ void CApplication::Render()
@ -1487,10 +1487,10 @@ index a25f44f..027172e 100644
2.0.3 2.0.3
From f6217d1f508d8bdd0c025f859936b474f3136f85 Mon Sep 17 00:00:00 2001 From 2839e0755a58cd7b5df97f53987ba39a2635622f Mon Sep 17 00:00:00 2001
From: Rainer Hochecker <fernetmenta@online.de> From: Rainer Hochecker <fernetmenta@online.de>
Date: Thu, 25 Jul 2013 17:18:13 +0200 Date: Thu, 25 Jul 2013 17:18:13 +0200
Subject: [PATCH 13/31] ActiveAE: slightly reduce buffer size Subject: [PATCH 13/29] ActiveAE: slightly reduce buffer size
--- ---
xbmc/cores/AudioEngine/Engines/ActiveAE/ActiveAE.cpp | 4 ++-- xbmc/cores/AudioEngine/Engines/ActiveAE/ActiveAE.cpp | 4 ++--
@ -1515,10 +1515,10 @@ index fe5e893..c98c73b 100644
2.0.3 2.0.3
From 6715696b126d772fa3553eaaa30f6ca110841a7c Mon Sep 17 00:00:00 2001 From 960c1a510cec7624691166547a3be29add96a56f Mon Sep 17 00:00:00 2001
From: Rainer Hochecker <fernetmenta@online.de> From: Rainer Hochecker <fernetmenta@online.de>
Date: Sun, 4 Aug 2013 10:11:16 +0200 Date: Sun, 4 Aug 2013 10:11:16 +0200
Subject: [PATCH 14/31] Revert "vdpau: comment some features that will be added Subject: [PATCH 14/29] Revert "vdpau: comment some features that will be added
later" later"
This reverts commit e00b4f65864d623ab4d2e9e5c06db138e661f1cf. This reverts commit e00b4f65864d623ab4d2e9e5c06db138e661f1cf.
@ -1574,32 +1574,24 @@ index 345c442..6d2e564 100644
2.0.3 2.0.3
From a542f0f7139300e06423d761f558d40b910a5730 Mon Sep 17 00:00:00 2001 From 42e8966f4e32bbd42a61c7a95483246ffce274aa Mon Sep 17 00:00:00 2001
From: Marcel Groothuis <margro.xbmc@gmail.com> From: Marcel Groothuis <margro.xbmc@gmail.com>
Date: Thu, 5 Dec 2013 22:02:50 +0100 Date: Thu, 5 Dec 2013 22:02:50 +0100
Subject: [PATCH 15/31] ffmpeg demuxer: faster channel change for PVR addons Subject: [PATCH 15/29] ffmpeg demuxer: faster channel change for PVR addons
without internal demuxing (such as MediaPortal, ArgusTV, MythTV, NextPVR) without internal demuxing (such as MediaPortal, ArgusTV, MythTV, NextPVR)
Credits: FernetMenta, Davilla, Popcornmix, Whaupt Credits: FernetMenta, Davilla, Popcornmix, Whaupt
--- ---
.../cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp | 187 +++++++++++++++++++-- .../cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp | 185 +++++++++++++++++++--
xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.h | 7 +- xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.h | 7 +-
.../dvdplayer/DVDDemuxers/DVDFactoryDemuxer.cpp | 13 +- .../dvdplayer/DVDDemuxers/DVDFactoryDemuxer.cpp | 13 +-
3 files changed, 184 insertions(+), 23 deletions(-) 3 files changed, 184 insertions(+), 21 deletions(-)
diff --git a/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp b/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp diff --git a/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp b/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp
index 59ff17c..6e2f585 100644 index 080b3d2..c01bc11 100644
--- a/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp --- a/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp
+++ b/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp +++ b/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp
@@ -52,7 +52,6 @@ @@ -74,6 +74,8 @@ static const struct StereoModeConversionMap WmvToInternalStereoModeMap[] =
#include "URL.h"
#include "cores/FFmpeg.h"
-
struct StereoModeConversionMap
{
const char* name;
@@ -71,6 +70,8 @@ static const struct StereoModeConversionMap WmvToInternalStereoModeMap[] =
{} {}
}; };
@ -1608,7 +1600,7 @@ index 59ff17c..6e2f585 100644
void CDemuxStreamAudioFFmpeg::GetStreamInfo(std::string& strInfo) void CDemuxStreamAudioFFmpeg::GetStreamInfo(std::string& strInfo)
{ {
if(!m_stream) return; if(!m_stream) return;
@@ -172,6 +173,8 @@ CDVDDemuxFFmpeg::CDVDDemuxFFmpeg() : CDVDDemux() @@ -175,6 +177,8 @@ CDVDDemuxFFmpeg::CDVDDemuxFFmpeg() : CDVDDemux()
m_program = UINT_MAX; m_program = UINT_MAX;
m_pkt.result = -1; m_pkt.result = -1;
memset(&m_pkt.pkt, 0, sizeof(AVPacket)); memset(&m_pkt.pkt, 0, sizeof(AVPacket));
@ -1617,7 +1609,7 @@ index 59ff17c..6e2f585 100644
} }
CDVDDemuxFFmpeg::~CDVDDemuxFFmpeg() CDVDDemuxFFmpeg::~CDVDDemuxFFmpeg()
@@ -192,10 +195,11 @@ bool CDVDDemuxFFmpeg::Aborted() @@ -195,10 +199,11 @@ bool CDVDDemuxFFmpeg::Aborted()
return false; return false;
} }
@ -1630,7 +1622,7 @@ index 59ff17c..6e2f585 100644
m_iCurrentPts = DVD_NOPTS_VALUE; m_iCurrentPts = DVD_NOPTS_VALUE;
m_speed = DVD_PLAYSPEED_NORMAL; m_speed = DVD_PLAYSPEED_NORMAL;
m_program = UINT_MAX; m_program = UINT_MAX;
@@ -206,8 +210,6 @@ bool CDVDDemuxFFmpeg::Open(CDVDInputStream* pInput) @@ -209,8 +214,6 @@ bool CDVDDemuxFFmpeg::Open(CDVDInputStream* pInput)
m_pInput = pInput; m_pInput = pInput;
strFile = m_pInput->GetFileName(); strFile = m_pInput->GetFileName();
@ -1639,9 +1631,9 @@ index 59ff17c..6e2f585 100644
if( m_pInput->GetContent().length() > 0 ) if( m_pInput->GetContent().length() > 0 )
{ {
std::string content = m_pInput->GetContent(); std::string content = m_pInput->GetContent();
@@ -402,17 +404,22 @@ bool CDVDDemuxFFmpeg::Open(CDVDInputStream* pInput) @@ -405,13 +408,19 @@ bool CDVDDemuxFFmpeg::Open(CDVDInputStream* pInput)
if (iformat && (strcmp(iformat->name, "mjpeg") == 0) && m_ioContext->seekable == 0) if (iformat && (strcmp(iformat->name, "mjpeg") == 0) && m_ioContext->seekable == 0)
m_pFormatContext->max_analyze_duration = 500000; av_opt_set_int(m_pFormatContext, "analyzeduration", 500000, 0);
+ if (iformat && (strcmp(iformat->name, "mpegts") == 0)) + if (iformat && (strcmp(iformat->name, "mpegts") == 0))
+ { + {
@ -1659,13 +1651,9 @@ index 59ff17c..6e2f585 100644
- /* too speed up dvd switches, only analyse very short */ - /* too speed up dvd switches, only analyse very short */
+ /* to speed up dvd switches, only analyse very short */ + /* to speed up dvd switches, only analyse very short */
if(m_pInput->IsStreamType(DVDSTREAM_TYPE_DVD)) if(m_pInput->IsStreamType(DVDSTREAM_TYPE_DVD))
m_pFormatContext->max_analyze_duration = 500000; av_opt_set_int(m_pFormatContext, "analyzeduration", 500000, 0);
- @@ -433,7 +442,19 @@ bool CDVDDemuxFFmpeg::Open(CDVDInputStream* pInput)
CLog::Log(LOGDEBUG, "%s - avformat_find_stream_info starting", __FUNCTION__);
int iErr = avformat_find_stream_info(m_pFormatContext, NULL);
if (iErr < 0)
@@ -431,7 +438,19 @@ bool CDVDDemuxFFmpeg::Open(CDVDInputStream* pInput)
} }
} }
CLog::Log(LOGDEBUG, "%s - av_find_stream_info finished", __FUNCTION__); CLog::Log(LOGDEBUG, "%s - av_find_stream_info finished", __FUNCTION__);
@ -1675,17 +1663,17 @@ index 59ff17c..6e2f585 100644
+ // make sure we start video with an i-frame + // make sure we start video with an i-frame
+ ResetVideoStreams(); + ResetVideoStreams();
+ } + }
+ } }
+ else + else
+ { + {
+ m_program = 0; + m_program = 0;
+ m_checkvideo = true; + m_checkvideo = true;
} + }
+ +
// reset any timeout // reset any timeout
m_timeout.SetInfinite(); m_timeout.SetInfinite();
@@ -485,7 +504,7 @@ void CDVDDemuxFFmpeg::Reset() @@ -487,7 +508,7 @@ void CDVDDemuxFFmpeg::Reset()
{ {
CDVDInputStream* pInputStream = m_pInput; CDVDInputStream* pInputStream = m_pInput;
Dispose(); Dispose();
@ -1694,7 +1682,7 @@ index 59ff17c..6e2f585 100644
} }
void CDVDDemuxFFmpeg::Flush() void CDVDDemuxFFmpeg::Flush()
@@ -679,25 +698,32 @@ DemuxPacket* CDVDDemuxFFmpeg::Read() @@ -681,25 +702,32 @@ DemuxPacket* CDVDDemuxFFmpeg::Read()
} }
else else
{ {
@ -1737,7 +1725,7 @@ index 59ff17c..6e2f585 100644
if (pPacket) if (pPacket)
{ {
@@ -1681,3 +1707,128 @@ std::string CDVDDemuxFFmpeg::ConvertCodecToInternalStereoMode(const std::string @@ -1683,3 +1711,128 @@ std::string CDVDDemuxFFmpeg::ConvertCodecToInternalStereoMode(const std::string
} }
return ""; return "";
} }
@ -1949,10 +1937,10 @@ index ca689d0..f383563 100644
2.0.3 2.0.3
From fb1c1a317923b34030bf9b3a21a5d472c05a884c Mon Sep 17 00:00:00 2001 From 14bc80543a56bc13bd1431bb69abc1eb6b797574 Mon Sep 17 00:00:00 2001
From: Wolfgang Haupt <w.haupt@at-visions.com> From: Wolfgang Haupt <w.haupt@at-visions.com>
Date: Thu, 5 Dec 2013 22:11:57 +0100 Date: Thu, 5 Dec 2013 22:11:57 +0100
Subject: [PATCH 16/31] DVDFactoryDemuxer: skip streaminfo for udp tcp and Subject: [PATCH 16/29] DVDFactoryDemuxer: skip streaminfo for udp tcp and
pvr-channels pvr-channels
--- ---
@ -2076,10 +2064,10 @@ index 667f6d3..0094709 100644
2.0.3 2.0.3
From 574b9866f6fb72511e6ca66b9944e8b18bbc4563 Mon Sep 17 00:00:00 2001 From 27f983a373cdf3bc660a865f21a778316203a2d3 Mon Sep 17 00:00:00 2001
From: Rainer Hochecker <fernetmenta@online.de> From: Rainer Hochecker <fernetmenta@online.de>
Date: Sun, 22 Dec 2013 14:52:29 +0100 Date: Sun, 22 Dec 2013 14:52:29 +0100
Subject: [PATCH 17/31] linux: add shared lib for sse4 operations Subject: [PATCH 17/29] linux: add shared lib for sse4 operations
--- ---
Makefile.in | 8 ++- Makefile.in | 8 ++-
@ -2094,10 +2082,10 @@ Subject: [PATCH 17/31] linux: add shared lib for sse4 operations
create mode 100644 xbmc/linux/sse4/Makefile.in create mode 100644 xbmc/linux/sse4/Makefile.in
diff --git a/Makefile.in b/Makefile.in diff --git a/Makefile.in b/Makefile.in
index cc0b40c..f471695 100644 index 433d5ba..1dd97ee 100644
--- a/Makefile.in --- a/Makefile.in
+++ b/Makefile.in +++ b/Makefile.in
@@ -318,6 +318,12 @@ CHECK_LIBADD=@WAYLAND_TEST_LIBS@ @@ -320,6 +320,12 @@ CHECK_LIBADD=@WAYLAND_TEST_LIBS@
endif endif
endif endif
@ -2110,7 +2098,7 @@ index cc0b40c..f471695 100644
CHECK_PROGRAMS = xbmc-test CHECK_PROGRAMS = xbmc-test
CLEAN_FILES += $(CHECK_PROGRAMS) $(CHECK_EXTENSIONS) CLEAN_FILES += $(CHECK_PROGRAMS) $(CHECK_EXTENSIONS)
@@ -445,7 +451,7 @@ endif @@ -447,7 +453,7 @@ endif
codecs: papcodecs dvdpcodecs dvdpextcodecs codecs: papcodecs dvdpcodecs dvdpextcodecs
@ -2120,7 +2108,7 @@ index cc0b40c..f471695 100644
externals: codecs libs visualizations screensavers libaddon pvraddons externals: codecs libs visualizations screensavers libaddon pvraddons
diff --git a/configure.in b/configure.in diff --git a/configure.in b/configure.in
index ce82cd4..a1abd70 100644 index a9d5f46..c6f7cf1 100644
--- a/configure.in --- a/configure.in
+++ b/configure.in +++ b/configure.in
@@ -843,6 +843,19 @@ elif test "$use_arch" = "arm"; then @@ -843,6 +843,19 @@ elif test "$use_arch" = "arm"; then
@ -2374,20 +2362,20 @@ index 0000000..45aa826
2.0.3 2.0.3
From df4f83ca42cf1648bc3a9beacee8805f598092b9 Mon Sep 17 00:00:00 2001 From 6bdf738ed60795c3bb9224be9144ca5429767e33 Mon Sep 17 00:00:00 2001
From: Rainer Hochecker <fernetmenta@online.de> From: Rainer Hochecker <fernetmenta@online.de>
Date: Tue, 28 Jan 2014 10:05:26 +0100 Date: Tue, 28 Jan 2014 10:05:26 +0100
Subject: [PATCH 18/31] xbmc pr 3080 Subject: [PATCH 18/29] xbmc pr 3080
--- ---
xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp | 8 ++++++++ xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp | 8 ++++++++
1 file changed, 8 insertions(+) 1 file changed, 8 insertions(+)
diff --git a/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp b/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp diff --git a/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp b/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp
index 2c541f5..dce21e0 100644 index 6920db2..d72e256 100644
--- a/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp --- a/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp
+++ b/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp +++ b/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp
@@ -475,6 +475,14 @@ int CDVDVideoCodecFFmpeg::Decode(uint8_t* pData, int iSize, double dts, double p @@ -477,6 +477,14 @@ int CDVDVideoCodecFFmpeg::Decode(uint8_t* pData, int iSize, double dts, double p
av_init_packet(&avpkt); av_init_packet(&avpkt);
avpkt.data = pData; avpkt.data = pData;
avpkt.size = iSize; avpkt.size = iSize;
@ -2406,17 +2394,17 @@ index 2c541f5..dce21e0 100644
2.0.3 2.0.3
From d14da2b136b5242cf2e31892320e00f5ac237b39 Mon Sep 17 00:00:00 2001 From f6ef191529a8c0b5c741efcc84300631874c7dd8 Mon Sep 17 00:00:00 2001
From: Rainer Hochecker <fernetmenta@online.de> From: Rainer Hochecker <fernetmenta@online.de>
Date: Tue, 11 Feb 2014 18:15:06 +0100 Date: Tue, 11 Feb 2014 18:15:06 +0100
Subject: [PATCH 19/31] ActiveAE: add some debug logging Subject: [PATCH 19/29] ActiveAE: add some debug logging
--- ---
xbmc/cores/AudioEngine/Engines/ActiveAE/ActiveAEStream.cpp | 6 ++++++ xbmc/cores/AudioEngine/Engines/ActiveAE/ActiveAEStream.cpp | 6 ++++++
1 file changed, 6 insertions(+) 1 file changed, 6 insertions(+)
diff --git a/xbmc/cores/AudioEngine/Engines/ActiveAE/ActiveAEStream.cpp b/xbmc/cores/AudioEngine/Engines/ActiveAE/ActiveAEStream.cpp diff --git a/xbmc/cores/AudioEngine/Engines/ActiveAE/ActiveAEStream.cpp b/xbmc/cores/AudioEngine/Engines/ActiveAE/ActiveAEStream.cpp
index c61e9175..99c2faf 100644 index ec10397..3b67fc0 100644
--- a/xbmc/cores/AudioEngine/Engines/ActiveAE/ActiveAEStream.cpp --- a/xbmc/cores/AudioEngine/Engines/ActiveAE/ActiveAEStream.cpp
+++ b/xbmc/cores/AudioEngine/Engines/ActiveAE/ActiveAEStream.cpp +++ b/xbmc/cores/AudioEngine/Engines/ActiveAE/ActiveAEStream.cpp
@@ -263,7 +263,13 @@ unsigned int CActiveAEStream::AddData(uint8_t* const *data, unsigned int offset, @@ -263,7 +263,13 @@ unsigned int CActiveAEStream::AddData(uint8_t* const *data, unsigned int offset,
@ -2437,10 +2425,10 @@ index c61e9175..99c2faf 100644
2.0.3 2.0.3
From 419b457b3eed7bbadcc9265de698a1aa68cf721e Mon Sep 17 00:00:00 2001 From 93a43540101240e2355f5a725fea8316dd94b1a9 Mon Sep 17 00:00:00 2001
From: Rainer Hochecker <fernetmenta@online.de> From: Rainer Hochecker <fernetmenta@online.de>
Date: Fri, 13 Jun 2014 14:37:16 +0200 Date: Fri, 13 Jun 2014 14:37:16 +0200
Subject: [PATCH 20/31] vaapi - postprocessing Subject: [PATCH 20/29] vaapi - postprocessing
--- ---
configure.in | 16 +- configure.in | 16 +-
@ -2461,7 +2449,7 @@ Subject: [PATCH 20/31] vaapi - postprocessing
15 files changed, 3466 insertions(+), 674 deletions(-) 15 files changed, 3466 insertions(+), 674 deletions(-)
diff --git a/configure.in b/configure.in diff --git a/configure.in b/configure.in
index a1abd70..20633fe 100644 index c6f7cf1..9e35f52 100644
--- a/configure.in --- a/configure.in
+++ b/configure.in +++ b/configure.in
@@ -1862,21 +1862,15 @@ if test "x$use_vaapi" != "xno"; then @@ -1862,21 +1862,15 @@ if test "x$use_vaapi" != "xno"; then
@ -2492,10 +2480,10 @@ index a1abd70..20633fe 100644
fi fi
else else
diff --git a/language/English/strings.po b/language/English/strings.po diff --git a/language/English/strings.po b/language/English/strings.po
index 3b3fdd0..db1db23 100755 index dc494c1..a55ede5 100755
--- a/language/English/strings.po --- a/language/English/strings.po
+++ b/language/English/strings.po +++ b/language/English/strings.po
@@ -6188,7 +6188,13 @@ msgctxt "#13456" @@ -6189,7 +6189,13 @@ msgctxt "#13456"
msgid "Hardware accelerated" msgid "Hardware accelerated"
msgstr "" msgstr ""
@ -2510,7 +2498,7 @@ index 3b3fdd0..db1db23 100755
#: system/settings/settings.xml #: system/settings/settings.xml
msgctxt "#13500" msgctxt "#13500"
@@ -7352,7 +7358,22 @@ msgctxt "#16326" @@ -7353,7 +7359,22 @@ msgctxt "#16326"
msgid "DXVA-HD" msgid "DXVA-HD"
msgstr "" msgstr ""
@ -2534,7 +2522,7 @@ index 3b3fdd0..db1db23 100755
#: xbmc/video/dialogs/GUIDialogVideoSettings.cpp #: xbmc/video/dialogs/GUIDialogVideoSettings.cpp
msgctxt "#16400" msgctxt "#16400"
@@ -15349,7 +15370,14 @@ msgctxt "#36431" @@ -15350,7 +15371,14 @@ msgctxt "#36431"
msgid "Defines whether video decoding should be performed in software (requires more CPU) or with hardware acceleration where possible." msgid "Defines whether video decoding should be performed in software (requires more CPU) or with hardware acceleration where possible."
msgstr "" msgstr ""
@ -2551,7 +2539,7 @@ index 3b3fdd0..db1db23 100755
#: system/settings/settings.xml #: system/settings/settings.xml
diff --git a/system/settings/settings.xml b/system/settings/settings.xml diff --git a/system/settings/settings.xml b/system/settings/settings.xml
index 637ddea..416e7ee 100644 index cc331b7..ce9cb61 100644
--- a/system/settings/settings.xml --- a/system/settings/settings.xml
+++ b/system/settings/settings.xml +++ b/system/settings/settings.xml
@@ -715,6 +715,21 @@ @@ -715,6 +715,21 @@
@ -3110,10 +3098,10 @@ index c5b24d6..69ff8c9 100644
struct { struct {
diff --git a/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp b/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp diff --git a/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp b/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp
index dce21e0..95e648a 100644 index d72e256..a4ebcd8 100644
--- a/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp --- a/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp
+++ b/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp +++ b/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp
@@ -628,6 +628,7 @@ bool CDVDVideoCodecFFmpeg::GetPictureCommon(DVDVideoPicture* pDvdVideoPicture) @@ -630,6 +630,7 @@ bool CDVDVideoCodecFFmpeg::GetPictureCommon(DVDVideoPicture* pDvdVideoPicture)
pDvdVideoPicture->chroma_position = m_pCodecContext->chroma_sample_location; pDvdVideoPicture->chroma_position = m_pCodecContext->chroma_sample_location;
pDvdVideoPicture->color_primaries = m_pCodecContext->color_primaries; pDvdVideoPicture->color_primaries = m_pCodecContext->color_primaries;
pDvdVideoPicture->color_transfer = m_pCodecContext->color_trc; pDvdVideoPicture->color_transfer = m_pCodecContext->color_trc;
@ -3121,7 +3109,7 @@ index dce21e0..95e648a 100644
if(m_pCodecContext->color_range == AVCOL_RANGE_JPEG if(m_pCodecContext->color_range == AVCOL_RANGE_JPEG
|| m_pCodecContext->pix_fmt == PIX_FMT_YUVJ420P) || m_pCodecContext->pix_fmt == PIX_FMT_YUVJ420P)
pDvdVideoPicture->color_range = 1; pDvdVideoPicture->color_range = 1;
@@ -651,10 +652,24 @@ bool CDVDVideoCodecFFmpeg::GetPictureCommon(DVDVideoPicture* pDvdVideoPicture) @@ -653,10 +654,24 @@ bool CDVDVideoCodecFFmpeg::GetPictureCommon(DVDVideoPicture* pDvdVideoPicture)
pDvdVideoPicture->qscale_type = DVP_QSCALE_UNKNOWN; pDvdVideoPicture->qscale_type = DVP_QSCALE_UNKNOWN;
} }
@ -7173,10 +7161,10 @@ index 760eda5..965f297 100644
2.0.3 2.0.3
From 01fe1bb2130c11bd8ea0a2ddbb3de0ae568d43e8 Mon Sep 17 00:00:00 2001 From eff747c2066e426c0eb8ad9581a250b09ac308ec Mon Sep 17 00:00:00 2001
From: fritsch <Peter.Fruehberger@gmail.com> From: fritsch <Peter.Fruehberger@gmail.com>
Date: Sun, 29 Jun 2014 14:45:28 +0200 Date: Sun, 29 Jun 2014 14:45:28 +0200
Subject: [PATCH 21/31] VAAPI: Don't use swfilter for large surfaces - fallback Subject: [PATCH 21/29] VAAPI: Don't use swfilter for large surfaces - fallback
to vaapi render to vaapi render
--- ---
@ -7257,10 +7245,10 @@ index 93be338..4e1b136 100644
2.0.3 2.0.3
From 418e2d3a9c5c92ca02348005a83ad5949f209959 Mon Sep 17 00:00:00 2001 From 9741c9eab449c8fcc4ec2dfad3dc859645ad45d9 Mon Sep 17 00:00:00 2001
From: fritsch <Peter.Fruehberger@gmail.com> From: fritsch <Peter.Fruehberger@gmail.com>
Date: Sun, 29 Jun 2014 16:21:44 +0200 Date: Sun, 29 Jun 2014 16:21:44 +0200
Subject: [PATCH 22/31] VAAPI: Fix fallback condition Subject: [PATCH 22/29] VAAPI: Fix fallback condition
--- ---
xbmc/cores/dvdplayer/DVDCodecs/Video/VAAPI.cpp | 3 +-- xbmc/cores/dvdplayer/DVDCodecs/Video/VAAPI.cpp | 3 +--
@ -7284,20 +7272,20 @@ index 4e1b136..92b2f97 100644
2.0.3 2.0.3
From 6fdaf675b27ebc4282044478ec755d80bac72b91 Mon Sep 17 00:00:00 2001 From 5ee8e27e35a5709a6474a01cd6ceda098d91b278 Mon Sep 17 00:00:00 2001
From: Rainer Hochecker <fernetmenta@online.de> From: Rainer Hochecker <fernetmenta@online.de>
Date: Fri, 18 Jul 2014 10:39:07 +0200 Date: Fri, 18 Jul 2014 10:39:07 +0200
Subject: [PATCH 24/31] fast channel switch, make sure extradata is decoded Subject: [PATCH 23/29] fast channel switch, make sure extradata is decoded
--- ---
xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp | 3 ++- xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-) 1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp b/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp diff --git a/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp b/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp
index 6e2f585..7a44a1a 100644 index c01bc11..d38bfab 100644
--- a/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp --- a/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp
+++ b/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp +++ b/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp
@@ -1763,7 +1763,8 @@ void CDVDDemuxFFmpeg::ParsePacket(AVPacket *pkt) @@ -1767,7 +1767,8 @@ void CDVDDemuxFFmpeg::ParsePacket(AVPacket *pkt)
// We don't need to actually decode here // We don't need to actually decode here
// we just want to transport SPS data into codec context // we just want to transport SPS data into codec context
st->codec->skip_idct = AVDISCARD_ALL; st->codec->skip_idct = AVDISCARD_ALL;
@ -7311,10 +7299,10 @@ index 6e2f585..7a44a1a 100644
2.0.3 2.0.3
From 0b185af12c454c36afaefa4db81cd3aa7ddf03cc Mon Sep 17 00:00:00 2001 From bac2292ff9f68f91fc7f14bdcc79cd784167803b Mon Sep 17 00:00:00 2001
From: Rainer Hochecker <fernetmenta@online.de> From: Rainer Hochecker <fernetmenta@online.de>
Date: Mon, 21 Jul 2014 08:53:07 +0200 Date: Mon, 21 Jul 2014 08:53:07 +0200
Subject: [PATCH 25/31] vaapi: fix potential segfault, squash me later Subject: [PATCH 24/29] vaapi: fix potential segfault, squash me later
--- ---
xbmc/cores/dvdplayer/DVDCodecs/Video/VAAPI.cpp | 1 + xbmc/cores/dvdplayer/DVDCodecs/Video/VAAPI.cpp | 1 +
@ -7336,10 +7324,10 @@ index 92b2f97..671e8a5 100644
2.0.3 2.0.3
From b1bf55d5abde519fa711d61f4b9664dbfce4623e Mon Sep 17 00:00:00 2001 From 5a9cbb8fa924af1afddfa90882f0358c6e6a749a Mon Sep 17 00:00:00 2001
From: Rainer Hochecker <fernetmenta@online.de> From: Rainer Hochecker <fernetmenta@online.de>
Date: Tue, 22 Jul 2014 15:36:31 +0200 Date: Tue, 22 Jul 2014 15:36:31 +0200
Subject: [PATCH 26/31] dvdplayer: get number of channels for active audio Subject: [PATCH 25/29] dvdplayer: get number of channels for active audio
stream from audio player, ffmpeg demuxer does not update this info for codecs stream from audio player, ffmpeg demuxer does not update this info for codecs
like AAC like AAC
@ -7350,7 +7338,7 @@ Subject: [PATCH 26/31] dvdplayer: get number of channels for active audio
3 files changed, 14 insertions(+), 1 deletion(-) 3 files changed, 14 insertions(+), 1 deletion(-)
diff --git a/xbmc/cores/dvdplayer/DVDPlayer.cpp b/xbmc/cores/dvdplayer/DVDPlayer.cpp diff --git a/xbmc/cores/dvdplayer/DVDPlayer.cpp b/xbmc/cores/dvdplayer/DVDPlayer.cpp
index 5c1ab1a..2ca4eaf 100644 index a267559..a7b23e5 100644
--- a/xbmc/cores/dvdplayer/DVDPlayer.cpp --- a/xbmc/cores/dvdplayer/DVDPlayer.cpp
+++ b/xbmc/cores/dvdplayer/DVDPlayer.cpp +++ b/xbmc/cores/dvdplayer/DVDPlayer.cpp
@@ -3788,12 +3788,18 @@ void CDVDPlayer::GetAudioStreamInfo(int index, SPlayerAudioStreamInfo &info) @@ -3788,12 +3788,18 @@ void CDVDPlayer::GetAudioStreamInfo(int index, SPlayerAudioStreamInfo &info)
@ -7381,7 +7369,7 @@ index 5c1ab1a..2ca4eaf 100644
m_pDemuxer->GetStreamCodecName(stream->iId, codecName); m_pDemuxer->GetStreamCodecName(stream->iId, codecName);
info.audioCodecName = codecName; info.audioCodecName = codecName;
diff --git a/xbmc/cores/dvdplayer/DVDPlayerAudio.cpp b/xbmc/cores/dvdplayer/DVDPlayerAudio.cpp diff --git a/xbmc/cores/dvdplayer/DVDPlayerAudio.cpp b/xbmc/cores/dvdplayer/DVDPlayerAudio.cpp
index 3141a9b..68ec63d 100644 index e4c6089..120cdde 100644
--- a/xbmc/cores/dvdplayer/DVDPlayerAudio.cpp --- a/xbmc/cores/dvdplayer/DVDPlayerAudio.cpp
+++ b/xbmc/cores/dvdplayer/DVDPlayerAudio.cpp +++ b/xbmc/cores/dvdplayer/DVDPlayerAudio.cpp
@@ -552,6 +552,8 @@ void CDVDPlayerAudio::Process() @@ -552,6 +552,8 @@ void CDVDPlayerAudio::Process()
@ -7421,10 +7409,10 @@ index 2a1b564..ec9570a 100644
2.0.3 2.0.3
From 495c5b8970309ee38d6ae8ae927c02a7c17709a0 Mon Sep 17 00:00:00 2001 From 15bf21b291dc3d97187210ac8b8515d31e7e4c53 Mon Sep 17 00:00:00 2001
From: Rainer Hochecker <fernetmenta@online.de> From: Rainer Hochecker <fernetmenta@online.de>
Date: Wed, 23 Jul 2014 15:07:37 +0200 Date: Wed, 23 Jul 2014 15:07:37 +0200
Subject: [PATCH 27/31] ffmpeg demuxer: allow a stream change if pat/pmt was Subject: [PATCH 26/29] ffmpeg demuxer: allow a stream change if pat/pmt was
not seen on open not seen on open
--- ---
@ -7432,10 +7420,10 @@ Subject: [PATCH 27/31] ffmpeg demuxer: allow a stream change if pat/pmt was
1 file changed, 7 insertions(+), 1 deletion(-) 1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp b/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp diff --git a/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp b/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp
index 7a44a1a..9983d9e 100644 index d38bfab..e388ecf 100644
--- a/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp --- a/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp
+++ b/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp +++ b/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp
@@ -462,7 +462,13 @@ bool CDVDDemuxFFmpeg::Open(CDVDInputStream* pInput, bool streaminfo) @@ -466,7 +466,13 @@ bool CDVDDemuxFFmpeg::Open(CDVDInputStream* pInput, bool streaminfo)
UpdateCurrentPTS(); UpdateCurrentPTS();
@ -7454,88 +7442,10 @@ index 7a44a1a..9983d9e 100644
2.0.3 2.0.3
From 66aadd770712c0658a032c79fab287a102c477e5 Mon Sep 17 00:00:00 2001 From eac4c134fa62021edabfeba52a3a680c7722deb0 Mon Sep 17 00:00:00 2001
From: Rainer Hochecker <fernetmenta@online.de>
Date: Sat, 26 Jul 2014 09:54:06 +0200
Subject: [PATCH 28/31] ffmpeg: adapt depreciated attribute
max_analyze_duration
---
xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp | 10 +++++++---
1 file changed, 7 insertions(+), 3 deletions(-)
diff --git a/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp b/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp
index 9983d9e..a8e1f7a 100644
--- a/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp
+++ b/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp
@@ -52,6 +52,10 @@
#include "URL.h"
#include "cores/FFmpeg.h"
+extern "C" {
+#include "libavutil/opt.h"
+}
+
struct StereoModeConversionMap
{
const char* name;
@@ -402,11 +406,11 @@ bool CDVDDemuxFFmpeg::Open(CDVDInputStream* pInput, bool streaminfo)
// analyse very short to speed up mjpeg playback start
if (iformat && (strcmp(iformat->name, "mjpeg") == 0) && m_ioContext->seekable == 0)
- m_pFormatContext->max_analyze_duration = 500000;
+ av_opt_set_int(m_pFormatContext, "analyzeduration", 500000, 0);
if (iformat && (strcmp(iformat->name, "mpegts") == 0))
{
- m_pFormatContext->max_analyze_duration = 500000;
+ av_opt_set_int(m_pFormatContext, "analyzeduration", 500000, 0);
m_checkvideo = true;
}
@@ -418,7 +422,7 @@ bool CDVDDemuxFFmpeg::Open(CDVDInputStream* pInput, bool streaminfo)
{
/* to speed up dvd switches, only analyse very short */
if(m_pInput->IsStreamType(DVDSTREAM_TYPE_DVD))
- m_pFormatContext->max_analyze_duration = 500000;
+ av_opt_set_int(m_pFormatContext, "analyzeduration", 500000, 0);
CLog::Log(LOGDEBUG, "%s - avformat_find_stream_info starting", __FUNCTION__);
int iErr = avformat_find_stream_info(m_pFormatContext, NULL);
--
2.0.3
From 98e4a94f1dfb752a3207ac1fc97988196a3ce2cf Mon Sep 17 00:00:00 2001
From: Rainer Hochecker <fernetmenta@online.de>
Date: Sat, 26 Jul 2014 14:37:52 +0200
Subject: [PATCH 29/31] ffmpeg: fix deadlock caused by calling
avctx->thread_count after codec_open
---
xbmc/cores/dvdplayer/DVDCodecs/Video/VAAPI.cpp | 1 -
1 file changed, 1 deletion(-)
diff --git a/xbmc/cores/dvdplayer/DVDCodecs/Video/VAAPI.cpp b/xbmc/cores/dvdplayer/DVDCodecs/Video/VAAPI.cpp
index 671e8a5..7021031 100644
--- a/xbmc/cores/dvdplayer/DVDCodecs/Video/VAAPI.cpp
+++ b/xbmc/cores/dvdplayer/DVDCodecs/Video/VAAPI.cpp
@@ -554,7 +554,6 @@ bool CDecoder::Open(AVCodecContext* avctx, const enum PixelFormat fmt, unsigned
}
avctx->hwaccel_context = &m_hwContext;
- avctx->thread_count = 1;
avctx->get_buffer2 = CDecoder::FFGetBuffer;
avctx->slice_flags = SLICE_FLAG_CODED_ORDER|SLICE_FLAG_ALLOW_FIELD;
return true;
--
2.0.3
From 8e2ba85b190fd11a5e3d360c63fd0ec98b70ac6b Mon Sep 17 00:00:00 2001
From: xhaggi <sascha.woo@gmail.com> From: xhaggi <sascha.woo@gmail.com>
Date: Tue, 22 Jul 2014 11:45:53 +0200 Date: Tue, 22 Jul 2014 11:45:53 +0200
Subject: [PATCH 30/31] [builtins] don't activate an already active window Subject: [PATCH 27/29] [builtins] don't activate an already active window
--- ---
xbmc/interfaces/Builtins.cpp | 36 +++++++++++++++++++++--------------- xbmc/interfaces/Builtins.cpp | 36 +++++++++++++++++++++---------------
@ -7598,3 +7508,57 @@ index 1816851..af6a6fd 100644
else else
-- --
2.0.3 2.0.3
From 172d51ad45e6469724ca7a16502e8bce4c3dd28f Mon Sep 17 00:00:00 2001
From: Rainer Hochecker <fernetmenta@online.de>
Date: Sat, 26 Jul 2014 09:54:06 +0200
Subject: [PATCH 28/29] ffmpeg: fixup fast channel switch (deprecated
max_analyze_duration)
---
xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp b/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp
index e388ecf..a8e1f7a 100644
--- a/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp
+++ b/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.cpp
@@ -410,7 +410,7 @@ bool CDVDDemuxFFmpeg::Open(CDVDInputStream* pInput, bool streaminfo)
if (iformat && (strcmp(iformat->name, "mpegts") == 0))
{
- m_pFormatContext->max_analyze_duration = 500000;
+ av_opt_set_int(m_pFormatContext, "analyzeduration", 500000, 0);
m_checkvideo = true;
}
--
2.0.3
From 17a6846a544096eb6493b576d2db1bd2c1f0b7a0 Mon Sep 17 00:00:00 2001
From: fritsch <peter.fruehberger@gmail.com>
Date: Sun, 3 Aug 2014 17:18:08 +0200
Subject: [PATCH 29/29] VAAPI: fixup don't cause deadlock squash into
e98e77105895bad63e8205eaa5ea2fed94753ff1
---
xbmc/cores/dvdplayer/DVDCodecs/Video/VAAPI.cpp | 1 -
1 file changed, 1 deletion(-)
diff --git a/xbmc/cores/dvdplayer/DVDCodecs/Video/VAAPI.cpp b/xbmc/cores/dvdplayer/DVDCodecs/Video/VAAPI.cpp
index 671e8a5..7021031 100644
--- a/xbmc/cores/dvdplayer/DVDCodecs/Video/VAAPI.cpp
+++ b/xbmc/cores/dvdplayer/DVDCodecs/Video/VAAPI.cpp
@@ -554,7 +554,6 @@ bool CDecoder::Open(AVCodecContext* avctx, const enum PixelFormat fmt, unsigned
}
avctx->hwaccel_context = &m_hwContext;
- avctx->thread_count = 1;
avctx->get_buffer2 = CDecoder::FFGetBuffer;
avctx->slice_flags = SLICE_FLAG_CODED_ORDER|SLICE_FLAG_ALLOW_FIELD;
return true;
--
2.0.3

View File

@ -1,6 +1,6 @@
From 9c1dea43c9b9b66c48d057d3c0e44cd4a807e4dc Mon Sep 17 00:00:00 2001 From 233c97d88577ae7758884386b5e8c49d52bdd22f Mon Sep 17 00:00:00 2001
From: Stefan Saraev <stefan@saraev.ca> From: Stefan Saraev <stefan@saraev.ca>
Date: Fri, 20 Dec 2013 00:36:34 +0200 Date: Sun, 3 Aug 2014 13:00:06 +0300
Subject: [PATCH] service addons: use a wrapper to setup systemd Subject: [PATCH] service addons: use a wrapper to setup systemd
--- ---
@ -10,7 +10,7 @@ Subject: [PATCH] service addons: use a wrapper to setup systemd
3 files changed, 15 insertions(+) 3 files changed, 15 insertions(+)
diff --git a/xbmc/addons/AddonDatabase.cpp b/xbmc/addons/AddonDatabase.cpp diff --git a/xbmc/addons/AddonDatabase.cpp b/xbmc/addons/AddonDatabase.cpp
index 4202363..105749f 100644 index 51a8da8..deedb04 100644
--- a/xbmc/addons/AddonDatabase.cpp --- a/xbmc/addons/AddonDatabase.cpp
+++ b/xbmc/addons/AddonDatabase.cpp +++ b/xbmc/addons/AddonDatabase.cpp
@@ -20,6 +20,7 @@ @@ -20,6 +20,7 @@
@ -21,7 +21,7 @@ index 4202363..105749f 100644
#include "utils/log.h" #include "utils/log.h"
#include "utils/Variant.h" #include "utils/Variant.h"
#include "utils/StringUtils.h" #include "utils/StringUtils.h"
@@ -581,6 +582,7 @@ bool CAddonDatabase::DisableAddon(const CStdString &addonID, bool disable /* = t @@ -596,6 +597,7 @@ bool CAddonDatabase::DisableAddon(const std::string &addonID, bool disable /* =
boost::shared_ptr<CService> service = boost::dynamic_pointer_cast<CService>(addon); boost::shared_ptr<CService> service = boost::dynamic_pointer_cast<CService>(addon);
if (service) if (service)
service->Stop(); service->Stop();
@ -29,7 +29,7 @@ index 4202363..105749f 100644
} }
// restart the pvr manager when disabling a pvr add-on with the pvr manager enabled // restart the pvr manager when disabling a pvr add-on with the pvr manager enabled
else if (CAddonMgr::Get().GetAddon(addonID, addon, ADDON_PVRDLL, false) && addon && else if (CAddonMgr::Get().GetAddon(addonID, addon, ADDON_PVRDLL, false) && addon &&
@@ -601,6 +603,7 @@ bool CAddonDatabase::DisableAddon(const CStdString &addonID, bool disable /* = t @@ -616,6 +618,7 @@ bool CAddonDatabase::DisableAddon(const std::string &addonID, bool disable /* =
// If the addon is a service, start it // If the addon is a service, start it
if (CAddonMgr::Get().GetAddon(addonID, addon, ADDON_SERVICE, false) && addon && disabled) if (CAddonMgr::Get().GetAddon(addonID, addon, ADDON_SERVICE, false) && addon && disabled)
{ {
@ -38,7 +38,7 @@ index 4202363..105749f 100644
if (service) if (service)
service->Start(); service->Start();
diff --git a/xbmc/addons/AddonInstaller.cpp b/xbmc/addons/AddonInstaller.cpp diff --git a/xbmc/addons/AddonInstaller.cpp b/xbmc/addons/AddonInstaller.cpp
index 8c9f241..d2f4610 100644 index b410d6c..d33f8a6 100644
--- a/xbmc/addons/AddonInstaller.cpp --- a/xbmc/addons/AddonInstaller.cpp
+++ b/xbmc/addons/AddonInstaller.cpp +++ b/xbmc/addons/AddonInstaller.cpp
@@ -70,6 +70,13 @@ CAddonInstaller &CAddonInstaller::Get() @@ -70,6 +70,13 @@ CAddonInstaller &CAddonInstaller::Get()
@ -55,23 +55,23 @@ index 8c9f241..d2f4610 100644
void CAddonInstaller::OnJobComplete(unsigned int jobID, bool success, CJob* job) void CAddonInstaller::OnJobComplete(unsigned int jobID, bool success, CJob* job)
{ {
if (success) if (success)
@@ -586,6 +593,7 @@ bool CAddonInstallJob::OnPreInstall() @@ -644,6 +651,7 @@ bool CAddonInstallJob::OnPreInstall()
boost::shared_ptr<CService> service = boost::dynamic_pointer_cast<CService>(addon); boost::shared_ptr<CService> service = boost::dynamic_pointer_cast<CService>(localAddon);
if (service)
service->Stop();
+ CAddonInstaller::Get().CallOEWrapper(m_addon->ID(), true);
CAddonMgr::Get().RemoveAddon(m_addon->ID()); // remove it
return running;
}
@@ -713,6 +721,7 @@ void CAddonInstallJob::OnPostInstall(bool reloadAddon)
AddonPtr addon;
CAddonMgr::Get().GetAddon(m_addon->ID(), addon);
boost::shared_ptr<CService> service = boost::dynamic_pointer_cast<CService>(addon);
+ CAddonInstaller::Get().CallOEWrapper(m_addon->ID(), false);
if (service) if (service)
service->Start(); service->Stop();
+ CAddonInstaller::Get().CallOEWrapper(m_addon->ID(), true);
} }
@@ -794,6 +803,7 @@ bool CAddonUnInstallJob::DoWork() return !CAddonMgr::Get().IsAddonDisabled(m_addon->ID());
}
@@ -773,6 +781,7 @@ void CAddonInstallJob::OnPostInstall(bool reloadAddon)
if (CAddonMgr::Get().GetAddon(m_addon->ID(), localAddon, ADDON_SERVICE, false))
{
boost::shared_ptr<CService> service = boost::dynamic_pointer_cast<CService>(localAddon);
+ CAddonInstaller::Get().CallOEWrapper(m_addon->ID(), false);
if (service)
service->Start();
}
@@ -840,6 +849,7 @@ bool CAddonUnInstallJob::DoWork()
boost::shared_ptr<CService> service = boost::dynamic_pointer_cast<CService>(m_addon); boost::shared_ptr<CService> service = boost::dynamic_pointer_cast<CService>(m_addon);
if (service) if (service)
service->Stop(); service->Stop();
@ -80,10 +80,10 @@ index 8c9f241..d2f4610 100644
AddonPtr repoPtr = CAddonInstallJob::GetRepoForAddon(m_addon); AddonPtr repoPtr = CAddonInstallJob::GetRepoForAddon(m_addon);
diff --git a/xbmc/addons/AddonInstaller.h b/xbmc/addons/AddonInstaller.h diff --git a/xbmc/addons/AddonInstaller.h b/xbmc/addons/AddonInstaller.h
index 39cab93..2938c7f 100644 index ab93a2f..7d62b5b 100644
--- a/xbmc/addons/AddonInstaller.h --- a/xbmc/addons/AddonInstaller.h
+++ b/xbmc/addons/AddonInstaller.h +++ b/xbmc/addons/AddonInstaller.h
@@ -29,6 +29,8 @@ class CAddonInstaller : public IJobCallback @@ -38,6 +38,8 @@ class CAddonInstaller : public IJobCallback
public: public:
static CAddonInstaller &Get(); static CAddonInstaller &Get();
@ -91,7 +91,7 @@ index 39cab93..2938c7f 100644
+ +
bool IsDownloading() const; bool IsDownloading() const;
void GetInstallList(ADDON::VECADDONS &addons) const; void GetInstallList(ADDON::VECADDONS &addons) const;
bool GetProgress(const CStdString &addonID, unsigned int &percent) const; bool GetProgress(const std::string &addonID, unsigned int &percent) const;
-- --
1.8.3.2 1.9.1

View File

@ -1,16 +1,17 @@
From 4b7c1455582ccb6f8979681b4baed93d2852140c Mon Sep 17 00:00:00 2001 From 0e26e69497c0977f6a0efbf48d199f6313c539cf Mon Sep 17 00:00:00 2001
From: Stefan Saraev <stefan@saraev.ca> From: Stefan Saraev <stefan@saraev.ca>
Date: Fri, 11 Jul 2014 19:37:12 +0300 Date: Sun, 3 Aug 2014 13:03:44 +0300
Subject: [PATCH] bye bye libflac Subject: [PATCH] bye bye libflac
--- ---
configure.in | 3 --- configure.in | 3 ---
1 file changed, 3 deletions(-) 1 file changed, 3 deletions(-)
diff -Naur xbmc-14-67f025d/configure.in xbmc-14-67f025d.patch/configure.in diff --git a/configure.in b/configure.in
--- xbmc-14-67f025d/configure.in 2014-07-25 06:45:49.000000000 +0200 index a9d5f46..702f086 100644
+++ xbmc-14-67f025d.patch/configure.in 2014-07-25 06:54:20.396754173 +0200 --- a/configure.in
@@ -1056,7 +1056,6 @@ +++ b/configure.in
@@ -1056,7 +1056,6 @@ AC_CHECK_HEADER([jpeglib.h],, AC_MSG_ERROR($missing_library))
AC_CHECK_HEADER([ogg/ogg.h],, AC_MSG_ERROR($missing_library)) AC_CHECK_HEADER([ogg/ogg.h],, AC_MSG_ERROR($missing_library))
AC_CHECK_HEADER([vorbis/vorbisfile.h],, AC_MSG_ERROR($missing_library)) AC_CHECK_HEADER([vorbis/vorbisfile.h],, AC_MSG_ERROR($missing_library))
AC_CHECK_HEADER([libmodplug/modplug.h],, AC_MSG_ERROR($missing_library)) AC_CHECK_HEADER([libmodplug/modplug.h],, AC_MSG_ERROR($missing_library))
@ -18,7 +19,7 @@ diff -Naur xbmc-14-67f025d/configure.in xbmc-14-67f025d.patch/configure.in
AC_CHECK_HEADER([curl/curl.h],, AC_MSG_ERROR($missing_library)) AC_CHECK_HEADER([curl/curl.h],, AC_MSG_ERROR($missing_library))
XB_FIND_SONAME([CURL], [curl]) XB_FIND_SONAME([CURL], [curl])
@@ -1219,7 +1218,6 @@ @@ -1219,7 +1218,6 @@ fi
fi fi
XB_FIND_SONAME([OGG], [ogg]) XB_FIND_SONAME([OGG], [ogg])
@ -26,7 +27,7 @@ diff -Naur xbmc-14-67f025d/configure.in xbmc-14-67f025d.patch/configure.in
XB_FIND_SONAME([VORBIS], [vorbis]) XB_FIND_SONAME([VORBIS], [vorbis])
XB_FIND_SONAME([VORBISFILE], [vorbisfile]) XB_FIND_SONAME([VORBISFILE], [vorbisfile])
XB_FIND_SONAME([MODPLUG], [modplug]) XB_FIND_SONAME([MODPLUG], [modplug])
@@ -2596,7 +2594,6 @@ @@ -2596,7 +2594,6 @@ AC_SUBST(OUTPUT_FILES)
AC_SUBST(HAVE_XBMC_NONFREE) AC_SUBST(HAVE_XBMC_NONFREE)
AC_SUBST(USE_ASAP_CODEC) AC_SUBST(USE_ASAP_CODEC)
AC_SUBST(LIBCURL_BASENAME) AC_SUBST(LIBCURL_BASENAME)
@ -34,3 +35,6 @@ diff -Naur xbmc-14-67f025d/configure.in xbmc-14-67f025d.patch/configure.in
AC_SUBST(LIBVORBISFILE_BASENAME) AC_SUBST(LIBVORBISFILE_BASENAME)
AC_SUBST(LIBMODPLUG_BASENAME) AC_SUBST(LIBMODPLUG_BASENAME)
AC_SUBST(LIBOGG_BASENAME) AC_SUBST(LIBOGG_BASENAME)
--
1.9.1

View File

@ -1,36 +0,0 @@
From e86491994f73d0d9fbf5087429ad122fc5fb9f5b Mon Sep 17 00:00:00 2001
From: fritsch <Peter.Fruehberger@gmail.com>
Date: Sun, 27 Jul 2014 17:46:42 +0200
Subject: [PATCH] SWCodec: Add VP9 as pure sw decoder to use multithreading
---
xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp b/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp
index 0d4dcd5..2db5d99 100644
--- a/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp
+++ b/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.cpp
@@ -210,7 +210,8 @@ bool CDVDVideoCodecFFmpeg::Open(CDVDStreamInfo &hints, CDVDCodecOptions &options
break;
}
}
- else if (hints.codec == AV_CODEC_ID_HEVC)
+ else if (hints.codec == AV_CODEC_ID_HEVC
+ || hints.codec == AV_CODEC_ID_VP9)
m_isSWCodec = true;
if(pCodec == NULL)
@@ -295,7 +296,8 @@ bool CDVDVideoCodecFFmpeg::Open(CDVDStreamInfo &hints, CDVDCodecOptions &options
if( num_threads > 1 && !hints.software && m_pHardware == NULL // thumbnail extraction fails when run threaded
&& ( pCodec->id == AV_CODEC_ID_H264
|| pCodec->id == AV_CODEC_ID_MPEG4
- || pCodec->id == AV_CODEC_ID_HEVC))
+ || pCodec->id == AV_CODEC_ID_HEVC
+ || pCodec->id == AV_CODEC_ID_VP9))
m_pCodecContext->thread_count = num_threads;
if (avcodec_open2(m_pCodecContext, pCodec, NULL) < 0)
--
1.9.3