mirror of
https://github.com/LibreELEC/LibreELEC.tv.git
synced 2025-07-24 11:16:51 +00:00
Merge pull request #3668 from CvH/9.2/backport_addons
[Backport] Addons Tvh, VDR, Minisatip, ffmpeg-tools
This commit is contained in:
commit
c31b78aa65
@ -2,17 +2,17 @@
|
||||
# Copyright (C) 2017-present Team LibreELEC (https://libreelec.tv)
|
||||
|
||||
PKG_NAME="comskip"
|
||||
PKG_VERSION="6030aa0d3b589161ec96c6c986c48aa826fb9f72"
|
||||
PKG_SHA256="df0b4b0354aef5acc17e4e94a20a396fa69c474af7579c94aad09dd490e0ee38"
|
||||
PKG_VERSION="14dffb241fac0126e261d4ff5bf929479e2592b6"
|
||||
PKG_SHA256="025bfd532aa6ccfd513f4d88f34ec95a9b5a34c763ed13c17433b36415e5bfd4"
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="http://www.kaashoek.com/comskip/"
|
||||
PKG_URL="https://github.com/erikkaashoek/Comskip/archive/${PKG_VERSION}.tar.gz"
|
||||
PKG_DEPENDS_TARGET="toolchain argtable2 ffmpeg"
|
||||
PKG_DEPENDS_TARGET="toolchain argtable2 ffmpeg gnutls"
|
||||
PKG_LONGDESC="Comskip detects commercial breaks from a video stream. It can be used for post-processing recordings."
|
||||
PKG_TOOLCHAIN="autotools"
|
||||
|
||||
pre_configure_target() {
|
||||
LDFLAGS="$LDFLAGS -ldl"
|
||||
LDFLAGS+=" -ldl"
|
||||
|
||||
export argtable2_CFLAGS="-I$(get_build_dir argtable2)/src"
|
||||
export argtable2_LIBS="-L$(get_build_dir argtable2)/src/.libs -largtable2"
|
||||
|
@ -2,8 +2,8 @@
|
||||
# Copyright (C) 2016-present Team LibreELEC (https://libreelec.tv)
|
||||
|
||||
PKG_NAME="libvpx"
|
||||
PKG_VERSION="1.7.0"
|
||||
PKG_SHA256="1fec931eb5c94279ad219a5b6e0202358e94a93a90cfb1603578c326abfc1238"
|
||||
PKG_VERSION="1.8.0"
|
||||
PKG_SHA256="86df18c694e1c06cc8f83d2d816e9270747a0ce6abe316e93a4f4095689373f6"
|
||||
PKG_LICENSE="BSD"
|
||||
PKG_SITE="https://www.webmproject.org"
|
||||
PKG_URL="https://github.com/webmproject/libvpx/archive/v${PKG_VERSION}.tar.gz"
|
||||
|
@ -2,8 +2,8 @@
|
||||
# Copyright (C) 2016-present Team LibreELEC (https://libreelec.tv)
|
||||
|
||||
PKG_NAME="x264"
|
||||
PKG_VERSION="545de2ffec6ae9a80738de1b2c8cf820249a2530"
|
||||
PKG_SHA256="74725cf7036b2c96387c2c014ef00d181942d00230f21e16277f11d2d9683adc"
|
||||
PKG_VERSION="d4099dd4c722f52c4f3c14575d7d39eb8fadb97f"
|
||||
PKG_SHA256="9b6688b81e13cf342fc9b6b7adf1759eebd300c243c0707566ffe7ea9f0ccc7e"
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="http://www.videolan.org/developers/x264.html"
|
||||
PKG_URL="http://repo.or.cz/x264.git/snapshot/$PKG_VERSION.tar.gz"
|
||||
|
@ -2,8 +2,8 @@
|
||||
# Copyright (C) 2017-present Team LibreELEC (https://libreelec.tv)
|
||||
|
||||
PKG_NAME="x265"
|
||||
PKG_VERSION="2.9"
|
||||
PKG_SHA256="ebae687c84a39f54b995417c52a2fdde65a4e2e7ebac5730d251471304b91024"
|
||||
PKG_VERSION="3.0"
|
||||
PKG_SHA256="c5b9fc260cabbc4a81561a448f4ce9cad7218272b4011feabc3a6b751b2f0662"
|
||||
PKG_ARCH="x86_64"
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="https://www.videolan.org/developers/x265.html"
|
||||
|
@ -19,7 +19,7 @@ if [ "$KODIPLAYER_DRIVER" == "bcm2835-driver" ]; then
|
||||
fi
|
||||
|
||||
if [ "$TARGET_ARCH" = "x86_64" ]; then
|
||||
PKG_DEPENDS_TARGET+=" nasm:host x265"
|
||||
PKG_DEPENDS_TARGET+=" nasm:host intel-vaapi-driver x265"
|
||||
fi
|
||||
|
||||
if [[ ! $TARGET_ARCH = arm ]] || target_has_feature neon; then
|
||||
|
@ -3,8 +3,8 @@
|
||||
# Copyright (C) 2016-present Team LibreELEC (https://libreelec.tv)
|
||||
|
||||
PKG_NAME="vdr-plugin-epgsearch"
|
||||
PKG_VERSION="84b59b81137887a48533cc897551bccf2e9e10f6"
|
||||
PKG_SHA256="d6c4a9136588a7cdf2eb43b6b9643a5bb81a44c542c6e6fcf7448b2383901914"
|
||||
PKG_VERSION="770de32f1908b1f9c60f66bf288a4c8a03f97d52"
|
||||
PKG_SHA256="8b6144ee3d22b0c13ba81be94920b421b05fd9b921dfe8245ed582db407acac8"
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="http://winni.vdr-developer.org/epgsearch/"
|
||||
PKG_URL="https://github.com/vdr-projects/vdr-plugin-epgsearch/archive/$PKG_VERSION.tar.gz"
|
||||
|
@ -2,8 +2,8 @@
|
||||
# Copyright (C) 2017-present Team LibreELEC (https://libreelec.tv)
|
||||
|
||||
PKG_NAME="vdr-plugin-robotv"
|
||||
PKG_VERSION="50d4bdcdbe3bdb6e85fe02de4c4086ca1f8db94d"
|
||||
PKG_SHA256="062489e55111f0ba2420463cc506865ac59b1c1d080b318cb81d58ec3f4fbd3f"
|
||||
PKG_VERSION="13b691af63743ce6481e2558dc50ee89dd7a0349"
|
||||
PKG_SHA256="1bd508383d3b393dd1273af9bef07a1a64ac22c8eada85c96e5aa541c3abf228"
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="https://github.com/pipelka/roboTV"
|
||||
PKG_URL="https://github.com/pipelka/vdr-plugin-robotv/archive/$PKG_VERSION.tar.gz"
|
||||
|
@ -3,8 +3,8 @@
|
||||
# Copyright (C) 2016-present Team LibreELEC (https://libreelec.tv)
|
||||
|
||||
PKG_NAME="vdr-plugin-satip"
|
||||
PKG_VERSION="a4051bf88c1f3c86cfe5133fd703517296f7f590"
|
||||
PKG_SHA256="ea9f930b829e4c333f8401e64b5e03a82efb88a4c6db3320463b295d297b0035"
|
||||
PKG_VERSION="b697e435d4bf42754309e6b5a9c5f8ff43463077"
|
||||
PKG_SHA256="9ccb90b4b55848bad738236e07e0feb2af9e78e6c9ee6614b5a1172db3e00fb0"
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="http://www.saunalahti.fi/~rahrenbe/vdr/satip/"
|
||||
PKG_URL="https://github.com/rofafor/vdr-plugin-satip/archive/$PKG_VERSION.tar.gz"
|
||||
|
@ -4,11 +4,11 @@
|
||||
# Copyright (C) 2016-present Team LibreELEC (https://libreelec.tv)
|
||||
|
||||
PKG_NAME="vdr"
|
||||
PKG_VERSION="2.4.0"
|
||||
PKG_SHA256="93af49fe87048073dc38ef5e6c71e9704344d730f21c261afac69e3c937f8cce"
|
||||
PKG_VERSION="2.4.1"
|
||||
PKG_SHA256="25c3f835c4f3ff92cd2db10c004439ef22c2e895193c77fbe8cc7eac4858a1dc"
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="http://www.tvdr.de"
|
||||
PKG_URL="ftp://ftp.tvdr.de/vdr/vdr-$PKG_VERSION.tar.bz2"
|
||||
PKG_URL="http://ftp.tvdr.de/vdr-$PKG_VERSION.tar.bz2"
|
||||
PKG_DEPENDS_TARGET="toolchain bzip2 fontconfig freetype libcap libiconv libjpeg-turbo"
|
||||
PKG_LONGDESC="A DVB TV server application."
|
||||
PKG_TOOLCHAIN="manual"
|
||||
|
@ -1,46 +0,0 @@
|
||||
ftp://ftp.tvdr.de/vdr/Developer/Patches/vdr-2.4/
|
||||
|
||||
# This patch fixes a bug in handling the tfRecording flag in the SVDRP commands MODT
|
||||
# and UPDT. The tfRecording flag must only be handled by the VDR that actually hosts
|
||||
# and processes the timer.
|
||||
#
|
||||
--- a/svdrp.c 2018/03/19 12:16:33 5.0
|
||||
+++ b/svdrp.c 2018/04/19 09:45:08
|
||||
@@ -2036,6 +2036,7 @@
|
||||
LOCK_TIMERS_WRITE;
|
||||
Timers->SetExplicitModify();
|
||||
if (cTimer *Timer = Timers->GetById(Id)) {
|
||||
+ bool IsRecording = Timer->HasFlags(tfRecording);
|
||||
cTimer t = *Timer;
|
||||
if (strcasecmp(tail, "ON") == 0)
|
||||
t.SetFlags(tfActive);
|
||||
@@ -2046,6 +2047,10 @@
|
||||
return;
|
||||
}
|
||||
*Timer = t;
|
||||
+ if (IsRecording)
|
||||
+ Timer->SetFlags(tfRecording);
|
||||
+ else
|
||||
+ Timer->ClrFlags(tfRecording);
|
||||
Timers->SetModified();
|
||||
isyslog("SVDRP %s < %s modified timer %s (%s)", Setup.SVDRPHostName, *clientName, *Timer->ToDescr(), Timer->HasFlags(tfActive) ? "active" : "inactive");
|
||||
Reply(250, "%d %s", Timer->Id(), *Timer->ToText(true));
|
||||
@@ -2478,12 +2483,18 @@
|
||||
if (Timer->Parse(Option)) {
|
||||
LOCK_TIMERS_WRITE;
|
||||
if (cTimer *t = Timers->GetTimer(Timer)) {
|
||||
+ bool IsRecording = t->HasFlags(tfRecording);
|
||||
t->Parse(Option);
|
||||
delete Timer;
|
||||
Timer = t;
|
||||
+ if (IsRecording)
|
||||
+ Timer->SetFlags(tfRecording);
|
||||
+ else
|
||||
+ Timer->ClrFlags(tfRecording);
|
||||
isyslog("SVDRP %s < %s updated timer %s", Setup.SVDRPHostName, *clientName, *Timer->ToDescr());
|
||||
}
|
||||
else {
|
||||
+ Timer->ClrFlags(tfRecording);
|
||||
Timers->Add(Timer);
|
||||
isyslog("SVDRP %s < %s added timer %s", Setup.SVDRPHostName, *clientName, *Timer->ToDescr());
|
||||
}
|
@ -1,48 +0,0 @@
|
||||
# This patch fixes a possible invalid locking sequence in case a remote timer handling error message
|
||||
# is displayed on the OSD and the skin tries to lock the Recordings or DeletedRecordings
|
||||
# list in its Flush() function (for instance by calling cVideoDiskUsage::HasChanged()).
|
||||
# To do this, the call to Skins.Message() in menu.c's HandleRemoteModifications() has
|
||||
# been changed to Skins.QueueMessage(), and cSkins::ProcessQueuedMessages() is now called
|
||||
# unconditionally in the main loop, and checks whether the current cSkinDisplay object
|
||||
# (if any) implements SetMessage().
|
||||
#
|
||||
--- 1/menu.c 2018/04/14 10:24:41 5.0
|
||||
+++ 1/menu.c 2018/04/28 12:09:45
|
||||
@@ -1075,7 +1075,7 @@
|
||||
{
|
||||
cString ErrorMessage;
|
||||
if (!HandleRemoteTimerModifications(NewTimer, OldTimer, &ErrorMessage)) {
|
||||
- Skins.Message(mtError, ErrorMessage);
|
||||
+ Skins.QueueMessage(mtError, ErrorMessage);
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
--- 1/skins.c 2013/08/18 12:07:22 5.0
|
||||
+++ 1/skins.c 2018/04/28 12:13:01
|
||||
@@ -352,6 +352,14 @@
|
||||
dsyslog("cSkins::ProcessQueuedMessages() called from background thread - ignored!");
|
||||
return;
|
||||
}
|
||||
+ // Check whether there is a cSkinDisplay object (if any) that implements SetMessage():
|
||||
+ if (cSkinDisplay *sd = cSkinDisplay::Current()) {
|
||||
+ if (!(dynamic_cast<cSkinDisplayChannel *>(sd) ||
|
||||
+ dynamic_cast<cSkinDisplayMenu *>(sd) ||
|
||||
+ dynamic_cast<cSkinDisplayReplay *>(sd) ||
|
||||
+ dynamic_cast<cSkinDisplayMessage *>(sd)))
|
||||
+ return;
|
||||
+ }
|
||||
cSkinQueuedMessage *msg = NULL;
|
||||
// Get the first waiting message:
|
||||
queueMessageMutex.Lock();
|
||||
--- 1/vdr.c 2018/04/10 13:24:43 5.0
|
||||
+++ 1/vdr.c 2018/04/28 11:27:48
|
||||
@@ -1176,8 +1176,7 @@
|
||||
if (!Menu && !cOsd::IsOpen())
|
||||
Menu = CamControl();
|
||||
// Queued messages:
|
||||
- if (!Skins.IsOpen())
|
||||
- Skins.ProcessQueuedMessages();
|
||||
+ Skins.ProcessQueuedMessages();
|
||||
// User Input:
|
||||
cOsdObject *Interact = Menu ? Menu : cControl::Control();
|
||||
eKeys key = Interface->GetKey(!Interact || !Interact->NeedsFastResponse());
|
@ -1,89 +0,0 @@
|
||||
# Fixed locking the Channels list in cDisplayChannel, where the lock was still held
|
||||
# when Flush() was called.
|
||||
#
|
||||
--- 1/menu.c 2018/04/28 12:09:45 5.1
|
||||
+++ 1/menu.c 2018/05/06 09:30:11
|
||||
@@ -4626,14 +4626,17 @@
|
||||
cOsdProvider::OsdSizeChanged(osdState); // just to get the current state
|
||||
positioner = NULL;
|
||||
channel = NULL;
|
||||
- LOCK_CHANNELS_READ;
|
||||
- channel = Channels->GetByNumber(Number);
|
||||
- lastPresent = lastFollowing = NULL;
|
||||
- if (channel) {
|
||||
- DisplayChannel();
|
||||
- DisplayInfo();
|
||||
+ {
|
||||
+ LOCK_CHANNELS_READ;
|
||||
+ channel = Channels->GetByNumber(Number);
|
||||
+ lastPresent = lastFollowing = NULL;
|
||||
+ if (channel) {
|
||||
+ DisplayChannel();
|
||||
+ DisplayInfo();
|
||||
+ }
|
||||
+ }
|
||||
+ if (channel)
|
||||
displayChannel->Flush();
|
||||
- }
|
||||
lastTime.Set();
|
||||
}
|
||||
|
||||
@@ -4868,31 +4871,33 @@
|
||||
}
|
||||
};
|
||||
if (positioner || !timeout || lastTime.Elapsed() < (uint64_t)(Setup.ChannelInfoTime * 1000)) {
|
||||
- LOCK_CHANNELS_READ;
|
||||
- if (Key == kNone && !number && group < 0 && !NewChannel && channel && channel->Number() != cDevice::CurrentChannel()) {
|
||||
- // makes sure a channel switch through the SVDRP CHAN command is displayed
|
||||
- channel = Channels->GetByNumber(cDevice::CurrentChannel());
|
||||
- Refresh();
|
||||
- lastTime.Set();
|
||||
- }
|
||||
- DisplayInfo();
|
||||
- if (NewChannel) {
|
||||
- SetTrackDescriptions(NewChannel->Number()); // to make them immediately visible in the channel display
|
||||
- Channels->SwitchTo(NewChannel->Number());
|
||||
- SetTrackDescriptions(NewChannel->Number()); // switching the channel has cleared them
|
||||
- channel = NewChannel;
|
||||
- }
|
||||
- const cPositioner *Positioner = cDevice::ActualDevice()->Positioner();
|
||||
- bool PositionerMoving = Positioner && Positioner->IsMoving();
|
||||
- SetNeedsFastResponse(PositionerMoving);
|
||||
- if (!PositionerMoving) {
|
||||
- if (positioner)
|
||||
- lastTime.Set(); // to keep the channel display up a few seconds after the target position has been reached
|
||||
- Positioner = NULL;
|
||||
- }
|
||||
- if (Positioner || positioner) // making sure we call SetPositioner(NULL) if there is a switch from "with" to "without" positioner
|
||||
- displayChannel->SetPositioner(Positioner);
|
||||
- positioner = Positioner;
|
||||
+ {
|
||||
+ LOCK_CHANNELS_READ;
|
||||
+ if (Key == kNone && !number && group < 0 && !NewChannel && channel && channel->Number() != cDevice::CurrentChannel()) {
|
||||
+ // makes sure a channel switch through the SVDRP CHAN command is displayed
|
||||
+ channel = Channels->GetByNumber(cDevice::CurrentChannel());
|
||||
+ Refresh();
|
||||
+ lastTime.Set();
|
||||
+ }
|
||||
+ DisplayInfo();
|
||||
+ if (NewChannel) {
|
||||
+ SetTrackDescriptions(NewChannel->Number()); // to make them immediately visible in the channel display
|
||||
+ Channels->SwitchTo(NewChannel->Number());
|
||||
+ SetTrackDescriptions(NewChannel->Number()); // switching the channel has cleared them
|
||||
+ channel = NewChannel;
|
||||
+ }
|
||||
+ const cPositioner *Positioner = cDevice::ActualDevice()->Positioner();
|
||||
+ bool PositionerMoving = Positioner && Positioner->IsMoving();
|
||||
+ SetNeedsFastResponse(PositionerMoving);
|
||||
+ if (!PositionerMoving) {
|
||||
+ if (positioner)
|
||||
+ lastTime.Set(); // to keep the channel display up a few seconds after the target position has been reached
|
||||
+ Positioner = NULL;
|
||||
+ }
|
||||
+ if (Positioner || positioner) // making sure we call SetPositioner(NULL) if there is a switch from "with" to "without" positioner
|
||||
+ displayChannel->SetPositioner(Positioner);
|
||||
+ positioner = Positioner;
|
||||
+ }
|
||||
displayChannel->Flush();
|
||||
return osContinue;
|
||||
}
|
@ -1,18 +0,0 @@
|
||||
# Fixed locking the Channels list in cDisplayChannel, where the lock was still held
|
||||
# when Flush() was called (cont'd).
|
||||
#
|
||||
--- 1/menu.c 2018/05/06 09:30:11 5.2
|
||||
+++ 1/menu.c 2018/05/27 09:51:56 5.3
|
||||
@@ -4654,8 +4654,10 @@
|
||||
displayChannel = Skins.Current()->DisplayChannel(withInfo);
|
||||
positioner = NULL;
|
||||
channel = NULL;
|
||||
- LOCK_CHANNELS_READ;
|
||||
- channel = Channels->GetByNumber(cDevice::CurrentChannel());
|
||||
+ {
|
||||
+ LOCK_CHANNELS_READ;
|
||||
+ channel = Channels->GetByNumber(cDevice::CurrentChannel());
|
||||
+ }
|
||||
ProcessKey(FirstKey);
|
||||
}
|
||||
|
@ -1,33 +0,0 @@
|
||||
# Fixed shutdown after user inactivity in case a plugin is keeping the OSD open.
|
||||
#
|
||||
--- a/vdr.c 2018/04/28 11:27:48 5.1
|
||||
+++ b/vdr.c 2018/07/16 08:52:40 5.2
|
||||
@@ -1514,9 +1514,7 @@
|
||||
ShutdownHandler.countdown.Cancel();
|
||||
}
|
||||
|
||||
- if ((Now - LastInteract) > ACTIVITYTIMEOUT && !cRecordControls::Active() && !RecordingsHandler.Active() && (Now - cRemote::LastActivity()) > ACTIVITYTIMEOUT) {
|
||||
- // Handle housekeeping tasks
|
||||
-
|
||||
+ if (!cRecordControls::Active() && !RecordingsHandler.Active() && (Now - cRemote::LastActivity()) > ACTIVITYTIMEOUT) {
|
||||
// Shutdown:
|
||||
// Check whether VDR will be ready for shutdown in SHUTDOWNWAIT seconds:
|
||||
time_t Soon = Now + SHUTDOWNWAIT;
|
||||
@@ -1535,7 +1533,8 @@
|
||||
// Do this again a bit later:
|
||||
ShutdownHandler.SetRetry(SHUTDOWNRETRY);
|
||||
}
|
||||
-
|
||||
+ // Handle housekeeping tasks
|
||||
+ if ((Now - LastInteract) > ACTIVITYTIMEOUT) {
|
||||
// Disk housekeeping:
|
||||
RemoveDeletedRecordings();
|
||||
ListGarbageCollector.Purge();
|
||||
@@ -1543,6 +1542,7 @@
|
||||
// Plugins housekeeping:
|
||||
PluginManager.Housekeeping();
|
||||
}
|
||||
+ }
|
||||
|
||||
ReportEpgBugFixStats();
|
||||
|
@ -1,31 +0,0 @@
|
||||
# Fixed switching through encrypted channels with the Up/Down keys
|
||||
#
|
||||
--- a/device.c 2018/03/24 09:49:14 5.0
|
||||
+++ b/device.c 2018/07/16 09:29:57
|
||||
@@ -787,6 +787,7 @@
|
||||
if (LiveView) {
|
||||
isyslog("switching to channel %d %s (%s)", Channel->Number(), *Channel->GetChannelID().ToString(), Channel->Name());
|
||||
cControl::Shutdown(); // prevents old channel from being shown too long if GetDevice() takes longer
|
||||
+ // and, if decrypted, this removes the now superflous PIDs from the CAM, too
|
||||
}
|
||||
for (int i = 3; i--;) {
|
||||
switch (SetChannel(Channel, LiveView)) {
|
||||
@@ -809,6 +810,7 @@
|
||||
Direction = sgn(Direction);
|
||||
if (Direction) {
|
||||
cControl::Shutdown(); // prevents old channel from being shown too long if GetDevice() takes longer
|
||||
+ // and, if decrypted, this removes the now superflous PIDs from the CAM, too
|
||||
int n = CurrentChannel() + Direction;
|
||||
int first = n;
|
||||
LOCK_CHANNELS_READ;
|
||||
--- a/menu.c 2018/05/27 09:51:56 5.3
|
||||
+++ b/menu.c 2018/07/16 09:29:57
|
||||
@@ -4704,6 +4704,8 @@
|
||||
const cChannel *cDisplayChannel::NextAvailableChannel(const cChannel *Channel, int Direction)
|
||||
{
|
||||
if (Direction) {
|
||||
+ cControl::Shutdown(); // prevents old channel from being shown too long if GetDevice() takes longer
|
||||
+ // and, if decrypted, this removes the now superflous PIDs from the CAM, too
|
||||
LOCK_CHANNELS_READ;
|
||||
while (Channel) {
|
||||
Channel = Direction > 0 ? Channels->Next(Channel) : Channels->Prev(Channel);
|
@ -1,13 +0,0 @@
|
||||
# Now deactivating MTD support if a non MCD capable CAM is inserted after removing
|
||||
# a previously used CAM that is MCD capable.
|
||||
#
|
||||
--- a/ci.c 2018/03/19 16:37:03 5.0
|
||||
+++ b/ci.c 2018/09/23 10:17:20
|
||||
@@ -1213,6 +1213,7 @@
|
||||
}
|
||||
else {
|
||||
dsyslog("CAM %d: doesn't reply to QUERY - only a single channel can be decrypted", CamSlot()->SlotNumber());
|
||||
+ CamSlot()->MtdActivate(false);
|
||||
state = 4; // normal operation
|
||||
}
|
||||
}
|
@ -1,2 +1,5 @@
|
||||
101
|
||||
- update to 0.7.18
|
||||
|
||||
100
|
||||
- Initial Release
|
||||
|
@ -2,15 +2,15 @@
|
||||
# Copyright (C) 2016-present Team LibreELEC (https://libreelec.tv)
|
||||
|
||||
PKG_NAME="minisatip"
|
||||
PKG_VERSION="110e6e99bc6c823b2a2c30ea02c58c91f59d077e"
|
||||
PKG_SHA256="8ac997ae70d80bc50603609baf9a86253cf525f179c71fada5320301abaea902"
|
||||
PKG_VERSION_NUMBER="0.7.16"
|
||||
PKG_REV="100"
|
||||
PKG_VERSION="a3af6dd93c4fd9dbbb62073f3642a289826d84bb"
|
||||
PKG_SHA256="32d17edab044f9fdba9e39bb4a8332aa087951695c1629d81687ff957c8d601d"
|
||||
PKG_VERSION_NUMBER="0.7.18"
|
||||
PKG_REV="101"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="https://github.com/catalinii/minisatip"
|
||||
PKG_URL="https://github.com/catalinii/minisatip/archive/$PKG_VERSION.tar.gz"
|
||||
PKG_DEPENDS_TARGET="toolchain dvb-apps libdvbcsa libxml2"
|
||||
PKG_DEPENDS_TARGET="toolchain dvb-apps libdvbcsa libxml2 openssl"
|
||||
PKG_SECTION="service"
|
||||
PKG_SHORTDESC="minisatip: a Sat>IP streaming server for Linux"
|
||||
PKG_LONGDESC="minisatip($PKG_VERSION_NUMBER): is a Sat>IP streaming server for Linux supporting DVB-C, DVB-S/S2, DVB-T/T2, ATSC and ISDB-T"
|
||||
@ -31,8 +31,8 @@ pre_configure_target() {
|
||||
rm -rf .$TARGET_NAME
|
||||
|
||||
# enables Common Interface (DVBEN50221)
|
||||
CFLAGS="$CFLAGS -I$(get_build_dir dvb-apps)/lib"
|
||||
LDFLAGS="$LDFLAGS -L$(get_build_dir dvb-apps)/lib/libdvbapi -L$(get_build_dir dvb-apps)/lib/libdvben50221 -L$(get_build_dir dvb-apps)/lib/libucsi"
|
||||
CFLAGS+=" -I$(get_build_dir dvb-apps)/lib"
|
||||
LDFLAGS+=" -L$(get_build_dir dvb-apps)/lib/libdvbapi -L$(get_build_dir dvb-apps)/lib/libdvben50221 -L$(get_build_dir dvb-apps)/lib/libucsi"
|
||||
}
|
||||
|
||||
makeinstall_target() {
|
||||
|
@ -1,3 +1,7 @@
|
||||
120
|
||||
- update to 4.2.8-27
|
||||
- update comskip to 2019-03-30
|
||||
|
||||
119
|
||||
- Use system libidn2
|
||||
|
||||
|
@ -2,10 +2,10 @@
|
||||
# Copyright (C) 2016-present Team LibreELEC (https://libreelec.tv)
|
||||
|
||||
PKG_NAME="tvheadend42"
|
||||
PKG_VERSION="5c218500579d5bd1c1f7e7a4b5f7f0fb35baa626"
|
||||
PKG_SHA256="a9fe5a4c36aa185e3f0a73a709f0dc05794ae9c12f5d888985b559ff68a2508d"
|
||||
PKG_VERSION_NUMBER="4.2.7-44"
|
||||
PKG_REV="119"
|
||||
PKG_VERSION="5c1b37b50e99f9bf91d38f08f7bd358ee270660f"
|
||||
PKG_SHA256="cfce42a6534eec1728b4e84906f845d4805618e584624d1777d038f9377eed98"
|
||||
PKG_VERSION_NUMBER="4.2.8-27"
|
||||
PKG_REV="120"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="http://www.tvheadend.org"
|
||||
@ -83,17 +83,17 @@ pre_configure_target() {
|
||||
|
||||
# pass ffmpegx to build
|
||||
PKG_CONFIG_PATH="$(get_build_dir ffmpegx)/.INSTALL_PKG/usr/local/lib/pkgconfig"
|
||||
CFLAGS="$CFLAGS -I$(get_build_dir ffmpegx)/.INSTALL_PKG/usr/local/include"
|
||||
LDFLAGS="$LDFLAGS -L$(get_build_dir ffmpegx)/.INSTALL_PKG/usr/local/lib"
|
||||
CFLAGS+=" -I$(get_build_dir ffmpegx)/.INSTALL_PKG/usr/local/include"
|
||||
LDFLAGS+=" -L$(get_build_dir ffmpegx)/.INSTALL_PKG/usr/local/lib"
|
||||
|
||||
# pass gnutls to build
|
||||
LDFLAGS="$LDFLAGS -L$(get_build_dir gnutls)/.INSTALL_PKG/usr/lib"
|
||||
|
||||
# pass libhdhomerun to build
|
||||
CFLAGS="$CFLAGS -I$(get_build_dir libhdhomerun)"
|
||||
CFLAGS+=" -I$(get_build_dir libhdhomerun)"
|
||||
|
||||
export CROSS_COMPILE="$TARGET_PREFIX"
|
||||
export CFLAGS="$CFLAGS -I$SYSROOT_PREFIX/usr/include/iconv -L$SYSROOT_PREFIX/usr/lib/iconv"
|
||||
export CFLAGS+=" -I$SYSROOT_PREFIX/usr/include/iconv -L$SYSROOT_PREFIX/usr/lib/iconv"
|
||||
}
|
||||
|
||||
post_make_target() {
|
||||
|
@ -0,0 +1,27 @@
|
||||
https://github.com/tvheadend/tvheadend/commit/13cd23c371e3377973502f8dc65654b6a0ff372b
|
||||
|
||||
From: Michael Marley <michael@michaelmarley.com>
|
||||
Date: Wed, 26 Jun 2019 19:35:50 -0400
|
||||
Subject: [PATCH] Fix compilation with libhdhomerun 20190621
|
||||
|
||||
They renamed the symbol that was used to determine whether the
|
||||
"hdhomerun_discover_find_devices_custom" needed to be aliased,
|
||||
causing an FTBFS. Instead, recognize both the old and new symbols.
|
||||
---
|
||||
src/input/mpegts/tvhdhomerun/tvhdhomerun.c | 3 ++-
|
||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/input/mpegts/tvhdhomerun/tvhdhomerun.c b/src/input/mpegts/tvhdhomerun/tvhdhomerun.c
|
||||
index 58dec51ab3..18068faf5d 100644
|
||||
--- a/src/input/mpegts/tvhdhomerun/tvhdhomerun.c
|
||||
+++ b/src/input/mpegts/tvhdhomerun/tvhdhomerun.c
|
||||
@@ -32,7 +32,8 @@
|
||||
|
||||
#include "config.h"
|
||||
|
||||
-#ifdef HDHOMERUN_TAG_DEVICE_AUTH_BIN
|
||||
+#if defined(HDHOMERUN_TAG_DEVICE_AUTH_BIN) \
|
||||
+ || defined(HDHOMERUN_TAG_DEVICE_AUTH_BIN_DEPRECATED)
|
||||
#define hdhomerun_discover_find_devices_custom \
|
||||
hdhomerun_discover_find_devices_custom_v2
|
||||
#endif
|
@ -1,3 +1,9 @@
|
||||
111
|
||||
- update VDR to 2.4.1
|
||||
- update epgsearch to 2019-04-11
|
||||
- update robotv to 2019-06-19
|
||||
- update satip to 2019-02-08
|
||||
|
||||
110
|
||||
- fix deprecated VDR_CHARSET_OVERRIDE
|
||||
|
||||
@ -9,7 +15,7 @@
|
||||
- update Sat>IP plugin to a4051bf
|
||||
- update VNSI plugin to 1.8.0
|
||||
- update VDR 2.4.0 upstream patches
|
||||
- update Wirbelscan plugin to 2018.11.04
|
||||
- update Wirbelscan plugin to 2018-11-04
|
||||
|
||||
108
|
||||
- update VDR to 2.4.0
|
||||
|
@ -4,8 +4,8 @@
|
||||
# Copyright (C) 2017-present Team LibreELEC (https://libreelec.tv)
|
||||
|
||||
PKG_NAME="vdr-addon"
|
||||
PKG_VERSION="2.4"
|
||||
PKG_REV="110"
|
||||
PKG_VERSION="2.4.1"
|
||||
PKG_REV="111"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="https://libreelec.tv"
|
||||
|
@ -1,6 +1,7 @@
|
||||
[Unit]
|
||||
Description=vdr
|
||||
After=graphical.target
|
||||
Before=kodi.service
|
||||
|
||||
[Service]
|
||||
ExecStart=/bin/sh -c "exec sh /storage/.kodi/addons/service.multimedia.vdr-addon/bin/vdr.start"
|
||||
|
@ -1,3 +1,9 @@
|
||||
107
|
||||
- Update aom to 2019-03-05
|
||||
- Update FFmpeg to 4.1.3
|
||||
- Update x264 to 2019-03-06
|
||||
- Update x265 to 3.0
|
||||
|
||||
106
|
||||
- Use system libidn2
|
||||
|
||||
@ -10,19 +16,19 @@
|
||||
- Update aom to d2a592e
|
||||
- Update FFmpeg to 4.1
|
||||
- Update opus to 1.3
|
||||
- Update x264 to 20181116
|
||||
- Update x264 to 2018-11-16
|
||||
- Update x265 to 2.9
|
||||
|
||||
103
|
||||
- Update AV1 to 20181002
|
||||
- Update AV1 to 2018-10-02
|
||||
- Update FFmpeg to 4.0.2
|
||||
- Update X264 to 20181001
|
||||
- Update X264 to 2018-10-01
|
||||
|
||||
102
|
||||
- Rename binary to ffmpeg (no ffmpegx anymore)
|
||||
- Update AV1 to 96ee0eb
|
||||
- Update FFmpeg to 4.0.1
|
||||
- Update X264 to 20180627
|
||||
- Update X264 to 2018-06-27
|
||||
- Update X265 to 2.8
|
||||
|
||||
101
|
||||
|
@ -3,7 +3,7 @@
|
||||
|
||||
PKG_NAME="ffmpeg-tools"
|
||||
PKG_VERSION="1.0"
|
||||
PKG_REV="106"
|
||||
PKG_REV="107"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="https://libreelec.tv"
|
||||
|
@ -2,8 +2,8 @@
|
||||
# Copyright (C) 2018-present Team LibreELEC (https://libreelec.tv)
|
||||
|
||||
PKG_NAME="aom"
|
||||
PKG_VERSION="06e2c4fa33edb7f27702fbe2ad2311622da956b4"
|
||||
PKG_SHA256="9c4d7943de97af0153a38151f40c7a926f331d4a3b7dceea4e179173ce51c654"
|
||||
PKG_VERSION="e2c1d5ef82e86db553ae8112fc68c6cefee1f8d0"
|
||||
PKG_SHA256="b85673d5436f134f74c966f493f3b4d299215332f0e1d56c137e50eda9d6a245"
|
||||
PKG_LICENSE="BSD"
|
||||
PKG_SITE="https://www.webmproject.org"
|
||||
PKG_URL="http://repo.or.cz/aom.git/snapshot/${PKG_VERSION}.tar.gz"
|
||||
|
@ -3,11 +3,11 @@
|
||||
# Copyright (C) 2016-present Team LibreELEC (https://libreelec.tv)
|
||||
|
||||
PKG_NAME="libhdhomerun"
|
||||
PKG_VERSION="20180817"
|
||||
PKG_SHA256="437888b27206f526827ee7a4c57c1c167a36483b0445232e07fb7bb7ee854b42"
|
||||
PKG_VERSION="b0e5d5f5c8e2bf37dea34beb014e08ebb598ebf6" #20190625
|
||||
PKG_SHA256="ac39e03090c148678e1a8d4f928a728caccd2d29a0555287e7e5ece28c876959"
|
||||
PKG_LICENSE="LGPL"
|
||||
PKG_SITE="http://www.silicondust.com"
|
||||
PKG_URL="http://download.silicondust.com/hdhomerun/${PKG_NAME}_${PKG_VERSION}.tgz"
|
||||
PKG_URL="https://github.com/Silicondust/libhdhomerun/archive/${PKG_VERSION}.tar.gz"
|
||||
PKG_DEPENDS_TARGET="toolchain"
|
||||
PKG_LONGDESC="The library provides functionality to setup the HDHomeRun."
|
||||
|
||||
|
@ -1,24 +0,0 @@
|
||||
From a83ec0c045d3fadb78a879d0ac8ae999b89786df Mon Sep 17 00:00:00 2001
|
||||
From: fuzzard <bmurphy@bcmcs.net>
|
||||
Date: Sun, 24 Feb 2019 07:47:31 +1000
|
||||
Subject: [PATCH] alignas c++ fix
|
||||
|
||||
alignas is a keyword in c++. Dont define.
|
||||
Change is in windows header already, and GCC 8.3.0 is erroring on this now.
|
||||
---
|
||||
hdhomerun_os_posix.h | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/hdhomerun_os_posix.h b/hdhomerun_os_posix.h
|
||||
index baab8e5..d3dc5cb 100644
|
||||
--- a/hdhomerun_os_posix.h
|
||||
+++ b/hdhomerun_os_posix.h
|
||||
@@ -53,7 +53,7 @@ typedef struct {
|
||||
|
||||
#define LIBHDHOMERUN_API
|
||||
|
||||
-#if !defined(alignas)
|
||||
+#if !defined(alignas) && !defined(__cplusplus)
|
||||
#define alignas(n) __attribute__((aligned(n)))
|
||||
#endif
|
||||
|
Loading…
x
Reference in New Issue
Block a user