From b39b7fb427ae2164aac6e089421df70fe20b652f Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Sun, 10 Aug 2014 14:34:06 +0200 Subject: [PATCH] projects/RPi/patches/xbmc: update RPi support patch Signed-off-by: Stephan Raue --- .../RPi/patches/xbmc/xbmc-001-newclock3.patch | 713 +++++++----------- 1 file changed, 292 insertions(+), 421 deletions(-) diff --git a/projects/RPi/patches/xbmc/xbmc-001-newclock3.patch b/projects/RPi/patches/xbmc/xbmc-001-newclock3.patch index 6e141e48be..7b3dedd6cc 100644 --- a/projects/RPi/patches/xbmc/xbmc-001-newclock3.patch +++ b/projects/RPi/patches/xbmc/xbmc-001-newclock3.patch @@ -1,4 +1,4 @@ -From 60abbee2c8afb5e735991959ab436a12e4bcb358 Mon Sep 17 00:00:00 2001 +From 1cbeabd74a69bf58cff58187a6b9dcd5ebecf7b0 Mon Sep 17 00:00:00 2001 From: Ben Avison Date: Wed, 11 Dec 2013 17:21:54 +0000 Subject: [PATCH 01/91] Move the reference-counting of Begin and End calls from @@ -392,7 +392,7 @@ index c0bb53a..735fb3a 100644 2.0.3 -From a52b3ea891f5c0224284b5034ab29198e6c2c134 Mon Sep 17 00:00:00 2001 +From dd49f1c895bb9832976d7595155ca50bcc237fc2 Mon Sep 17 00:00:00 2001 From: Ben Avison Date: Wed, 11 Dec 2013 18:47:54 +0000 Subject: [PATCH 02/91] Convert CGUIFontTTFBase::m_vertex to be managed as a @@ -578,7 +578,7 @@ index 97853fd..b76c6a5 100644 2.0.3 -From af5e26bd7bf84877492b3755898ad493a85f400a Mon Sep 17 00:00:00 2001 +From db560c6886b6719551200d1e2f3374e3962d90e0 Mon Sep 17 00:00:00 2001 From: Ben Avison Date: Mon, 16 Dec 2013 18:58:12 +0000 Subject: [PATCH 03/91] CGUIFontTTFBase::RenderCharacter can now append to @@ -657,7 +657,7 @@ index 10a7060..dde0350 100644 2.0.3 -From 9765fd8f95687f39da7e6887b6ed91761e384402 Mon Sep 17 00:00:00 2001 +From 4172b050eaa1856f319d1ebee07f94bb86c71320 Mon Sep 17 00:00:00 2001 From: Ben Avison Date: Wed, 15 Jan 2014 17:18:38 +0000 Subject: [PATCH 04/91] Add a cache of font glyph bounding box vertices. @@ -682,113 +682,6 @@ applicable transformation matrices permit the use of hardware clipping. create mode 100644 xbmc/guilib/GUIFontCache.cpp create mode 100644 xbmc/guilib/GUIFontCache.h -diff --git a/XBMC.xcodeproj/project.pbxproj b/XBMC.xcodeproj/project.pbxproj -index 137a8cd..15aa46d 100644 ---- a/XBMC.xcodeproj/project.pbxproj -+++ b/XBMC.xcodeproj/project.pbxproj -@@ -168,6 +168,9 @@ - 1D638128161E211E003603ED /* PeripheralImon.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1D638126161E211E003603ED /* PeripheralImon.cpp */; }; - 1DAFDB7C16DFDCA7007F8C68 /* PeripheralBusCEC.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1DAFDB7A16DFDCA7007F8C68 /* PeripheralBusCEC.cpp */; }; - 1DE0443515828F4B005DDB4D /* Exception.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1DE0443315828F4B005DDB4D /* Exception.cpp */; }; -+ 2F4564D51970129A00396109 /* GUIFontCache.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2F4564D31970129A00396109 /* GUIFontCache.cpp */; }; -+ 2F4564D61970129A00396109 /* GUIFontCache.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2F4564D31970129A00396109 /* GUIFontCache.cpp */; }; -+ 2F4564D71970129A00396109 /* GUIFontCache.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2F4564D31970129A00396109 /* GUIFontCache.cpp */; }; - 32C631281423A90F00F18420 /* JpegIO.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 32C631261423A90F00F18420 /* JpegIO.cpp */; }; - 36A9443D15821E2800727135 /* DatabaseUtils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 36A9443B15821E2800727135 /* DatabaseUtils.cpp */; }; - 36A9444115821E7C00727135 /* SortUtils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 36A9443F15821E7C00727135 /* SortUtils.cpp */; }; -@@ -4008,6 +4011,8 @@ - 1DAFDB7B16DFDCA7007F8C68 /* PeripheralBusCEC.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PeripheralBusCEC.h; sourceTree = ""; }; - 1DE0443315828F4B005DDB4D /* Exception.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = Exception.cpp; path = commons/Exception.cpp; sourceTree = ""; }; - 1DE0443415828F4B005DDB4D /* Exception.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Exception.h; path = commons/Exception.h; sourceTree = ""; }; -+ 2F4564D31970129A00396109 /* GUIFontCache.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = GUIFontCache.cpp; sourceTree = ""; }; -+ 2F4564D41970129A00396109 /* GUIFontCache.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GUIFontCache.h; sourceTree = ""; }; - 32C631261423A90F00F18420 /* JpegIO.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JpegIO.cpp; sourceTree = ""; }; - 32C631271423A90F00F18420 /* JpegIO.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JpegIO.h; sourceTree = ""; }; - 36A9443B15821E2800727135 /* DatabaseUtils.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DatabaseUtils.cpp; sourceTree = ""; }; -@@ -6512,6 +6517,8 @@ - 18B7C7101294222D009E7A26 /* GUIFixedListContainer.h */, - 18B7C76B1294222E009E7A26 /* GUIFont.cpp */, - 18B7C7111294222D009E7A26 /* GUIFont.h */, -+ 2F4564D31970129A00396109 /* GUIFontCache.cpp */, -+ 2F4564D41970129A00396109 /* GUIFontCache.h */, - 18B7C76C1294222E009E7A26 /* GUIFontManager.cpp */, - 18B7C7121294222D009E7A26 /* GUIFontManager.h */, - 18B7C76D1294222E009E7A26 /* GUIFontTTF.cpp */, -@@ -10989,6 +10996,7 @@ - 7C5608C70F1754930056433A /* ExternalPlayer.cpp in Sources */, - F584E12E0F257C5100DB26A5 /* HTTPDirectory.cpp in Sources */, - F54C51D20F1E783200D46E3C /* GUIDialogKaraokeSongSelector.cpp in Sources */, -+ 2F4564D51970129A00396109 /* GUIFontCache.cpp in Sources */, - F54C51D50F1E784800D46E3C /* karaokelyricscdg.cpp in Sources */, - F54C51D80F1E785700D46E3C /* karaokelyrics.cpp in Sources */, - F54C51E50F1E787700D46E3C /* karaokelyricstextkar.cpp in Sources */, -@@ -12657,6 +12665,7 @@ - DFF0F45B17528350002DA3A4 /* Control.cpp in Sources */, - DFF0F45C17528350002DA3A4 /* Dialog.cpp in Sources */, - DFF0F45D17528350002DA3A4 /* File.cpp in Sources */, -+ 2F4564D71970129A00396109 /* GUIFontCache.cpp in Sources */, - DFF0F45E17528350002DA3A4 /* InfoTagMusic.cpp in Sources */, - DFF0F45F17528350002DA3A4 /* InfoTagVideo.cpp in Sources */, - DFF0F46017528350002DA3A4 /* Keyboard.cpp in Sources */, -@@ -13456,6 +13465,7 @@ - E499131D174E5DAD00741B6D /* GUIVisualisationControl.cpp in Sources */, - E499131E174E5DAD00741B6D /* GUIWindow.cpp in Sources */, - E499131F174E5DAD00741B6D /* GUIWindowManager.cpp in Sources */, -+ 2F4564D61970129A00396109 /* GUIFontCache.cpp in Sources */, - E4991320174E5DAD00741B6D /* GUIWrappingListContainer.cpp in Sources */, - E4991321174E5DAD00741B6D /* imagefactory.cpp in Sources */, - E4991322174E5DAD00741B6D /* IWindowManagerCallback.cpp in Sources */, -diff --git a/project/VS2010Express/XBMC.vcxproj b/project/VS2010Express/XBMC.vcxproj -index d193c3e..9c1b291 100644 ---- a/project/VS2010Express/XBMC.vcxproj -+++ b/project/VS2010Express/XBMC.vcxproj -@@ -426,6 +426,7 @@ - - - -+ - - - -@@ -1741,6 +1742,7 @@ - - - -+ - - - -diff --git a/project/VS2010Express/XBMC.vcxproj.filters b/project/VS2010Express/XBMC.vcxproj.filters -index fa284e6..f78e4fa 100644 ---- a/project/VS2010Express/XBMC.vcxproj.filters -+++ b/project/VS2010Express/XBMC.vcxproj.filters -@@ -994,6 +994,9 @@ - - guilib - -+ -+ guilib -+ - - guilib - -@@ -3882,6 +3885,9 @@ - - guilib - -+ -+ guilib -+ - - guilib - -@@ -6034,4 +6040,4 @@ - interfaces\swig - - -- -\ No newline at end of file -+ diff --git a/xbmc/guilib/GUIFontCache.cpp b/xbmc/guilib/GUIFontCache.cpp new file mode 100644 index 0000000..2c72f9c @@ -1430,7 +1323,7 @@ index f351c99..9036ba9 100644 2.0.3 -From 396a2760bdf0e5718ee8b1dd445ba4b423ee0b8a Mon Sep 17 00:00:00 2001 +From aa209733ce05e652607a4dd64d20d5b464d8c9bb Mon Sep 17 00:00:00 2001 From: Ben Avison Date: Thu, 23 Jan 2014 22:24:17 +0000 Subject: [PATCH 05/91] Lay the groundwork for hardware clipping. @@ -1698,7 +1591,7 @@ index 98e398a..81ee49e 100644 2.0.3 -From 212301f7da0bc7dea779af3064ae3637e1daa53a Mon Sep 17 00:00:00 2001 +From 82379d243c0f77a2391042753a7e47a2b3f446a3 Mon Sep 17 00:00:00 2001 From: Ben Avison Date: Thu, 23 Jan 2014 16:42:22 +0000 Subject: [PATCH 06/91] Increase font cache hit rate by keying on the @@ -1905,7 +1798,7 @@ index 77111bc..39bfa52 100644 2.0.3 -From 2b48ab70eee256eb03c1499c56011c8b833dd95b Mon Sep 17 00:00:00 2001 +From 05bfd7d9c6470c6fcd58a90c36a82b6da1c7b185 Mon Sep 17 00:00:00 2001 From: Ben Avison Date: Wed, 8 Jan 2014 12:16:33 +0000 Subject: [PATCH 07/91] Rewrite of scrolling text code. @@ -2227,7 +2120,7 @@ index 2cda726..fbc579e 100644 2.0.3 -From 436bb6c0c2a07f4450c8b6da6531e4fe22fd745c Mon Sep 17 00:00:00 2001 +From df1bddd031b6bc77bf4f4f5cb9f7ec04ab181515 Mon Sep 17 00:00:00 2001 From: Ben Avison Date: Mon, 27 Jan 2014 23:21:10 +0000 Subject: [PATCH 08/91] Move the application of the translation offsets into @@ -2427,7 +2320,7 @@ index 9935ea4..18c9358 100644 2.0.3 -From 22652ad0991faf2f4592fbcb2d604acda2151560 Mon Sep 17 00:00:00 2001 +From 20388f9421c57b49d4bf16461ea926af47b24daf Mon Sep 17 00:00:00 2001 From: Ben Avison Date: Wed, 15 Jan 2014 15:28:06 +0000 Subject: [PATCH 09/91] Rather than applying the translation offsets to the @@ -2577,7 +2470,7 @@ index 81ee49e..d2f9cd1 100644 2.0.3 -From a32f6e1942f6b2d383cd98672dd349dda3f0c617 Mon Sep 17 00:00:00 2001 +From a9e79067d783011f2eff7693b2b10e43318ef804 Mon Sep 17 00:00:00 2001 From: Ben Avison Date: Wed, 29 Jan 2014 13:21:19 +0000 Subject: [PATCH 10/91] Enable hardware clipping. @@ -2656,7 +2549,7 @@ index ea08bf4..b63e337 100644 2.0.3 -From a6af9b58207e90a95761899c8e9c7181d5b135c4 Mon Sep 17 00:00:00 2001 +From b583334bdd9505b7e2d527baaf665688c888811b Mon Sep 17 00:00:00 2001 From: Ben Avison Date: Wed, 15 Jan 2014 15:32:51 +0000 Subject: [PATCH 11/91] Move the vertex data across to a vertex buffer object @@ -2713,7 +2606,7 @@ index b63e337..b00055d 100644 2.0.3 -From d76b2c504244089c41f00ab717cfeea13b4ea1f9 Mon Sep 17 00:00:00 2001 +From 7e85079f21961b8cb6afb05d81ea93b8bb0a85fb Mon Sep 17 00:00:00 2001 From: Ben Avison Date: Wed, 15 Jan 2014 16:04:04 +0000 Subject: [PATCH 12/91] Move vertex data into an OpenGL VBO when the font cache @@ -2992,7 +2885,7 @@ index 735fb3a..6102c90 100644 2.0.3 -From 550ccca943ba9f6967844f34f4b8b81074a432e5 Mon Sep 17 00:00:00 2001 +From 7763c0907b155de5c6bfdca16007c373ebc599f8 Mon Sep 17 00:00:00 2001 From: Ben Avison Date: Thu, 16 Jan 2014 16:29:42 +0000 Subject: [PATCH 13/91] Switch from glDrawArrays() to glDrawElements(). @@ -3219,7 +3112,7 @@ index 6de3532..258a293 100644 2.0.3 -From 9d778255f8e3957d3f8ce1d5d5416bdb87932866 Mon Sep 17 00:00:00 2001 +From d8f712671b3bda532577c45f68c1dbd8f17092a6 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Fri, 10 Jan 2014 12:10:43 +0000 Subject: [PATCH 14/91] [rbp] Don't override dvdplayer with omxplayer. @@ -3255,7 +3148,7 @@ index c590cca..57b524f 100644 2.0.3 -From f7758d9d7061c18575bca8ac0f59183b59186245 Mon Sep 17 00:00:00 2001 +From abf3c112e80a9e9c24bb8be1a6bd9e69c1232cf1 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Fri, 10 Jan 2014 15:37:41 +0000 Subject: [PATCH 15/91] [players] Use default players rather than hard coded @@ -3317,7 +3210,7 @@ index 57dfcdd..7be9799 100644 2.0.3 -From 3356fb94b4327136f3d129b5da292800da132104 Mon Sep 17 00:00:00 2001 +From 84cf2101dfa1f557eaf740523a7b107eeee7f3d7 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Sat, 11 Jan 2014 18:23:42 +0000 Subject: [PATCH 16/91] [rbp] Don't force dvdplayer for airplay @@ -3346,7 +3239,7 @@ index 80ea552..497898f 100644 2.0.3 -From 9f9943791dbf45fbc1840401267d2c0ac0b0ad02 Mon Sep 17 00:00:00 2001 +From b33ca38db5ac06bfe590b5d32d5a06e7b277bd7c Mon Sep 17 00:00:00 2001 From: popcornmix Date: Mon, 13 Jan 2014 13:11:06 +0000 Subject: [PATCH 17/91] [rbp] Give plugins omxplayer when they request @@ -3376,7 +3269,7 @@ index dfdca99..2a819ef 100644 2.0.3 -From b88787af4763a30824662a5a85dedc60f3758145 Mon Sep 17 00:00:00 2001 +From 10aebcf03045706dbab09edf04f1e9bfe5c826f1 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Tue, 14 Jan 2014 18:04:07 +0000 Subject: [PATCH 18/91] [rbp] Allow ALSA to be chosen in addition to Pi sink @@ -3470,7 +3363,7 @@ index e42d973..715b4f1 100644 2.0.3 -From 3b4bba3c3e631304432e64dff12897329e589003 Mon Sep 17 00:00:00 2001 +From 1f40508161e1e1f5f89eb45fe030569f834d7aca Mon Sep 17 00:00:00 2001 From: popcornmix Date: Thu, 16 Jan 2014 01:39:29 +0000 Subject: [PATCH 19/91] [omxcodec] Add hardware decode to dvdplayer for Pi @@ -5953,10 +5846,10 @@ index e06c41d..9079c13 100644 // defined(HAVE_LIBOPENMAX) diff --git a/xbmc/cores/dvdplayer/DVDPlayer.cpp b/xbmc/cores/dvdplayer/DVDPlayer.cpp -index 76e3c07..46569de 100644 +index cbdd299..5da4608 100644 --- a/xbmc/cores/dvdplayer/DVDPlayer.cpp +++ b/xbmc/cores/dvdplayer/DVDPlayer.cpp -@@ -2962,7 +2962,9 @@ bool CDVDPlayer::OpenVideoStream(CDVDStreamInfo& hint, bool reset) +@@ -2958,7 +2958,9 @@ bool CDVDPlayer::OpenVideoStream(CDVDStreamInfo& hint, bool reset) hint.aspect = aspect; hint.forced_aspect = true; } @@ -5967,7 +5860,7 @@ index 76e3c07..46569de 100644 CDVDInputStream::IMenus* pMenus = dynamic_cast(m_pInputStream); diff --git a/xbmc/cores/dvdplayer/DVDPlayerVideo.cpp b/xbmc/cores/dvdplayer/DVDPlayerVideo.cpp -index be532ec..7403fd4 100644 +index ac78f18..5fdd63b 100644 --- a/xbmc/cores/dvdplayer/DVDPlayerVideo.cpp +++ b/xbmc/cores/dvdplayer/DVDPlayerVideo.cpp @@ -324,6 +324,9 @@ void CDVDPlayerVideo::Process() @@ -6020,10 +5913,10 @@ index be532ec..7403fd4 100644 // we need to let decoder release any picture retained resources. diff --git a/xbmc/linux/OMXCore.cpp b/xbmc/linux/OMXCore.cpp -index 6e7d9a9..99e407a 100644 +index 4ae29ba..6cc4970 100644 --- a/xbmc/linux/OMXCore.cpp +++ b/xbmc/linux/OMXCore.cpp -@@ -460,7 +460,12 @@ void COMXCoreComponent::FlushInput() +@@ -431,7 +431,12 @@ void COMXCoreComponent::FlushInput() CLog::Log(LOGERROR, "COMXCoreComponent::FlushInput - Error on component %s omx_err(0x%08x)", m_componentName.c_str(), (int)omx_err); } @@ -6037,7 +5930,7 @@ index 6e7d9a9..99e407a 100644 } void COMXCoreComponent::FlushOutput() -@@ -477,7 +482,12 @@ void COMXCoreComponent::FlushOutput() +@@ -448,7 +453,12 @@ void COMXCoreComponent::FlushOutput() CLog::Log(LOGERROR, "COMXCoreComponent::FlushOutput - Error on component %s omx_err(0x%08x)", m_componentName.c_str(), (int)omx_err); } @@ -6051,7 +5944,7 @@ index 6e7d9a9..99e407a 100644 } // timeout in milliseconds -@@ -1149,7 +1159,12 @@ OMX_STATETYPE COMXCoreComponent::GetState() +@@ -1120,7 +1130,12 @@ OMX_STATETYPE COMXCoreComponent::GetState() const OMX_STATETYPE state; @@ -6065,7 +5958,7 @@ index 6e7d9a9..99e407a 100644 return state; } -@@ -1307,6 +1322,8 @@ OMX_ERRORTYPE COMXCoreComponent::DisablePort(unsigned int port, bool wait) +@@ -1278,6 +1293,8 @@ OMX_ERRORTYPE COMXCoreComponent::DisablePort(unsigned int port, bool wait) OMX_ERRORTYPE COMXCoreComponent::UseEGLImage(OMX_BUFFERHEADERTYPE** ppBufferHdr, OMX_U32 nPortIndex, OMX_PTR pAppPrivate, void* eglImage) { @@ -6074,7 +5967,7 @@ index 6e7d9a9..99e407a 100644 OMX_ERRORTYPE omx_err = OMX_ErrorNone; if(!m_handle) -@@ -1383,8 +1400,21 @@ OMX_ERRORTYPE COMXCoreComponent::UseEGLImage(OMX_BUFFERHEADERTYPE** ppBufferHdr, +@@ -1354,8 +1371,21 @@ OMX_ERRORTYPE COMXCoreComponent::UseEGLImage(OMX_BUFFERHEADERTYPE** ppBufferHdr, return omx_err; } @@ -6097,7 +5990,7 @@ index 6e7d9a9..99e407a 100644 { OMX_ERRORTYPE omx_err; -@@ -1419,6 +1449,13 @@ bool COMXCoreComponent::Initialize( const std::string &component_name, OMX_INDEX +@@ -1390,6 +1420,13 @@ bool COMXCoreComponent::Initialize( const std::string &component_name, OMX_INDEX m_callbacks.EmptyBufferDone = &COMXCoreComponent::DecoderEmptyBufferDoneCallback; m_callbacks.FillBufferDone = &COMXCoreComponent::DecoderFillBufferDoneCallback; @@ -6112,7 +6005,7 @@ index 6e7d9a9..99e407a 100644 if(!m_handle) { diff --git a/xbmc/linux/OMXCore.h b/xbmc/linux/OMXCore.h -index 1efb313..b4c8626 100644 +index 05052e5..6ade180 100644 --- a/xbmc/linux/OMXCore.h +++ b/xbmc/linux/OMXCore.h @@ -107,7 +107,7 @@ class COMXCoreComponent @@ -6121,14 +6014,14 @@ index 1efb313..b4c8626 100644 - bool Initialize( const std::string &component_name, OMX_INDEXTYPE index); + bool Initialize( const std::string &component_name, OMX_INDEXTYPE index, OMX_CALLBACKTYPE *callbacks = NULL); - bool IsInitialized(); + bool IsInitialized() const { return m_handle != NULL; } bool Deinitialize(); -- 2.0.3 -From 1ec69376c05e82dbf279918b918b575cd1b98e81 Mon Sep 17 00:00:00 2001 +From f6ff245b61cc208a0e94d648d70c5bc2a53ba8a3 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Mon, 20 Jan 2014 16:03:40 +0000 Subject: [PATCH 20/91] [omxcodec] Enable for dvd menus @@ -6156,7 +6049,7 @@ index d58067c..f3fd3e2 100644 2.0.3 -From 61049397cfc410e55206237c051ae04837375b3a Mon Sep 17 00:00:00 2001 +From d2422910b697f3fb3cb725e1fc9e48eb778b8e1e Mon Sep 17 00:00:00 2001 From: popcornmix Date: Mon, 3 Feb 2014 22:27:44 +0000 Subject: [PATCH 21/91] [omxcodec] Add omx specific texture @@ -6237,7 +6130,7 @@ index 5a6a2be..52df291 100644 2.0.3 -From d3cc03382750db5fe020c8895a3fab1269ac0bce Mon Sep 17 00:00:00 2001 +From 7889fcd5a66465710f4df12bd903468016e07176 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Mon, 3 Feb 2014 22:50:43 +0000 Subject: [PATCH 22/91] [omxcodec] Add shared pointer to delay shutdown of @@ -6421,7 +6314,7 @@ index 9079c13..0975e8a 100644 2.0.3 -From 1f808e2d74e3a5f0efbbf2d0217a36834eb634e4 Mon Sep 17 00:00:00 2001 +From 309f45b9a429a9a58c9cc8feab9c6e8710a08c15 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Mon, 3 Feb 2014 23:11:31 +0000 Subject: [PATCH 23/91] [omxcodec] Fix for aspect ratio in non-square pixel @@ -6513,7 +6406,7 @@ index 0975e8a..9138a20 100644 2.0.3 -From adf3a0cc265d8e4618419443fe90cbc4d43e81fc Mon Sep 17 00:00:00 2001 +From dacc74e5fb68013be2631448af6d96885f55edb4 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Mon, 3 Feb 2014 23:19:22 +0000 Subject: [PATCH 24/91] [omxcodec] Report error when codec not enabled @@ -6561,7 +6454,7 @@ index 7e23c87..2ae722b 100644 2.0.3 -From bebf6f4a78f1a288db2e5e91df5b715aa10e3607 Mon Sep 17 00:00:00 2001 +From 599bafa6c92e0ba58029df285ac35409cde629ff Mon Sep 17 00:00:00 2001 From: popcornmix Date: Tue, 4 Feb 2014 17:29:37 +0000 Subject: [PATCH 25/91] [omxcodec] Add deinterlace support @@ -6801,7 +6694,7 @@ index 9138a20..c8ad4d8 100644 2.0.3 -From 4532cc66cccec8040b7b411add5e1e26486d50de Mon Sep 17 00:00:00 2001 +From 821adbd7f057085b5fbbe6e34376d205eb9a118a Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 5 Feb 2014 11:46:33 +0000 Subject: [PATCH 26/91] [rbp/settings] Allow av sync type to be enabled @@ -6812,7 +6705,7 @@ It works for dvdplayer 1 file changed, 7 deletions(-) diff --git a/system/settings/rbp.xml b/system/settings/rbp.xml -index 2b7d0a6..1429256 100644 +index 28e68eb..60086d8 100644 --- a/system/settings/rbp.xml +++ b/system/settings/rbp.xml @@ -1,13 +1,6 @@ @@ -6833,7 +6726,7 @@ index 2b7d0a6..1429256 100644 2.0.3 -From 02e7370589c59c32b8e1e49f28a7a7ba0418432a Mon Sep 17 00:00:00 2001 +From ec39f5cf99574273abeb58bc81fce46813853426 Mon Sep 17 00:00:00 2001 From: Ben Avison Date: Thu, 1 May 2014 16:28:39 +0100 Subject: [PATCH 27/91] Improved file buffering in CArchive @@ -6899,7 +6792,7 @@ index 6ed0f8f..8506d95 100644 2.0.3 -From e470e3d2af03025bfe5b4fd207f77088a0c7f444 Mon Sep 17 00:00:00 2001 +From 5529f7076d6613afa65446592f69637646cef812 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Sun, 16 Feb 2014 17:38:05 +0000 Subject: [PATCH 28/91] [omxcodec] Only do essential calls in texture thread @@ -7252,7 +7145,7 @@ index c8ad4d8..f234f6d 100644 2.0.3 -From ed7234baaac65ff66b6baca726ba39389245b634 Mon Sep 17 00:00:00 2001 +From 3d0f3216d45afc3198ed3ceae730a1cc3dffeccf Mon Sep 17 00:00:00 2001 From: popcornmix Date: Sat, 8 Mar 2014 15:36:06 +0000 Subject: [PATCH 29/91] [hifiberry] Hack: force it to be recognised as IEC958 @@ -7281,7 +7174,7 @@ index 8dee4bc..cc79e80 100644 2.0.3 -From b8caa3414fd080b711fc3ee90b69b74b03508abe Mon Sep 17 00:00:00 2001 +From 29d5854e951dfd8f3f0c8c15d2298acfaa62b127 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Tue, 11 Mar 2014 18:50:23 +0000 Subject: [PATCH 30/91] [dvdplayer] Use inexact seeking like omxplayer @@ -7291,7 +7184,7 @@ Subject: [PATCH 30/91] [dvdplayer] Use inexact seeking like omxplayer 1 file changed, 11 insertions(+) diff --git a/xbmc/cores/dvdplayer/DVDPlayer.cpp b/xbmc/cores/dvdplayer/DVDPlayer.cpp -index 46569de..56a44fc 100644 +index 5da4608..b40188a 100644 --- a/xbmc/cores/dvdplayer/DVDPlayer.cpp +++ b/xbmc/cores/dvdplayer/DVDPlayer.cpp @@ -1888,7 +1888,11 @@ void CDVDPlayer::CheckAutoSceneSkip() @@ -7318,7 +7211,7 @@ index 46569de..56a44fc 100644 /* * Each commercial break is only skipped once so poorly detected commercial breaks can be * manually re-entered. Start and end are recorded to prevent looping and to allow seeking back -@@ -3099,9 +3107,12 @@ void CDVDPlayer::UpdateClockMaster() +@@ -3095,9 +3103,12 @@ void CDVDPlayer::UpdateClockMaster() void CDVDPlayer::FlushBuffers(bool queued, double pts, bool accurate) { double startpts; @@ -7335,7 +7228,7 @@ index 46569de..56a44fc 100644 2.0.3 -From ae571bf6acddebb8e4bf9451b9efbeb92f8da03e Mon Sep 17 00:00:00 2001 +From ab4401e16997d86be9ade4d16c2fe1a2a1b05b16 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Mon, 7 Apr 2014 18:19:32 +0100 Subject: [PATCH 31/91] [rbp/omxplayer] When opening a stream don't try to @@ -7365,7 +7258,7 @@ index e9ba7d3..0fdc3c2 100644 2.0.3 -From 35f66c8c98df0bfeca8007897d72f6978c05f5d8 Mon Sep 17 00:00:00 2001 +From 24078afd12004d5dacde1ba51bfddffe83fd6ee4 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Mon, 7 Apr 2014 15:28:57 +0100 Subject: [PATCH 32/91] [omxcodec] Clamp video texture at edges to avoid image @@ -7392,7 +7285,7 @@ index 51f56aa..2929a37 100644 2.0.3 -From 6bf06aad561e9508288eed5b5f889cfccaf39acd Mon Sep 17 00:00:00 2001 +From 266e8a53b98276ca31936c3f5f44ded21fbba0a9 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Sun, 30 Mar 2014 15:54:34 +0100 Subject: [PATCH 33/91] [omxplayer] Make the sharpness control act as a @@ -7404,11 +7297,11 @@ This fixes scaling kernel as Mitchell Netravali, and varies sharpness over range 1 file changed, 338 insertions(+) diff --git a/xbmc/cores/omxplayer/OMXPlayer.cpp b/xbmc/cores/omxplayer/OMXPlayer.cpp -index b135741..a03df1d 100644 +index e7a39fa..60ecf9a 100644 --- a/xbmc/cores/omxplayer/OMXPlayer.cpp +++ b/xbmc/cores/omxplayer/OMXPlayer.cpp -@@ -1042,6 +1042,334 @@ bool COMXPlayer::IsBetterStream(COMXCurrentStream& current, CDemuxStream* stream - return false; +@@ -1043,6 +1043,334 @@ void CDVDPlayer::CheckBetterStream(CCurrentStream& current, CDemuxStream* stream + OpenStream(current, stream->iId, stream->source); } +static void SetSharpness(float sharpness) @@ -7739,10 +7632,10 @@ index b135741..a03df1d 100644 + } +} + - void COMXPlayer::Process() + void CDVDPlayer::Process() { bool bOmxWaitVideo = false; -@@ -1174,6 +1502,8 @@ void COMXPlayer::Process() +@@ -1175,6 +1503,8 @@ void CDVDPlayer::Process() SetCaching(CACHESTATE_FLUSH); EDEINTERLACEMODE current_deinterlace = CMediaSettings::Get().GetCurrentVideoSettings().m_DeinterlaceMode; @@ -7751,7 +7644,7 @@ index b135741..a03df1d 100644 while (!m_bAbortRequest) { -@@ -1205,6 +1535,13 @@ void COMXPlayer::Process() +@@ -1205,6 +1535,13 @@ void CDVDPlayer::Process() current_deinterlace = CMediaSettings::Get().GetCurrentVideoSettings().m_DeinterlaceMode; } @@ -7762,22 +7655,22 @@ index b135741..a03df1d 100644 + SetSharpness(current_sharpness); + } + - m_video_fifo = (int)(100.0*(m_omxPlayerVideo.GetDecoderBufferSize()-m_omxPlayerVideo.GetDecoderFreeSpace())/m_omxPlayerVideo.GetDecoderBufferSize()); - m_audio_fifo = (int)(100.0*audio_fifo/m_omxPlayerAudio.GetCacheTotal()); + m_video_fifo = (int)(100.0*(m_dvdPlayerVideo.GetDecoderBufferSize()-m_dvdPlayerVideo.GetDecoderFreeSpace())/m_dvdPlayerVideo.GetDecoderBufferSize()); + m_audio_fifo = (int)(100.0*audio_fifo/m_dvdPlayerAudio.GetCacheTotal()); -@@ -4552,6 +4889,7 @@ void COMXPlayer::GetRenderFeatures(std::vector &renderFeatures) +@@ -4398,6 +4735,7 @@ void CDVDPlayer::GetRenderFeatures(std::vector &renderFeatures) renderFeatures.push_back(RENDERFEATURE_CROP); renderFeatures.push_back(RENDERFEATURE_PIXEL_RATIO); renderFeatures.push_back(RENDERFEATURE_ZOOM); + renderFeatures.push_back(RENDERFEATURE_SHARPNESS); } - void COMXPlayer::GetDeinterlaceMethods(std::vector &deinterlaceMethods) + void CDVDPlayer::GetDeinterlaceMethods(std::vector &deinterlaceMethods) -- 2.0.3 -From c3d61fa6a25437e7cbce78efaf22dbebe4bdf3d7 Mon Sep 17 00:00:00 2001 +From 86ef8eb6091d0b614505382d67873dc3b02dd42e Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 16 Apr 2014 21:18:06 +0100 Subject: [PATCH 34/91] [omxplayer] Don't propagate 3d flags based on supported @@ -7788,10 +7681,10 @@ Subject: [PATCH 34/91] [omxplayer] Don't propagate 3d flags based on supported 1 file changed, 4 insertions(+), 25 deletions(-) diff --git a/xbmc/cores/omxplayer/OMXPlayerVideo.cpp b/xbmc/cores/omxplayer/OMXPlayerVideo.cpp -index af439e7..77dad37 100644 +index af71235..0514e78 100644 --- a/xbmc/cores/omxplayer/OMXPlayerVideo.cpp +++ b/xbmc/cores/omxplayer/OMXPlayerVideo.cpp -@@ -747,36 +747,15 @@ void OMXPlayerVideo::ResolutionUpdateCallBack(uint32_t width, uint32_t height, f +@@ -753,36 +753,15 @@ void OMXPlayerVideo::ResolutionUpdateCallBack(uint32_t width, uint32_t height, f unsigned flags = 0; ERenderFormat format = RENDER_FMT_BYPASS; @@ -7836,7 +7729,7 @@ index af439e7..77dad37 100644 2.0.3 -From 2622b2352fd1cda164f189f12f8dd3879ba699b2 Mon Sep 17 00:00:00 2001 +From 4861ea3e10de834875867c4badcdfb98a7eaa6dc Mon Sep 17 00:00:00 2001 From: popcornmix Date: Thu, 17 Apr 2014 13:00:52 +0100 Subject: [PATCH 35/91] [graphics] Don't set stereo mode based on resolution @@ -7883,7 +7776,7 @@ index 5bffdf5..7e4fdd4 100644 2.0.3 -From c08464740809cabfd8fccde6e2ef72557c0e84a8 Mon Sep 17 00:00:00 2001 +From 86493847b7198a719e8512b1528b3381d6ac1056 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Thu, 17 Apr 2014 13:01:51 +0100 Subject: [PATCH 36/91] [graphics] Allow switching to a more suitable 3D @@ -7976,7 +7869,7 @@ index 0a27643..df55e92 100644 2.0.3 -From 5ad6d7bc52df9cd188304d927fca51d3c3ed1701 Mon Sep 17 00:00:00 2001 +From 137035fb6a2333d2867f17ce0f0ae93e25f2638e Mon Sep 17 00:00:00 2001 From: popcornmix Date: Thu, 17 Apr 2014 13:38:55 +0100 Subject: [PATCH 37/91] [3D] Support switching to 3D resolutions @@ -8064,7 +7957,7 @@ index 83c3adb..8076e76 100644 2.0.3 -From 4c5f850d840fe2982c803d88763d0273fc6d66a8 Mon Sep 17 00:00:00 2001 +From cb0d9b2df5add8e3a0a600bb58ec04886400bfdc Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 23 Apr 2014 00:05:07 +0100 Subject: [PATCH 38/91] [graphics] Make pixel ratio for 3d modes consistent @@ -8216,10 +8109,10 @@ index df55e92..c77f2ff 100644 /* \brief Get UI scaling information from a given resolution to the screen resolution. Takes account of overscan and UI zooming. diff --git a/xbmc/windowing/egl/EGLNativeTypeRaspberryPI.cpp b/xbmc/windowing/egl/EGLNativeTypeRaspberryPI.cpp -index a9c51ca..a3edf0e 100644 +index c58c28a..bf1e589 100644 --- a/xbmc/windowing/egl/EGLNativeTypeRaspberryPI.cpp +++ b/xbmc/windowing/egl/EGLNativeTypeRaspberryPI.cpp -@@ -448,15 +448,9 @@ bool CEGLNativeTypeRaspberryPI::ProbeResolutions(std::vector &r +@@ -449,15 +449,9 @@ bool CEGLNativeTypeRaspberryPI::ProbeResolutions(std::vector &r m_desktopRes.fPixelRatio = get_display_aspect_ratio((HDMI_ASPECT_T)tv_state.display.hdmi.display_options.aspect) / ((float)m_desktopRes.iScreenWidth / (float)m_desktopRes.iScreenHeight); // Also add 3D flags if (tv_state.display.hdmi.format_3d == HDMI_3D_FORMAT_SBS_HALF) @@ -8235,7 +8128,7 @@ index a9c51ca..a3edf0e 100644 HDMI_PROPERTY_PARAM_T property; property.property = HDMI_PROPERTY_PIXEL_CLOCK_TYPE; vc_tv_hdmi_get_property(&property); -@@ -599,7 +593,6 @@ void CEGLNativeTypeRaspberryPI::GetSupportedModes(HDMI_RES_GROUP_T group, std::v +@@ -600,7 +594,6 @@ void CEGLNativeTypeRaspberryPI::GetSupportedModes(HDMI_RES_GROUP_T group, std::v RESOLUTION_INFO res2 = res; res2.dwFlags |= D3DPRESENTFLAG_MODE3DSBS; res2.fPixelRatio = get_display_aspect_ratio((HDMI_ASPECT_T)tv->aspect_ratio) / ((float)res2.iScreenWidth / (float)res2.iScreenHeight); @@ -8243,7 +8136,7 @@ index a9c51ca..a3edf0e 100644 res2.iSubtitles = (int)(0.965 * res2.iHeight); AddUniqueResolution(res2, resolutions); -@@ -615,7 +608,6 @@ void CEGLNativeTypeRaspberryPI::GetSupportedModes(HDMI_RES_GROUP_T group, std::v +@@ -616,7 +609,6 @@ void CEGLNativeTypeRaspberryPI::GetSupportedModes(HDMI_RES_GROUP_T group, std::v RESOLUTION_INFO res2 = res; res2.dwFlags |= D3DPRESENTFLAG_MODE3DTB; res2.fPixelRatio = get_display_aspect_ratio((HDMI_ASPECT_T)tv->aspect_ratio) / ((float)res2.iScreenWidth / (float)res2.iScreenHeight); @@ -8255,7 +8148,7 @@ index a9c51ca..a3edf0e 100644 2.0.3 -From e111f531ab9f91b4e9efd2f9c44b1a0b51bce725 Mon Sep 17 00:00:00 2001 +From fba69e34eb89cfcc7e2683d568cba80f680c8e81 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Tue, 22 Apr 2014 12:23:23 +0100 Subject: [PATCH 39/91] [omxplayer] Make dvdplayer the default for dvd images @@ -8280,7 +8173,7 @@ index 77c6a15..51c0daf 100644 2.0.3 -From d959db636466ee2d106e71b0454f96516dc0f240 Mon Sep 17 00:00:00 2001 +From 85dd9e0aabf0169c3ac0a156ddb8428a17be6e32 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Sat, 26 Apr 2014 17:27:52 +0100 Subject: [PATCH 40/91] [cec] Don't suspend pi on tv switch off - it can't wake @@ -8307,7 +8200,7 @@ index a906628..9b5271a 100644 2.0.3 -From 2fa5cb21ed3d16cadf7aef8aa38e26c407b3676f Mon Sep 17 00:00:00 2001 +From 562b683026b3d9802c6c2dace7de21bb354e6f1e Mon Sep 17 00:00:00 2001 From: popcornmix Date: Thu, 27 Jun 2013 01:25:57 +0100 Subject: [PATCH 42/91] [rbp/omxplayer] Do we need discontinuity handling? @@ -8318,12 +8211,12 @@ So far I've not seen what this is needed for and it does cause problems for some 1 file changed, 1 insertion(+) diff --git a/xbmc/cores/omxplayer/OMXPlayer.cpp b/xbmc/cores/omxplayer/OMXPlayer.cpp -index a03df1d..26e2328 100644 +index 60ecf9a..16417b6 100644 --- a/xbmc/cores/omxplayer/OMXPlayer.cpp +++ b/xbmc/cores/omxplayer/OMXPlayer.cpp -@@ -2382,6 +2382,7 @@ static void UpdateLimits(double& minimum, double& maximum, double dts) +@@ -2351,6 +2351,7 @@ static void UpdateLimits(double& minimum, double& maximum, double dts) - void COMXPlayer::CheckContinuity(COMXCurrentStream& current, DemuxPacket* pPacket) + void CDVDPlayer::CheckContinuity(CCurrentStream& current, DemuxPacket* pPacket) { +return; if (m_playSpeed < DVD_PLAYSPEED_PAUSE) @@ -8333,7 +8226,7 @@ index a03df1d..26e2328 100644 2.0.3 -From e64733a00d700984a63cb597876dfb967e187816 Mon Sep 17 00:00:00 2001 +From 20de945594f9bd63ff1131ac90ece60f7d7e3881 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Thu, 24 Oct 2013 00:53:26 +0100 Subject: [PATCH 43/91] [rbp/omxplayer] Avoid marking non-monotonic timestamps @@ -8346,10 +8239,10 @@ all subsequent timestamps will be marked unknown causing out of sync. 1 file changed, 2 insertions(+), 14 deletions(-) diff --git a/xbmc/cores/omxplayer/OMXAudio.cpp b/xbmc/cores/omxplayer/OMXAudio.cpp -index 77731a9..5f9d028 100644 +index a2f9b0c..c0c3a3f 100644 --- a/xbmc/cores/omxplayer/OMXAudio.cpp +++ b/xbmc/cores/omxplayer/OMXAudio.cpp -@@ -1210,22 +1210,10 @@ unsigned int COMXAudio::AddPackets(const void* data, unsigned int len, double dt +@@ -1211,22 +1211,10 @@ unsigned int COMXAudio::AddPackets(const void* data, unsigned int len, double dt } else { @@ -8378,7 +8271,7 @@ index 77731a9..5f9d028 100644 2.0.3 -From c262c444e8abfc42b7a13aec596bb6bbea105411 Mon Sep 17 00:00:00 2001 +From e63de20cabe6f3f84d8d63879a9ab2e5dbf0f64a Mon Sep 17 00:00:00 2001 From: popcornmix Date: Fri, 13 Dec 2013 16:25:23 +0000 Subject: [PATCH 45/91] Add time taken to resample to log @@ -8425,7 +8318,7 @@ index 01aafe3..5ab83a2 100644 2.0.3 -From 396aa6a397de9d2f611b2ff60daaa162aaa516a2 Mon Sep 17 00:00:00 2001 +From 289d977ef08d7e4f17856b16f12e09f9d99e942f Mon Sep 17 00:00:00 2001 From: popcornmix Date: Sat, 14 Dec 2013 16:55:05 +0000 Subject: [PATCH 46/91] logging: Add microsecond timer to log messages @@ -8489,7 +8382,7 @@ index dd6ef26..8edf2fd 100644 2.0.3 -From 84a0671116bca13f8ce2aba7e1ab0a79e663596f Mon Sep 17 00:00:00 2001 +From 6026ce07f260adea5f36f41d80c8ad4575523909 Mon Sep 17 00:00:00 2001 From: Jonathan Marshall Date: Sat, 2 Nov 2013 23:49:17 +1300 Subject: [PATCH 47/91] adds GetTvShowSeasons @@ -8500,10 +8393,10 @@ Subject: [PATCH 47/91] adds GetTvShowSeasons 2 files changed, 25 insertions(+), 6 deletions(-) diff --git a/xbmc/video/VideoDatabase.cpp b/xbmc/video/VideoDatabase.cpp -index 2abe9c4..9755390 100644 +index 796d8f3..7b28f94 100644 --- a/xbmc/video/VideoDatabase.cpp +++ b/xbmc/video/VideoDatabase.cpp -@@ -4091,7 +4091,7 @@ bool CVideoDatabase::RemoveArtForItem(int mediaId, const MediaType &mediaType, c +@@ -4108,7 +4108,7 @@ bool CVideoDatabase::RemoveArtForItem(int mediaId, const MediaType &mediaType, c return result; } @@ -8512,7 +8405,7 @@ index 2abe9c4..9755390 100644 { try { -@@ -4102,19 +4102,37 @@ bool CVideoDatabase::GetTvShowSeasonArt(int showId, map +@@ -4119,19 +4119,37 @@ bool CVideoDatabase::GetTvShowSeasonArt(int showId, map CStdString sql = PrepareSQL("select idSeason,season from seasons where idShow=%i", showId); m_pDS2->query(sql.c_str()); @@ -8571,7 +8464,7 @@ index 492eebb..f6026c2 100644 2.0.3 -From a60ad11b756aa6ac87c0d6c21d97408fdf587648 Mon Sep 17 00:00:00 2001 +From 562a61b7178897baff6d981909deb87448c1199d Mon Sep 17 00:00:00 2001 From: Jonathan Marshall Date: Sat, 2 Nov 2013 23:50:10 +1300 Subject: [PATCH 48/91] move AddSeason() public. @@ -8604,7 +8497,7 @@ index f6026c2..a7acea3 100644 2.0.3 -From 08bbf693607b2771a6501a04fc5b1bccc80e2ca3 Mon Sep 17 00:00:00 2001 +From 641374b5df817a5cb5813352b65e67a7849e6742 Mon Sep 17 00:00:00 2001 From: Jonathan Marshall Date: Sat, 2 Nov 2013 23:48:24 +1300 Subject: [PATCH 49/91] adds GetArt function to (video) scraper, allowing art @@ -8618,7 +8511,7 @@ Subject: [PATCH 49/91] adds GetArt function to (video) scraper, allowing art 4 files changed, 53 insertions(+) diff --git a/xbmc/addons/Scraper.cpp b/xbmc/addons/Scraper.cpp -index 225220b..4f93865 100644 +index b9991ae..240f46a 100644 --- a/xbmc/addons/Scraper.cpp +++ b/xbmc/addons/Scraper.cpp @@ -925,6 +925,44 @@ EPISODELIST CScraper::GetEpisodeList(XFILE::CCurlFile &fcurl, const CScraperUrl @@ -8725,7 +8618,7 @@ index 22ac229..75bc341 100644 2.0.3 -From 97d91007a568f406b2548d6e185c1bab4b32ad62 Mon Sep 17 00:00:00 2001 +From e2ab15d9d9e46e54719ee50d1d978bf9b355650d Mon Sep 17 00:00:00 2001 From: Jonathan Marshall Date: Sat, 2 Nov 2013 23:53:14 +1300 Subject: [PATCH 50/91] refresh season art if a new season is found that isn't @@ -8835,7 +8728,7 @@ index 7da1bf2..c764e20 100644 2.0.3 -From ff2f9ab9ab9db14dfadbc2ef1209837255bc7205 Mon Sep 17 00:00:00 2001 +From 31ea9ad54afd362c4837ceb9cbdcd3508c17a0e9 Mon Sep 17 00:00:00 2001 From: Jonathan Marshall Date: Sat, 2 Nov 2013 23:53:34 +1300 Subject: [PATCH 51/91] REMOVEME: updated thetvdb.com scraper to support art @@ -8949,7 +8842,7 @@ index 39e604d..60a0e96 100644 2.0.3 -From d3bdbc493355c7ddff350a64f97e63e8501e49bd Mon Sep 17 00:00:00 2001 +From 7f6ba0f1d583378a7c3b4d4b5e81cb9eddf586d7 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Sat, 22 Mar 2014 16:40:01 +0000 Subject: [PATCH 52/91] Enable PYTHONOPTIMIZE for Pi @@ -8977,7 +8870,7 @@ index cba242d..35a4509 100644 2.0.3 -From 41e0185005e6a9382e54c06078274f662d8347d9 Mon Sep 17 00:00:00 2001 +From 0e411aebdf07c9abeed4f5fca499003942892c62 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Mon, 28 Apr 2014 18:07:45 +0100 Subject: [PATCH 53/91] [rpi] Make ActiveAE thread higher priority to make @@ -9008,7 +8901,7 @@ index 08346d2..e302098 100644 2.0.3 -From b011b502198438558b08134655eff30ca7309710 Mon Sep 17 00:00:00 2001 +From fe4d2f27a7005e66c32157cd7238cbad6525944f Mon Sep 17 00:00:00 2001 From: popcornmix Date: Tue, 29 Apr 2014 15:23:22 +0100 Subject: [PATCH 54/91] [ffmpeg] Speed up wtv index creation @@ -9100,7 +8993,7 @@ index 0000000..8f5f989 2.0.3 -From a86b9aea8d67d3f1adf318dec1425978291ba29f Mon Sep 17 00:00:00 2001 +From eb9f538f829ad218620c21e478daf6b9ac90f927 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Tue, 8 Jul 2014 15:18:47 +0100 Subject: [PATCH 55/91] ffmpeg: Add armv6 acceleration for imdct/fft used by @@ -9997,7 +9890,7 @@ index 0000000..db0118f 2.0.3 -From 3f8638bccf86282d7e532f8d6644861ac0c23404 Mon Sep 17 00:00:00 2001 +From a83ea82753c5ef561bfe1d215d0dfdc709b2b57b Mon Sep 17 00:00:00 2001 From: popcornmix Date: Mon, 12 May 2014 23:06:43 +0100 Subject: [PATCH 56/91] [omxcodec] Updates to work better with dropping and @@ -10292,7 +10185,7 @@ index f234f6d..adf53b5 100644 2.0.3 -From 05392f7c7ba58bacfc2360e3ee1159afa1a4c29d Mon Sep 17 00:00:00 2001 +From 712f9030e096352fcdc8f8e6a10b86c6f792b92f Mon Sep 17 00:00:00 2001 From: popcornmix Date: Fri, 11 Apr 2014 16:12:27 +0100 Subject: [PATCH 57/91] [omxplayer] Add ability to log more timestamp info in @@ -10308,7 +10201,7 @@ Subject: [PATCH 57/91] [omxplayer] Add ability to log more timestamp info in 6 files changed, 44 insertions(+), 34 deletions(-) diff --git a/language/English/strings.po b/language/English/strings.po -index 898788e..eb91a45 100755 +index a78c892..2679312 100755 --- a/language/English/strings.po +++ b/language/English/strings.po @@ -2880,6 +2880,11 @@ msgctxt "#679" @@ -10336,12 +10229,12 @@ index 4bf5d83..3fb7cc3 100644 #ifdef __GNUC__ #define ATTRIB_LOG_FORMAT __attribute__((format(printf,3,4))) diff --git a/xbmc/cores/omxplayer/OMXPlayer.cpp b/xbmc/cores/omxplayer/OMXPlayer.cpp -index 26e2328..c7c5933 100644 +index 16417b6..87296cd 100644 --- a/xbmc/cores/omxplayer/OMXPlayer.cpp +++ b/xbmc/cores/omxplayer/OMXPlayer.cpp -@@ -1545,27 +1545,28 @@ void COMXPlayer::Process() - m_video_fifo = (int)(100.0*(m_omxPlayerVideo.GetDecoderBufferSize()-m_omxPlayerVideo.GetDecoderFreeSpace())/m_omxPlayerVideo.GetDecoderBufferSize()); - m_audio_fifo = (int)(100.0*audio_fifo/m_omxPlayerAudio.GetCacheTotal()); +@@ -1545,27 +1545,28 @@ void CDVDPlayer::Process() + m_video_fifo = (int)(100.0*(m_dvdPlayerVideo.GetDecoderBufferSize()-m_dvdPlayerVideo.GetDecoderFreeSpace())/m_dvdPlayerVideo.GetDecoderBufferSize()); + m_audio_fifo = (int)(100.0*audio_fifo/m_dvdPlayerAudio.GetCacheTotal()); - #ifdef _DEBUG - static unsigned count; @@ -10349,45 +10242,45 @@ index 26e2328..c7c5933 100644 + if (g_advancedSettings.CanLogComponent(LOGOMXPLAYER)) { - char response[80]; -- if (m_omxPlayerVideo.GetDecoderBufferSize() && m_omxPlayerAudio.GetCacheTotal()) +- if (m_dvdPlayerVideo.GetDecoderBufferSize() && m_dvdPlayerAudio.GetCacheTotal()) - vc_gencmd(response, sizeof response, "render_bar 4 video_fifo %d %d %d %d", - m_video_fifo, -- (int)(100.0*video_fifo/m_omxPlayerAudio.GetCacheTotal()), +- (int)(100.0*video_fifo/m_dvdPlayerAudio.GetCacheTotal()), - 0, 100); -- if (m_omxPlayerAudio.GetCacheTotal()) +- if (m_dvdPlayerAudio.GetCacheTotal()) - vc_gencmd(response, sizeof response, "render_bar 5 audio_fifo %d %d %d %d", - m_audio_fifo, -- (int)(100.0*m_omxPlayerAudio.GetDelay()/m_omxPlayerAudio.GetCacheTotal()), +- (int)(100.0*m_dvdPlayerAudio.GetDelay()/m_dvdPlayerAudio.GetCacheTotal()), - 0, 100); - vc_gencmd(response, sizeof response, "render_bar 6 video_queue %d %d %d %d", -- m_omxPlayerVideo.GetLevel(), 0, 0, 100); +- m_dvdPlayerVideo.GetLevel(), 0, 0, 100); - vc_gencmd(response, sizeof response, "render_bar 7 audio_queue %d %d %d %d", -- m_omxPlayerAudio.GetLevel(), 0, 0, 100); +- m_dvdPlayerAudio.GetLevel(), 0, 0, 100); + static unsigned count; + if ((count++ & 7) == 0) + { + char response[80]; -+ if (m_omxPlayerVideo.GetDecoderBufferSize() && m_omxPlayerAudio.GetCacheTotal()) ++ if (m_dvdPlayerVideo.GetDecoderBufferSize() && m_dvdPlayerAudio.GetCacheTotal()) + vc_gencmd(response, sizeof response, "render_bar 4 video_fifo %d %d %d %d", + m_video_fifo, -+ (int)(100.0*video_fifo/m_omxPlayerAudio.GetCacheTotal()), ++ (int)(100.0*video_fifo/m_dvdPlayerAudio.GetCacheTotal()), + 0, 100); -+ if (m_omxPlayerAudio.GetCacheTotal()) ++ if (m_dvdPlayerAudio.GetCacheTotal()) + vc_gencmd(response, sizeof response, "render_bar 5 audio_fifo %d %d %d %d", + m_audio_fifo, -+ (int)(100.0*m_omxPlayerAudio.GetDelay()/m_omxPlayerAudio.GetCacheTotal()), ++ (int)(100.0*m_dvdPlayerAudio.GetDelay()/m_dvdPlayerAudio.GetCacheTotal()), + 0, 100); + vc_gencmd(response, sizeof response, "render_bar 6 video_queue %d %d %d %d", -+ m_omxPlayerVideo.GetLevel(), 0, 0, 100); ++ m_dvdPlayerVideo.GetLevel(), 0, 0, 100); + vc_gencmd(response, sizeof response, "render_bar 7 audio_queue %d %d %d %d", -+ m_omxPlayerAudio.GetLevel(), 0, 0, 100); ++ m_dvdPlayerAudio.GetLevel(), 0, 0, 100); + } } - #endif if (audio_pts != DVD_NOPTS_VALUE) { audio_fifo_low = m_HasAudio && audio_fifo < threshold; -@@ -1581,13 +1582,12 @@ void COMXPlayer::Process() +@@ -1581,13 +1582,12 @@ void CDVDPlayer::Process() if (!m_HasVideo && m_HasAudio) video_fifo_high = true; @@ -10396,22 +10289,22 @@ index 26e2328..c7c5933 100644 - m_stamp*1e-6, m_av_clock.OMXClockAdjustment()*1e-6, audio_pts*1e-6, video_pts*1e-6, m_av_clock.OMXIsPaused(), bOmxSentEOFs, not_accepts_data, m_playSpeed * (1.0f/DVD_PLAYSPEED_NORMAL), - audio_pts == DVD_NOPTS_VALUE ? 0.0:audio_fifo, video_pts == DVD_NOPTS_VALUE ? 0.0:video_fifo, m_threshold, - audio_fifo_low, audio_fifo_high, video_fifo_low, video_fifo_high, -- m_omxPlayerAudio.GetLevel(), m_omxPlayerVideo.GetLevel(), m_omxPlayerAudio.GetDelay(), (float)m_omxPlayerAudio.GetCacheTotal()); +- m_dvdPlayerAudio.GetLevel(), m_dvdPlayerVideo.GetLevel(), m_dvdPlayerAudio.GetDelay(), (float)m_dvdPlayerAudio.GetCacheTotal()); - #endif + if (g_advancedSettings.CanLogComponent(LOGOMXPLAYER)) + CLog::Log(LOGDEBUG, "%s - M:%.6f-%.6f (A:%.6f V:%.6f) PEF:%d%d%d S:%.2f A:%.2f V:%.2f/T:%.2f (A:%d%d V:%d%d) A:%d%% V:%d%% (%.2f,%.2f)", __FUNCTION__, + m_stamp*1e-6, m_av_clock.OMXClockAdjustment()*1e-6, audio_pts*1e-6, video_pts*1e-6, m_av_clock.OMXIsPaused(), bOmxSentEOFs, not_accepts_data, m_playSpeed * (1.0f/DVD_PLAYSPEED_NORMAL), + audio_pts == DVD_NOPTS_VALUE ? 0.0:audio_fifo, video_pts == DVD_NOPTS_VALUE ? 0.0:video_fifo, m_threshold, + audio_fifo_low, audio_fifo_high, video_fifo_low, video_fifo_high, -+ m_omxPlayerAudio.GetLevel(), m_omxPlayerVideo.GetLevel(), m_omxPlayerAudio.GetDelay(), (float)m_omxPlayerAudio.GetCacheTotal()); ++ m_dvdPlayerAudio.GetLevel(), m_dvdPlayerVideo.GetLevel(), m_dvdPlayerAudio.GetDelay(), (float)m_dvdPlayerAudio.GetCacheTotal()); if (TP(m_playSpeed)) { diff --git a/xbmc/cores/omxplayer/OMXPlayerAudio.cpp b/xbmc/cores/omxplayer/OMXPlayerAudio.cpp -index 4ed8d17..a4a491e 100644 +index c1b7a0d..37b544c 100644 --- a/xbmc/cores/omxplayer/OMXPlayerAudio.cpp +++ b/xbmc/cores/omxplayer/OMXPlayerAudio.cpp -@@ -366,10 +366,10 @@ void OMXPlayerAudio::Process() +@@ -364,10 +364,10 @@ void OMXPlayerAudio::Process() DemuxPacket* pPacket = ((CDVDMsgDemuxerPacket*)pMsg)->GetPacket(); bool bPacketDrop = ((CDVDMsgDemuxerPacket*)pMsg)->GetPacketDrop(); @@ -10427,7 +10320,7 @@ index 4ed8d17..a4a491e 100644 { // we are not running until something is cached in output device diff --git a/xbmc/cores/omxplayer/OMXPlayerVideo.cpp b/xbmc/cores/omxplayer/OMXPlayerVideo.cpp -index 77dad37..605ea80 100644 +index 0514e78..811f087 100644 --- a/xbmc/cores/omxplayer/OMXPlayerVideo.cpp +++ b/xbmc/cores/omxplayer/OMXPlayerVideo.cpp @@ -42,6 +42,7 @@ @@ -10438,7 +10331,7 @@ index 77dad37..605ea80 100644 #include "settings/MediaSettings.h" #include "cores/VideoRenderers/RenderFormats.h" #include "cores/VideoRenderers/RenderFlags.h" -@@ -452,10 +453,10 @@ void OMXPlayerVideo::Process() +@@ -450,10 +451,10 @@ void OMXPlayerVideo::Process() DemuxPacket* pPacket = ((CDVDMsgDemuxerPacket*)pMsg)->GetPacket(); bool bPacketDrop = ((CDVDMsgDemuxerPacket*)pMsg)->GetPacketDrop(); @@ -10471,7 +10364,7 @@ index 5f3f2d8..56f9783 100644 2.0.3 -From ecd8a92f31f515ae1bb00e4c0f4baac9a55d14e6 Mon Sep 17 00:00:00 2001 +From 1769861229b904c1a9a3992194f7a96713669621 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Mon, 7 Apr 2014 23:13:55 +0100 Subject: [PATCH 58/91] [omxplayer] Add ability to dump out audio/video data @@ -10486,7 +10379,7 @@ Subject: [PATCH 58/91] [omxplayer] Add ability to dump out audio/video data 5 files changed, 112 insertions(+) diff --git a/language/English/strings.po b/language/English/strings.po -index eb91a45..aeffd29 100755 +index 2679312..a03eb0b 100755 --- a/language/English/strings.po +++ b/language/English/strings.po @@ -2885,6 +2885,16 @@ msgctxt "#697" @@ -10520,10 +10413,10 @@ index 3fb7cc3..4d722a0 100644 #ifdef __GNUC__ #define ATTRIB_LOG_FORMAT __attribute__((format(printf,3,4))) diff --git a/xbmc/cores/omxplayer/OMXAudio.cpp b/xbmc/cores/omxplayer/OMXAudio.cpp -index 5f9d028..1bcc53e0 100644 +index c0c3a3f..5068017 100644 --- a/xbmc/cores/omxplayer/OMXAudio.cpp +++ b/xbmc/cores/omxplayer/OMXAudio.cpp -@@ -59,6 +59,49 @@ static const uint16_t AC3FSCod [] = {48000, 44100, 32000, 0}; +@@ -60,6 +60,49 @@ static const uint16_t AC3FSCod [] = {48000, 44100, 32000, 0}; static const uint16_t DTSFSCod [] = {0, 8000, 16000, 32000, 0, 0, 11025, 22050, 44100, 0, 0, 12000, 24000, 48000, 0, 0}; @@ -10573,7 +10466,7 @@ index 5f9d028..1bcc53e0 100644 ////////////////////////////////////////////////////////////////////// // Construction/Destruction ////////////////////////////////////////////////////////////////////// -@@ -866,6 +909,7 @@ bool COMXAudio::Initialize(AEAudioFormat format, OMXClock *clock, CDVDStreamInfo +@@ -867,6 +910,7 @@ bool COMXAudio::Initialize(AEAudioFormat format, OMXClock *clock, CDVDStreamInfo memcpy((unsigned char *)omx_buffer->pBuffer, &m_wave_header, omx_buffer->nFilledLen); omx_buffer->nFlags = OMX_BUFFERFLAG_CODECCONFIG | OMX_BUFFERFLAG_ENDOFFRAME; @@ -10581,7 +10474,7 @@ index 5f9d028..1bcc53e0 100644 omx_err = m_omx_decoder.EmptyThisBuffer(omx_buffer); if (omx_err != OMX_ErrorNone) { -@@ -898,6 +942,7 @@ bool COMXAudio::Initialize(AEAudioFormat format, OMXClock *clock, CDVDStreamInfo +@@ -899,6 +943,7 @@ bool COMXAudio::Initialize(AEAudioFormat format, OMXClock *clock, CDVDStreamInfo memcpy((unsigned char *)omx_buffer->pBuffer, m_extradata, omx_buffer->nFilledLen); omx_buffer->nFlags = OMX_BUFFERFLAG_CODECCONFIG | OMX_BUFFERFLAG_ENDOFFRAME; @@ -10589,7 +10482,7 @@ index 5f9d028..1bcc53e0 100644 omx_err = m_omx_decoder.EmptyThisBuffer(omx_buffer); if (omx_err != OMX_ErrorNone) { -@@ -934,6 +979,8 @@ bool COMXAudio::Deinitialize() +@@ -935,6 +980,8 @@ bool COMXAudio::Deinitialize() { CSingleLock lock (m_critSection); @@ -10598,7 +10491,7 @@ index 5f9d028..1bcc53e0 100644 if ( m_omx_tunnel_clock_analog.IsInitialized() ) m_omx_tunnel_clock_analog.Deestablish(); if ( m_omx_tunnel_clock_hdmi.IsInitialized() ) -@@ -1226,6 +1273,7 @@ unsigned int COMXAudio::AddPackets(const void* data, unsigned int len, double dt +@@ -1227,6 +1274,7 @@ unsigned int COMXAudio::AddPackets(const void* data, unsigned int len, double dt int nRetry = 0; while(true) { @@ -10606,7 +10499,7 @@ index 5f9d028..1bcc53e0 100644 omx_err = m_omx_decoder.EmptyThisBuffer(omx_buffer); if (omx_err == OMX_ErrorNone) { -@@ -1492,6 +1540,7 @@ void COMXAudio::SubmitEOS() +@@ -1493,6 +1541,7 @@ void COMXAudio::SubmitEOS() omx_buffer->nFlags = OMX_BUFFERFLAG_ENDOFFRAME | OMX_BUFFERFLAG_EOS | OMX_BUFFERFLAG_TIME_UNKNOWN; @@ -10719,7 +10612,7 @@ index 56f9783..627080b 100644 2.0.3 -From d082f29cf9fd77cf42b616c70d0ef92f3bf2eb8f Mon Sep 17 00:00:00 2001 +From 660fd3e724902110bf2e3250d1254d9cf07a91f0 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 28 May 2014 18:30:51 +0100 Subject: [PATCH 59/91] [omxcodec] Reduce GPU memory use by 2 video frames @@ -10757,7 +10650,7 @@ index 612ae21..494fdf5 100644 2.0.3 -From 65b6634eefc8b7ae614080e11fa17d158c792912 Mon Sep 17 00:00:00 2001 +From a972af14b596e85431e7fa252fbf2fe12ca974ed Mon Sep 17 00:00:00 2001 From: popcornmix Date: Fri, 30 May 2014 14:58:43 +0100 Subject: [PATCH 60/91] [settings] Experiment: Report DESKTOP resolution in @@ -10785,7 +10678,7 @@ index bb31f15..eae549b 100644 2.0.3 -From ecf3d0334c0c49d966bf60c330a7444e177fbc4e Mon Sep 17 00:00:00 2001 +From cc5c3093709ac78fa0c9f0b71414ea40d2b0a681 Mon Sep 17 00:00:00 2001 From: Matthias Kortstiege Date: Sun, 1 Jun 2014 18:47:20 +0200 Subject: [PATCH 61/91] changed: avoid useless filesytem io while searching for @@ -10796,7 +10689,7 @@ Subject: [PATCH 61/91] changed: avoid useless filesytem io while searching for 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/xbmc/Util.cpp b/xbmc/Util.cpp -index 3152a0f..9afa557 100644 +index 042c3f7..d8c50e8 100644 --- a/xbmc/Util.cpp +++ b/xbmc/Util.cpp @@ -1982,7 +1982,7 @@ void CUtil::ScanForExternalSubtitles(const std::string& strMovie, std::vector Date: Mon, 30 Dec 2013 12:02:14 +0000 Subject: [PATCH 62/91] [rbp] Hardware accelerated resampling @@ -11632,10 +11525,10 @@ index 5a45653..2733054 100644 m_format = format; m_sinkbuffer_sec_per_byte = 1.0 / (double)(m_format.m_frameSize * m_format.m_sampleRate); diff --git a/xbmc/linux/OMXCore.cpp b/xbmc/linux/OMXCore.cpp -index 99e407a..8d3c86a 100644 +index 6cc4970..2ac9b7e 100644 --- a/xbmc/linux/OMXCore.cpp +++ b/xbmc/linux/OMXCore.cpp -@@ -448,7 +448,7 @@ void COMXCoreComponent::FlushAll() +@@ -419,7 +419,7 @@ void COMXCoreComponent::FlushAll() void COMXCoreComponent::FlushInput() { @@ -11644,7 +11537,7 @@ index 99e407a..8d3c86a 100644 return; OMX_ERRORTYPE omx_err = OMX_ErrorNone; -@@ -470,7 +470,7 @@ void COMXCoreComponent::FlushInput() +@@ -441,7 +441,7 @@ void COMXCoreComponent::FlushInput() void COMXCoreComponent::FlushOutput() { @@ -11657,7 +11550,7 @@ index 99e407a..8d3c86a 100644 2.0.3 -From 4cf0b66a8c082d69e6a85a22dd4a9d3ab100d46d Mon Sep 17 00:00:00 2001 +From f142e58e1b88b61baa9f605e1b986cc35cd23bfc Mon Sep 17 00:00:00 2001 From: popcornmix Date: Sun, 1 Jun 2014 12:15:17 +0100 Subject: [PATCH 63/91] [resamplepi] Support planar formats @@ -11860,7 +11753,7 @@ index 9a1e549..1604030 100644 2.0.3 -From 2aa72c98339f05615b0d15e603253c4c39bfdfae Mon Sep 17 00:00:00 2001 +From 68b5c485d9a00787deaeb2e4da0723f4d4183d7d Mon Sep 17 00:00:00 2001 From: popcornmix Date: Sun, 15 Jun 2014 13:20:53 +0100 Subject: [PATCH 64/91] gles: Avoid crash when capturing snapshot when using @@ -11889,7 +11782,7 @@ index 2929a37..53873f6 100644 2.0.3 -From 4731bc65ec7c49a6aea68da0040cd089e8626bd3 Mon Sep 17 00:00:00 2001 +From ca2935c4933faa21cb10618750f82bc6e5a07868 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Mon, 16 Jun 2014 19:05:14 +0100 Subject: [PATCH 65/91] sqlite: Bump to 3080500 @@ -11917,7 +11810,7 @@ index 87f7eaa..8fe61e8 100644 2.0.3 -From 9fb2716be1ca6632b468dbc26ea3a59232ee1d3c Mon Sep 17 00:00:00 2001 +From c7c9cd989caf9c41c70c1dae8bb587df4eb059ba Mon Sep 17 00:00:00 2001 From: popcornmix Date: Mon, 16 Jun 2014 19:06:00 +0100 Subject: [PATCH 66/91] [experimental] Disable quiet-noise generation @@ -11950,7 +11843,7 @@ index 488a0df..d9f4a43 100644 2.0.3 -From 26e641ac233b2739943dcf55515c7ea5dcfe7e84 Mon Sep 17 00:00:00 2001 +From 9a0eb0ab99c78ed605336a8434fb564bd17d9aaa Mon Sep 17 00:00:00 2001 From: popcornmix Date: Mon, 16 Jun 2014 19:07:21 +0100 Subject: [PATCH 67/91] [omxcodec] Adjust asserts @@ -11992,7 +11885,7 @@ index 494fdf5..23aaa9f 100644 2.0.3 -From c05f93343df21d32734ae246a69b3383eb11d33b Mon Sep 17 00:00:00 2001 +From aaf052a53805336f9b78633044350955d9363241 Mon Sep 17 00:00:00 2001 From: macrule Date: Thu, 11 Apr 2013 18:24:42 +0200 Subject: [PATCH 68/91] Added some vc_tv_* functions that were missing in @@ -12033,7 +11926,7 @@ index b92fdb8..9c7e293 100644 2.0.3 -From 3757c0bda6b2ce593b75d4e37d157e00c8a75ab3 Mon Sep 17 00:00:00 2001 +From e9d75809a4c4ad769667ff5ec7052e79357c90af Mon Sep 17 00:00:00 2001 From: macrule Date: Thu, 11 Apr 2013 18:29:03 +0200 Subject: [PATCH 69/91] Added private utility function to map a float display @@ -12044,10 +11937,10 @@ Subject: [PATCH 69/91] Added private utility function to map a float display 1 file changed, 19 insertions(+) diff --git a/xbmc/windowing/egl/EGLNativeTypeRaspberryPI.cpp b/xbmc/windowing/egl/EGLNativeTypeRaspberryPI.cpp -index a3edf0e..5ae2b59 100644 +index bf1e589..518a87d 100644 --- a/xbmc/windowing/egl/EGLNativeTypeRaspberryPI.cpp +++ b/xbmc/windowing/egl/EGLNativeTypeRaspberryPI.cpp -@@ -410,6 +410,25 @@ static void SetResolutionString(RESOLUTION_INFO &res) +@@ -411,6 +411,25 @@ static void SetResolutionString(RESOLUTION_INFO &res) res.dwFlags & D3DPRESENTFLAG_MODE3DTB ? " 3DTB" : "", res.dwFlags & D3DPRESENTFLAG_MODE3DSBS ? " 3DSBS" : ""); } @@ -12077,7 +11970,7 @@ index a3edf0e..5ae2b59 100644 2.0.3 -From b24d221a0a8a0b697b8909e24e308d32f3b115e9 Mon Sep 17 00:00:00 2001 +From e127de5de4e3909cb8c00d41266cb91367e546d5 Mon Sep 17 00:00:00 2001 From: macrule Date: Thu, 11 Apr 2013 19:50:58 +0200 Subject: [PATCH 70/91] Changed SDTV resolutions to be treated similarly to @@ -12090,10 +11983,10 @@ Subject: [PATCH 70/91] Changed SDTV resolutions to be treated similarly to 2 files changed, 29 insertions(+), 8 deletions(-) diff --git a/xbmc/windowing/egl/EGLNativeTypeRaspberryPI.cpp b/xbmc/windowing/egl/EGLNativeTypeRaspberryPI.cpp -index 5ae2b59..712fe9c 100644 +index 518a87d..9dc39d5 100644 --- a/xbmc/windowing/egl/EGLNativeTypeRaspberryPI.cpp +++ b/xbmc/windowing/egl/EGLNativeTypeRaspberryPI.cpp -@@ -220,7 +220,7 @@ bool CEGLNativeTypeRaspberryPI::SetNativeResolution(const RESOLUTION_INFO &res) +@@ -221,7 +221,7 @@ bool CEGLNativeTypeRaspberryPI::SetNativeResolution(const RESOLUTION_INFO &res) DestroyDispmaxWindow(); @@ -12102,7 +11995,7 @@ index 5ae2b59..712fe9c 100644 { sem_init(&m_tv_synced, 0, 0); m_DllBcmHost->vc_tv_register_callback(CallbackTvServiceCallback, this); -@@ -274,6 +274,33 @@ bool CEGLNativeTypeRaspberryPI::SetNativeResolution(const RESOLUTION_INFO &res) +@@ -275,6 +275,33 @@ bool CEGLNativeTypeRaspberryPI::SetNativeResolution(const RESOLUTION_INFO &res) m_desktopRes = res; } @@ -12136,7 +12029,7 @@ index 5ae2b59..712fe9c 100644 m_dispman_display = m_DllBcmHost->vc_dispmanx_display_open(0); -@@ -439,8 +466,6 @@ bool CEGLNativeTypeRaspberryPI::ProbeResolutions(std::vector &r +@@ -440,8 +467,6 @@ bool CEGLNativeTypeRaspberryPI::ProbeResolutions(std::vector &r if(!m_DllBcmHost) return false; @@ -12145,7 +12038,7 @@ index 5ae2b59..712fe9c 100644 /* read initial desktop resolution before probe resolutions. * probing will replace the desktop resolution when it finds the same one. * we raplace it because probing will generate more detailed -@@ -483,7 +508,7 @@ bool CEGLNativeTypeRaspberryPI::ProbeResolutions(std::vector &r +@@ -484,7 +509,7 @@ bool CEGLNativeTypeRaspberryPI::ProbeResolutions(std::vector &r m_desktopRes.iHeight = tv_state.display.sdtv.height; m_desktopRes.iScreenWidth = tv_state.display.sdtv.width; m_desktopRes.iScreenHeight= tv_state.display.sdtv.height; @@ -12154,7 +12047,7 @@ index 5ae2b59..712fe9c 100644 m_desktopRes.fRefreshRate = (float)tv_state.display.sdtv.frame_rate; m_desktopRes.fPixelRatio = get_display_aspect_ratio((SDTV_ASPECT_T)tv_state.display.sdtv.display_options.aspect) / ((float)m_desktopRes.iScreenWidth / (float)m_desktopRes.iScreenHeight); } -@@ -506,9 +531,6 @@ bool CEGLNativeTypeRaspberryPI::ProbeResolutions(std::vector &r +@@ -507,9 +532,6 @@ bool CEGLNativeTypeRaspberryPI::ProbeResolutions(std::vector &r CLog::Log(LOGDEBUG, "EGL probe resolution %s:%x\n", m_desktopRes.strMode.c_str(), m_desktopRes.dwFlags); } @@ -12180,7 +12073,7 @@ index 59401f5..a0acb1a 100644 2.0.3 -From 5479e1f2348b96d308f0b97d5fc5343c37c74e0e Mon Sep 17 00:00:00 2001 +From 1c0fdc88b53ea2806021c1b18e2d586c6ad87b2f Mon Sep 17 00:00:00 2001 From: macrule Date: Thu, 11 Apr 2013 19:54:59 +0200 Subject: [PATCH 71/91] Added methods SuspendVideoOutput() and @@ -12194,10 +12087,10 @@ Subject: [PATCH 71/91] Added methods SuspendVideoOutput() and 3 files changed, 21 insertions(+) diff --git a/xbmc/linux/RBP.cpp b/xbmc/linux/RBP.cpp -index 50d5186..9f72a36 100644 +index 73a42c4..e03d673 100644 --- a/xbmc/linux/RBP.cpp +++ b/xbmc/linux/RBP.cpp -@@ -168,4 +168,19 @@ void CRBP::Deinitialize() +@@ -173,4 +173,19 @@ void CRBP::Deinitialize() m_initialized = false; m_omx_initialized = false; } @@ -12218,10 +12111,10 @@ index 50d5186..9f72a36 100644 + #endif diff --git a/xbmc/linux/RBP.h b/xbmc/linux/RBP.h -index 2aae579..f06687c 100644 +index e9a2d5a..04ddaa0 100644 --- a/xbmc/linux/RBP.h +++ b/xbmc/linux/RBP.h -@@ -57,6 +57,9 @@ class CRBP +@@ -58,6 +58,9 @@ class CRBP unsigned char *CaptureDisplay(int width, int height, int *stride, bool swap_red_blue, bool video_only = true); DllOMX *GetDllOMX() { return m_OMX ? m_OMX->GetDll() : NULL; } @@ -12232,10 +12125,10 @@ index 2aae579..f06687c 100644 DllBcmHost *m_DllBcmHost; bool m_initialized; diff --git a/xbmc/windowing/egl/EGLNativeTypeRaspberryPI.cpp b/xbmc/windowing/egl/EGLNativeTypeRaspberryPI.cpp -index 712fe9c..40d303e 100644 +index 9dc39d5..ca36082 100644 --- a/xbmc/windowing/egl/EGLNativeTypeRaspberryPI.cpp +++ b/xbmc/windowing/egl/EGLNativeTypeRaspberryPI.cpp -@@ -58,7 +58,10 @@ +@@ -59,7 +59,10 @@ # define DLOG(fmt, args...) #endif @@ -12250,7 +12143,7 @@ index 712fe9c..40d303e 100644 2.0.3 -From 9f5290c723324705e4fa70fb587d87caf3881613 Mon Sep 17 00:00:00 2001 +From 308b3cf08abd7763a2869baafef5ba79e9cbd1fa Mon Sep 17 00:00:00 2001 From: popcornmix Date: Sun, 11 Aug 2013 15:03:36 +0100 Subject: [PATCH 72/91] PowerManager (and its IPowerSyscall instance) now gets @@ -12265,7 +12158,7 @@ Subject: [PATCH 72/91] PowerManager (and its IPowerSyscall instance) now gets 4 files changed, 23 insertions(+) diff --git a/xbmc/Application.cpp b/xbmc/Application.cpp -index 0e5f79c..ce58a5c 100644 +index a2e4fe8..995781e 100644 --- a/xbmc/Application.cpp +++ b/xbmc/Application.cpp @@ -2365,6 +2365,13 @@ bool CApplication::OnKey(const CKey& key) @@ -12349,7 +12242,7 @@ index 0b1f10a..e42b143 100644 2.0.3 -From ebaed1c1d56e885b6419b457fee562b288e6f20d Mon Sep 17 00:00:00 2001 +From 806b047efbb3dc47b1ed88de61df5338b12b9a3b Mon Sep 17 00:00:00 2001 From: macrule Date: Wed, 17 Apr 2013 13:23:01 +0200 Subject: [PATCH 73/91] Added CPowerSyscallVirtualSleep class, which acts as a @@ -12531,7 +12424,7 @@ index 0000000..ef6e682 2.0.3 -From 43e4519092920dd01a53bc30068a87b14c0cf33b Mon Sep 17 00:00:00 2001 +From 7052670b16d0ee7853cf565aee76b45778615080 Mon Sep 17 00:00:00 2001 From: macrule Date: Wed, 17 Apr 2013 13:24:22 +0200 Subject: [PATCH 74/91] Added power management support for the Raspberry Pi. @@ -12683,7 +12576,7 @@ index 0000000..fd1d67c 2.0.3 -From 6adcd24a0166f953f56410df9e634a7b2ec93cdd Mon Sep 17 00:00:00 2001 +From 63ed5533460e6b13c16bba7e963a7e10e77820d9 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Mon, 3 Mar 2014 16:16:29 +0000 Subject: [PATCH 75/91] [power] hack - don't kill lirc or cec @@ -12773,7 +12666,7 @@ index 2d8c750..901f449 100644 2.0.3 -From 58540530af24eac98fa1d16fc44f228aafcefae2 Mon Sep 17 00:00:00 2001 +From b77cb024976fee6b9898c9274e995d368a1cc5d3 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Mon, 3 Mar 2014 16:47:54 +0000 Subject: [PATCH 76/91] [power] hack - wake on any action @@ -12808,7 +12701,7 @@ index 6a1e47b..a717a09 100644 2.0.3 -From df9c82f23d1651419761aec5c9661620299788fc Mon Sep 17 00:00:00 2001 +From b45f716af31d0add8094faa2cc2b066b2405f6d4 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Mon, 3 Mar 2014 17:30:07 +0000 Subject: [PATCH 77/91] [power] hack - Make suspend toggle suspend state @@ -12837,7 +12730,7 @@ index a717a09..d39c3ed 100644 2.0.3 -From bd70c75a62b6a358bc9df89bd66ec6563bd0fc54 Mon Sep 17 00:00:00 2001 +From 6e25c74f0b927fac75b30596c7e7a2db1fbae5a9 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Tue, 4 Mar 2014 19:33:44 +0000 Subject: [PATCH 78/91] [power] Add back in powerdown and reboot @@ -12921,7 +12814,7 @@ index fd1d67c..062132e 100644 2.0.3 -From 04b5a7d8b30240457d85adb9d6a8227f6cbd8747 Mon Sep 17 00:00:00 2001 +From 58203679b87964b5ec2e1d8330c2a379f08debb0 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Fri, 27 Jun 2014 00:01:05 +0100 Subject: [PATCH 81/91] [rbp] Resume video output on startup @@ -12931,12 +12824,12 @@ Subject: [PATCH 81/91] [rbp] Resume video output on startup 1 file changed, 3 insertions(+) diff --git a/xbmc/linux/RBP.cpp b/xbmc/linux/RBP.cpp -index 9f72a36..f789bf1 100644 +index e03d673..cea5ac5 100644 --- a/xbmc/linux/RBP.cpp +++ b/xbmc/linux/RBP.cpp -@@ -75,6 +75,9 @@ bool CRBP::Initialize() - if (m_gpu_mem < 128) - setenv("V3D_DOUBLE_BUFFER", "1", 1); +@@ -80,6 +80,9 @@ bool CRBP::Initialize() + if (!m_gui_resolution_limit) + m_gui_resolution_limit = m_gpu_mem < 128 ? 720:1080; + // in case xbcm was restarted when suspended + ResumeVideoOutput(); @@ -12948,10 +12841,72 @@ index 9f72a36..f789bf1 100644 2.0.3 -From 8d2f60ba6b401ad0e057572adf2ba7e4b8354747 Mon Sep 17 00:00:00 2001 +From dc1ecd3ff0d11ab94870da74b8964f1ff68a17f8 Mon Sep 17 00:00:00 2001 +From: popcornmix +Date: Wed, 9 Jul 2014 22:45:43 +0100 +Subject: [PATCH 82/91] [rbp] Make cachemembuffersize default depend on memory + size + +--- + xbmc/linux/RBP.cpp | 5 +++++ + xbmc/settings/AdvancedSettings.cpp | 5 +++++ + 2 files changed, 10 insertions(+) + +diff --git a/xbmc/linux/RBP.cpp b/xbmc/linux/RBP.cpp +index cea5ac5..162b505 100644 +--- a/xbmc/linux/RBP.cpp ++++ b/xbmc/linux/RBP.cpp +@@ -22,6 +22,7 @@ + #if defined(TARGET_RASPBERRY_PI) + + #include "settings/Settings.h" ++#include "settings/AdvancedSettings.h" + #include "utils/log.h" + + #include "cores/omxplayer/OMXImage.h" +@@ -80,6 +81,9 @@ bool CRBP::Initialize() + if (!m_gui_resolution_limit) + m_gui_resolution_limit = m_gpu_mem < 128 ? 720:1080; + ++ if (g_advancedSettings.m_cacheMemBufferSize == ~0) ++ g_advancedSettings.m_cacheMemBufferSize = m_arm_mem < 256 ? 1024 * 1024 * 2 : 1024 * 1024 * 20; ++ + // in case xbcm was restarted when suspended + ResumeVideoOutput(); + +@@ -95,6 +99,7 @@ void CRBP::LogFirmwareVerison() + response[sizeof(response) - 1] = '\0'; + CLog::Log(LOGNOTICE, "Raspberry PI firmware version: %s", response); + CLog::Log(LOGNOTICE, "ARM mem: %dMB GPU mem: %dMB MPG2:%d WVC1:%d", m_arm_mem, m_gpu_mem, m_codec_mpg2_enabled, m_codec_wvc1_enabled); ++ CLog::Log(LOGNOTICE, "cacheMemBufferSize: %dMB", g_advancedSettings.m_cacheMemBufferSize >> 20); + m_DllBcmHost->vc_gencmd(response, sizeof response, "get_config int"); + response[sizeof(response) - 1] = '\0'; + CLog::Log(LOGNOTICE, "Config:\n%s", response); +diff --git a/xbmc/settings/AdvancedSettings.cpp b/xbmc/settings/AdvancedSettings.cpp +index 627080b..d5708ad 100644 +--- a/xbmc/settings/AdvancedSettings.cpp ++++ b/xbmc/settings/AdvancedSettings.cpp +@@ -364,7 +364,12 @@ void CAdvancedSettings::Initialize() + + m_measureRefreshrate = false; + ++#ifdef TARGET_RASPBERRY_PI ++ // want default to be memory dependent, but interface to gpu not available yet, so set in RBP.cpp ++ m_cacheMemBufferSize = ~0; ++#else + m_cacheMemBufferSize = 1024 * 1024 * 20; ++#endif + m_networkBufferMode = 0; // Default (buffer all internet streams/filesystems) + // the following setting determines the readRate of a player data + // as multiply of the default data read rate +-- +2.0.3 + + +From f4f79ff0ef42a643e0d82c238fc291e0cc5120c0 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Fri, 27 Jun 2014 00:36:29 +0100 -Subject: [PATCH 82/91] [omxplayer] Experimental support for anaglyph rendering +Subject: [PATCH 83/91] [omxplayer] Experimental support for anaglyph rendering of 3d videos Requires updated firmware @@ -12964,10 +12919,10 @@ Requires updated firmware 5 files changed, 74 insertions(+), 20 deletions(-) diff --git a/xbmc/cores/omxplayer/OMXPlayer.cpp b/xbmc/cores/omxplayer/OMXPlayer.cpp -index c7c5933..1efb562 100644 +index 87296cd..9617d5a 100644 --- a/xbmc/cores/omxplayer/OMXPlayer.cpp +++ b/xbmc/cores/omxplayer/OMXPlayer.cpp -@@ -1502,6 +1502,8 @@ void COMXPlayer::Process() +@@ -1503,6 +1503,8 @@ void CDVDPlayer::Process() SetCaching(CACHESTATE_FLUSH); EDEINTERLACEMODE current_deinterlace = CMediaSettings::Get().GetCurrentVideoSettings().m_DeinterlaceMode; @@ -12976,7 +12931,7 @@ index c7c5933..1efb562 100644 float current_sharpness = CMediaSettings::Get().GetCurrentVideoSettings().m_Sharpness; SetSharpness(current_sharpness); -@@ -1524,8 +1526,13 @@ void COMXPlayer::Process() +@@ -1525,14 +1527,20 @@ void CDVDPlayer::Process() float threshold = 0.1f; bool audio_fifo_low = false, video_fifo_low = false, audio_fifo_high = false, video_fifo_high = false; @@ -12990,9 +12945,8 @@ index c7c5933..1efb562 100644 + (current_stereomode == RENDER_STEREO_MODE_ANAGLYPH_RED_CYAN || current_stereomode == RENDER_STEREO_MODE_ANAGLYPH_GREEN_MAGENTA) != + (stereomode == RENDER_STEREO_MODE_ANAGLYPH_RED_CYAN || stereomode == RENDER_STEREO_MODE_ANAGLYPH_GREEN_MAGENTA))) { - int iStream = m_CurrentVideo.id, source = m_CurrentVideo.source; - CloseVideoStream(false); -@@ -1533,6 +1540,7 @@ void COMXPlayer::Process() + CloseStream(m_CurrentVideo, false); + OpenStream(m_CurrentVideo, m_CurrentVideo.id, m_CurrentVideo.source); if (m_State.canseek) m_messenger.Put(new CDVDMsgPlayerSeek(GetTime(), true, true, true, true, true)); current_deinterlace = CMediaSettings::Get().GetCurrentVideoSettings().m_DeinterlaceMode; @@ -13001,10 +12955,10 @@ index c7c5933..1efb562 100644 // if sharpness setting has changed, we should update it diff --git a/xbmc/cores/omxplayer/OMXPlayerVideo.cpp b/xbmc/cores/omxplayer/OMXPlayerVideo.cpp -index 605ea80..b2cb610 100644 +index 811f087..050c62c 100644 --- a/xbmc/cores/omxplayer/OMXPlayerVideo.cpp +++ b/xbmc/cores/omxplayer/OMXPlayerVideo.cpp -@@ -550,7 +550,29 @@ bool OMXPlayerVideo::OpenDecoder() +@@ -556,7 +556,29 @@ bool OMXPlayerVideo::OpenDecoder() else m_fForcedAspectRatio = 0.0; @@ -13035,7 +12989,7 @@ index 605ea80..b2cb610 100644 m_omxVideo.RegisterResolutionUpdateCallBack((void *)this, ResolutionUpdateCallBack); if(!bVideoDecoderOpen) -@@ -695,6 +717,10 @@ void OMXPlayerVideo::SetVideoRect(const CRect &InSrcRect, const CRect &InDestRec +@@ -701,6 +723,10 @@ void OMXPlayerVideo::SetVideoRect(const CRect &InSrcRect, const CRect &InDestRec video_stereo_mode = RENDER_STEREO_MODE_OFF; display_stereo_mode = RENDER_STEREO_MODE_OFF; } @@ -13046,7 +13000,7 @@ index 605ea80..b2cb610 100644 else if (stereo_invert) { SrcRect.x1 += m_hints.width / 2; -@@ -711,6 +737,10 @@ void OMXPlayerVideo::SetVideoRect(const CRect &InSrcRect, const CRect &InDestRec +@@ -717,6 +743,10 @@ void OMXPlayerVideo::SetVideoRect(const CRect &InSrcRect, const CRect &InDestRec video_stereo_mode = RENDER_STEREO_MODE_OFF; display_stereo_mode = RENDER_STEREO_MODE_OFF; } @@ -13237,10 +13191,10 @@ index 64e0d16..8a58893 100644 2.0.3 -From 971ad025ac77aaef35485c19de9ac79c1f4157c7 Mon Sep 17 00:00:00 2001 +From aeb785ef86aae422bc3c9ce0af485a1358f04688 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 2 Jul 2014 12:24:01 +0100 -Subject: [PATCH 83/91] [settings] Add update flag to omx acceleration +Subject: [PATCH 84/91] [settings] Add update flag to omx acceleration --- system/settings/settings.xml | 3 +++ @@ -13277,10 +13231,10 @@ index b5ed60a..84b3225 100644 2.0.3 -From 123304dd2725b1043019e0007cd9cfba0828b574 Mon Sep 17 00:00:00 2001 +From 70a1ad0ca5d468496ebf69b0c97af715d503c5f1 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 2 Jul 2014 20:41:29 +0100 -Subject: [PATCH 84/91] [pi] Reduce time textures are held for when memory is +Subject: [PATCH 85/91] [pi] Reduce time textures are held for when memory is low --- @@ -13290,7 +13244,7 @@ Subject: [PATCH 84/91] [pi] Reduce time textures are held for when memory is 3 files changed, 20 insertions(+) diff --git a/xbmc/Application.cpp b/xbmc/Application.cpp -index ce58a5c..5985bfe 100644 +index 995781e..6efd2a1 100644 --- a/xbmc/Application.cpp +++ b/xbmc/Application.cpp @@ -348,6 +348,10 @@ @@ -13304,7 +13258,7 @@ index ce58a5c..5985bfe 100644 #include "cores/FFmpeg.h" using namespace std; -@@ -5194,6 +5198,11 @@ void CApplication::ProcessSlow() +@@ -5195,6 +5199,11 @@ void CApplication::ProcessSlow() if (!m_pPlayer->IsPlayingVideo()) g_largeTextureManager.CleanupUnusedImages(); @@ -13317,10 +13271,10 @@ index ce58a5c..5985bfe 100644 #ifdef HAS_DVD_DRIVE diff --git a/xbmc/linux/RBP.cpp b/xbmc/linux/RBP.cpp -index f789bf1..65c95a3 100644 +index 162b505..f26a7f1 100644 --- a/xbmc/linux/RBP.cpp +++ b/xbmc/linux/RBP.cpp -@@ -83,6 +83,16 @@ bool CRBP::Initialize() +@@ -92,6 +92,16 @@ bool CRBP::Initialize() return true; } @@ -13338,7 +13292,7 @@ index f789bf1..65c95a3 100644 { char response[1024]; diff --git a/xbmc/linux/RBP.h b/xbmc/linux/RBP.h -index f06687c..bf6dfdb 100644 +index 04ddaa0..3ad2327 100644 --- a/xbmc/linux/RBP.h +++ b/xbmc/linux/RBP.h @@ -50,6 +50,7 @@ class CRBP @@ -13353,10 +13307,10 @@ index f06687c..bf6dfdb 100644 2.0.3 -From 37e20961e1387b827153e54c378ddc8668ea8cd4 Mon Sep 17 00:00:00 2001 +From 7eefe3eb6afd498f2ca6508ea99cff40a383e93a Mon Sep 17 00:00:00 2001 From: popcornmix Date: Sat, 5 Jul 2014 19:26:46 +0100 -Subject: [PATCH 85/91] [omxplayer] Explictly choose deinterlace method for +Subject: [PATCH 86/91] [omxplayer] Explictly choose deinterlace method for 1080i As the 1080i deinterlace doesn't require the 3 frames of context we can save ~9MB by requesting it explicitly @@ -13384,10 +13338,10 @@ index b100018..15b62af 100644 2.0.3 -From 0cbc6f3a1a11d852875bb2c0ca8cb58e8f75fea5 Mon Sep 17 00:00:00 2001 +From 283a873a213bfccfaa4d4884900f9366a6abc9ba Mon Sep 17 00:00:00 2001 From: popcornmix Date: Tue, 8 Jul 2014 21:00:44 +0100 -Subject: [PATCH 86/91] [omxcodec] Fix 3D rendering for dvdplayer +Subject: [PATCH 87/91] [omxcodec] Fix 3D rendering for dvdplayer Similar to https://github.com/xbmc/xbmc/pull/3887 --- @@ -13454,125 +13408,10 @@ index 53873f6..84a46ec 100644 2.0.3 -From 5f669989d3c2b6db77be8f2985cb2c99b7d35299 Mon Sep 17 00:00:00 2001 -From: popcornmix -Date: Wed, 9 Jul 2014 22:45:43 +0100 -Subject: [PATCH 87/91] [rbp] Make cachemembuffersize default depend on memory - size - ---- - xbmc/linux/RBP.cpp | 5 +++++ - xbmc/settings/AdvancedSettings.cpp | 5 +++++ - 2 files changed, 10 insertions(+) - -diff --git a/xbmc/linux/RBP.cpp b/xbmc/linux/RBP.cpp -index 65c95a3..bbf7ab5 100644 ---- a/xbmc/linux/RBP.cpp -+++ b/xbmc/linux/RBP.cpp -@@ -21,6 +21,7 @@ - #include "RBP.h" - #if defined(TARGET_RASPBERRY_PI) - -+#include "settings/AdvancedSettings.h" - #include "utils/log.h" - - #include "cores/omxplayer/OMXImage.h" -@@ -75,6 +76,9 @@ bool CRBP::Initialize() - if (m_gpu_mem < 128) - setenv("V3D_DOUBLE_BUFFER", "1", 1); - -+ if (g_advancedSettings.m_cacheMemBufferSize == ~0) -+ g_advancedSettings.m_cacheMemBufferSize = m_arm_mem < 256 ? 1024 * 1024 * 2 : 1024 * 1024 * 20; -+ - // in case xbcm was restarted when suspended - ResumeVideoOutput(); - -@@ -100,6 +104,7 @@ void CRBP::LogFirmwareVerison() - response[sizeof(response) - 1] = '\0'; - CLog::Log(LOGNOTICE, "Raspberry PI firmware version: %s", response); - CLog::Log(LOGNOTICE, "ARM mem: %dMB GPU mem: %dMB MPG2:%d WVC1:%d", m_arm_mem, m_gpu_mem, m_codec_mpg2_enabled, m_codec_wvc1_enabled); -+ CLog::Log(LOGNOTICE, "cacheMemBufferSize: %dMB", g_advancedSettings.m_cacheMemBufferSize >> 20); - m_DllBcmHost->vc_gencmd(response, sizeof response, "get_config int"); - response[sizeof(response) - 1] = '\0'; - CLog::Log(LOGNOTICE, "Config:\n%s", response); -diff --git a/xbmc/settings/AdvancedSettings.cpp b/xbmc/settings/AdvancedSettings.cpp -index 627080b..d5708ad 100644 ---- a/xbmc/settings/AdvancedSettings.cpp -+++ b/xbmc/settings/AdvancedSettings.cpp -@@ -364,7 +364,12 @@ void CAdvancedSettings::Initialize() - - m_measureRefreshrate = false; - -+#ifdef TARGET_RASPBERRY_PI -+ // want default to be memory dependent, but interface to gpu not available yet, so set in RBP.cpp -+ m_cacheMemBufferSize = ~0; -+#else - m_cacheMemBufferSize = 1024 * 1024 * 20; -+#endif - m_networkBufferMode = 0; // Default (buffer all internet streams/filesystems) - // the following setting determines the readRate of a player data - // as multiply of the default data read rate --- -2.0.3 - - -From bd34971f8d7d27074c3a9f16e520e84a995c5dde Mon Sep 17 00:00:00 2001 -From: popcornmix -Date: Wed, 9 Jul 2014 23:31:32 +0100 -Subject: [PATCH 88/91] [rbp] Make gui limit default to 720 when memory is - limited - ---- - system/settings/rbp.xml | 4 ++-- - xbmc/linux/RBP.cpp | 4 ++++ - 2 files changed, 6 insertions(+), 2 deletions(-) - -diff --git a/system/settings/rbp.xml b/system/settings/rbp.xml -index 1429256..5d47c28 100644 ---- a/system/settings/rbp.xml -+++ b/system/settings/rbp.xml -@@ -32,9 +32,9 @@ - - - 2 -- 1080 -+ 0 - -- 540 -+ 0 - 16 - 1080 - -diff --git a/xbmc/linux/RBP.cpp b/xbmc/linux/RBP.cpp -index bbf7ab5..85e1f21 100644 ---- a/xbmc/linux/RBP.cpp -+++ b/xbmc/linux/RBP.cpp -@@ -22,6 +22,7 @@ - #if defined(TARGET_RASPBERRY_PI) - - #include "settings/AdvancedSettings.h" -+#include "settings/Settings.h" - #include "utils/log.h" - - #include "cores/omxplayer/OMXImage.h" -@@ -79,6 +80,9 @@ bool CRBP::Initialize() - if (g_advancedSettings.m_cacheMemBufferSize == ~0) - g_advancedSettings.m_cacheMemBufferSize = m_arm_mem < 256 ? 1024 * 1024 * 2 : 1024 * 1024 * 20; - -+ if (!CSettings::Get().GetInt("videoscreen.limitgui")) -+ CSettings::Get().SetInt("videoscreen.limitgui", m_gpu_mem < 128 ? 720:1080); -+ - // in case xbcm was restarted when suspended - ResumeVideoOutput(); - --- -2.0.3 - - -From 06062d861ed1c81679d4d5eb6577481a6aecde9a Mon Sep 17 00:00:00 2001 +From 32f827f30158fa7dac5703b02a7559cfcfbdd597 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Sun, 13 Jul 2014 11:28:20 +0100 -Subject: [PATCH 89/91] [ResamplePi] Fix xbmc crash with usb audio when music +Subject: [PATCH 88/91] [ResamplePi] Fix xbmc crash with usb audio when music file switched Need to handle the case where AE requests fewer output samples that are produced. @@ -13722,3 +13561,35 @@ index 47a9e08..b88a90b 100644 -- 2.0.3 + +From a10235c5a0644144b4cc6cae0ed4e6f1ec2f4df6 Mon Sep 17 00:00:00 2001 +From: popcornmix +Date: Tue, 5 Aug 2014 00:44:35 +0100 +Subject: [PATCH 91/91] [airplay] Fix for airplay init race condition + +http://forum.xbmc.org/showthread.php?tid=201355 +--- + xbmc/network/AirTunesServer.cpp | 7 +++++-- + 1 file changed, 5 insertions(+), 2 deletions(-) + +diff --git a/xbmc/network/AirTunesServer.cpp b/xbmc/network/AirTunesServer.cpp +index 1ba4136..167faf3 100644 +--- a/xbmc/network/AirTunesServer.cpp ++++ b/xbmc/network/AirTunesServer.cpp +@@ -265,8 +265,11 @@ void CAirTunesServer::AudioOutputFunctions::audio_process(void *cls, void *sess + + void CAirTunesServer::AudioOutputFunctions::audio_flush(void *cls, void *session) + { +- XFILE::CPipeFile *pipe=(XFILE::CPipeFile *)cls; +- pipe->Flush(); ++ if (g_application.m_pPlayer && g_application.m_pPlayer->IsPlaying()) ++ { ++ XFILE::CPipeFile *pipe=(XFILE::CPipeFile *)cls; ++ pipe->Flush(); ++ } + } + + void CAirTunesServer::AudioOutputFunctions::audio_destroy(void *cls, void *session) +-- +2.0.3 +