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 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +