From 81670c8df78c325615328d011455de61299f9c6d Mon Sep 17 00:00:00 2001 From: CvH Date: Sun, 24 Oct 2021 21:33:36 +0200 Subject: [PATCH] kodi: update to 19.3 --- packages/mediacenter/kodi/package.mk | 4 +- .../kodi-100.03-disable-online-check.patch | 2 +- ...-999.01-pr20211-drmprime-coordinates.patch | 159 ------------------ 3 files changed, 3 insertions(+), 162 deletions(-) delete mode 100644 packages/mediacenter/kodi/patches/kodi-999.01-pr20211-drmprime-coordinates.patch diff --git a/packages/mediacenter/kodi/package.mk b/packages/mediacenter/kodi/package.mk index dfa2562c96..2b6cac1883 100644 --- a/packages/mediacenter/kodi/package.mk +++ b/packages/mediacenter/kodi/package.mk @@ -3,8 +3,8 @@ # Copyright (C) 2017-present Team LibreELEC (https://libreelec.tv) PKG_NAME="kodi" -PKG_VERSION="19.2-Matrix" -PKG_SHA256="e8f5e50767ddd1b8f0399016dcf5ba762315c16c0568cb06e659c493376f99d5" +PKG_VERSION="19.3-Matrix" +PKG_SHA256="440f47e475dd8a48e0a6d41349e83b74890f3fbe8275d3e401d3c50f5b9ea09b" PKG_LICENSE="GPL" PKG_SITE="http://www.kodi.tv" PKG_URL="https://github.com/xbmc/xbmc/archive/${PKG_VERSION}.tar.gz" diff --git a/packages/mediacenter/kodi/patches/kodi-100.03-disable-online-check.patch b/packages/mediacenter/kodi/patches/kodi-100.03-disable-online-check.patch index 6ffd100b9a..8a3b1f2fa7 100644 --- a/packages/mediacenter/kodi/patches/kodi-100.03-disable-online-check.patch +++ b/packages/mediacenter/kodi/patches/kodi-100.03-disable-online-check.patch @@ -21,7 +21,7 @@ Subject: disable online check m_info.videoEncoder = GetVideoEncoder(); m_info.cpuFrequency = StringUtils::Format("%4.0f MHz", CServiceBroker::GetCPUInfo()->GetCPUFrequency()); -@@ -1000,9 +999,7 @@ int CSysInfo::GetXbmcBitness(void) +@@ -1007,9 +1006,7 @@ int CSysInfo::GetXbmcBitness(void) bool CSysInfo::HasInternet() { diff --git a/packages/mediacenter/kodi/patches/kodi-999.01-pr20211-drmprime-coordinates.patch b/packages/mediacenter/kodi/patches/kodi-999.01-pr20211-drmprime-coordinates.patch deleted file mode 100644 index 663599e24a..0000000000 --- a/packages/mediacenter/kodi/patches/kodi-999.01-pr20211-drmprime-coordinates.patch +++ /dev/null @@ -1,159 +0,0 @@ -From 720e16d2ced226465f511250c535b66d61e6d2b9 Mon Sep 17 00:00:00 2001 -From: Matthias Reichl -Date: Wed, 29 Sep 2021 23:50:42 +0200 -Subject: [PATCH 1/2] CBaseRenderer: factor out destRect calculation - -Also change C-style to static_cast - -Signed-off-by: Matthias Reichl ---- - .../VideoRenderers/BaseRenderer.cpp | 36 +++++++++++++++---- - .../VideoPlayer/VideoRenderers/BaseRenderer.h | 8 +++++ - 2 files changed, 37 insertions(+), 7 deletions(-) - -diff --git a/xbmc/cores/VideoPlayer/VideoRenderers/BaseRenderer.cpp b/xbmc/cores/VideoPlayer/VideoRenderers/BaseRenderer.cpp -index 8c78f1beac..2ee48c0273 100644 ---- a/xbmc/cores/VideoPlayer/VideoRenderers/BaseRenderer.cpp -+++ b/xbmc/cores/VideoPlayer/VideoRenderers/BaseRenderer.cpp -@@ -104,13 +104,19 @@ void CBaseRenderer::restoreRotatedCoords() - m_rotatedDestCoords[i] = m_savedRotatedDestCoords[i]; - } - --void CBaseRenderer::CalcNormalRenderRect(float offsetX, float offsetY, float width, float height, -- float inputFrameRatio, float zoomAmount, float verticalShift) -+void CBaseRenderer::CalcDestRect(float offsetX, -+ float offsetY, -+ float width, -+ float height, -+ float inputFrameRatio, -+ float zoomAmount, -+ float verticalShift, -+ CRect& destRect) - { - // if view window is empty, set empty destination - if (height == 0 || width == 0) - { -- m_destRect.SetRect(0.0f, 0.0f, 0.0f, 0.0f); -+ destRect.SetRect(0.0f, 0.0f, 0.0f, 0.0f); - return; - } - -@@ -190,10 +196,26 @@ void CBaseRenderer::CalcNormalRenderRect(float offsetX, float offsetY, float wid - else if (verticalShift < -1.0f) - posY += shiftRange * (verticalShift + 1.0f); - -- m_destRect.x1 = (float)MathUtils::round_int(posX + offsetX); -- m_destRect.x2 = m_destRect.x1 + MathUtils::round_int(newWidth); -- m_destRect.y1 = (float)MathUtils::round_int(posY + offsetY); -- m_destRect.y2 = m_destRect.y1 + MathUtils::round_int(newHeight); -+ destRect.x1 = static_cast(MathUtils::round_int(static_cast(posX + offsetX))); -+ destRect.x2 = destRect.x1 + MathUtils::round_int(static_cast(newWidth)); -+ destRect.y1 = static_cast(MathUtils::round_int(static_cast(posY + offsetY))); -+ destRect.y2 = destRect.y1 + MathUtils::round_int(static_cast(newHeight)); -+} -+ -+void CBaseRenderer::CalcNormalRenderRect(float offsetX, -+ float offsetY, -+ float width, -+ float height, -+ float inputFrameRatio, -+ float zoomAmount, -+ float verticalShift) -+{ -+ CalcDestRect(offsetX, offsetY, width, height, inputFrameRatio, zoomAmount, verticalShift, -+ m_destRect); -+ -+ // bail out if view window is empty -+ if (height == 0 || width == 0) -+ return; - - // clip as needed - if (!(CServiceBroker::GetWinSystem()->GetGfxContext().IsFullScreenVideo() || CServiceBroker::GetWinSystem()->GetGfxContext().IsCalibrating())) -diff --git a/xbmc/cores/VideoPlayer/VideoRenderers/BaseRenderer.h b/xbmc/cores/VideoPlayer/VideoRenderers/BaseRenderer.h -index 6f3c605028..2ac35881ec 100644 ---- a/xbmc/cores/VideoPlayer/VideoRenderers/BaseRenderer.h -+++ b/xbmc/cores/VideoPlayer/VideoRenderers/BaseRenderer.h -@@ -97,6 +97,14 @@ public: - virtual DEBUG_INFO_VIDEO GetDebugInfo(int idx) { return {}; }; - - protected: -+ void CalcDestRect(float offsetX, -+ float offsetY, -+ float width, -+ float height, -+ float inputFrameRatio, -+ float zoomAmount, -+ float verticalShift, -+ CRect& destRect); - void CalcNormalRenderRect(float offsetX, float offsetY, float width, float height, - float inputFrameRatio, float zoomAmount, float verticalShift); - void CalculateFrameAspectRatio(unsigned int desired_width, unsigned int desired_height); --- -2.30.2 - - -From f0b441898056cb2e04bd891ec7cec6f3fd8b63dd Mon Sep 17 00:00:00 2001 -From: Matthias Reichl -Date: Wed, 29 Sep 2021 23:53:36 +0200 -Subject: [PATCH 2/2] RendererDRMPRIME: keep plane coords of video render area - private - -Store plane coordinates of render area in a separate, private member -instead of re-using m_destRect so that m_destRect is again guaranteed -to be within m_viewRect. - -Fixes: 9cfa99f "RendererDRMPRIME: use screen size when calculating render area" - -Signed-off-by: Matthias Reichl ---- - .../HwDecRender/RendererDRMPRIME.cpp | 14 +++++++++----- - .../VideoRenderers/HwDecRender/RendererDRMPRIME.h | 1 + - 2 files changed, 10 insertions(+), 5 deletions(-) - -diff --git a/xbmc/cores/VideoPlayer/VideoRenderers/HwDecRender/RendererDRMPRIME.cpp b/xbmc/cores/VideoPlayer/VideoRenderers/HwDecRender/RendererDRMPRIME.cpp -index 3618b7e421..36e4093cbe 100644 ---- a/xbmc/cores/VideoPlayer/VideoRenderers/HwDecRender/RendererDRMPRIME.cpp -+++ b/xbmc/cores/VideoPlayer/VideoRenderers/HwDecRender/RendererDRMPRIME.cpp -@@ -124,10 +124,14 @@ void CRendererDRMPRIME::ManageRenderArea() - RESOLUTION_INFO info = CServiceBroker::GetWinSystem()->GetGfxContext().GetResInfo(); - if (info.iScreenWidth != info.iWidth) - { -- CalcNormalRenderRect(0, 0, info.iScreenWidth, info.iScreenHeight, -- GetAspectRatio() * CDisplaySettings::GetInstance().GetPixelRatio(), -- CDisplaySettings::GetInstance().GetZoomAmount(), -- CDisplaySettings::GetInstance().GetVerticalShift()); -+ CalcDestRect(0, 0, info.iScreenWidth, info.iScreenHeight, -+ GetAspectRatio() * CDisplaySettings::GetInstance().GetPixelRatio(), -+ CDisplaySettings::GetInstance().GetZoomAmount(), -+ CDisplaySettings::GetInstance().GetVerticalShift(), m_planeDestRect); -+ } -+ else -+ { -+ m_planeDestRect = m_destRect; - } - } - -@@ -217,7 +221,7 @@ void CRendererDRMPRIME::RenderUpdate( - if (m_iLastRenderBuffer == -1) - m_videoLayerBridge->Configure(buffer); - -- m_videoLayerBridge->SetVideoPlane(buffer, m_destRect); -+ m_videoLayerBridge->SetVideoPlane(buffer, m_planeDestRect); - - m_iLastRenderBuffer = index; - } -diff --git a/xbmc/cores/VideoPlayer/VideoRenderers/HwDecRender/RendererDRMPRIME.h b/xbmc/cores/VideoPlayer/VideoRenderers/HwDecRender/RendererDRMPRIME.h -index de17869d43..33eb39ae11 100644 ---- a/xbmc/cores/VideoPlayer/VideoRenderers/HwDecRender/RendererDRMPRIME.h -+++ b/xbmc/cores/VideoPlayer/VideoRenderers/HwDecRender/RendererDRMPRIME.h -@@ -50,6 +50,7 @@ protected: - private: - bool m_bConfigured = false; - int m_iLastRenderBuffer = -1; -+ CRect m_planeDestRect; - - std::shared_ptr m_videoLayerBridge; - --- -2.30.2 -