diff --git a/packages/3rdparty/driver/sundtek/build b/packages/3rdparty/driver/sundtek/build new file mode 100755 index 0000000000..5777907bb4 --- /dev/null +++ b/packages/3rdparty/driver/sundtek/build @@ -0,0 +1,37 @@ +#!/bin/sh + +################################################################################ +# This file is part of OpenELEC - http://www.openelec.tv +# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv) +# +# This Program 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, or (at your option) +# any later version. +# +# This Program 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.tv; see the file COPYING. If not, write to +# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA. +# http://www.gnu.org/copyleft/gpl.html +################################################################################ + +. config/options $1 + +cd $PKG_BUILD + +# binary search & replace (strings must be same length!) +# mediasrv +# /etc/sunI»dtek.conf +# /etc/sundtek.conf +# libdrv_em28xx.so +# /etc/sundtek.conf +# mediaclient +# /etc/sundtek_diseqc.conf +perl -pi -e 's|/etc|/tmp|g' opt/bin/mediasrv +perl -pi -e 's|/etc|/tmp|g' opt/bin/dvb/libdrv_em28xx.so +perl -pi -e 's|/etc|/tmp|g' opt/bin/mediaclient diff --git a/packages/3rdparty/driver/sundtek/meta b/packages/3rdparty/driver/sundtek/meta old mode 100644 new mode 100755 index 613cbd2580..864657fa01 --- a/packages/3rdparty/driver/sundtek/meta +++ b/packages/3rdparty/driver/sundtek/meta @@ -19,13 +19,12 @@ ################################################################################ PKG_NAME="sundtek" -#PKG_VERSION="installer_111001.1658" -PKG_VERSION="installer_development" +PKG_VERSION="20120525" PKG_REV="0" -PKG_ARCH="any" +PKG_ARCH="i386 x86_64" PKG_LICENSE="nonfree" PKG_SITE="http://support.sundtek.com/" -PKG_URL="http://www.sundtek.de/media/${PKG_NAME}_${PKG_VERSION}.sh" +PKG_URL="${DISTRO_SRC}/${PKG_NAME}-${PKG_VERSION}-${ARCH}.tar.gz" PKG_DEPENDS="" PKG_BUILD_DEPENDS="" PKG_PRIORITY="optional" diff --git a/packages/3rdparty/driver/sundtek/unpack b/packages/3rdparty/driver/sundtek/unpack deleted file mode 100755 index 109280c9b4..0000000000 --- a/packages/3rdparty/driver/sundtek/unpack +++ /dev/null @@ -1,77 +0,0 @@ -#!/bin/sh - -################################################################################ -# This file is part of OpenELEC - http://www.openelec.tv -# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv) -# -# This Program 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, or (at your option) -# any later version. -# -# This Program 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.tv; see the file COPYING. If not, write to -# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA. -# http://www.gnu.org/copyleft/gpl.html -################################################################################ - -. config/options $1 - -mkdir -p $BUILD/${PKG_NAME}_${PKG_VERSION} - -( - cd $BUILD/${PKG_NAME}_${PKG_VERSION} - - CHAR=`echo $SOURCES | awk '{ch=substr($0, 0, 1); printf("%c", ch); }'` - if [ ${CHAR} = "/" ]; then - SRC_INSTALLER_ROOT="" - else - SRC_INSTALLER_ROOT="$ROOT/" - fi - - sh ${SRC_INSTALLER_ROOT}$SOURCES/$1/${PKG_NAME}_${PKG_VERSION}.sh -e >/dev/null 2>&1 - - rm chk* installer.tar.gz - rm -r 32bit23 arm* dreambox mips* openwrtmipsr2 ppc* -) - -[ "$TARGET_ARCH" = "i386" ] && ARCH_DIR=32bit -[ "$TARGET_ARCH" = "x86_64" ] && ARCH_DIR=64bit - -SUNDTEK_ROOT=$BUILD/${PKG_NAME}_${PKG_VERSION}/rootsys - -mkdir -p $SUNDTEK_ROOT -tar xzf $BUILD/${PKG_NAME}_${PKG_VERSION}/$ARCH_DIR/installer.tar.gz -C $SUNDTEK_ROOT - -# fix permissions (on mediasrv binary) -chmod 755 $SUNDTEK_ROOT/opt/bin/* - -# binary search & replace (strings must be same length!) -# mediasrv -# /etc/sunI»dtek.conf -# /etc/sundtek.conf -# libdrv_em28xx.so -# /etc/sundtek.conf -# mediaclient -# /etc/sundtek_diseqc.conf -#perl -pi -e 's|\x2F\x65\x74\x63\x2F\x73\x75\x6E\x49\xBB\x64\x74\x65\x6B\x2E\x63\x6F\x6E\x66|\x2F\x74\x6D\x70\x2F\x73\x75\x6E\x49\xBB\x64\x74\x65\x6B\x2E\x63\x6F\x6E\x66|g' $SUNDTEK_ROOT/opt/bin/mediasrv -#perl -pi -e 's|/etc/sundtek.conf|/tmp/sundtek.conf|g' $SUNDTEK_ROOT/opt/bin/mediasrv -#perl -pi -e 's|/etc/sundtek.conf|/tmp/sundtek.conf|g' $SUNDTEK_ROOT/opt/bin/dvb/libdrv_em28xx.so -#perl -pi -e 's|/etc/sundtek_diseqc.conf|/tmp/sundtek_diseqc.conf|g' $SUNDTEK_ROOT/opt/bin/mediaclient - -perl -pi -e 's|/etc|/tmp|g' $SUNDTEK_ROOT/opt/bin/mediasrv -perl -pi -e 's|/etc|/tmp|g' $SUNDTEK_ROOT/opt/bin/dvb/libdrv_em28xx.so -perl -pi -e 's|/etc|/tmp|g' $SUNDTEK_ROOT/opt/bin/mediaclient - -if [ "$PKG_VERSION" = "installer_development" ]; then - wget -q -t 3 -T 3 -O $SUNDTEK_ROOT/sundtek_version.html http://support.sundtek.com/index.php/topic,708.0.html -else - cat >$SUNDTEK_ROOT/sundtek_version.html << MYDATA -${PKG_NAME}_${PKG_VERSION}.sh -MYDATA -fi diff --git a/packages/addons/driver/sundtek-mediatv/addon b/packages/addons/driver/sundtek-mediatv/addon index 4cd8bd2801..12b17a98c2 100755 --- a/packages/addons/driver/sundtek-mediatv/addon +++ b/packages/addons/driver/sundtek-mediatv/addon @@ -25,10 +25,8 @@ mkdir -p $ADDON_BUILD/$PKG_ADDON_ID/config/ cp -P $PKG_DIR/config/* $ADDON_BUILD/$PKG_ADDON_ID/config/ - cp -P $ROOT/$BUILD/sundtek_*/rootsys/sundtek_version.html $ADDON_BUILD/$PKG_ADDON_ID/ - mkdir -p $ADDON_BUILD/$PKG_ADDON_ID/bin/ - cp -Pa $ROOT/$BUILD/sundtek_*/rootsys/opt/bin/* $ADDON_BUILD/$PKG_ADDON_ID/bin/ + cp -Pa $ROOT/$BUILD/sundtek-*/opt/bin/* $ADDON_BUILD/$PKG_ADDON_ID/bin/ mkdir -p $ADDON_BUILD/$PKG_ADDON_ID/lib/ - cp -Pa $ROOT/$BUILD/sundtek_*/rootsys/opt/lib/*.so $ADDON_BUILD/$PKG_ADDON_ID/lib/ + cp -Pa $ROOT/$BUILD/sundtek-*/opt/lib/*.so $ADDON_BUILD/$PKG_ADDON_ID/lib/ diff --git a/packages/addons/driver/sundtek-mediatv/changelog.txt b/packages/addons/driver/sundtek-mediatv/changelog.txt index d388a6fd86..943cf6ef33 100644 --- a/packages/addons/driver/sundtek-mediatv/changelog.txt +++ b/packages/addons/driver/sundtek-mediatv/changelog.txt @@ -1,3 +1,7 @@ +2.1.2 + support for multiple Sundtek tuners + support for working with other tuners (kernel drivers) + 2.1.1 - update to addon version 2.1 diff --git a/packages/addons/driver/sundtek-mediatv/config/sundtek.conf b/packages/addons/driver/sundtek-mediatv/config/sundtek.conf index a3311d4bbe..bbfcced5e2 100644 --- a/packages/addons/driver/sundtek-mediatv/config/sundtek.conf +++ b/packages/addons/driver/sundtek-mediatv/config/sundtek.conf @@ -8,6 +8,12 @@ device_attach=/storage/.xbmc/addons/driver.dvb.sundtek-mediatv/bin/device-attach # Infrared Control Support is disabled/enabled ir_disabled=1 +# trigger device_attach only once if more devices is used +bulk_notification=on + +# Lowest adapter number to start with, e.g. /dev/dvb/adapter5/frontend0 +#first_adapter=5 + # Get adapter serial number with mediaclient -e # or look into file adapter_serial_number.txt [SERIALNUMBER] diff --git a/packages/addons/driver/sundtek-mediatv/config/sundtek.conf.full b/packages/addons/driver/sundtek-mediatv/config/sundtek.conf.full index edb04439b4..4b6175e5de 100644 --- a/packages/addons/driver/sundtek-mediatv/config/sundtek.conf.full +++ b/packages/addons/driver/sundtek-mediatv/config/sundtek.conf.full @@ -3,73 +3,104 @@ # # ----- GLOBAL SECTION ----- #Set loglevel for logging to /var/log/mediasrv.log -#loglevel=[off|max] -#default: min -#max .. little bit more debug -#loglevel=off -loglevel=max +#loglevel=[off|max] #default: min + #max .. little bit more debug +#bulk_notification[on|off] #default off, bulk_notification will only trigger device_attach once + #after the the first device scan when the driver is started up + #after this first scan, the notification will be triggered + #normally again for each device. + # + #for example when 2 devices are attached to the system only one + #notification will be triggered initially, any at a later time + #attached device will generate another device_attach notification + #by default each device will call the script which is set up with + #device_attach +#use_hwpidfilter=[on|off] #For DVB-C, DVB-T, DVB-S/S2 + #enable PID filter, please be careful with that, there are only 15 HW Pid filters available + #when more than 15 pids are set up the pid filter will be disabled automatically -#Call attach script when new device appears -#device_attach=[PATH_TO_SCRIPT] [PARAMETER|DEVID] #"DEVID" will automatically be replaced with the device ID -device_attach=/opt/bin/restartAddons.sh +#dmhwpidfilter=[on|off] #default on, in some cases off might be useful to disable hw pid filter for settopboxes + #if you get a black image when capturing a TV channel and watching another channel on the + #same transponder - try this option and reboot -#Call detach script when device disappears -#device_detach=[PATH_TO_SCRIPT] [PARAMETER|DEVID] #"DEVID" will automatically be replaced with the device ID +#usb_transaction_delay=[0-20] #throttle the USB setup transactions, this can solve problems with weak USB stacks for + #example for embedded boards, unit is milliseconds -#Infrared Control Support is disabled/disabled -ir_disabled=1 +#usb_timeout=[0 - N] #USB timeout for each transaction in milliseconds, 0 default infinite +#voltage_tone_off=[1 or 0] #0 .. default, normal behaviour + #1 .. force DVB-S/S2 to not use any Voltage or Tone (ignore any user parameters) + +#ir_disabled=[1 or 0] #0 .. enable remote control polling, the driver will permanently check for remote control keys + #1 .. disable remote control polling, might fix bugs with weak USB stacks on embedded boards +# #Enable listening on network -#enablenetwork=[on|off] -#default: off +#enablenetwork=[on|off] #default: off #Lowest adapter number to start with, e.g. /dev/dvb/adapter5/frontend0 #first_adapter=5 +#Lowest videodevice number to start with, e.g. /dev/video5 +#first_videodev=5 + +#Call attach script when new device appears +#device_attach=[PATH_TO_SCRIPT] [PARAMETER|DEVID] #"DEVID" will automatically be replaced with the device ID + +#Call detach script when device disappears +#device_detach=[PATH_TO_SCRIPT] [PARAMETER|DEVID] #"DEVID" will automatically be replaced with the device ID + +#Dreambox especially for DM800HD (not SE!) +#vtuner_acceleration=[on|off] #default off, accelerate Dreambox 800HD datatransfer between USB Stick and + #DM800HD # ----- Section for adapter with [SERIALNUMBER] ----- #Get adapter serial number with /opt/bin/mediaclient -e #[SERIALNUMBER] #Description register as dreambox tuner -#dreambox_support_fe1=[on|off] -#default: off +#dreambox_support_fe1=[on|off] #default: off #Infrared protocol to use -#ir_protocol=[RC5|NEC|RC6] -#default: NEC +#ir_protocol=[RC5|NEC|RC6] #default: NEC #Keymap to use, e.g. "/lib/udev/rc_keymaps/vp702x" -#rcmap=[PATH_TO_KEYMAP] -#default: keymap which comes with the device +#rcmap=[PATH_TO_KEYMAP] #default: keymap which comes with the device #Choose initial DVB mode for hybrid DVB-T/DVB-C devices only #initial_dvb_mode=[DVBC|DVBT] #Call attach script when new device appears -#device_attach=[PATH_TO_SCRIPT] [PARAMETER|DEVID] -#"DEVID" will automatically be replaced with the device ID +#device_attach=[PATH_TO_SCRIPT] [PARAMETER|DEVID] #"DEVID" will automatically be replaced with the device ID #Call detach script when device disappears -#device_detach=[PATH_TO_SCRIPT] [PARAMETER|DEVID] -#"DEVID" will automatically be replaced with the device ID +#device_detach=[PATH_TO_SCRIPT] [PARAMETER|DEVID] #"DEVID" will automatically be replaced with the device ID -#Volume level -#volume=[0-127] #default: 118 +#disable_atv=[0|1] #disable initialization of analogTV Frontend +#Initial Audio Volume level for DVB-C/T Hybrid devices +#volume=[0-127] #default: 118 # WSS callback (see http://en.wikipedia.org/wiki/Widescreen_signaling) # trigger script when the videoformat changes between 16:9 or 4:3 #wss_callback=[scriptname] -# WSS_4_3_FULL -# WSS_14_9_LETTERBOX_CENTRE -# WSS_14_9_LETTERBOX_TOP -# WSS_16_9_LETTERBOX_CENTRE -# WSS_16_9_LETTERBOX_TOP -# WSS_16_9_LETTERBOX_DEEPER -# WSS_14_9_FULL_HEIGHT_4_3 -# WSS_16_9_FULL_HEIGHT_16_9 -# WSS_UNABLE_TO_DEMODULATE +# WSS_4_3_FULL +# WSS_14_9_LETTERBOX_CENTRE +# WSS_14_9_LETTERBOX_TOP +# WSS_16_9_LETTERBOX_CENTRE +# WSS_16_9_LETTERBOX_TOP +# WSS_16_9_LETTERBOX_DEEPER +# WSS_14_9_FULL_HEIGHT_4_3 +# WSS_16_9_FULL_HEIGHT_16_9 +# WSS_UNABLE_TO_DEMODULATE #Timeout in ms after that WSS_UNABLE_TO_DEMODULATE will be called -#wss_demodulation_timeout=[MILLISECONDS] +#wss_demodulation_timeout=[MILLISECONDS][/code] + +#vtuner_skip0=vtuner0 # skip /dev/misc/vtuner0 can also be vtunerN +#vtuner_skip1=vtuner1 # skip /dev/misc/vtuner1 can also be vtunerN + +#fe_helper=/path/to/channellist # override frequency setup and use parameters from channellist + # VDR channellists can be used here (eg. created by w_scan) + # this somewhat guarantees high speed channel switching + # when used with a lousy player + # Astra 19.2 Channellist: 1) diff --git a/packages/addons/driver/sundtek-mediatv/meta b/packages/addons/driver/sundtek-mediatv/meta index 1a03fd212e..09e228ffb4 100644 --- a/packages/addons/driver/sundtek-mediatv/meta +++ b/packages/addons/driver/sundtek-mediatv/meta @@ -20,7 +20,7 @@ PKG_NAME="sundtek-mediatv" PKG_VERSION="2.0" -PKG_REV="1" +PKG_REV="2" PKG_ARCH="any" PKG_LICENSE="nonfree" PKG_SITE="http://support.sundtek.com/" diff --git a/packages/addons/driver/sundtek-mediatv/source/bin/userspace-driver.sh b/packages/addons/driver/sundtek-mediatv/source/bin/userspace-driver.sh index e0360b53a6..fe605e16a2 100755 --- a/packages/addons/driver/sundtek-mediatv/source/bin/userspace-driver.sh +++ b/packages/addons/driver/sundtek-mediatv/source/bin/userspace-driver.sh @@ -46,11 +46,10 @@ if [ -z "$(pidof mediasrv)" ]; then if [ -f $SUNDTEK_READY ]; then rm -f $SUNDTEK_READY break - else if [ "$cnt" = "120" ]; then - logger -t Tvheadend "### No Sundtek device attached in 60 sec ###" + elif [ "$cnt" = "240" ]; then + logger -t Sundtek "### No Sundtek device attached in 120 sec ###" return fi - fi let cnt=cnt+1 usleep 500000 done @@ -62,9 +61,11 @@ if [ -z "$(pidof mediasrv)" ]; then # save adapter serial number in background sleep 4 serial_number_old=$(cat $ADDON_HOME/adapters.txt 2>/dev/null) - serial_number_new=$(mediaclient -e | awk '/ID:/ {print $2}') + serial_number_new=$(mediaclient -e | awk '/device / {print $0} /ID:/ {print $2}') if [ "$serial_number_old" != "$serial_number_new" ]; then echo "$serial_number_new" >$ADDON_HOME/adapters.txt fi )& +else + export LD_PRELOAD=$ADDON_DIR/lib/libmediaclient.so:$LD_PRELOAD fi diff --git a/tools/mkpkg/mkpkg_sundtek b/tools/mkpkg/mkpkg_sundtek new file mode 100755 index 0000000000..d8ed84fb87 --- /dev/null +++ b/tools/mkpkg/mkpkg_sundtek @@ -0,0 +1,47 @@ +#!/bin/sh +################################################################################ +# This file is part of OpenELEC - http://www.openelec.tv +# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv) +# +# This Program 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, or (at your option) +# any later version. +# +# This Program 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.tv; see the file COPYING. If not, write to +# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA. +# http://www.gnu.org/copyleft/gpl.html +################################################################################ + +date=$(date +%Y%m%d) +sundtek_base=sundtek-$date + +rm -f installer.tar.gz +rm -fr $sundtek_base + +echo "getting 32bit driver..." +wget --passive-ftp --no-check-certificate -O installer.tar.gz http://sundtek.de/media/netinst/32bit/installer.tar.gz +echo "unpacking..." +mkdir -p $sundtek_base +tar xzf installer.tar.gz -C $sundtek_base +chmod 755 $sundtek_base/opt/bin/* +echo "packing..." +tar czf $sundtek_base-i386.tar.gz $sundtek_base +rm -fr $sundtek_base + +echo "getting 64bit driver..." +wget --passive-ftp --no-check-certificate -O installer.tar.gz http://sundtek.de/media/netinst/64bit/installer.tar.gz +echo "unpacking..." +mkdir -p $sundtek_base +tar xzf installer.tar.gz -C $sundtek_base +rm -f installer.tar.gz +chmod 755 $sundtek_base/opt/bin/* +echo "packing..." +tar czf $sundtek_base-x86_64.tar.gz $sundtek_base +rm -fr $sundtek_base