diff --git a/packages/addons/addon-depends/pngquant/package.mk b/packages/addons/addon-depends/pngquant/package.mk
new file mode 100644
index 0000000000..9347d26798
--- /dev/null
+++ b/packages/addons/addon-depends/pngquant/package.mk
@@ -0,0 +1,47 @@
+################################################################################
+# This file is part of LibreELEC - https://libreelec.tv
+# Copyright (C) 2017-present Team LibreELEC
+#
+# 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.
+#
+# 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 LibreELEC. If not, see .
+################################################################################
+
+PKG_NAME="pngquant"
+PKG_VERSION="2.9.1"
+PKG_ARCH="any"
+PKG_LICENSE="GPLv3"
+PKG_SITE="https://pngquant.org"
+PKG_URL="http://pngquant.org/pngquant-${PKG_VERSION}-src.tar.gz"
+PKG_DEPENDS_HOST="toolchain libpng:host zlib:host"
+PKG_SECTION="graphics"
+PKG_SHORTDESC="lossy PNG compressor"
+PKG_LONGDESC="a PNG compresor that significantly reduces file sizes by converting images to a more efficient 8-bit PNG format"
+
+PKG_IS_ADDON="no"
+PKG_AUTORECONF="no"
+
+configure_host() {
+ : #
+}
+
+make_host() {
+ cd $ROOT/$PKG_BUILD
+ BIN=$ROOT/$PKG_BUILD/pngquant make
+
+ $STRIP $ROOT/$PKG_BUILD/pngquant
+}
+
+makeinstall_host() {
+ mkdir -p $ROOT/$TOOLCHAIN/bin
+ cp $ROOT/$PKG_BUILD/pngquant $ROOT/$TOOLCHAIN/bin
+}
diff --git a/packages/addons/service/tvheadend42/changelog.txt b/packages/addons/service/tvheadend42/changelog.txt
index b845f1511e..4eb5f4aa0a 100644
--- a/packages/addons/service/tvheadend42/changelog.txt
+++ b/packages/addons/service/tvheadend42/changelog.txt
@@ -1,3 +1,11 @@
+111
+- update to Tvheadend 4.2.2-32
+
+110
+- added tv_grab_file support for compressed files (gz bz2 xz)
+- update to Tvheadend 4.2.1.7
+- fix FRITZ!Box support, AVM Repeater and 6490 are now working
+
109
- added custom start options to addon
- added FRITZ!Box Sat>IP server support to addon
diff --git a/packages/addons/service/tvheadend42/package.mk b/packages/addons/service/tvheadend42/package.mk
index 9e9d1bc6c3..75f42377a6 100644
--- a/packages/addons/service/tvheadend42/package.mk
+++ b/packages/addons/service/tvheadend42/package.mk
@@ -1,6 +1,6 @@
################################################################################
# This file is part of LibreELEC - https://LibreELEC.tv
-# Copyright (C) 2016-2017 Team LibreELEC
+# Copyright (C) 2016-present Team LibreELEC
#
# LibreELEC is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -17,15 +17,15 @@
################################################################################
PKG_NAME="tvheadend42"
-PKG_VERSION="e5f5a42"
-PKG_VERSION_NUMBER="4.1.2415"
-PKG_REV="109"
+PKG_VERSION="76dbc3e"
+PKG_VERSION_NUMBER="4.2.2-32"
+PKG_REV="111"
PKG_ARCH="any"
PKG_LICENSE="GPL"
PKG_SITE="http://www.tvheadend.org"
PKG_URL="https://github.com/tvheadend/tvheadend/archive/$PKG_VERSION.tar.gz"
PKG_SOURCE_DIR="tvheadend-${PKG_VERSION}*"
-PKG_DEPENDS_TARGET="toolchain curl dvb-tools libdvbcsa libiconv libressl Python:host yasm"
+PKG_DEPENDS_TARGET="toolchain curl dvb-tools libdvbcsa libiconv libressl pngquant:host Python:host yasm"
PKG_SECTION="service"
PKG_SHORTDESC="Tvheadend: a TV streaming server for Linux"
PKG_LONGDESC="Tvheadend ($PKG_VERSION_NUMBER): is a TV streaming server for Linux supporting DVB-S/S2, DVB-C, DVB-T/T2, IPTV, SAT>IP, ATSC and ISDB-T"
@@ -56,6 +56,7 @@ PKG_CONFIGURE_OPTS_TARGET="--prefix=/usr \
--enable-hdhomerun_static \
--enable-epoll \
--enable-inotify \
+ --enable-pngquant \
--disable-nvenc \
--disable-uriparser \
$TVH_TRANSCODING \
@@ -67,6 +68,7 @@ PKG_CONFIGURE_OPTS_TARGET="--prefix=/usr \
post_unpack() {
sed -e 's/VER="0.0.0~unknown"/VER="'$PKG_VERSION_NUMBER' ~ LibreELEC Tvh-addon v'$ADDON_VERSION'.'$PKG_REV'"/g' -i $PKG_BUILD/support/version
+ sed -e 's|'/usr/bin/pngquant'|'$ROOT/$TOOLCHAIN/bin/pngquant'|g' -i $PKG_BUILD/support/mkbundle
}
pre_configure_target() {
@@ -92,6 +94,7 @@ fi
post_make_target() {
$CC -O -fbuiltin -fomit-frame-pointer -fPIC -shared -o capmt_ca.so src/extra/capmt_ca.c -ldl
+ $STRIP $ROOT/$PKG_BUILD/build.linux/tvheadend
}
makeinstall_target() {
diff --git a/packages/addons/service/tvheadend42/patches/tvheadend42-03_temp_ffmpeg_downgrade.patch b/packages/addons/service/tvheadend42/patches/tvheadend42-03_temp_ffmpeg_downgrade.patch
index 841dda5ae9..2abba07670 100644
--- a/packages/addons/service/tvheadend42/patches/tvheadend42-03_temp_ffmpeg_downgrade.patch
+++ b/packages/addons/service/tvheadend42/patches/tvheadend42-03_temp_ffmpeg_downgrade.patch
@@ -1,4 +1,4 @@
-Subject: [PATCH] tvheadend: HACK ffmpeg 3.1.5 instead of 3.2
+Subject: [PATCH] tvheadend: HACK ffmpeg 3.1.5 instead of 3.3
diff --git a/Makefile.ffmpeg b/Makefile.ffmpeg
--- a/Makefile.ffmpeg
@@ -7,12 +7,12 @@ diff --git a/Makefile.ffmpeg b/Makefile.ffmpeg
LIBMFX_SHA1 = 84dbdf4a6b409067e863eb9564bb2efdec6d39ce
LIBMFX_DIFFS = libmfx.linux.path.diff
--FFMPEG = ffmpeg-3.2
+-FFMPEG = ffmpeg-3.3
-FFMPEG_TB = $(FFMPEG).tar.bz2
+FFMPEG = ffmpeg-3.1.5
+FFMPEG_TB = $(FFMPEG).tar.bz2
FFMPEG_URL = http://ffmpeg.org/releases/$(FFMPEG_TB)
--FFMPEG_SHA1 = aac4876d1bc4d2cd8d9833b20649c3eed984f6ef
+-FFMPEG_SHA1 = 2590af8c754ce8d55745b1e5647e498bf271dc77
+FFMPEG_SHA1 = 053dfea8c9e057fdf237885decd03147cb2412b1
diff --git a/packages/addons/service/tvheadend42/source/bin/tv_grab_file b/packages/addons/service/tvheadend42/source/bin/tv_grab_file
index 906d3a66ef..60825c80e3 100755
--- a/packages/addons/service/tvheadend42/source/bin/tv_grab_file
+++ b/packages/addons/service/tvheadend42/source/bin/tv_grab_file
@@ -30,7 +30,14 @@ then
XMLTV_LOCATION_SCRIPT=`grep XMLTV_LOCATION_SCRIPT $ADDON_SETTINGS | awk '{print $3 }' | sed -e "s,value=,," -e "s,\",,g"`
if [ "$XMLTV_TYPE" = "FILE" ]; then
- cat "$XMLTV_LOCATION_FILE"
+ case "$XMLTV_LOCATION_FILE" in
+ *.gz | *.bz2 | *.xz)
+ zcat "$XMLTV_LOCATION_FILE"
+ ;;
+ *)
+ cat "$XMLTV_LOCATION_FILE"
+ ;;
+ esac
exit 0
elif [ "$XMLTV_TYPE" = "SCRIPT" ]; then
if [ -e "$XMLTV_LOCATION_SCRIPT" ] ; then
diff --git a/packages/addons/service/tvheadend42/source/bin/tvheadend42.start b/packages/addons/service/tvheadend42/source/bin/tvheadend42.start
index 89a999f157..8e249d6486 100755
--- a/packages/addons/service/tvheadend42/source/bin/tvheadend42.start
+++ b/packages/addons/service/tvheadend42/source/bin/tvheadend42.start
@@ -2,7 +2,7 @@
################################################################################
# This file is part of LibreELEC - https://libreelec.tv
-# Copyright (C) 2016-2017 Team LibreELEC
+# Copyright (C) 2016-present Team LibreELEC
#
# LibreELEC is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -89,14 +89,26 @@ if [ "$WORKAROUND_SLEEP" == "true" ]; then
sleep $WORKAROUND_SLEEP_TIME
fi
-# support FritzBox Sat>IP Server detection workaround
+# support FritzBox Sat>IP Server detection workaround for AVM-Repeater and AVM-6490
if [ "$AVM_SATIP_SERVER" == "true" ]; then
- AVM_SATIP=""
- for i in $(seq 1 $AVM_SATIP_SERVER_NUM); do
- ref_ip=AVM_IP_${i}
- eval "AVM_IP=\${$ref_ip}"
- AVM_SATIP="$AVM_SATIP --satip_xml http://${AVM_IP}:${AVM_PORT}/satipdesc.xml"
- done
+ if [ "$AVM_DEVICE" == "AVM_Repeater" ]; then
+ AVM_SATIP="--satip_xml http://${AVM_ROUTER_IP}:49000/satipdesc.xml"
+ fi
+ if [ "$AVM_DEVICE" == "AVM_6490" ]; then
+ AVM_SATIP="--satip_xml http://${AVM_ROUTER_FAKE_IP}:49000/satipdesc.xml"
+ AVM_NUM="4"
+ fi
+
+ # add virtual ip as workaround for AVM limitation of one stream per ip
+ # AVM-Repeater (2 tuners)
+ ip address add ${AVM_IP1}/24 dev $AVM_ETH
+ ip address add ${AVM_IP2}/24 dev $AVM_ETH
+
+ # AVM-6490 (4 tuners)
+ if [ "$AVM_NUM" = "4" ]; then
+ ip address add ${AVM_IP3}/24 dev $AVM_ETH
+ ip address add ${AVM_IP4}/24 dev $AVM_ETH
+ fi
fi
# custom startup parameters
diff --git a/packages/addons/service/tvheadend42/source/resources/language/English/strings.xml b/packages/addons/service/tvheadend42/source/resources/language/English/strings.xml
index 02b78e7e35..fc2a2881cb 100644
--- a/packages/addons/service/tvheadend42/source/resources/language/English/strings.xml
+++ b/packages/addons/service/tvheadend42/source/resources/language/English/strings.xml
@@ -1,39 +1,39 @@
-
-
-
- XMLTV
- DVB
- DEBUG
- FRITZ!Box Sat>IP
- XMLTV Configuration
- XMLTV source type
- XMLTV File location
- XMLTV Web location
- XMLTV Script location
- DVB Configuration
- Unload DVB mudules before suspend
- Wait for frontend initialization
- Number of adapters to wait for
- Preload capmt_ca.so library
- Delay the start of Tvheadend
- Seconds delay
- Custom start parameter
- Parameter
- FRITZ!Box Sat>IP server
- # of tuners
- Tuner #1 address
- Tuner #2 address
- Tuner #3 address
- Tuner #4 address
- AVM SAT>IP Port
- Port
- FRITZ!Box Sat>IP server connection
- TRACE Configuration
- Path
- Activate TRACE Debug
- Debug Value #1
- Debug Value #2
- Debug Value #3
- Debug Value #4
- Debug Value #5
-
+
+
+
+ XMLTV
+ DVB
+ DEBUG
+ FRITZ!Box Sat>IP
+ XMLTV Configuration
+ XMLTV source type
+ XMLTV File location
+ XMLTV Web location
+ XMLTV Script location
+ DVB Configuration
+ Unload DVB mudules before suspend
+ Wait for frontend initialization
+ Number of adapters to wait for
+ Preload capmt_ca.so library
+ Delay the start of Tvheadend
+ Seconds delay
+ Custom start parameter
+ Parameter
+ FRITZ!Box Sat>IP server
+ AVM device
+ IP of the AVM Repeater
+ Router IP range (last digits are always .254)
+ Used network
+ Virtual IP #1
+ Virtual IP #2
+ Virtual IP #3
+ Virtual IP #4
+ TRACE Configuration
+ Path
+ Activate TRACE Debug
+ Debug Value #1
+ Debug Value #2
+ Debug Value #3
+ Debug Value #4
+ Debug Value #5
+
diff --git a/packages/addons/service/tvheadend42/source/resources/settings.xml b/packages/addons/service/tvheadend42/source/resources/settings.xml
index 06883e8c41..7e466454f7 100644
--- a/packages/addons/service/tvheadend42/source/resources/settings.xml
+++ b/packages/addons/service/tvheadend42/source/resources/settings.xml
@@ -1,48 +1,51 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+