xbmc: update to xbmc-14-c4c356a

Signed-off-by: Stephan Raue <stephan@openelec.tv>
This commit is contained in:
Stephan Raue 2014-08-13 02:11:22 +02:00
parent 7720ff6f6d
commit cfdcbfc5c7
3 changed files with 171 additions and 141 deletions

View File

@ -17,7 +17,7 @@
################################################################################ ################################################################################
PKG_NAME="xbmc-theme-Confluence" PKG_NAME="xbmc-theme-Confluence"
PKG_VERSION="14-94bc482" PKG_VERSION="14-c4c356a"
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-94bc482" PKG_VERSION="14-c4c356a"
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 534a3eb63331fd509b17bd5c503a8068de40af5b Mon Sep 17 00:00:00 2001 From 37209b8be8df767b8437c3d6ccf7d766b6f5d2fc 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/28] videoplayer: adapt lateness detection and dropping to Subject: [PATCH 01/29] videoplayer: adapt lateness detection and dropping to
buffering buffering
--- ---
@ -70,7 +70,7 @@ diff --git a/xbmc/cores/VideoRenderers/RenderManager.h b/xbmc/cores/VideoRendere
index 8b237fb..e8d4ca2 100644 index 8b237fb..e8d4ca2 100644
--- a/xbmc/cores/VideoRenderers/RenderManager.h --- a/xbmc/cores/VideoRenderers/RenderManager.h
+++ b/xbmc/cores/VideoRenderers/RenderManager.h +++ b/xbmc/cores/VideoRenderers/RenderManager.h
@@ -98,10 +98,11 @@ class CXBMCRenderManager @@ -98,10 +98,11 @@ public:
* *
* @param bStop reference to stop flag of calling thread * @param bStop reference to stop flag of calling thread
* @param timestamp of frame delivered with AddVideoPicture * @param timestamp of frame delivered with AddVideoPicture
@ -83,7 +83,7 @@ index 8b237fb..e8d4ca2 100644
unsigned int PreInit(); unsigned int PreInit();
void UnInit(); void UnInit();
bool Flush(); bool Flush();
@@ -176,6 +177,12 @@ class CXBMCRenderManager @@ -176,6 +177,12 @@ public:
int WaitForBuffer(volatile bool& bStop, int timeout = 100); int WaitForBuffer(volatile bool& bStop, int timeout = 100);
/** /**
@ -96,7 +96,7 @@ index 8b237fb..e8d4ca2 100644
* Video player call this on flush in oder to discard any queued frames * Video player call this on flush in oder to discard any queued frames
*/ */
void DiscardBuffer(); void DiscardBuffer();
@@ -222,6 +229,7 @@ class CXBMCRenderManager @@ -222,6 +229,7 @@ protected:
struct SPresent struct SPresent
{ {
@ -104,7 +104,7 @@ index 8b237fb..e8d4ca2 100644
double timestamp; double timestamp;
EFIELDSYNC presentfield; EFIELDSYNC presentfield;
EPRESENTMETHOD presentmethod; EPRESENTMETHOD presentmethod;
@@ -233,6 +241,8 @@ class CXBMCRenderManager @@ -233,6 +241,8 @@ protected:
ERenderFormat m_format; ERenderFormat m_format;
@ -137,7 +137,7 @@ index 741017d..c5b24d6 100644
class CDVDVideoCodec class CDVDVideoCodec
{ {
public: public:
@@ -270,7 +276,6 @@ class CDVDVideoCodec @@ -270,7 +276,6 @@ public:
return 0; return 0;
} }
@ -145,7 +145,7 @@ index 741017d..c5b24d6 100644
/** /**
* Number of references to old pictures that are allowed to * Number of references to old pictures that are allowed to
* be retained when calling decode on the next demux packet * be retained when calling decode on the next demux packet
@@ -287,4 +292,35 @@ class CDVDVideoCodec @@ -287,4 +292,35 @@ public:
* Interact with user settings so that user disabled codecs are disabled * Interact with user settings so that user disabled codecs are disabled
*/ */
static bool IsCodecDisabled(DVDCodecAvailableType* map, unsigned int size, AVCodecID id); static bool IsCodecDisabled(DVDCodecAvailableType* map, unsigned int size, AVCodecID id);
@ -262,7 +262,7 @@ diff --git a/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.h b/xbmc/c
index 1f564bb..48564d1 100644 index 1f564bb..48564d1 100644
--- a/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.h --- a/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.h
+++ b/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.h +++ b/xbmc/cores/dvdplayer/DVDCodecs/Video/DVDVideoCodecFFmpeg.h
@@ -50,6 +50,7 @@ class CDVDVideoCodecFFmpeg : public CDVDVideoCodec @@ -50,6 +50,7 @@ public:
virtual int Check (AVCodecContext* avctx) = 0; virtual int Check (AVCodecContext* avctx) = 0;
virtual void Reset () {} virtual void Reset () {}
virtual unsigned GetAllowedReferences() { return 0; } virtual unsigned GetAllowedReferences() { return 0; }
@ -270,7 +270,7 @@ index 1f564bb..48564d1 100644
virtual const std::string Name() = 0; virtual const std::string Name() = 0;
virtual CCriticalSection* Section() { return NULL; } virtual CCriticalSection* Section() { return NULL; }
}; };
@@ -67,6 +68,8 @@ class CDVDVideoCodecFFmpeg : public CDVDVideoCodec @@ -67,6 +68,8 @@ public:
virtual const char* GetName() { return m_name.c_str(); }; // m_name is never changed after open virtual const char* GetName() { return m_name.c_str(); }; // m_name is never changed after open
virtual unsigned GetConvergeCount(); virtual unsigned GetConvergeCount();
virtual unsigned GetAllowedReferences(); virtual unsigned GetAllowedReferences();
@ -279,7 +279,7 @@ index 1f564bb..48564d1 100644
bool IsHardwareAllowed() { return !m_bSoftware; } bool IsHardwareAllowed() { return !m_bSoftware; }
IHardwareDecoder * GetHardware() { return m_pHardware; }; IHardwareDecoder * GetHardware() { return m_pHardware; };
@@ -122,4 +125,8 @@ class CDVDVideoCodecFFmpeg : public CDVDVideoCodec @@ -122,4 +125,8 @@ protected:
double m_dts; double m_dts;
bool m_started; bool m_started;
std::vector<PixelFormat> m_formats; std::vector<PixelFormat> m_formats;
@ -610,7 +610,7 @@ index 37a37c4..be14832 100644
class CDVDPlayerVideo : public CThread, public IDVDStreamPlayer class CDVDPlayerVideo : public CThread, public IDVDStreamPlayer
{ {
public: public:
@@ -101,6 +119,7 @@ class CDVDPlayerVideo : public CThread, public IDVDStreamPlayer @@ -101,6 +119,7 @@ protected:
#define EOS_ABORT 1 #define EOS_ABORT 1
#define EOS_DROPPED 2 #define EOS_DROPPED 2
#define EOS_VERYLATE 4 #define EOS_VERYLATE 4
@ -618,7 +618,7 @@ index 37a37c4..be14832 100644
void AutoCrop(DVDVideoPicture* pPicture); void AutoCrop(DVDVideoPicture* pPicture);
void AutoCrop(DVDVideoPicture *pPicture, RECT &crop); void AutoCrop(DVDVideoPicture *pPicture, RECT &crop);
@@ -116,7 +135,6 @@ class CDVDPlayerVideo : public CThread, public IDVDStreamPlayer @@ -116,7 +135,6 @@ protected:
CDVDMessageQueue m_messageQueue; CDVDMessageQueue m_messageQueue;
CDVDMessageQueue& m_messageParent; CDVDMessageQueue& m_messageParent;
@ -626,7 +626,7 @@ index 37a37c4..be14832 100644
double m_iVideoDelay; double m_iVideoDelay;
double m_iSubtitleDelay; double m_iSubtitleDelay;
double m_FlipTimeStamp; // time stamp of last flippage. used to play at a forced framerate double m_FlipTimeStamp; // time stamp of last flippage. used to play at a forced framerate
@@ -128,6 +146,7 @@ class CDVDPlayerVideo : public CThread, public IDVDStreamPlayer @@ -128,6 +146,7 @@ protected:
void ResetFrameRateCalc(); void ResetFrameRateCalc();
void CalcFrameRate(); void CalcFrameRate();
@ -634,7 +634,7 @@ index 37a37c4..be14832 100644
double m_fFrameRate; //framerate of the video currently playing double m_fFrameRate; //framerate of the video currently playing
bool m_bCalcFrameRate; //if we should calculate the framerate from the timestamps bool m_bCalcFrameRate; //if we should calculate the framerate from the timestamps
@@ -181,5 +200,7 @@ class CDVDPlayerVideo : public CThread, public IDVDStreamPlayer @@ -181,5 +200,7 @@ protected:
CPullupCorrection m_pullupCorrection; CPullupCorrection m_pullupCorrection;
std::list<DVDMessageListItem> m_packets; std::list<DVDMessageListItem> m_packets;
@ -643,19 +643,19 @@ index 37a37c4..be14832 100644
}; };
-- --
2.0.3 1.9.1
From 72064c4a73a0388bd9494e7c26ed0b7c4ad3dde2 Mon Sep 17 00:00:00 2001 From 5c89bc6d6895567b04bce712bb3c9294830eeaeb 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/28] 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)
--- ---
xbmc/cores/dvdplayer/DVDPlayerVideo.cpp | 16 ++++++++++++++++ xbmc/cores/dvdplayer/DVDPlayerVideo.cpp | 16 ++++++++++++++++
xbmc/cores/dvdplayer/DVDPlayerVideo.h | 3 ++- xbmc/cores/dvdplayer/DVDPlayerVideo.h | 2 +-
2 files changed, 18 insertions(+), 1 deletion(-) 2 files changed, 17 insertions(+), 1 deletion(-)
diff --git a/xbmc/cores/dvdplayer/DVDPlayerVideo.cpp b/xbmc/cores/dvdplayer/DVDPlayerVideo.cpp diff --git a/xbmc/cores/dvdplayer/DVDPlayerVideo.cpp b/xbmc/cores/dvdplayer/DVDPlayerVideo.cpp
index a3edad2..1e70fca 100644 index a3edad2..1e70fca 100644
@ -685,27 +685,26 @@ index a3edad2..1e70fca 100644
#define MAXFRAMESERR 1000 #define MAXFRAMESERR 1000
diff --git a/xbmc/cores/dvdplayer/DVDPlayerVideo.h b/xbmc/cores/dvdplayer/DVDPlayerVideo.h diff --git a/xbmc/cores/dvdplayer/DVDPlayerVideo.h b/xbmc/cores/dvdplayer/DVDPlayerVideo.h
index be14832..731bd0e 100644 index be14832..ad99987 100644
--- a/xbmc/cores/dvdplayer/DVDPlayerVideo.h --- a/xbmc/cores/dvdplayer/DVDPlayerVideo.h
+++ b/xbmc/cores/dvdplayer/DVDPlayerVideo.h +++ b/xbmc/cores/dvdplayer/DVDPlayerVideo.h
@@ -97,7 +97,8 @@ class CDVDPlayerVideo : public CThread, public IDVDStreamPlayer @@ -97,7 +97,7 @@ public:
bool IsStalled() const { return m_stalled; } bool IsStalled() const { return m_stalled; }
bool IsEOS() { return false; } bool IsEOS() { return false; }
- double GetCurrentPts() { return m_iCurrentPts; } - double GetCurrentPts() { return m_iCurrentPts; }
+ double GetCurrentPts(); + double GetCurrentPts();
+ int GetPullupCorrection() { return m_pullupCorrection.GetPatternLength(); }
double GetOutputDelay(); /* returns the expected delay, from that a packet is put in queue */ double GetOutputDelay(); /* returns the expected delay, from that a packet is put in queue */
std::string GetPlayerInfo(); std::string GetPlayerInfo();
-- --
2.0.3 1.9.1
From 58cc4996527897c8e40de6b1aefaca0d4565e4be Mon Sep 17 00:00:00 2001 From 28b35517e1cc6ef3f45c2589d1239dfc7ab9c260 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/28] 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 +-
@ -725,13 +724,13 @@ index fb41ccf..f5e5677 100644
class CSetting; class CSetting;
-- --
2.0.3 1.9.1
From 49590bcaa102224003d0da0c589dbc0a6137045d Mon Sep 17 00:00:00 2001 From c65287f72f30b395a501794046e6af60ff78af94 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/28] videoplayer: update frametime, it might change due to Subject: [PATCH 04/29] videoplayer: update frametime, it might change due to
fps detection fps detection
--- ---
@ -752,13 +751,13 @@ index 1e70fca..5761270 100644
{ {
m_codecname = m_pVideoCodec->GetName(); m_codecname = m_pVideoCodec->GetName();
-- --
2.0.3 1.9.1
From 6a20f1991920b327ab7b3ecbc5856e01c8507fb7 Mon Sep 17 00:00:00 2001 From d3f63252e3e558c62f77ae81d70b31fc7b904eb6 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/28] 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
--- ---
@ -779,13 +778,13 @@ index 5761270..e8d855f 100644
//reset the stored framerates if no good framerate was detected //reset the stored framerates if no good framerate was detected
m_fStableFrameRate = 0.0; m_fStableFrameRate = 0.0;
-- --
2.0.3 1.9.1
From aafac347bcfbff4005e8936ad45ac6ce261c6955 Mon Sep 17 00:00:00 2001 From be654d4d258e110e559c97a91a528cc9de73c918 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/28] 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
--- ---
@ -819,13 +818,13 @@ index cbdd299..d3a4c59 100644
// audioplayer, stops outputing audio to audiorendere, but still tries to // audioplayer, stops outputing audio to audiorendere, but still tries to
// sleep an correct amount for each packet // sleep an correct amount for each packet
-- --
2.0.3 1.9.1
From 8663f8954a2884092c5586187c8d9dacf6980084 Mon Sep 17 00:00:00 2001 From abe0b670ea3e5a4b6fa4ac95f7d73ba8c6e37a7c 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/28] 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 ++++++++++++++++++++-
@ -1087,7 +1086,7 @@ diff --git a/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.h b/xbmc/cores/dvdp
index 08eb3df..dd89584 100644 index 08eb3df..dd89584 100644
--- a/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.h --- a/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.h
+++ b/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.h +++ b/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.h
@@ -102,6 +102,7 @@ class CDVDDemuxFFmpeg : public CDVDDemux @@ -102,6 +102,7 @@ public:
DemuxPacket* Read(); DemuxPacket* Read();
bool SeekTime(int time, bool backwords = false, double* startpts = NULL); bool SeekTime(int time, bool backwords = false, double* startpts = NULL);
@ -1095,7 +1094,7 @@ index 08eb3df..dd89584 100644
bool SeekByte(int64_t pos); bool SeekByte(int64_t pos);
int GetStreamLength(); int GetStreamLength();
CDemuxStream* GetStream(int iStreamId); CDemuxStream* GetStream(int iStreamId);
@@ -159,5 +160,8 @@ class CDVDDemuxFFmpeg : public CDVDDemux @@ -159,5 +160,8 @@ protected:
AVPacket pkt; // packet ffmpeg returned AVPacket pkt; // packet ffmpeg returned
int result; // result from av_read_packet int result; // result from av_read_packet
}m_pkt; }m_pkt;
@ -1105,13 +1104,13 @@ index 08eb3df..dd89584 100644
}; };
-- --
2.0.3 1.9.1
From 228e833b8e8249bd9a1cdf4aa69c7a0e4f6e85ef Mon Sep 17 00:00:00 2001 From 551e1739e4a11900315ec32b51bf4d882ff32f4f 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/28] 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
--- ---
@ -1141,13 +1140,13 @@ index e8d855f..5bff37e 100644
|| ( m_output.extended_format != pPicture->extended_format ) || ( m_output.extended_format != pPicture->extended_format )
|| ( m_output.color_matrix != pPicture->color_matrix && pPicture->color_matrix != 0 ) // don't reconfigure on unspecified || ( m_output.color_matrix != pPicture->color_matrix && pPicture->color_matrix != 0 ) // don't reconfigure on unspecified
-- --
2.0.3 1.9.1
From 07c4180c6db8cb4650388a58d13ca9f12e881a80 Mon Sep 17 00:00:00 2001 From 0fa6e6422a8e0359bd368d2f757285f400034c43 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/28] 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 ++++----
@ -1210,13 +1209,13 @@ index 7e50a63..980138e 100644
bool m_videoVDPAUdeintSkipChromaHD; bool m_videoVDPAUdeintSkipChromaHD;
bool m_musicUseTimeSeeking; bool m_musicUseTimeSeeking;
-- --
2.0.3 1.9.1
From 8de4b8e67b17d5f4ccbd9a1a12188851f4d66aa0 Mon Sep 17 00:00:00 2001 From 61b5c4a86e906c3890153c7129a528cf6560ca7b 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/28] player: fix rewind Subject: [PATCH 10/29] player: fix rewind
--- ---
xbmc/cores/dvdplayer/DVDMessage.h | 5 ++++- xbmc/cores/dvdplayer/DVDMessage.h | 5 ++++-
@ -1230,7 +1229,7 @@ diff --git a/xbmc/cores/dvdplayer/DVDMessage.h b/xbmc/cores/dvdplayer/DVDMessage
index a365821..07366df 100644 index a365821..07366df 100644
--- a/xbmc/cores/dvdplayer/DVDMessage.h --- a/xbmc/cores/dvdplayer/DVDMessage.h
+++ b/xbmc/cores/dvdplayer/DVDMessage.h +++ b/xbmc/cores/dvdplayer/DVDMessage.h
@@ -212,7 +212,7 @@ class CDVDMsgPlayerSetState : public CDVDMsg @@ -212,7 +212,7 @@ private:
class CDVDMsgPlayerSeek : public CDVDMsg class CDVDMsgPlayerSeek : public CDVDMsg
{ {
public: public:
@ -1239,7 +1238,7 @@ index a365821..07366df 100644
: CDVDMsg(PLAYER_SEEK) : CDVDMsg(PLAYER_SEEK)
, m_time(time) , m_time(time)
, m_backward(backward) , m_backward(backward)
@@ -220,6 +220,7 @@ class CDVDMsgPlayerSeek : public CDVDMsg @@ -220,6 +220,7 @@ public:
, m_accurate(accurate) , m_accurate(accurate)
, m_restore(restore) , m_restore(restore)
, m_trickplay(trickplay) , m_trickplay(trickplay)
@ -1247,7 +1246,7 @@ index a365821..07366df 100644
{} {}
int GetTime() { return m_time; } int GetTime() { return m_time; }
bool GetBackward() { return m_backward; } bool GetBackward() { return m_backward; }
@@ -227,6 +228,7 @@ class CDVDMsgPlayerSeek : public CDVDMsg @@ -227,6 +228,7 @@ public:
bool GetAccurate() { return m_accurate; } bool GetAccurate() { return m_accurate; }
bool GetRestore() { return m_restore; } bool GetRestore() { return m_restore; }
bool GetTrickPlay() { return m_trickplay; } bool GetTrickPlay() { return m_trickplay; }
@ -1255,7 +1254,7 @@ index a365821..07366df 100644
private: private:
int m_time; int m_time;
bool m_backward; bool m_backward;
@@ -234,6 +236,7 @@ class CDVDMsgPlayerSeek : public CDVDMsg @@ -234,6 +236,7 @@ private:
bool m_accurate; bool m_accurate;
bool m_restore; // whether to restore any EDL cut time bool m_restore; // whether to restore any EDL cut time
bool m_trickplay; bool m_trickplay;
@ -1372,7 +1371,7 @@ diff --git a/xbmc/cores/dvdplayer/DVDPlayer.h b/xbmc/cores/dvdplayer/DVDPlayer.h
index 2b16a90..68d68a1 100644 index 2b16a90..68d68a1 100644
--- a/xbmc/cores/dvdplayer/DVDPlayer.h --- a/xbmc/cores/dvdplayer/DVDPlayer.h
+++ b/xbmc/cores/dvdplayer/DVDPlayer.h +++ b/xbmc/cores/dvdplayer/DVDPlayer.h
@@ -303,7 +303,7 @@ class CDVDPlayer : public IPlayer, public CThread, public IDVDPlayer @@ -303,7 +303,7 @@ protected:
bool GetCachingTimes(double& play_left, double& cache_left, double& file_offset); bool GetCachingTimes(double& play_left, double& cache_left, double& file_offset);
@ -1381,7 +1380,7 @@ index 2b16a90..68d68a1 100644
void HandleMessages(); void HandleMessages();
void HandlePlaySpeed(); void HandlePlaySpeed();
@@ -356,8 +356,9 @@ class CDVDPlayer : public IPlayer, public CThread, public IDVDPlayer @@ -356,8 +356,9 @@ protected:
int m_playSpeed; int m_playSpeed;
struct SSpeedState struct SSpeedState
{ {
@ -1416,10 +1415,10 @@ index 5bff37e..f530567 100644
if (!m_pVideoCodec->GetCodecStats(iDecoderPts, iDroppedPics)) if (!m_pVideoCodec->GetCodecStats(iDecoderPts, iDroppedPics))
iDecoderPts = pts; iDecoderPts = pts;
diff --git a/xbmc/cores/dvdplayer/DVDPlayerVideo.h b/xbmc/cores/dvdplayer/DVDPlayerVideo.h diff --git a/xbmc/cores/dvdplayer/DVDPlayerVideo.h b/xbmc/cores/dvdplayer/DVDPlayerVideo.h
index 731bd0e..9f37edf 100644 index ad99987..4d2b2c7 100644
--- a/xbmc/cores/dvdplayer/DVDPlayerVideo.h --- a/xbmc/cores/dvdplayer/DVDPlayerVideo.h
+++ b/xbmc/cores/dvdplayer/DVDPlayerVideo.h +++ b/xbmc/cores/dvdplayer/DVDPlayerVideo.h
@@ -51,6 +51,7 @@ class CDroppingStats @@ -51,6 +51,7 @@ public:
double m_totalGain; double m_totalGain;
double m_lastDecoderPts; double m_lastDecoderPts;
double m_lastRenderPts; double m_lastRenderPts;
@ -1428,13 +1427,13 @@ index 731bd0e..9f37edf 100644
unsigned int m_dropRequests; unsigned int m_dropRequests;
}; };
-- --
2.0.3 1.9.1
From a1e1a9e968489ce8c30af4685768325fd4e318c6 Mon Sep 17 00:00:00 2001 From 10274f6eda76e6f7a826b8cbd765c735fb575ff4 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/28] 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 ++-
@ -1455,20 +1454,20 @@ index e7a39fa..a62b874 100644
m_av_clock.OMXSetSpeed(speed); m_av_clock.OMXSetSpeed(speed);
m_av_clock.OMXPause(); m_av_clock.OMXPause();
-- --
2.0.3 1.9.1
From 0c3bd8c4bd74e2ba8a0fbfab61b17b99f4893042 Mon Sep 17 00:00:00 2001 From fbf72638b3c8b2677921b3b32772e59a1e7f3a13 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/28] 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 57ea71b..29672b1 100644 index f6b2901..5806613 100644
--- a/xbmc/Application.cpp --- a/xbmc/Application.cpp
+++ b/xbmc/Application.cpp +++ b/xbmc/Application.cpp
@@ -2325,10 +2325,11 @@ void CApplication::Render() @@ -2325,10 +2325,11 @@ void CApplication::Render()
@ -1485,13 +1484,13 @@ index 57ea71b..29672b1 100644
g_renderManager.UpdateResolution(); g_renderManager.UpdateResolution();
-- --
2.0.3 1.9.1
From a5ebb27f8d8692ffd8fcbc76f4dfdfd2fe31cadc Mon Sep 17 00:00:00 2001 From 30e6816ac8dd623f7ead01fc99f7a83577994010 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/28] 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 ++--
@ -1513,13 +1512,13 @@ index fe5e893..c98c73b 100644
void CEngineStats::Reset(unsigned int sampleRate) void CEngineStats::Reset(unsigned int sampleRate)
-- --
2.0.3 1.9.1
From 9071af299b1ad43f612ac9d4dad82f0990d34343 Mon Sep 17 00:00:00 2001 From f74f47cb8de4c24afd2d33414d59ccf8253c7528 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/28] 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.
@ -1572,13 +1571,13 @@ index 1845198..2bfea1a 100644
m_mixersteps = 1; m_mixersteps = 1;
} }
-- --
2.0.3 1.9.1
From 32a106ecb62dfe499ceda20b3ada4d4ed345317e Mon Sep 17 00:00:00 2001 From 900ec78ae233d828f74a9969781536362662d529 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/28] 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
@ -1859,7 +1858,7 @@ diff --git a/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.h b/xbmc/cores/dvdp
index dd89584..82bb553 100644 index dd89584..82bb553 100644
--- a/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.h --- a/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.h
+++ b/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.h +++ b/xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxFFmpeg.h
@@ -91,7 +91,7 @@ class CDVDDemuxFFmpeg : public CDVDDemux @@ -91,7 +91,7 @@ public:
CDVDDemuxFFmpeg(); CDVDDemuxFFmpeg();
virtual ~CDVDDemuxFFmpeg(); virtual ~CDVDDemuxFFmpeg();
@ -1868,7 +1867,7 @@ index dd89584..82bb553 100644
void Dispose(); void Dispose();
void Reset(); void Reset();
void Flush(); void Flush();
@@ -130,6 +130,9 @@ class CDVDDemuxFFmpeg : public CDVDDemux @@ -130,6 +130,9 @@ protected:
CDemuxStream* GetStreamInternal(int iStreamId); CDemuxStream* GetStreamInternal(int iStreamId);
void CreateStreams(unsigned int program = UINT_MAX); void CreateStreams(unsigned int program = UINT_MAX);
void DisposeStreams(); void DisposeStreams();
@ -1878,7 +1877,7 @@ index dd89584..82bb553 100644
AVDictionary *GetFFMpegOptionsFromURL(const CURL &url); AVDictionary *GetFFMpegOptionsFromURL(const CURL &url);
double ConvertTimestamp(int64_t pts, int den, int num); double ConvertTimestamp(int64_t pts, int den, int num);
@@ -163,5 +166,7 @@ class CDVDDemuxFFmpeg : public CDVDDemux @@ -163,5 +166,7 @@ protected:
bool m_bPtsWrap, m_bPtsWrapChecked; bool m_bPtsWrap, m_bPtsWrapChecked;
int64_t m_iStartTime, m_iMaxTime, m_iEndTime; int64_t m_iStartTime, m_iMaxTime, m_iEndTime;
@ -1935,13 +1934,13 @@ index ca689d0..f383563 100644
else else
return NULL; return NULL;
-- --
2.0.3 1.9.1
From e3c9ecc81b8dcda490926e3d3d9393e1294e2948 Mon Sep 17 00:00:00 2001 From 1829da11fba3d87607d5ffe5bf26e1384b2be8d1 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/28] DVDFactoryDemuxer: skip streaminfo for udp tcp and Subject: [PATCH 16/29] DVDFactoryDemuxer: skip streaminfo for udp tcp and
pvr-channels pvr-channels
--- ---
@ -2043,7 +2042,7 @@ diff --git a/xbmc/utils/URIUtils.h b/xbmc/utils/URIUtils.h
index 667f6d3..0094709 100644 index 667f6d3..0094709 100644
--- a/xbmc/utils/URIUtils.h --- a/xbmc/utils/URIUtils.h
+++ b/xbmc/utils/URIUtils.h +++ b/xbmc/utils/URIUtils.h
@@ -119,6 +119,8 @@ class URIUtils @@ -119,6 +119,8 @@ public:
static bool IsDOSPath(const CStdString &path); static bool IsDOSPath(const CStdString &path);
static bool IsDVD(const CStdString& strFile); static bool IsDVD(const CStdString& strFile);
static bool IsFTP(const CStdString& strFile); static bool IsFTP(const CStdString& strFile);
@ -2052,7 +2051,7 @@ index 667f6d3..0094709 100644
static bool IsHD(const CStdString& strFileName); static bool IsHD(const CStdString& strFileName);
static bool IsHDHomeRun(const CStdString& strFile); static bool IsHDHomeRun(const CStdString& strFile);
static bool IsSlingbox(const CStdString& strFile); static bool IsSlingbox(const CStdString& strFile);
@@ -159,6 +161,8 @@ class URIUtils @@ -159,6 +161,8 @@ public:
static bool IsAndroidApp(const CStdString& strFile); static bool IsAndroidApp(const CStdString& strFile);
static bool IsLibraryFolder(const CStdString& strFile); static bool IsLibraryFolder(const CStdString& strFile);
static bool IsLibraryContent(const std::string& strFile); static bool IsLibraryContent(const std::string& strFile);
@ -2062,13 +2061,13 @@ index 667f6d3..0094709 100644
static void AddSlashAtEnd(std::string& strFolder); static void AddSlashAtEnd(std::string& strFolder);
static bool HasSlashAtEnd(const std::string& strFile, bool checkURL = false); static bool HasSlashAtEnd(const std::string& strFile, bool checkURL = false);
-- --
2.0.3 1.9.1
From 9221ae2edf8a18c18c67fcf438eac56ba3118e7c Mon Sep 17 00:00:00 2001 From c2893b78e7767d16781e7d1817de89a843ff8b72 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/28] linux: add shared lib for sse4 operations Subject: [PATCH 17/29] linux: add shared lib for sse4 operations
--- ---
Makefile.in | 8 ++- Makefile.in | 8 ++-
@ -2109,10 +2108,10 @@ index 433d5ba..1dd97ee 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 fb6ab20..3f3b061 100644 index 725a271..5eb8465 100644
--- a/configure.in --- a/configure.in
+++ b/configure.in +++ b/configure.in
@@ -824,6 +824,19 @@ elif test "$use_arch" = "arm"; then @@ -827,6 +827,19 @@ elif test "$use_arch" = "arm"; then
fi fi
fi fi
@ -2132,7 +2131,7 @@ index fb6ab20..3f3b061 100644
# Checks for library functions. # Checks for library functions.
AC_FUNC_ALLOCA AC_FUNC_ALLOCA
AC_FUNC_CHOWN AC_FUNC_CHOWN
@@ -2471,6 +2484,10 @@ if test "$use_codec_libstagefright" = "yes"; then @@ -2474,6 +2487,10 @@ if test "$use_codec_libstagefright" = "yes"; then
OUTPUT_FILES="$OUTPUT_FILES xbmc/cores/dvdplayer/DVDCodecs/Video/libstagefrightICS/Makefile" OUTPUT_FILES="$OUTPUT_FILES xbmc/cores/dvdplayer/DVDCodecs/Video/libstagefrightICS/Makefile"
fi fi
@ -2143,7 +2142,7 @@ index fb6ab20..3f3b061 100644
OUTPUT_FILES="$OUTPUT_FILES \ OUTPUT_FILES="$OUTPUT_FILES \
xbmc/interfaces/python/Makefile \ xbmc/interfaces/python/Makefile \
xbmc/interfaces/python/test/Makefile" xbmc/interfaces/python/test/Makefile"
@@ -2547,6 +2564,7 @@ AC_SUBST(GTEST_CONFIGURED) @@ -2550,6 +2567,7 @@ AC_SUBST(GTEST_CONFIGURED)
AC_SUBST(USE_DOXYGEN) AC_SUBST(USE_DOXYGEN)
AC_SUBST(USE_PVR_ADDONS) AC_SUBST(USE_PVR_ADDONS)
AC_SUBST(UPNP_DEFINES) AC_SUBST(UPNP_DEFINES)
@ -2360,13 +2359,13 @@ index 0000000..45aa826
+ +
+include ../../../Makefile.include +include ../../../Makefile.include
-- --
2.0.3 1.9.1
From 61c7d694f05f15487d1325379053e617ed432739 Mon Sep 17 00:00:00 2001 From cd6fa1f5f8d79f2e7d16e7f447a4220c3568435f 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/28] 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 ++++++++
@ -2392,13 +2391,13 @@ index 6920db2..d72e256 100644
* Setting it correctly would allow CorePNG decoding. */ * Setting it correctly would allow CorePNG decoding. */
avpkt.flags = AV_PKT_FLAG_KEY; avpkt.flags = AV_PKT_FLAG_KEY;
-- --
2.0.3 1.9.1
From 3c4c0e7d043360453c22a56a188aa78a55973bfd Mon Sep 17 00:00:00 2001 From b7a161071af7331d0154931d31de7276ace23cc4 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/28] 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 ++++++
@ -2423,13 +2422,13 @@ index ec10397..3b67fc0 100644
return copied; return copied;
} }
-- --
2.0.3 1.9.1
From 9152d5b595eb2c9a5fdca54dd015c8cf99918b0b Mon Sep 17 00:00:00 2001 From c128da82d8c0c5e1bd582cf7b5188e1b6787a8aa 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/28] vaapi - postprocessing Subject: [PATCH 20/29] vaapi - postprocessing
--- ---
configure.in | 16 +- configure.in | 16 +-
@ -2450,10 +2449,10 @@ Subject: [PATCH 20/28] 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 3f3b061..5db7181 100644 index 5eb8465..b4e4a5d 100644
--- a/configure.in --- a/configure.in
+++ b/configure.in +++ b/configure.in
@@ -1823,21 +1823,15 @@ if test "x$use_vaapi" != "xno"; then @@ -1826,21 +1826,15 @@ if test "x$use_vaapi" != "xno"; then
USE_VAAPI=0 USE_VAAPI=0
else else
initial_val=$use_vaapi initial_val=$use_vaapi
@ -2481,10 +2480,10 @@ index 3f3b061..5db7181 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 a78c892..07dfe9d7 100755 index 91c08ba..a128b9f 100755
--- a/language/English/strings.po --- a/language/English/strings.po
+++ b/language/English/strings.po +++ b/language/English/strings.po
@@ -6184,7 +6184,13 @@ msgctxt "#13456" @@ -6190,7 +6190,13 @@ msgctxt "#13456"
msgid "Hardware accelerated" msgid "Hardware accelerated"
msgstr "" msgstr ""
@ -2499,7 +2498,7 @@ index a78c892..07dfe9d7 100755
#: system/settings/settings.xml #: system/settings/settings.xml
msgctxt "#13500" msgctxt "#13500"
@@ -7350,7 +7356,22 @@ msgctxt "#16326" @@ -7356,7 +7362,22 @@ msgctxt "#16326"
msgid "DXVA-HD" msgid "DXVA-HD"
msgstr "" msgstr ""
@ -2523,31 +2522,31 @@ index a78c892..07dfe9d7 100755
#: xbmc/video/dialogs/GUIDialogVideoSettings.cpp #: xbmc/video/dialogs/GUIDialogVideoSettings.cpp
msgctxt "#16400" msgctxt "#16400"
@@ -15356,7 +15377,14 @@ msgctxt "#36431" @@ -15369,7 +15390,14 @@ msgctxt "#36432"
msgid "Defines whether video decoding should be performed in software (requires more CPU) or with hardware acceleration where possible." msgid "Select virtual keyboard layouts."
msgstr "" msgstr ""
-#empty strings from id 36432 to 36499 -#empty strings from id 36433 to 36499
+#. Description for video related setting #13457: vaapi sw filter +#. Description for video related setting #13457: vaapi sw filter
+#: system/settings/settings.xml +#: system/settings/settings.xml
+msgctxt "#36432" +msgctxt "#36433"
+msgid "If enabled VAAPI render method is prefered. This puts less load on the CPU but driver may hang!" +msgid "If enabled VAAPI render method is prefered. This puts less load on the CPU but driver may hang!"
+msgstr "" +msgstr ""
+ +
+#empty strings from id 36433 to 36499 +#empty strings from id 36434 to 36499
+ +
#end reservation #end reservation
#: 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 7f33d83..f9f92c8 100644 index d69ffc0..f604b30 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 @@ @@ -728,6 +728,21 @@
<default>false</default> <default>false</default>
<control type="toggle" /> <control type="toggle" />
</setting> </setting>
+ <setting id="videoplayer.prefervaapirender" type="boolean" parent="videoplayer.usevaapi" label="13457" help="36432"> + <setting id="videoplayer.prefervaapirender" type="boolean" parent="videoplayer.usevaapi" label="13457" help="36433">
+ <requirement>HAVE_LIBVA</requirement> + <requirement>HAVE_LIBVA</requirement>
+ <dependencies> + <dependencies>
+ <dependency type="enable"> + <dependency type="enable">
@ -2972,7 +2971,7 @@ index 304017f..1e46940 100644
namespace VDPAU { class CVdpauRenderPicture; } namespace VDPAU { class CVdpauRenderPicture; }
#undef ALIGN #undef ALIGN
@@ -142,7 +142,7 @@ class CLinuxRendererGL : public CBaseRenderer @@ -142,7 +142,7 @@ public:
virtual void AddProcessor(VDPAU::CVdpauRenderPicture* vdpau, int index); virtual void AddProcessor(VDPAU::CVdpauRenderPicture* vdpau, int index);
#endif #endif
#ifdef HAVE_LIBVA #ifdef HAVE_LIBVA
@ -2981,7 +2980,7 @@ index 304017f..1e46940 100644
#endif #endif
#ifdef TARGET_DARWIN #ifdef TARGET_DARWIN
virtual void AddProcessor(struct __CVBuffer *cvBufferRef, int index); virtual void AddProcessor(struct __CVBuffer *cvBufferRef, int index);
@@ -218,9 +218,8 @@ class CLinuxRendererGL : public CBaseRenderer @@ -218,9 +218,8 @@ protected:
void RenderFromFBO(); void RenderFromFBO();
void RenderSinglePass(int renderBuffer, int field); // single pass glsl renderer void RenderSinglePass(int renderBuffer, int field); // single pass glsl renderer
void RenderSoftware(int renderBuffer, int field); // single pass s/w yuv2rgb renderer void RenderSoftware(int renderBuffer, int field); // single pass s/w yuv2rgb renderer
@ -2992,7 +2991,7 @@ index 304017f..1e46940 100644
struct struct
{ {
@@ -282,7 +281,7 @@ class CLinuxRendererGL : public CBaseRenderer @@ -282,7 +281,7 @@ protected:
VDPAU::CVdpauRenderPicture *vdpau; VDPAU::CVdpauRenderPicture *vdpau;
#endif #endif
#ifdef HAVE_LIBVA #ifdef HAVE_LIBVA
@ -7159,13 +7158,13 @@ index 760eda5..965f297 100644
/* remove unsupported methods */ /* remove unsupported methods */
for (StaticIntegerSettingOptions::iterator it = entries.begin(); it != entries.end(); ) for (StaticIntegerSettingOptions::iterator it = entries.begin(); it != entries.end(); )
-- --
2.0.3 1.9.1
From 173b28444dc0cb4c19ae8dd6e02bff243e440c99 Mon Sep 17 00:00:00 2001 From 410ebe00d2c282ad35fc1ad1f036724b42a1ff25 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/28] 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
--- ---
@ -7243,13 +7242,13 @@ index 93be338..4e1b136 100644
VASurfaceID surface = config.videoSurfaces->GetAtIndex(0); VASurfaceID surface = config.videoSurfaces->GetAtIndex(0);
VAStatus status = vaDeriveImage(config.dpy, surface, &image); VAStatus status = vaDeriveImage(config.dpy, surface, &image);
-- --
2.0.3 1.9.1
From 3b3c4838af667d397fcab56c89ff834e8385f608 Mon Sep 17 00:00:00 2001 From 036ec65b142b92d2ee3168f1ae396956167adb8e 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/28] 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 +--
@ -7270,13 +7269,13 @@ index 4e1b136..92b2f97 100644
return false; return false;
-- --
2.0.3 1.9.1
From 2e10233b33c20b4a211d021446b6c60e96746727 Mon Sep 17 00:00:00 2001 From 7c86086824e5561112e62b8065d021a197d0face 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 23/28] 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 ++-
@ -7297,13 +7296,13 @@ index c01bc11..d38bfab 100644
// We are looking for an IDR frame // We are looking for an IDR frame
-- --
2.0.3 1.9.1
From e28c1e3fabdef231fec9dc7619e1fc2a8bdab5a1 Mon Sep 17 00:00:00 2001 From 0e87b4226fe8fcf4e0b8b8430ee8fe1bca8cb86e 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 24/28] 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 +
@ -7322,13 +7321,13 @@ index 92b2f97..671e8a5 100644
default: default:
break; break;
-- --
2.0.3 1.9.1
From ff467857d796e61b16a89502930c9663114f6996 Mon Sep 17 00:00:00 2001 From cbb249c0ad0951fe7394feaeb6883f987cd24839 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 25/28] 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
@ -7398,7 +7397,7 @@ diff --git a/xbmc/cores/dvdplayer/DVDPlayerAudio.h b/xbmc/cores/dvdplayer/DVDPla
index 3f13c5a..3761912 100644 index 3f13c5a..3761912 100644
--- a/xbmc/cores/dvdplayer/DVDPlayerAudio.h --- a/xbmc/cores/dvdplayer/DVDPlayerAudio.h
+++ b/xbmc/cores/dvdplayer/DVDPlayerAudio.h +++ b/xbmc/cores/dvdplayer/DVDPlayerAudio.h
@@ -133,6 +133,7 @@ class CDVDPlayerAudio : public CThread, public IDVDStreamPlayer @@ -133,6 +133,7 @@ public:
std::string GetPlayerInfo(); std::string GetPlayerInfo();
int GetAudioBitrate(); int GetAudioBitrate();
@ -7407,13 +7406,13 @@ index 3f13c5a..3761912 100644
// holds stream information for current playing stream // holds stream information for current playing stream
CDVDStreamInfo m_streaminfo; CDVDStreamInfo m_streaminfo;
-- --
2.0.3 1.9.1
From ab393ea022b812c3bea6204634c01bdffee14bed Mon Sep 17 00:00:00 2001 From 5926552a1193455094bc1a4c0d4e054197941792 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 26/28] 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
--- ---
@ -7440,13 +7439,13 @@ index d38bfab..e388ecf 100644
m_bPtsWrapChecked = false; m_bPtsWrapChecked = false;
m_bPtsWrap = false; m_bPtsWrap = false;
-- --
2.0.3 1.9.1
From ccc9907c6b6fae4b541fa9f43356f1d43544ff82 Mon Sep 17 00:00:00 2001 From e654f06604fcb7716d62e3f239d6800edb387732 Mon Sep 17 00:00:00 2001
From: Rainer Hochecker <fernetmenta@online.de> From: Rainer Hochecker <fernetmenta@online.de>
Date: Sat, 26 Jul 2014 09:54:06 +0200 Date: Sat, 26 Jul 2014 09:54:06 +0200
Subject: [PATCH 27/28] ffmpeg: fixup fast channel switch (deprecated Subject: [PATCH 27/29] ffmpeg: fixup fast channel switch (deprecated
max_analyze_duration) max_analyze_duration)
--- ---
@ -7467,13 +7466,13 @@ index e388ecf..a8e1f7a 100644
} }
-- --
2.0.3 1.9.1
From f4fe7ca05e0e262ff78102911597914e48e83889 Mon Sep 17 00:00:00 2001 From bfe9e16e1c0c814fd13f6234a5a676cecb092944 Mon Sep 17 00:00:00 2001
From: fritsch <peter.fruehberger@gmail.com> From: fritsch <peter.fruehberger@gmail.com>
Date: Sun, 3 Aug 2014 17:18:08 +0200 Date: Sun, 3 Aug 2014 17:18:08 +0200
Subject: [PATCH 28/28] VAAPI: fixup don't cause deadlock squash into Subject: [PATCH 28/29] VAAPI: fixup don't cause deadlock squash into
e98e77105895bad63e8205eaa5ea2fed94753ff1 e98e77105895bad63e8205eaa5ea2fed94753ff1
--- ---
@ -7493,5 +7492,36 @@ index 671e8a5..7021031 100644
avctx->slice_flags = SLICE_FLAG_CODED_ORDER|SLICE_FLAG_ALLOW_FIELD; avctx->slice_flags = SLICE_FLAG_CODED_ORDER|SLICE_FLAG_ALLOW_FIELD;
return true; return true;
-- --
2.0.3 1.9.1
From 462984163c1f1839a236e06bc7876272d5abd1ab Mon Sep 17 00:00:00 2001
From: fritsch <Peter.Fruehberger@gmail.com>
Date: Sun, 10 Aug 2014 10:50:34 +0200
Subject: [PATCH 29/29] VAAPI: Don't init if dimensions are not set
---
xbmc/cores/dvdplayer/DVDCodecs/Video/VAAPI.cpp | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/xbmc/cores/dvdplayer/DVDCodecs/Video/VAAPI.cpp b/xbmc/cores/dvdplayer/DVDCodecs/Video/VAAPI.cpp
index 7021031..3321bcf 100644
--- a/xbmc/cores/dvdplayer/DVDCodecs/Video/VAAPI.cpp
+++ b/xbmc/cores/dvdplayer/DVDCodecs/Video/VAAPI.cpp
@@ -464,6 +464,13 @@ bool CDecoder::Open(AVCodecContext* avctx, const enum PixelFormat fmt, unsigned
if (!CVAAPIContext::EnsureContext(&m_vaapiConfig.context, this))
return false;
+ if(avctx->coded_width == 0
+ || avctx->coded_height == 0)
+ {
+ CLog::Log(LOGWARNING,"VAAPI::Open: no width/height available, can't init");
+ return false;
+ }
+
m_vaapiConfig.vidWidth = avctx->width;
m_vaapiConfig.vidHeight = avctx->height;
m_vaapiConfig.outWidth = avctx->width;
--
1.9.1