From a8d88a027f6a846f38f7815e532e2132de6ca8fd Mon Sep 17 00:00:00 2001 From: MilhouseVH Date: Wed, 20 Jun 2018 21:14:43 +0100 Subject: [PATCH 1/5] kodi: update to kodi-b7583e3 --- packages/mediacenter/kodi/package.mk | 4 ++-- .../patches/kodi-100.08-setup-timezone.patch | 14 +++++++------- ...prevent-kodi-switching-to-windowed-mode.patch | 16 ++++++++-------- 3 files changed, 17 insertions(+), 17 deletions(-) diff --git a/packages/mediacenter/kodi/package.mk b/packages/mediacenter/kodi/package.mk index 343b3865ef..f83b56b80f 100644 --- a/packages/mediacenter/kodi/package.mk +++ b/packages/mediacenter/kodi/package.mk @@ -18,8 +18,8 @@ ################################################################################ PKG_NAME="kodi" -PKG_VERSION="87c7f9b" -PKG_SHA256="97f8aec04fcc7a19890ae6f02520f375bbb7bb798d0fb229e486092dc0bc1ff1" +PKG_VERSION="b7583e3" +PKG_SHA256="fabea735a5fdfc423d5c98762696516c9968eebfa68aec2c877406370935146e" PKG_ARCH="any" PKG_LICENSE="GPL" PKG_SITE="http://www.kodi.tv" diff --git a/packages/mediacenter/kodi/patches/kodi-100.08-setup-timezone.patch b/packages/mediacenter/kodi/patches/kodi-100.08-setup-timezone.patch index 016f1b6746..1107019676 100644 --- a/packages/mediacenter/kodi/patches/kodi-100.08-setup-timezone.patch +++ b/packages/mediacenter/kodi/patches/kodi-100.08-setup-timezone.patch @@ -1,7 +1,7 @@ -From 867d7535140dcf7b987ce86c3947c2ec5f5c7bd4 Mon Sep 17 00:00:00 2001 +From ac5906ee4bc7b59f48457b01a318139ab15f6c8d Mon Sep 17 00:00:00 2001 From: Stefan Saraev Date: Mon, 18 Aug 2014 17:46:54 +0300 -Subject: [PATCH 08/13] setup timezone +Subject: [PATCH] setup timezone on TZ country setting change, store the value in format TIMEZONE=Xx/Yyy to /storage/.cache/timezone to be used with @@ -11,19 +11,19 @@ tz-data.service 1 file changed, 12 insertions(+) diff --git a/xbmc/platform/linux/LinuxTimezone.cpp b/xbmc/platform/linux/LinuxTimezone.cpp -index 372c119..0759a3b 100644 +index fae9276..2c24542 100644 --- a/xbmc/platform/linux/LinuxTimezone.cpp +++ b/xbmc/platform/linux/LinuxTimezone.cpp -@@ -43,6 +43,8 @@ +@@ -36,6 +36,8 @@ #include +#include + - CLinuxTimezone::CLinuxTimezone() : m_IsDST(0) + CLinuxTimezone::CLinuxTimezone() { char* line = NULL; -@@ -160,6 +162,16 @@ void CLinuxTimezone::OnSettingChanged(std::shared_ptr setting) +@@ -153,6 +155,16 @@ void CLinuxTimezone::OnSettingChanged(std::shared_ptr setting) const std::string &settingId = setting->GetId(); if (settingId == CSettings::SETTING_LOCALE_TIMEZONE) { @@ -41,5 +41,5 @@ index 372c119..0759a3b 100644 CDateTime::ResetTimezoneBias(); -- -2.7.4 +2.14.1 diff --git a/packages/mediacenter/kodi/patches/kodi-100.12-prevent-kodi-switching-to-windowed-mode.patch b/packages/mediacenter/kodi/patches/kodi-100.12-prevent-kodi-switching-to-windowed-mode.patch index d11e02ded8..8c6cba3e7a 100644 --- a/packages/mediacenter/kodi/patches/kodi-100.12-prevent-kodi-switching-to-windowed-mode.patch +++ b/packages/mediacenter/kodi/patches/kodi-100.12-prevent-kodi-switching-to-windowed-mode.patch @@ -1,24 +1,24 @@ -From 84b516ffd5fbf0f7a53c30590dd412aeb4600481 Mon Sep 17 00:00:00 2001 +From a2a5ae054768afe9906bbd7ea96d4eb69bf1b857 Mon Sep 17 00:00:00 2001 From: Stefan Saraev Date: Sat, 18 Apr 2015 15:45:54 +0300 -Subject: [PATCH 12/13] prevent kodi switching to windowed mode +Subject: [PATCH] prevent kodi switching to windowed mode --- xbmc/windowing/X11/WinSystemX11.h | 1 + 1 file changed, 1 insertion(+) diff --git a/xbmc/windowing/X11/WinSystemX11.h b/xbmc/windowing/X11/WinSystemX11.h -index 5ac2482..cb84940 100644 +index 6f8d443..3739b92 100644 --- a/xbmc/windowing/X11/WinSystemX11.h +++ b/xbmc/windowing/X11/WinSystemX11.h -@@ -54,6 +54,7 @@ public: - bool ResizeWindow(int newWidth, int newHeight, int newLeft, int newTop) override; +@@ -49,6 +49,7 @@ public: + void FinishWindowResize(int newWidth, int newHeight) override; bool SetFullScreen(bool fullScreen, RESOLUTION_INFO& res, bool blankOtherDisplays) override; void UpdateResolutions() override; + bool CanDoWindowed() override { return false; } - int GetNumScreens() override { return 1; } - int GetCurrentScreen() override { return m_nScreen; } void ShowOSMouse(bool show) override; + + void NotifyAppActiveChange(bool bActivated) override; -- -2.5.0 +2.14.1 From 4fc203697e7576f61217b58c208a775e21458f6d Mon Sep 17 00:00:00 2001 From: MilhouseVH Date: Sun, 15 Jul 2018 04:42:07 +0100 Subject: [PATCH 2/5] kodi-binary-addons: update to latest versions --- .../kodi-binary-addons/audioencoder.flac/package.mk | 4 ++-- .../kodi-binary-addons/audioencoder.lame/package.mk | 4 ++-- .../kodi-binary-addons/audioencoder.vorbis/package.mk | 4 ++-- .../kodi-binary-addons/imagedecoder.raw/package.mk | 4 ++-- .../kodi-binary-addons/inputstream.adaptive/package.mk | 4 ++-- .../kodi-binary-addons/inputstream.rtmp/package.mk | 4 ++-- .../kodi-binary-addons/peripheral.joystick/package.mk | 4 ++-- packages/mediacenter/kodi-binary-addons/pvr.demo/package.mk | 4 ++-- .../mediacenter/kodi-binary-addons/pvr.dvblink/package.mk | 4 ++-- .../mediacenter/kodi-binary-addons/pvr.dvbviewer/package.mk | 4 ++-- packages/mediacenter/kodi-binary-addons/pvr.filmon/package.mk | 4 ++-- .../mediacenter/kodi-binary-addons/pvr.hdhomerun/package.mk | 4 ++-- packages/mediacenter/kodi-binary-addons/pvr.hts/package.mk | 4 ++-- .../mediacenter/kodi-binary-addons/pvr.iptvsimple/package.mk | 4 ++-- .../kodi-binary-addons/pvr.mediaportal.tvserver/package.mk | 4 ++-- packages/mediacenter/kodi-binary-addons/pvr.mythtv/package.mk | 4 ++-- .../mediacenter/kodi-binary-addons/pvr.nextpvr/package.mk | 4 ++-- packages/mediacenter/kodi-binary-addons/pvr.njoy/package.mk | 4 ++-- packages/mediacenter/kodi-binary-addons/pvr.pctv/package.mk | 4 ++-- .../mediacenter/kodi-binary-addons/pvr.stalker/package.mk | 4 ++-- .../mediacenter/kodi-binary-addons/pvr.teleboy/package.mk | 4 ++-- packages/mediacenter/kodi-binary-addons/pvr.vbox/package.mk | 4 ++-- packages/mediacenter/kodi-binary-addons/pvr.vuplus/package.mk | 4 ++-- packages/mediacenter/kodi-binary-addons/pvr.wmc/package.mk | 4 ++-- packages/mediacenter/kodi-binary-addons/pvr.zattoo/package.mk | 4 ++-- .../mediacenter/kodi-binary-addons/vfs.libarchive/package.mk | 4 ++-- .../kodi-binary-addons/visualization.projectm/package.mk | 4 ++-- 27 files changed, 54 insertions(+), 54 deletions(-) diff --git a/packages/mediacenter/kodi-binary-addons/audioencoder.flac/package.mk b/packages/mediacenter/kodi-binary-addons/audioencoder.flac/package.mk index 01c63b5a2c..2fab06e460 100644 --- a/packages/mediacenter/kodi-binary-addons/audioencoder.flac/package.mk +++ b/packages/mediacenter/kodi-binary-addons/audioencoder.flac/package.mk @@ -17,8 +17,8 @@ ################################################################################ PKG_NAME="audioencoder.flac" -PKG_VERSION="16be0ef" -PKG_SHA256="06dc5d7f4f653b61c49c0266888ed2e9fa61508ebc182c8a047afe5899471879" +PKG_VERSION="c24fc36" +PKG_SHA256="be83cead5cc19a0db2e1577d58f91bcc9bff4ad22b607ec6b2c099065486307c" PKG_REV="2" PKG_ARCH="any" PKG_LICENSE="GPL" diff --git a/packages/mediacenter/kodi-binary-addons/audioencoder.lame/package.mk b/packages/mediacenter/kodi-binary-addons/audioencoder.lame/package.mk index 27723c09d1..f8e470a056 100644 --- a/packages/mediacenter/kodi-binary-addons/audioencoder.lame/package.mk +++ b/packages/mediacenter/kodi-binary-addons/audioencoder.lame/package.mk @@ -17,8 +17,8 @@ ################################################################################ PKG_NAME="audioencoder.lame" -PKG_VERSION="1399236" -PKG_SHA256="9ff1cd4538d2f3e4e5eec1b31f5a5455bf3c67c10a0a7ff2720f2e2b881c3668" +PKG_VERSION="c6fff50" +PKG_SHA256="9d37e4da6dab2877e8d029ad086dd517e79846cc27a12784f6c4b83130c00755" PKG_REV="2" PKG_ARCH="any" PKG_LICENSE="GPL" diff --git a/packages/mediacenter/kodi-binary-addons/audioencoder.vorbis/package.mk b/packages/mediacenter/kodi-binary-addons/audioencoder.vorbis/package.mk index d7414dee7a..6947ff1cff 100644 --- a/packages/mediacenter/kodi-binary-addons/audioencoder.vorbis/package.mk +++ b/packages/mediacenter/kodi-binary-addons/audioencoder.vorbis/package.mk @@ -17,8 +17,8 @@ ################################################################################ PKG_NAME="audioencoder.vorbis" -PKG_VERSION="6ebadfd" -PKG_SHA256="2c561df3e34efa41be9467bd643fa15af438737632d0422e7e67eb059f53abf9" +PKG_VERSION="fdca99b" +PKG_SHA256="8e5bfa7f3a2303e20826d27c278b62b3e57861dd5fa240ace58212e38eaf0a6a" PKG_REV="2" PKG_ARCH="any" PKG_LICENSE="GPL" diff --git a/packages/mediacenter/kodi-binary-addons/imagedecoder.raw/package.mk b/packages/mediacenter/kodi-binary-addons/imagedecoder.raw/package.mk index d7dbf754b8..fc357ac29a 100644 --- a/packages/mediacenter/kodi-binary-addons/imagedecoder.raw/package.mk +++ b/packages/mediacenter/kodi-binary-addons/imagedecoder.raw/package.mk @@ -17,8 +17,8 @@ ################################################################################ PKG_NAME="imagedecoder.raw" -PKG_VERSION="d78dff5" -PKG_SHA256="08e66aabf7e571a57c06cc4fb6cf6655570e39abc3760ef11678c06b8baa742a" +PKG_VERSION="ba18fb1" +PKG_SHA256="d3334626cd37b4dd5271c8a2ac374ff4ddf16755dda0736422321d63b9b35453" PKG_REV="2" PKG_ARCH="any" PKG_LICENSE="GPL" diff --git a/packages/mediacenter/kodi-binary-addons/inputstream.adaptive/package.mk b/packages/mediacenter/kodi-binary-addons/inputstream.adaptive/package.mk index b36eb82881..7f6e446225 100644 --- a/packages/mediacenter/kodi-binary-addons/inputstream.adaptive/package.mk +++ b/packages/mediacenter/kodi-binary-addons/inputstream.adaptive/package.mk @@ -17,8 +17,8 @@ ################################################################################ PKG_NAME="inputstream.adaptive" -PKG_VERSION="d89b547" -PKG_SHA256="7c276aa374fc69cddd8286a348667acee71556623fbb6f1b0ad18e743f818d41" +PKG_VERSION="faf22f1" +PKG_SHA256="6d01a6b6e03fd4a05b03860dce245cedbff264972d13321ae95bcf44eba15a6b" PKG_LICENSE="GPL" PKG_SITE="http://www.kodi.tv" PKG_URL="https://github.com/peak3d/inputstream.adaptive/archive/$PKG_VERSION.tar.gz" diff --git a/packages/mediacenter/kodi-binary-addons/inputstream.rtmp/package.mk b/packages/mediacenter/kodi-binary-addons/inputstream.rtmp/package.mk index 801767ec17..7ba87e89c8 100644 --- a/packages/mediacenter/kodi-binary-addons/inputstream.rtmp/package.mk +++ b/packages/mediacenter/kodi-binary-addons/inputstream.rtmp/package.mk @@ -17,8 +17,8 @@ ################################################################################ PKG_NAME="inputstream.rtmp" -PKG_VERSION="b8e3f39" -PKG_SHA256="eb6cc5f164c3bc76582362ea0683cfdc368ae31591786e11b4a75e0b30c8b0b8" +PKG_VERSION="bf5351e" +PKG_SHA256="f1a6117569f3293bc61dad6091ed216d0c82428c3d8981eea9870b16947b2c04" PKG_LICENSE="GPL" PKG_SITE="http://www.kodi.tv" PKG_URL="https://github.com/notspiff/inputstream.rtmp/archive/$PKG_VERSION.tar.gz" diff --git a/packages/mediacenter/kodi-binary-addons/peripheral.joystick/package.mk b/packages/mediacenter/kodi-binary-addons/peripheral.joystick/package.mk index 920a5c36db..508e7c1ae7 100644 --- a/packages/mediacenter/kodi-binary-addons/peripheral.joystick/package.mk +++ b/packages/mediacenter/kodi-binary-addons/peripheral.joystick/package.mk @@ -18,8 +18,8 @@ ################################################################################ PKG_NAME="peripheral.joystick" -PKG_VERSION="6312745" -PKG_SHA256="0afec1587bed5c1e32e3717529b5e9dec839f28e01a60ec3c49054577532abf9" +PKG_VERSION="dbdeded" +PKG_SHA256="b36fa4a0c4f4a05dd1704be76f47a8c4bb811ff738226717bea6fa922735ba62" PKG_REV="1" PKG_ARCH="any" PKG_LICENSE="GPL" diff --git a/packages/mediacenter/kodi-binary-addons/pvr.demo/package.mk b/packages/mediacenter/kodi-binary-addons/pvr.demo/package.mk index 710b273858..10200fd13e 100644 --- a/packages/mediacenter/kodi-binary-addons/pvr.demo/package.mk +++ b/packages/mediacenter/kodi-binary-addons/pvr.demo/package.mk @@ -18,8 +18,8 @@ ################################################################################ PKG_NAME="pvr.demo" -PKG_VERSION="bcd8289" -PKG_SHA256="c5a33274c400644970cee167ed2c69ca277e07778272657be46ed75410413c2f" +PKG_VERSION="481f2fa" +PKG_SHA256="ca20f0794977027ec6d803c230deecbab260a306e71353ac6db6249b4881c1bf" PKG_REV="2" PKG_ARCH="any" PKG_LICENSE="GPL" diff --git a/packages/mediacenter/kodi-binary-addons/pvr.dvblink/package.mk b/packages/mediacenter/kodi-binary-addons/pvr.dvblink/package.mk index ac5dcdd4d2..8c9ea664c4 100644 --- a/packages/mediacenter/kodi-binary-addons/pvr.dvblink/package.mk +++ b/packages/mediacenter/kodi-binary-addons/pvr.dvblink/package.mk @@ -18,8 +18,8 @@ ################################################################################ PKG_NAME="pvr.dvblink" -PKG_VERSION="1732e4b" -PKG_SHA256="eb3a849102fe5d21d43600bbc97b120ed1b6d5716ac8a2a52079dff1ab4e4364" +PKG_VERSION="c66203b" +PKG_SHA256="4a50319e49c13773a3d6b41b506c0a23f4c0416f5e48469612a15b00faefe9a5" PKG_REV="2" PKG_ARCH="any" PKG_LICENSE="GPL" diff --git a/packages/mediacenter/kodi-binary-addons/pvr.dvbviewer/package.mk b/packages/mediacenter/kodi-binary-addons/pvr.dvbviewer/package.mk index 6189e62ea1..a6d7527ed9 100644 --- a/packages/mediacenter/kodi-binary-addons/pvr.dvbviewer/package.mk +++ b/packages/mediacenter/kodi-binary-addons/pvr.dvbviewer/package.mk @@ -18,8 +18,8 @@ ################################################################################ PKG_NAME="pvr.dvbviewer" -PKG_VERSION="d6f1629" -PKG_SHA256="9c02b2f075eb5243750786e22ecd56215b51107ce96bedfb8d3ef97d17bf7ddf" +PKG_VERSION="75e2447" +PKG_SHA256="5e487fa510576879e957c63e72b70f49e7b39243d77034f1fa8c61f46f8beb79" PKG_REV="2" PKG_ARCH="any" PKG_LICENSE="GPL" diff --git a/packages/mediacenter/kodi-binary-addons/pvr.filmon/package.mk b/packages/mediacenter/kodi-binary-addons/pvr.filmon/package.mk index 17b7a838ff..3d3286803a 100644 --- a/packages/mediacenter/kodi-binary-addons/pvr.filmon/package.mk +++ b/packages/mediacenter/kodi-binary-addons/pvr.filmon/package.mk @@ -18,8 +18,8 @@ ################################################################################ PKG_NAME="pvr.filmon" -PKG_VERSION="ba261c9" -PKG_SHA256="62787a2e5a7bfff874a5138b013f11a00cf1e9c527f531bd3a7e25e0d0eabcb7" +PKG_VERSION="93ae10d" +PKG_SHA256="b4505877101fde2f5fef13bb15eeecd425b8feff4ae28fb5360d38cf85c0eb03" PKG_REV="2" PKG_ARCH="any" PKG_LICENSE="GPL" diff --git a/packages/mediacenter/kodi-binary-addons/pvr.hdhomerun/package.mk b/packages/mediacenter/kodi-binary-addons/pvr.hdhomerun/package.mk index f5affd6329..460d8e1541 100644 --- a/packages/mediacenter/kodi-binary-addons/pvr.hdhomerun/package.mk +++ b/packages/mediacenter/kodi-binary-addons/pvr.hdhomerun/package.mk @@ -18,8 +18,8 @@ ################################################################################ PKG_NAME="pvr.hdhomerun" -PKG_VERSION="379c62c" -PKG_SHA256="52e6567184ae4ed3c2ca9fd4e5fec67f94ca5eb98e16b4c8996d199f4923ca0a" +PKG_VERSION="ced70bd" +PKG_SHA256="408fd5abce1138967becfa57b1b78d1e2aea20b82cecf4bbc0cb9cf16b43919f" PKG_REV="2" PKG_ARCH="any" PKG_LICENSE="GPL" diff --git a/packages/mediacenter/kodi-binary-addons/pvr.hts/package.mk b/packages/mediacenter/kodi-binary-addons/pvr.hts/package.mk index 2ab9f544b4..da28ee8f2e 100644 --- a/packages/mediacenter/kodi-binary-addons/pvr.hts/package.mk +++ b/packages/mediacenter/kodi-binary-addons/pvr.hts/package.mk @@ -18,8 +18,8 @@ ################################################################################ PKG_NAME="pvr.hts" -PKG_VERSION="f569808" -PKG_SHA256="84435fadeb53c0cbfc63d096b40a99b2a74448b4a7dbadc954e29e4943ad07f7" +PKG_VERSION="306fac5" +PKG_SHA256="d5ad6d9492eae6ea06169996ea33ec0d3b00eee9d584d056ca3632545c81ba22" PKG_REV="2" PKG_ARCH="any" PKG_LICENSE="GPL" diff --git a/packages/mediacenter/kodi-binary-addons/pvr.iptvsimple/package.mk b/packages/mediacenter/kodi-binary-addons/pvr.iptvsimple/package.mk index b44880e688..d040361c41 100644 --- a/packages/mediacenter/kodi-binary-addons/pvr.iptvsimple/package.mk +++ b/packages/mediacenter/kodi-binary-addons/pvr.iptvsimple/package.mk @@ -18,8 +18,8 @@ ################################################################################ PKG_NAME="pvr.iptvsimple" -PKG_VERSION="663040c" -PKG_SHA256="6be5a4dcf368924a04cd458b9b3f264336e8cdb68a2fca77fe26673f224798a7" +PKG_VERSION="55637c8" +PKG_SHA256="5b415fe54bc9248e83792f02b8ecc73b6e22051d7aaae70eebdfc0b8d7da71d6" PKG_REV="2" PKG_ARCH="any" PKG_LICENSE="GPL" diff --git a/packages/mediacenter/kodi-binary-addons/pvr.mediaportal.tvserver/package.mk b/packages/mediacenter/kodi-binary-addons/pvr.mediaportal.tvserver/package.mk index 02572b93a7..ccc4f99953 100644 --- a/packages/mediacenter/kodi-binary-addons/pvr.mediaportal.tvserver/package.mk +++ b/packages/mediacenter/kodi-binary-addons/pvr.mediaportal.tvserver/package.mk @@ -18,8 +18,8 @@ ################################################################################ PKG_NAME="pvr.mediaportal.tvserver" -PKG_VERSION="01af5a0" -PKG_SHA256="5efd46277ec487e600890785059a20cacd4b7bf0ddada235e09dca40231623e0" +PKG_VERSION="6439be6" +PKG_SHA256="0bd0b98050e95b88abaf9d0491158e64882fe683ced570d4e1acb64596b9f56e" PKG_REV="2" PKG_ARCH="any" PKG_LICENSE="GPL" diff --git a/packages/mediacenter/kodi-binary-addons/pvr.mythtv/package.mk b/packages/mediacenter/kodi-binary-addons/pvr.mythtv/package.mk index b3e77b4ff7..a57c97d483 100644 --- a/packages/mediacenter/kodi-binary-addons/pvr.mythtv/package.mk +++ b/packages/mediacenter/kodi-binary-addons/pvr.mythtv/package.mk @@ -18,8 +18,8 @@ ################################################################################ PKG_NAME="pvr.mythtv" -PKG_VERSION="c18ca9e" -PKG_SHA256="4a85244371c4a7105c219b90875893c76b9441b4d0f4da59931ea26483359d2a" +PKG_VERSION="c4d8899" +PKG_SHA256="80e979abdd2cd83984211cc47f7926ca8adce534f74782537d4db6211df7cb55" PKG_REV="2" PKG_ARCH="any" PKG_LICENSE="GPL" diff --git a/packages/mediacenter/kodi-binary-addons/pvr.nextpvr/package.mk b/packages/mediacenter/kodi-binary-addons/pvr.nextpvr/package.mk index 0366de4916..204f40668f 100644 --- a/packages/mediacenter/kodi-binary-addons/pvr.nextpvr/package.mk +++ b/packages/mediacenter/kodi-binary-addons/pvr.nextpvr/package.mk @@ -18,8 +18,8 @@ ################################################################################ PKG_NAME="pvr.nextpvr" -PKG_VERSION="fad3ca9" -PKG_SHA256="4549b3bb4038a9d381f95483a65cababfdf13abdc0f8aa9af44e2cf1b092e2ee" +PKG_VERSION="6f0515b" +PKG_SHA256="2df81507db75722520f40d6bd4bd7363e49cbc84e6002f986f05c25e9bfb1878" PKG_REV="2" PKG_ARCH="any" PKG_LICENSE="GPL" diff --git a/packages/mediacenter/kodi-binary-addons/pvr.njoy/package.mk b/packages/mediacenter/kodi-binary-addons/pvr.njoy/package.mk index e9f4cab612..47c4c0cf05 100644 --- a/packages/mediacenter/kodi-binary-addons/pvr.njoy/package.mk +++ b/packages/mediacenter/kodi-binary-addons/pvr.njoy/package.mk @@ -18,8 +18,8 @@ ################################################################################ PKG_NAME="pvr.njoy" -PKG_VERSION="30743c6" -PKG_SHA256="93996b7bfcf076051eee7ce3d2108efed5f7af32223afd8fe92808cf478a6355" +PKG_VERSION="30aae48" +PKG_SHA256="d4cbcf720f9bbc0ecd7f905853166c95b9f6b936221ee02f11242a0e64307a6a" PKG_REV="2" PKG_ARCH="any" PKG_LICENSE="GPL" diff --git a/packages/mediacenter/kodi-binary-addons/pvr.pctv/package.mk b/packages/mediacenter/kodi-binary-addons/pvr.pctv/package.mk index ffc37c8730..c5551abe38 100644 --- a/packages/mediacenter/kodi-binary-addons/pvr.pctv/package.mk +++ b/packages/mediacenter/kodi-binary-addons/pvr.pctv/package.mk @@ -18,8 +18,8 @@ ################################################################################ PKG_NAME="pvr.pctv" -PKG_VERSION="d0c7241" -PKG_SHA256="abefc40b02505189dc55dba11b774ddd897922ee057c88b5cea289f30ec1b5da" +PKG_VERSION="32d4b66" +PKG_SHA256="509d9fe09208d60f80e064aa5a13cfcf0c1be435e49f95628f159d6647f26a49" PKG_REV="2" PKG_ARCH="any" PKG_LICENSE="GPL" diff --git a/packages/mediacenter/kodi-binary-addons/pvr.stalker/package.mk b/packages/mediacenter/kodi-binary-addons/pvr.stalker/package.mk index a30aaea82b..0ae723b28d 100644 --- a/packages/mediacenter/kodi-binary-addons/pvr.stalker/package.mk +++ b/packages/mediacenter/kodi-binary-addons/pvr.stalker/package.mk @@ -18,8 +18,8 @@ ################################################################################ PKG_NAME="pvr.stalker" -PKG_VERSION="00f3fc4" -PKG_SHA256="1b3a4354991d24ee5b32273133eef48d03749f2d493988f524421a6ab35e0bd6" +PKG_VERSION="6026419" +PKG_SHA256="c8c0ab82149096ced5e781c86d969c28ebcdd15bfc4f1f97eefaf70ec550fc7f" PKG_REV="2" PKG_ARCH="any" PKG_LICENSE="GPL" diff --git a/packages/mediacenter/kodi-binary-addons/pvr.teleboy/package.mk b/packages/mediacenter/kodi-binary-addons/pvr.teleboy/package.mk index 7f7593655b..1ea21b525a 100644 --- a/packages/mediacenter/kodi-binary-addons/pvr.teleboy/package.mk +++ b/packages/mediacenter/kodi-binary-addons/pvr.teleboy/package.mk @@ -17,8 +17,8 @@ ################################################################################ PKG_NAME="pvr.teleboy" -PKG_VERSION="dfa68b0" -PKG_SHA256="dde0747985c9f535642a9be5830cfe59b8651b426883c38653ea4a191f1aa9cf" +PKG_VERSION="0460536" +PKG_SHA256="c0e3a3410af7e31124d5c821847864e1cd8674f86fbfad15b95c29fad5724b24" PKG_REV="1" PKG_ARCH="any" PKG_LICENSE="GPL" diff --git a/packages/mediacenter/kodi-binary-addons/pvr.vbox/package.mk b/packages/mediacenter/kodi-binary-addons/pvr.vbox/package.mk index c90bb6b2e6..822485719e 100644 --- a/packages/mediacenter/kodi-binary-addons/pvr.vbox/package.mk +++ b/packages/mediacenter/kodi-binary-addons/pvr.vbox/package.mk @@ -18,8 +18,8 @@ ################################################################################ PKG_NAME="pvr.vbox" -PKG_VERSION="d2e61a9" -PKG_SHA256="e726378bcd8365d527404ec8831e9d82b716926f30a89734b99db5523fc17d73" +PKG_VERSION="12e1304" +PKG_SHA256="fd3c5c944725e3a0d5c5087756d678e79c316a1b90c4588b11ed0781914cdb49" PKG_REV="2" PKG_ARCH="any" PKG_LICENSE="GPL" diff --git a/packages/mediacenter/kodi-binary-addons/pvr.vuplus/package.mk b/packages/mediacenter/kodi-binary-addons/pvr.vuplus/package.mk index 6596e10962..7822ad8bc3 100644 --- a/packages/mediacenter/kodi-binary-addons/pvr.vuplus/package.mk +++ b/packages/mediacenter/kodi-binary-addons/pvr.vuplus/package.mk @@ -18,8 +18,8 @@ ################################################################################ PKG_NAME="pvr.vuplus" -PKG_VERSION="bcfd34d" -PKG_SHA256="03e6a7c762d54a97ba57a83d5bb012ee24134991bc42e6101e127b8340d7aa39" +PKG_VERSION="75179a3" +PKG_SHA256="4aa46b8de08e8d1c14400cbb5e9ca7c91b04498fcf60d9ac1b09af2aee6e9a91" PKG_REV="2" PKG_ARCH="any" PKG_LICENSE="GPL" diff --git a/packages/mediacenter/kodi-binary-addons/pvr.wmc/package.mk b/packages/mediacenter/kodi-binary-addons/pvr.wmc/package.mk index 95ad5608d7..a2e8b67a26 100644 --- a/packages/mediacenter/kodi-binary-addons/pvr.wmc/package.mk +++ b/packages/mediacenter/kodi-binary-addons/pvr.wmc/package.mk @@ -18,8 +18,8 @@ ################################################################################ PKG_NAME="pvr.wmc" -PKG_VERSION="ce4b47a" -PKG_SHA256="a260a35149e60a53a8c8cab9b62b9ddb7eaf04d6a5cf73e8992c83e8a9c3ae74" +PKG_VERSION="ec652db" +PKG_SHA256="b23e51ac361488e15f63e982cd79d9bec974facc379bc2e0bdd4677ff2b6bfaf" PKG_REV="2" PKG_ARCH="any" PKG_LICENSE="GPL" diff --git a/packages/mediacenter/kodi-binary-addons/pvr.zattoo/package.mk b/packages/mediacenter/kodi-binary-addons/pvr.zattoo/package.mk index b3ab286e3a..30af3b94ca 100644 --- a/packages/mediacenter/kodi-binary-addons/pvr.zattoo/package.mk +++ b/packages/mediacenter/kodi-binary-addons/pvr.zattoo/package.mk @@ -17,8 +17,8 @@ ################################################################################ PKG_NAME="pvr.zattoo" -PKG_VERSION="e72598d" -PKG_SHA256="0751cd169345c7b69c8eeb1711934d4dbf6c6ef92ae4d520ee30a970d8902658" +PKG_VERSION="12134c8" +PKG_SHA256="859e25c0f233be46eed7889bfabde6191e930a33cc78470c1aa32b264c6f6955" PKG_REV="2" PKG_ARCH="any" PKG_LICENSE="GPL" diff --git a/packages/mediacenter/kodi-binary-addons/vfs.libarchive/package.mk b/packages/mediacenter/kodi-binary-addons/vfs.libarchive/package.mk index 66e21cd078..0e79d21985 100644 --- a/packages/mediacenter/kodi-binary-addons/vfs.libarchive/package.mk +++ b/packages/mediacenter/kodi-binary-addons/vfs.libarchive/package.mk @@ -17,8 +17,8 @@ ################################################################################ PKG_NAME="vfs.libarchive" -PKG_VERSION="84a4876" -PKG_SHA256="38591095f93a380aac4be58c5e92bf870da095679a152a3ca4a1552ac4415968" +PKG_VERSION="1bc1517" +PKG_SHA256="421eee7eca4544ae22736b7594ff15934dbee3b592a5d0e6c576cc6c756f481c" PKG_REV="1" PKG_ARCH="any" PKG_LICENSE="GPL" diff --git a/packages/mediacenter/kodi-binary-addons/visualization.projectm/package.mk b/packages/mediacenter/kodi-binary-addons/visualization.projectm/package.mk index dfc1402b7e..b3a5496fb2 100644 --- a/packages/mediacenter/kodi-binary-addons/visualization.projectm/package.mk +++ b/packages/mediacenter/kodi-binary-addons/visualization.projectm/package.mk @@ -17,8 +17,8 @@ ################################################################################ PKG_NAME="visualization.projectm" -PKG_VERSION="a533f9b" -PKG_SHA256="98cde0715786fb1d23469bccd2a174e06bfc02e9e1e983b3240f1fd3acbe3bf6" +PKG_VERSION="06d02b5" +PKG_SHA256="e37b93450b4f33eb6a1b2cfdeeebb182869d61c96f7f15df1cee840a2deb99f8" PKG_REV="2" PKG_ARCH="any" PKG_LICENSE="GPL" From 54de46feb7e28318d255bb99114c0a54fba707d6 Mon Sep 17 00:00:00 2001 From: MilhouseVH Date: Wed, 20 Jun 2018 21:13:45 +0100 Subject: [PATCH 3/5] ffmpeg: add patch to fix unplayable videos https://trac.ffmpeg.org/ticket/7165 https://forum.kodi.tv/showthread.php?tid=298461&pid=2745127#pid2745127 --- ...ng-into-valid-range-in-mov_read_stsc.patch | 42 +++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 packages/multimedia/ffmpeg/patches/ffmpeg-99.1005-replace-a-value-error-by-clipping-into-valid-range-in-mov_read_stsc.patch diff --git a/packages/multimedia/ffmpeg/patches/ffmpeg-99.1005-replace-a-value-error-by-clipping-into-valid-range-in-mov_read_stsc.patch b/packages/multimedia/ffmpeg/patches/ffmpeg-99.1005-replace-a-value-error-by-clipping-into-valid-range-in-mov_read_stsc.patch new file mode 100644 index 0000000000..61a332d933 --- /dev/null +++ b/packages/multimedia/ffmpeg/patches/ffmpeg-99.1005-replace-a-value-error-by-clipping-into-valid-range-in-mov_read_stsc.patch @@ -0,0 +1,42 @@ +From: Michael Niedermayer +Date: Mon, 21 May 2018 01:16:58 +0000 (+0200) +Subject: avformat/mov: replace a value error by clipping into valid range in mov_read_stsc() +X-Git-Url: http://git.videolan.org/?p=ffmpeg.git;a=commitdiff_plain;h=fe84f70819d6f5aab3c4823290e0d32b99d6de78 + +avformat/mov: replace a value error by clipping into valid range in mov_read_stsc() + +Fixes: #7165 + +Signed-off-by: Michael Niedermayer +--- + +diff --git a/libavformat/mov.c b/libavformat/mov.c +index a078bf4712..f2a540ad50 100644 +--- a/libavformat/mov.c ++++ b/libavformat/mov.c +@@ -2642,14 +2642,22 @@ static int mov_read_stsc(MOVContext *c, AVIOContext *pb, MOVAtom atom) + + sc->stsc_count = i; + for (i = sc->stsc_count - 1; i < UINT_MAX; i--) { ++ int64_t first_min = i + 1; + if ((i+1 < sc->stsc_count && sc->stsc_data[i].first >= sc->stsc_data[i+1].first) || + (i > 0 && sc->stsc_data[i].first <= sc->stsc_data[i-1].first) || +- sc->stsc_data[i].first < 1 || ++ sc->stsc_data[i].first < first_min || + sc->stsc_data[i].count < 1 || + sc->stsc_data[i].id < 1) { + av_log(c->fc, AV_LOG_WARNING, "STSC entry %d is invalid (first=%d count=%d id=%d)\n", i, sc->stsc_data[i].first, sc->stsc_data[i].count, sc->stsc_data[i].id); +- if (i+1 >= sc->stsc_count || sc->stsc_data[i+1].first < 2) +- return AVERROR_INVALIDDATA; ++ if (i+1 >= sc->stsc_count) { ++ sc->stsc_data[i].first = FFMAX(sc->stsc_data[i].first, first_min); ++ if (i > 0 && sc->stsc_data[i].first <= sc->stsc_data[i-1].first) ++ sc->stsc_data[i].first = FFMIN(sc->stsc_data[i-1].first + 1LL, INT_MAX); ++ sc->stsc_data[i].count = FFMAX(sc->stsc_data[i].count, 1); ++ sc->stsc_data[i].id = FFMAX(sc->stsc_data[i].id, 1); ++ continue; ++ } ++ av_assert0(sc->stsc_data[i+1].first >= 2); + // We replace this entry by the next valid + sc->stsc_data[i].first = sc->stsc_data[i+1].first - 1; + sc->stsc_data[i].count = sc->stsc_data[i+1].count; From 6367035631f09e8d7aa6ce6d31183eb1086fcfc0 Mon Sep 17 00:00:00 2001 From: MilhouseVH Date: Fri, 29 Jun 2018 00:20:53 +0100 Subject: [PATCH 4/5] libnfs: update to libnfs-3.0.0 --- packages/network/libnfs/package.mk | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/packages/network/libnfs/package.mk b/packages/network/libnfs/package.mk index 4038170814..ab1e135880 100644 --- a/packages/network/libnfs/package.mk +++ b/packages/network/libnfs/package.mk @@ -1,24 +1,25 @@ ################################################################################ -# This file is part of OpenELEC - http://www.openelec.tv +# This file is part of LibreELEC - https://libreelec.tv +# Copyright (C) 2018-present Team LibreELEC # Copyright (C) 2009-2016 Stephan Raue (stephan@openelec.tv) # -# OpenELEC is free software: you can redistribute it and/or modify +# LibreELEC is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 2 of the License, or # (at your option) any later version. # -# OpenELEC is distributed in the hope that it will be useful, +# LibreELEC is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License -# along with OpenELEC. If not, see . +# along with LibreELEC. If not, see . ################################################################################ PKG_NAME="libnfs" -PKG_VERSION="2.0.0" -PKG_SHA256="7ea6cd8fa6c461d01091e584d424d28e137d23ff4b65b95d01a3fd0ef95d120e" +PKG_VERSION="3.0.0" +PKG_SHA256="445d92c5fc55e4a5b115e358e60486cf8f87ee50e0103d46a02e7fb4618566a5" PKG_ARCH="any" PKG_LICENSE="GPL" PKG_SITE="https://github.com/sahlberg/libnfs" From d115f9058ca750e6e40b20d45b0d3cdb6bde8be5 Mon Sep 17 00:00:00 2001 From: MilhouseVH Date: Sun, 15 Jul 2018 04:43:04 +0100 Subject: [PATCH 5/5] ffmpeg: update HEVC patch --- ...mpeg-99.1003-pfcd_hevc_optimisations.patch | 679 +++++++++--------- 1 file changed, 330 insertions(+), 349 deletions(-) diff --git a/packages/multimedia/ffmpeg/patches/ffmpeg-99.1003-pfcd_hevc_optimisations.patch b/packages/multimedia/ffmpeg/patches/ffmpeg-99.1003-pfcd_hevc_optimisations.patch index bd5db50f8c..3ad272472a 100644 --- a/packages/multimedia/ffmpeg/patches/ffmpeg-99.1003-pfcd_hevc_optimisations.patch +++ b/packages/multimedia/ffmpeg/patches/ffmpeg-99.1003-pfcd_hevc_optimisations.patch @@ -19,7 +19,7 @@ index 0e57cb0b4c..b2e3374fea 100644 /ffplay /ffprobe diff --git a/configure b/configure -index dee507cb6a..0ee9efe1e7 100755 +index dee507cb6a..9a93189107 100755 --- a/configure +++ b/configure @@ -318,6 +318,7 @@ External library support: @@ -30,15 +30,6 @@ index dee507cb6a..0ee9efe1e7 100755 --disable-nvdec disable Nvidia video decoding acceleration (via hwaccel) [autodetect] --disable-nvenc disable Nvidia video encoding code [autodetect] --enable-omx enable OpenMAX IL code [no] -@@ -1036,7 +1037,7 @@ EOF - - check_insn(){ - log check_insn "$@" -- check_inline_asm ${1}_inline "$2" -+ check_inline_asm ${1}_inline "\"$2\"" - check_as ${1}_external "$2" - } - @@ -1776,6 +1777,7 @@ FEATURE_LIST=" gray hardcoded_tables @@ -12100,10 +12091,10 @@ index 0000000000..6ce3d3ca8d + diff --git a/libavcodec/arm/rpi_hevcpred_intra_hv_neon.S b/libavcodec/arm/rpi_hevcpred_intra_hv_neon.S new file mode 100644 -index 0000000000..afafb6bc44 +index 0000000000..67192e7213 --- /dev/null +++ b/libavcodec/arm/rpi_hevcpred_intra_hv_neon.S -@@ -0,0 +1,922 @@ +@@ -0,0 +1,911 @@ +/* + * Copyright (c) 2018 John Cox (for Raspberry Pi) + * @@ -12340,28 +12331,25 @@ index 0000000000..afafb6bc44 +@ ? Might be faster as simple arm + +function ff_hevc_rpi_pred_horizontal_4_neon_8, export=1 -+ vld1.32 {d0[0] }, [r1 :32] @ Up -+ ldrb r12, [r2, #-1] @ Up-left -+ vld1.32 {d16[0]}, [r2 :32] @ left -+ -+ vdup.8 d4, r12 -+ vmov.u8 d6, #128 -+ vhsub.u8 d0, d4 -+ -+ veor.8 d2, d16, d6 @ Make -128,127 so we can qadd -+ add r2, r0, r3 -+ vdup.8 d2, d2[0] -+ lsl r3, #1 -+ vqadd.s8 d0, d2 -+ veor.8 d0, d6 -+ -+ vdup.8 d1, d16[1] -+ vdup.8 d2, d16[2] -+ vdup.8 d3, d16[3] -+ vst1.32 {d0[0] }, [r0 :32], r3 -+ vst1.32 {d1[0] }, [r2 :32], r3 -+ vst1.32 {d2[0] }, [r0 :32] -+ vst1.32 {d3[0] }, [r2 :32] ++ ldrb ip, [r2, #-1] @ Top-left ++ vld1.32 {d0[0]}, [r1 :32] @ Top ++ add r1, r2, #3 ++ vld1.8 {d1[]}, [r2]! ++ vdup.8 d2, ip ++ vmov.i8 d3, #128 ++ vhsub.u8 d0, d2 ++ veor d1, d3 ++ vld1.8 {d2[]}, [r2]! ++ add ip, r0, r3 ++ vqadd.s8 d0, d0, d1 ++ lsl r3, #1 ++ vld1.8 {d1[]}, [r2] ++ vld1.8 {d4[]}, [r1] ++ veor d0, d3 ++ vst1.32 {d0[0]}, [r0 :32], r3 ++ vst1.32 {d2[0]}, [ip :32], r3 ++ vst1.32 {d1[0]}, [r0 :32] ++ vst1.32 {d4[0]}, [ip :32] + + bx lr +endfunc @@ -12374,35 +12362,27 @@ index 0000000000..afafb6bc44 +@ ptrdiff_t stride) [r3] + +function ff_hevc_rpi_pred_horizontal_8_neon_8, export=1 -+ vld1.8 {d0 }, [r1 :64] @ Up -+ ldrb r12, [r2, #-1] @ Up-left -+ vld1.8 {d16}, [r2 :64] @ left -+ -+ vdup.8 d4, r12 -+ vmov.u8 d6, #128 -+ vhsub.u8 d0, d4 -+ -+ veor.8 d2, d16, d6 @ Make -128,127 so we can qadd -+ add r2, r0, r3 -+ vdup.8 d2, d2[0] -+ lsl r3, #1 -+ vqadd.s8 d0, d2 -+ mov r1, #3 -+ veor.8 d0, d6 -+ -+ vdup.8 d4, d16[1] -+ vst1.8 {d0 }, [r0 :64], r3 -+ vst1.8 {d4 }, [r2 :64], r3 -+ ++ ldrb ip, [r2, #-1] @ Top-left ++ vld1.8 {d0}, [r1 :64] @ Top ++ vmov.i8 d1, #128 ++ vld1.8 {d2[]}, [r2]! ++ mov r1, #8-2 ++ vdup.8 d3, ip ++ vhsub.u8 d0, d3 ++ veor d2, d1 ++ vqadd.s8 d0, d2 ++ vld1.8 {d2[]}, [r2]! ++ veor d0, d1 ++ vst1.8 {d0}, [r0], r3 +1: -+ vext.8 d16, d16, #2 -+ subs r1, #1 -+ vdup.8 d0, d16[0] -+ vdup.8 d4, d16[1] -+ vst1.8 {d0 }, [r0 :64], r3 -+ vst1.8 {d4 }, [r2 :64], r3 ++ vld1.8 {d0[]}, [r2]! ++ subs r1, #2 ++ vst1.8 {d2}, [r0 :64], r3 ++ vld1.8 {d2[]}, [r2]! ++ vst1.8 {d0}, [r0 :64], r3 + bne 1b + ++ vst1.8 {d2}, [r0 :64] + bx lr +endfunc + @@ -12414,35 +12394,27 @@ index 0000000000..afafb6bc44 +@ ptrdiff_t stride) [r3] + +function ff_hevc_rpi_pred_horizontal_16_neon_8, export=1 -+ vld1.8 {q0 }, [r1 :128] @ Up -+ ldrb r12, [r2, #-1] @ Up-left -+ vld1.8 {q8 }, [r2 :128] @ left -+ -+ vdup.8 q2, r12 -+ vmov.u8 q3, #128 -+ vhsub.u8 q0, q2 -+ -+ veor.8 d2, d16, d6 @ Make -128,127 so we can qadd -+ add r2, r0, r3 -+ vdup.8 q1, d2[0] -+ lsl r3, #1 -+ vqadd.s8 q0, q1 -+ mov r1, #7 -+ veor.8 q0, q3 -+ -+ vdup.8 q2, d16[1] -+ vst1.8 {q0 }, [r0 :128], r3 -+ vst1.8 {q2 }, [r2 :128], r3 -+ ++ ldrb ip, [r2, #-1] @ Top-left ++ vld1.8 {q0}, [r1 :64] @ Top ++ mov r1, #16-2 ++ vld1.8 {d4[],d5[]}, [r2]! ++ vdup.8 q3, ip ++ vhsub.u8 q0, q3 ++ vmov.i8 q1, #128 ++ veor q2, q1 ++ vqadd.s8 q0, q2 ++ vld1.8 {d4[],d5[]}, [r2]! ++ veor q0, q1 ++ vst1.8 {q0}, [r0], r3 +1: -+ vext.8 q8, q8, #2 -+ subs r1, #1 -+ vdup.8 q0, d16[0] -+ vdup.8 q2, d16[1] -+ vst1.8 {q0 }, [r0 :128], r3 -+ vst1.8 {q2 }, [r2 :128], r3 ++ vld1.8 {d0[],d1[]}, [r2]! ++ subs r1, #2 ++ vst1.8 {q2}, [r0 :64], r3 ++ vld1.8 {d4[],d5[]}, [r2]! ++ vst1.8 {q0}, [r0 :64], r3 + bne 1b + ++ vst1.8 {q2}, [r0 :64] + bx lr +endfunc + @@ -12454,22 +12426,24 @@ index 0000000000..afafb6bc44 +@ ptrdiff_t stride) [r3] + +function ff_hevc_rpi_pred_horizontal_32_neon_8, export=1 -+ vld1.8 {q8, q9 }, [r2 :128] @ Left -+ add r2, r0, r3 -+ lsl r3, #1 -+ mov r1, #16 ++ vld1.8 {d0[],d1[]}, [r2]! ++ add ip, r0, #16 ++ mov r1, #32-2 ++ vld1.8 {d2[],d3[]}, [r2]! ++ vst1.8 {q0}, [r0 :128], r3 ++ vst1.8 {q0}, [ip :128], r3 +1: -+ vdup.8 q0, d16[0] -+ vdup.8 q1, d16[0] -+ vdup.8 q2, d16[1] -+ vdup.8 q3, d16[1] -+ vext.8 q8, q9, #2 -+ vext.8 q9, q9, #2 -+ vst1.8 {q0, q1 }, [r0 :128], r3 -+ subs r1, #1 -+ vst1.8 {q2, q3 }, [r2 :128], r3 ++ vld1.8 {d0[],d1[]}, [r2]! ++ subs r1, #2 ++ vst1.8 {q1}, [r0 :128], r3 ++ vst1.8 {q1}, [ip :128], r3 ++ vld1.8 {d2[],d3[]}, [r2]! ++ vst1.8 {q0}, [r0 :128], r3 ++ vst1.8 {q0}, [ip :128], r3 + bne 1b + ++ vst1.8 {q1}, [r0 :128] ++ vst1.8 {q1}, [ip :128] + bx lr +endfunc + @@ -12481,19 +12455,22 @@ index 0000000000..afafb6bc44 +@ ptrdiff_t stride) [r3] + +function ff_hevc_rpi_pred_horizontal_c_4_neon_8, export=1 -+ vld1.16 {d16}, [r2 :64] @ Left -+ add r2, r0, r3, lsl #1 -+ lsl r3, #2 -+ -+ vdup.16 d0, d16[0] -+ vdup.16 d1, d16[1] -+ vdup.16 d2, d16[2] -+ vdup.16 d3, d16[3] -+ -+ vst1.16 {d0 }, [r0 :64], r3 -+ vst1.16 {d1 }, [r2 :64], r3 -+ vst1.16 {d2 }, [r0 :64] -+ vst1.16 {d3 }, [r2 :64] ++ add r1, r2, #2 ++ vld1.16 {d0[]}, [r2] ++ add r2, #4 ++ vld1.16 {d1[]}, [r1] ++ add r1, #4 ++ vld1.16 {d2[]}, [r2] ++A add r2, r0, r3, lsl #1 ++T lsl r3, #1 ++T add r2, r0, r3 ++ vld1.16 {d3[]}, [r1] ++A lsl r3, #2 ++T lsl r3, #1 ++ vst1.16 {d0}, [r0 :64], r3 ++ vst1.16 {d1}, [r2 :64], r3 ++ vst1.16 {d2}, [r0 :64] ++ vst1.16 {d3}, [r2 :64] + + bx lr +endfunc @@ -12506,19 +12483,20 @@ index 0000000000..afafb6bc44 +@ ptrdiff_t stride) [r3] + +function ff_hevc_rpi_pred_horizontal_c_8_neon_8, export=1 -+ vld1.16 {q8 }, [r2 :128] @ Left -+ add r2, r0, r3, lsl #1 -+ lsl r3, #2 -+ mov r1, #4 ++ vld1.16 {d0[],d1[]}, [r2]! ++ lsl r3, #1 ++ vld1.16 {d2[],d3[]}, [r2]! ++ mov r1, #8-2 ++ vst1.16 {q0}, [r0 :64], r3 +1: -+ vdup.16 q0, d16[0] -+ vdup.16 q2, d16[1] -+ vext.16 q8, q8, #2 -+ vst1.16 {q0 }, [r0 :128], r3 -+ subs r1, #1 -+ vst1.16 {q2 }, [r2 :128], r3 ++ vld1.16 {d0[],d1[]}, [r2]! ++ subs r1, #2 ++ vst1.16 {q1}, [r0 :64], r3 ++ vld1.16 {d2[],d3[]}, [r2]! ++ vst1.16 {q0}, [r0 :64], r3 + bne 1b + ++ vst1.16 {q1}, [r0 :64] + bx lr +endfunc + @@ -12530,22 +12508,25 @@ index 0000000000..afafb6bc44 +@ ptrdiff_t stride) [r3] + +function ff_hevc_rpi_pred_horizontal_c_16_neon_8, export=1 -+ vld1.16 {q8, q9 }, [r2 :128] @ Left -+ add r2, r0, r3, lsl #1 -+ lsl r3, #2 -+ mov r1, #8 ++ vld1.16 {d0[],d1[]}, [r2]! ++ lsl r3, #1 ++ add ip, r0, #16 ++ mov r1, #16-2 ++ vld1.16 {d2[],d3[]}, [r2]! ++ vst1.16 {q0}, [r0 :128], r3 ++ vst1.16 {q0}, [ip :128], r3 +1: -+ vdup.16 q0, d16[0] -+ vdup.16 q1, d16[0] -+ vdup.16 q2, d16[1] -+ vdup.16 q3, d16[1] -+ vext.16 q8, q9, #2 -+ vext.16 q9, q9, #2 -+ vst1.16 {q0, q1 }, [r0 :128], r3 -+ subs r1, #1 -+ vst1.16 {q2, q3 }, [r2 :128], r3 ++ vld1.16 {d0[],d1[]}, [r2]! ++ subs r1, #2 ++ vst1.16 {q1}, [r0 :128], r3 ++ vst1.16 {q1}, [ip :128], r3 ++ vld1.16 {d2[],d3[]}, [r2]! ++ vst1.16 {q0}, [r0 :128], r3 ++ vst1.16 {q0}, [ip :128], r3 + bne 1b + ++ vst1.16 {q1}, [r0 :128] ++ vst1.16 {q1}, [ip :128] + bx lr +endfunc + @@ -12780,31 +12761,28 @@ index 0000000000..afafb6bc44 +@ ptrdiff_t stride) [r3] + +function ff_hevc_rpi_pred_horizontal_4_neon_10, export=1 -+ vld1.16 {d0 }, [r1 :64] @ Up -+ ldrh r12, [r2, #-2] @ Up-left -+ vld1.16 {d16}, [r2 :64] @ left -+ -+ vdup.16 d4, r12 -+ add r2, r0, r3, lsl #1 -+ vhsub.u16 d0, d4 -+ -+ vdup.16 d6, d16[0] -+ vmov.s16 d4, #0 -+ vadd.i16 d0, d6 -+ -+ vmov.s16 d6, #0x3ff -+ vmax.s16 d0, d4 -+ lsl r3, #2 -+ vmin.s16 d0, d6 -+ -+ vdup.16 d1, d16[1] -+ vdup.16 d2, d16[2] -+ vdup.16 d3, d16[3] -+ -+ vst1.16 {d0 }, [r0 :64], r3 -+ vst1.16 {d1 }, [r2 :64], r3 -+ vst1.16 {d2 }, [r0 :64] -+ vst1.16 {d3 }, [r2 :64] ++ ldrh ip, [r2, #-2] @ Top-left ++ vld1.16 {d0}, [r1 :64] @ Top ++ vmov.i16 d1, #0 ++ vld1.16 {d2[]}, [r2]! ++T lsl r3, #1 ++ vdup.16 d3, ip ++ vmov.i16 d4, #0x3ff ++ vhsub.u16 d0, d3 ++A add ip, r0, r3, lsl #1 ++T add ip, r0, r3 ++ vld1.16 {d3[]}, [r2]! ++A lsl r3, #2 ++T lsl r3, #1 ++ vadd.i16 d0, d2 ++ vld1.16 {d2[]}, [r2]! ++ vmax.s16 d0, d1 ++ vld1.16 {d1[]}, [r2] ++ vmin.s16 d0, d4 ++ vst1.16 {d0}, [r0 :64], r3 ++ vst1.16 {d3}, [ip :64], r3 ++ vst1.16 {d2}, [r0 :64] ++ vst1.16 {d1}, [ip :64] + + bx lr +endfunc @@ -12817,37 +12795,29 @@ index 0000000000..afafb6bc44 +@ ptrdiff_t stride) [r3] + +function ff_hevc_rpi_pred_horizontal_8_neon_10, export=1 -+ vld1.16 {q0 }, [r1 :128] @ Up -+ ldrh r12, [r2, #-2] @ Up-left -+ vld1.16 {q8 }, [r2 :128] @ left -+ -+ vdup.16 q2, r12 -+ add r2, r0, r3, lsl #1 -+ vhsub.u16 q0, q2 -+ -+ vdup.16 q3, d16[0] -+ lsl r3, #2 -+ vmov.s16 q2, #0 -+ vadd.i16 q0, q3 -+ -+ mov r1, #3 -+ vmov.s16 q3, #0x3ff -+ vmax.s16 q0, q2 -+ vmin.s16 q0, q3 -+ -+ vdup.16 q2, d16[1] -+ -+ vst1.16 {q0 }, [r0 :128], r3 -+ vst1.16 {q2 }, [r2 :128], r3 ++ ldrh ip, [r2, #-2] @ Top-left ++ vld1.16 {q0}, [r1 :128] @ Top ++ lsl r3, #1 ++ vdup.16 q1, ip ++ mov r1, #8-2 ++ vhsub.u16 q0, q1 ++ vld1.16 {d2[],d3[]}, [r2]! ++ vmov.i16 q2, #0 ++ vadd.i16 q0, q1 ++ vmov.i16 q1, #0x3ff ++ vmax.s16 q0, q2 ++ vld1.16 {d4[],d5[]}, [r2]! ++ vmin.s16 q0, q1 ++ vst1.16 {q0}, [r0 :128], r3 +1: -+ vext.16 q8, q8, #2 -+ vdup.16 q0, d16[0] -+ vdup.16 q2, d16[1] -+ subs r1, #1 -+ vst1.16 {q0 }, [r0 :128], r3 -+ vst1.16 {q2 }, [r2 :128], r3 ++ vld1.16 {d0[],d1[]}, [r2]! ++ subs r1, #2 ++ vst1.16 {q2}, [r0 :128], r3 ++ vld1.16 {d4[],d5[]}, [r2]! ++ vst1.16 {q0}, [r0 :128], r3 + bne 1b + ++ vst1.16 {q2}, [r0 :128] + bx lr +endfunc + @@ -12859,46 +12829,38 @@ index 0000000000..afafb6bc44 +@ ptrdiff_t stride) [r3] + +function ff_hevc_rpi_pred_horizontal_16_neon_10, export=1 -+ vld1.16 {q0, q1 }, [r1 :128] @ Up -+ ldrh r12, [r2, #-2] @ Up-left -+ vld1.16 {q8, q9 }, [r2 :128] @ left -+ -+ -+ vdup.16 q2, r12 -+ add r2, r0, r3, lsl #1 -+ vhsub.u16 q0, q2 -+ vhsub.u16 q1, q2 -+ -+ vdup.16 q3, d16[0] -+ lsl r3, #2 -+ vmov.s16 q2, #0 -+ vadd.i16 q0, q3 -+ vadd.i16 q1, q3 -+ -+ mov r1, #7 -+ vmov.s16 q3, #0x3ff -+ vmax.s16 q0, q2 -+ vmax.s16 q1, q2 -+ vmin.s16 q0, q3 -+ vmin.s16 q1, q3 -+ -+ vdup.16 q2, d16[1] -+ vdup.16 q3, d16[1] -+ -+ vst1.16 {q0, q1 }, [r0 :128], r3 -+ vst1.16 {q2, q3 }, [r2 :128], r3 ++ ldrh ip, [r2, #-2] @ Top-left ++ vld1.16 {q0-q1}, [r1 :128] @ Top ++ lsl r3, #1 ++ vdup.16 q2, ip ++ add ip, r0, r3 ++ vhsub.u16 q0, q2 ++ add ip, #16 ++ vhsub.u16 q1, q2 ++ mov r1, #16-2 ++ vld1.16 {d4[],d5[]}, [r2]! ++ vmov.i16 q3, #0 ++ vadd.u16 q0, q2 ++ vadd.i16 q1, q2 ++ vmov.i16 q2, #0x3ff ++ vmax.s16 q0, q3 ++ vmax.s16 q1, q3 ++ vld1.16 {d6[],d7[]}, [r2]! ++ vmin.s16 q0, q2 ++ vmin.s16 q1, q2 ++ vst1.16 {q0-q1}, [r0 :128], r3 +1: -+ vext.16 q8, q9, #2 -+ vext.16 q9, q9, #2 -+ vdup.16 q0, d16[0] -+ vdup.16 q1, d16[0] -+ vdup.16 q2, d16[1] -+ vdup.16 q3, d16[1] -+ subs r1, #1 -+ vst1.16 {q0, q1 }, [r0 :128], r3 -+ vst1.16 {q2, q3 }, [r2 :128], r3 ++ vld1.16 {d0[],d1[]}, [r2]! ++ subs r1, #2 ++ vst1.16 {q3}, [r0 :128], r3 ++ vst1.16 {q3}, [ip :128], r3 ++ vld1.16 {d6[],d7[]}, [r2]! ++ vst1.16 {q0}, [r0 :128], r3 ++ vst1.16 {q0}, [ip :128], r3 + bne 1b + ++ vst1.16 {q3}, [r0 :128] ++ vst1.16 {q3}, [ip :128] + bx lr +endfunc + @@ -12910,31 +12872,37 @@ index 0000000000..afafb6bc44 +@ ptrdiff_t stride) [r3] + +function ff_hevc_rpi_pred_horizontal_32_neon_10, export=1 -+ vldm r2, { q8-q11} -+ mov r1, #16 ++ vld1.16 {d0[],d1[]}, [r2]! ++ add ip, r0, #16 ++ push {lr} ++ mov lr, #32 ++ vld1.16 {d2[],d3[]}, [r2]! ++ lsl r3, #1 ++ vst1.16 {q0}, [r0 :128], lr ++ sub r3, #32 ++ vst1.16 {q0}, [ip :128], lr ++ mov r1, #32-2 ++ vst1.16 {q0}, [r0 :128], r3 ++ vst1.16 {q0}, [ip :128], r3 +1: -+ vdup.16 q0, d16[0] -+ vdup.16 q1, d16[0] -+ vdup.16 q2, d16[0] -+ vdup.16 q3, d16[0] -+ add r2, r0, r3, lsl #1 -+ vdup.16 q12, d16[1] -+ vdup.16 q13, d16[1] -+ vdup.16 q14, d16[1] -+ vdup.16 q15, d16[1] -+ vstm r0, { q0-q3 } -+ vstm r2, {q12-q15} -+ -+ vext.16 q8, q9, #2 -+ vext.16 q9, q10, #2 -+ add r0, r0, r3, lsl #2 -+ vext.16 q10, q11, #2 -+ subs r1, #1 -+ vext.16 q11, q11, #2 -+ ++ vld1.16 {d0[],d1[]}, [r2]! ++ subs r1, #2 ++ vst1.16 {q1}, [r0 :128], lr ++ vst1.16 {q1}, [ip :128], lr ++ vst1.16 {q1}, [r0 :128], r3 ++ vst1.16 {q1}, [ip :128], r3 ++ vld1.16 {d2[],d3[]}, [r2]! ++ vst1.16 {q0}, [r0 :128], lr ++ vst1.16 {q0}, [ip :128], lr ++ vst1.16 {q0}, [r0 :128], r3 ++ vst1.16 {q0}, [ip :128], r3 + bne 1b + -+ bx lr ++ vst1.16 {q1}, [r0 :128], lr ++ vst1.16 {q1}, [ip :128], lr ++ vst1.16 {q1}, [r0 :128] ++ vst1.16 {q1}, [ip :128] ++ pop {pc} +endfunc + + @@ -12945,19 +12913,22 @@ index 0000000000..afafb6bc44 +@ ptrdiff_t stride) [r3] + +function ff_hevc_rpi_pred_horizontal_c_4_neon_10, export=1 -+ vld1.16 {q8 }, [r2 :128] @ Left -+ add r2, r0, r3, lsl #2 -+ lsl r3, #3 -+ -+ vdup.32 q0, d16[0] -+ vdup.32 q1, d16[1] -+ vdup.32 q2, d17[0] -+ vdup.32 q3, d17[1] -+ -+ vst1.32 {q0 }, [r0 :128], r3 -+ vst1.16 {q1 }, [r2 :128], r3 -+ vst1.32 {q2 }, [r0 :128] -+ vst1.16 {q3 }, [r2 :128] ++ add r1, r2, #4 ++ vld1.32 {d0[],d1[]}, [r2] ++ add r2, #8 ++ vld1.32 {d2[],d3[]}, [r1] ++ add r1, #8 ++ vld1.32 {d4[],d5[]}, [r2] ++A add r2, r0, r3, lsl #2 ++T lsl r3, #2 ++T add r2, r0, r3 ++ vld1.32 {d6[],d7[]}, [r1] ++A lsl r3, #3 ++T lsl r3, #1 ++ vst1.32 {q0}, [r0 :128], r3 ++ vst1.32 {q1}, [r2 :128], r3 ++ vst1.32 {q2}, [r0 :128] ++ vst1.32 {q3}, [r2 :128] + + bx lr +endfunc @@ -12970,22 +12941,25 @@ index 0000000000..afafb6bc44 +@ ptrdiff_t stride) [r3] + +function ff_hevc_rpi_pred_horizontal_c_8_neon_10, export=1 -+ vld1.16 {q8, q9 }, [r2 :128] @ Left -+ add r2, r0, r3, lsl #2 -+ lsl r3, #3 -+ mov r1, #4 ++ vld1.32 {d0[],d1[]}, [r2]! ++ lsl r3, #2 ++ add ip, r0, #16 ++ mov r1, #8-2 ++ vld1.32 {d2[],d3[]}, [r2]! ++ vst1.32 {q0}, [r0 :128], r3 ++ vst1.32 {q0}, [ip :128], r3 +1: -+ vdup.32 q0, d16[0] -+ vdup.32 q1, d16[0] -+ vdup.32 q2, d16[1] -+ vdup.32 q3, d16[1] -+ vext.32 q8, q9, #2 -+ vext.32 q9, q9, #2 -+ vst1.32 {q0, q1 }, [r0 :128], r3 -+ subs r1, #1 -+ vst1.32 {q2, q3 }, [r2 :128], r3 ++ vld1.32 {d0[],d1[]}, [r2]! ++ subs r1, #2 ++ vst1.32 {q1}, [r0 :128], r3 ++ vst1.32 {q1}, [ip :128], r3 ++ vld1.32 {d2[],d3[]}, [r2]! ++ vst1.32 {q0}, [r0 :128], r3 ++ vst1.32 {q0}, [ip :128], r3 + bne 1b + ++ vst1.32 {q1}, [r0 :128] ++ vst1.32 {q1}, [ip :128] + bx lr +endfunc + @@ -12997,31 +12971,37 @@ index 0000000000..afafb6bc44 +@ ptrdiff_t stride) [r3] + +function ff_hevc_rpi_pred_horizontal_c_16_neon_10, export=1 -+ vldm r2, { q8-q11} -+ mov r1, #8 ++ vld1.32 {d0[],d1[]}, [r2]! ++ add ip, r0, #16 ++ push {lr} ++ mov lr, #32 ++ vld1.32 {d2[],d3[]}, [r2]! ++ lsl r3, #2 ++ vst1.32 {q0}, [r0 :128], lr ++ sub r3, #32 ++ vst1.32 {q0}, [ip :128], lr ++ mov r1, #16-2 ++ vst1.32 {q0}, [r0 :128], r3 ++ vst1.32 {q0}, [ip :128], r3 +1: -+ vdup.32 q0, d16[0] -+ vdup.32 q1, d16[0] -+ vdup.32 q2, d16[0] -+ vdup.32 q3, d16[0] -+ add r2, r0, r3, lsl #2 -+ vdup.32 q12, d16[1] -+ vdup.32 q13, d16[1] -+ vdup.32 q14, d16[1] -+ vdup.32 q15, d16[1] -+ vstm r0, { q0-q3 } -+ vstm r2, {q12-q15} -+ -+ vext.32 q8, q9, #2 -+ vext.32 q9, q10, #2 -+ add r0, r0, r3, lsl #3 -+ vext.32 q10, q11, #2 -+ subs r1, #1 -+ vext.32 q11, q11, #2 -+ ++ vld1.32 {d0[],d1[]}, [r2]! ++ subs r1, #2 ++ vst1.32 {q1}, [r0 :128], lr ++ vst1.32 {q1}, [ip :128], lr ++ vst1.32 {q1}, [r0 :128], r3 ++ vst1.32 {q1}, [ip :128], r3 ++ vld1.32 {d2[],d3[]}, [r2]! ++ vst1.32 {q0}, [r0 :128], lr ++ vst1.32 {q0}, [ip :128], lr ++ vst1.32 {q0}, [r0 :128], r3 ++ vst1.32 {q0}, [ip :128], r3 + bne 1b + -+ bx lr ++ vst1.32 {q1}, [r0 :128], lr ++ vst1.32 {q1}, [ip :128], lr ++ vst1.32 {q1}, [r0 :128] ++ vst1.32 {q1}, [ip :128] ++ pop {pc} +endfunc + + @@ -18040,10 +18020,10 @@ index 0000000000..8e7695bcf9 + diff --git a/libavcodec/rpi_hevc_mvs.c b/libavcodec/rpi_hevc_mvs.c new file mode 100644 -index 0000000000..f283f01489 +index 0000000000..163e2558dc --- /dev/null +++ b/libavcodec/rpi_hevc_mvs.c -@@ -0,0 +1,704 @@ +@@ -0,0 +1,681 @@ +/* + * HEVC video decoder + * @@ -18163,7 +18143,7 @@ index 0000000000..f283f01489 + refPicList, X, refIdxLx, \ + refPicList_col, L ## l, temp_col.ref_idx[l]) + -+// derive the motion vectors section 8.5.3.1.8 ++// derive the motion vectors section 8.5.3.2.8 +static int derive_temporal_colocated_mvs(const HEVCRpiContext * const s, const MvField temp_col, + const int refIdxLx, Mv * const mvLXCol, const int X, + const int colPic, const RefPicList * const refPicList_col) @@ -18173,35 +18153,12 @@ index 0000000000..f283f01489 + if (temp_col.pred_flag == PF_INTRA) + return 0; + -+ if (!(temp_col.pred_flag & PF_L0)) -+ return CHECK_MVSET(1); -+ else if (temp_col.pred_flag == PF_L0) ++ if (temp_col.pred_flag == PF_L0 || ++ (temp_col.pred_flag == PF_BI && (s->no_backward_pred_flag ? s->sh.collocated_list == L1 : X == 0))) ++ { + return CHECK_MVSET(0); -+ else if (temp_col.pred_flag == PF_BI) { -+ int check_diffpicount = 0; -+ int i, j; -+ for (j = 0; j < 2; j++) { -+ for (i = 0; i < refPicList[j].nb_refs; i++) { -+ if (refPicList[j].list[i] > s->poc) { -+ check_diffpicount++; -+ break; -+ } -+ } -+ } -+ if (!check_diffpicount) { -+ if (X==0) -+ return CHECK_MVSET(0); -+ else -+ return CHECK_MVSET(1); -+ } else { -+ if (s->sh.collocated_list == L1) -+ return CHECK_MVSET(0); -+ else -+ return CHECK_MVSET(1); -+ } + } -+ -+ return 0; ++ return CHECK_MVSET(1); +} + +#define TAB_MVF(x, y) \ @@ -27149,10 +27106,10 @@ index 0000000000..3557348e30 +}; diff --git a/libavcodec/rpi_hevcdec.c b/libavcodec/rpi_hevcdec.c new file mode 100644 -index 0000000000..255dd6835a +index 0000000000..eef98e5643 --- /dev/null +++ b/libavcodec/rpi_hevcdec.c -@@ -0,0 +1,5799 @@ +@@ -0,0 +1,5820 @@ +/* + * HEVC video Decoder + * @@ -31981,12 +31938,33 @@ index 0000000000..255dd6835a +} + + ++static void set_no_backward_pred(HEVCRpiContext * const s) ++{ ++ int i, j; ++ const RefPicList *const refPicList = s->ref->refPicList; ++ ++ s->no_backward_pred_flag = 0; ++ if (s->sh.slice_type != HEVC_SLICE_B || !s->sh.slice_temporal_mvp_enabled_flag) ++ return; ++ ++ for (j = 0; j < 2; j++) { ++ for (i = 0; i < refPicList[j].nb_refs; i++) { ++ if (refPicList[j].list[i] > s->poc) { ++ s->no_backward_pred_flag = 1; ++ return; ++ } ++ } ++ } ++} ++ +static int hls_slice_data(HEVCRpiContext * const s, const H2645NAL * const nal) +{ + int err; + if ((err = gen_entry_points(s, nal)) < 0) + return err; + ++ set_no_backward_pred(s); ++ + return rpi_decode_entry(s->avctx, NULL); +} + @@ -32954,10 +32932,10 @@ index 0000000000..255dd6835a + diff --git a/libavcodec/rpi_hevcdec.h b/libavcodec/rpi_hevcdec.h new file mode 100644 -index 0000000000..a5ce342ab3 +index 0000000000..ea08308be2 --- /dev/null +++ b/libavcodec/rpi_hevcdec.h -@@ -0,0 +1,956 @@ +@@ -0,0 +1,959 @@ +/* + * HEVC video decoder + * @@ -33616,13 +33594,18 @@ index 0000000000..a5ce342ab3 + const AVClass *c; // needed by private avoptions + AVCodecContext *avctx; + -+ HEVCRpiLocalContext *HEVClcList[MAX_NB_THREADS]; -+ HEVCRpiLocalContext *HEVClc; -+ + uint8_t threads_type; + + /** 1 if the independent slice segment header was successfully parsed */ + uint8_t slice_initialized; ++ char used_for_ref; // rpi ++ char offload_recon; ++ uint8_t eos; ///< current packet contains an EOS/EOB NAL ++ uint8_t last_eos; ///< last packet contains an EOS/EOB NAL ++ uint8_t no_backward_pred_flag; ++ uint8_t is_decoded; ++ uint8_t no_rasl_output_flag; ++ + + /** + * Sequence counters for decoded and output frames, so that old @@ -33634,9 +33617,6 @@ index 0000000000..a5ce342ab3 + int width; + int height; + -+ char used_for_ref; // rpi -+ char offload_recon; -+ + HEVCRpiJobCtl * jbc; + // cabac stash + // b0 skip flag @@ -33662,33 +33642,19 @@ index 0000000000..a5ce342ab3 + uint8_t *sao_pixel_buffer_h[3]; + uint8_t *sao_pixel_buffer_v[3]; + -+ HEVCRpiParamSets ps; -+ + AVBufferPool *tab_mvf_pool; + AVBufferPool *rpl_tab_pool; + -+ ///< candidate references for the current frame -+ RefPicList rps[5]; -+ -+ RpiSliceHeader sh; + RpiSAOParams *sao; + DBParams *deblock; + enum HEVCNALUnitType nal_unit_type; + int temporal_id; ///< temporal_id_plus1 - 1 + HEVCFrame *ref; -+ HEVCFrame DPB[HEVC_DPB_ELS]; + int poc; + int pocTid0; + int slice_idx; ///< number of the slice being currently decoded -+ int eos; ///< current packet contains an EOS/EOB NAL -+ int last_eos; ///< last packet contains an EOS/EOB NAL + int max_ra; + -+ int is_decoded; -+ int no_rasl_output_flag; -+ -+ HEVCRpiPredContext hpc; -+ HEVCDSPContext hevcdsp; + int8_t *qp_y_tab; + + // Deblocking block strength bitmaps @@ -33731,6 +33697,21 @@ index 0000000000..a5ce342ab3 + + struct AVMD5 *md5_ctx; + ++ RpiSliceHeader sh; ++ ++ HEVCRpiParamSets ps; ++ ++ HEVCRpiLocalContext *HEVClc; ++ HEVCRpiLocalContext *HEVClcList[MAX_NB_THREADS]; ++ ++ HEVCFrame DPB[HEVC_DPB_ELS]; ++ ++ ///< candidate references for the current frame ++ RefPicList rps[5]; ++ ++ HEVCRpiPredContext hpc; ++ HEVCDSPContext hevcdsp; ++ + HEVCSEIContext sei; + + // Put structures that allocate non-trivial storage at the end