summaryrefslogtreecommitdiff
path: root/runvdr
diff options
context:
space:
mode:
authorKlaus Schmidinger <kls (at) cadsoft (dot) de>2006-05-14 18:00:00 +0200
committerKlaus Schmidinger <kls (at) cadsoft (dot) de>2006-05-14 18:00:00 +0200
commit5d8e3b18dc610e2696606092ba66e1477eccce88 (patch)
tree2a4cef68cea15fa650fc24ed70c145d7b5ab921a /runvdr
parent529fc7b48aa8e2d6f3b66b1f0a473ee7bbad16c2 (diff)
downloadvdr-patch-lnbsharing-5d8e3b18dc610e2696606092ba66e1477eccce88.tar.gz
vdr-patch-lnbsharing-5d8e3b18dc610e2696606092ba66e1477eccce88.tar.bz2
Version 1.4.0-1vdr-1.4.0-1
- Updated 'S110W' in 'sources.conf'. - Adjusted the 'runvdr' script so that the user can fill in the functions to detect, load and unload the necessary driver modules (thanks to M. Kiesel for reporting that it still used DVBDIR). - Added 'eval' to the $VDRCMD call in 'runvdr' to avoid problems with quoting (suggested by Udo Richter). - Fixed missing ',' in the Italian and Polish OSD texts (thanks to Marko Mäkelä). - Updated the Czech OSD texts (thanks to Vladimír Bárta). - Fixed handling the "Power" key in case a timer is about to start recording (thanks to Udo Richter). - Fixed the character 'r' in fontosd and fontsml for iso8859-2 (thanks to Vladimír Bárta). - When checking whether a VPS timer has entered the "VPS margin", the event's start time is now used instead of the timer's start time, because otherwise events that start way off of their VPS time wouldn't be recorded correctly. - If VPS timers are active, their events are now being kept up to date if there are any free devices available. - Fixed the character #207 in fontosd for iso8859-2 (thanks to Vladimír Bárta). - Fixed handling unknown codes when learning LIRC remote control codes (reported by Helmut Auer). - Since some channels (especially the Austrian ORF) randomly change the ids of their EPG events, VDR now gives the start time precedence when searching for existing events. - Fixed automatically updating the CAM menu in case the whole operation (for instance a firmware update) takes longer than the menu timeout.
Diffstat (limited to 'runvdr')
-rwxr-xr-xrunvdr39
1 files changed, 30 insertions, 9 deletions
diff --git a/runvdr b/runvdr
index 355549c..701c94c 100755
--- a/runvdr
+++ b/runvdr
@@ -5,6 +5,11 @@
# If VDR exits abnormally, the driver will be reloaded
# and VDR restarted.
#
+# In order to actually use this script you need to implement
+# the functions DriverLoaded(), LoadDriver() and UnloadDriver()
+# and maybe adjust the VDRPRG and VDRCMD to your particular
+# requirements.
+#
# Since this script loads the DVB driver, it must be started
# as user 'root'. Add the option "-u username" to run VDR
# under the given user name.
@@ -15,27 +20,43 @@
# See the main source file 'vdr.c' for copyright information and
# how to reach the author.
#
-# $Id: runvdr 1.16 2006/02/04 15:20:48 kls Exp $
+# $Id: runvdr 1.18 2006/05/01 14:51:00 kls Exp $
-DVBDIR="../DVB/driver"
VDRPRG="./vdr"
VDRCMD="$VDRPRG -w 60 $*"
LSMOD="`/sbin/lsmod | grep -w '^dvb' | wc -l`"
KILL="/usr/bin/killall -q -TERM"
+# Detect whether the DVB driver is already loaded
+# and return 0 if it *is* loaded, 1 if not:
+function DriverLoaded()
+{
+ return 1
+}
+
+# Load all DVB driver modules needed for your hardware:
+function LoadDriver()
+{
+}
+
+# Unload all DVB driver modules loaded in LoadDriver():
+function UnloadDriver()
+{
+}
+
# Load driver if it hasn't been loaded already:
-if [ $LSMOD -eq 0 ] ; then
- (cd $DVBDIR; make insmod)
+if ! DriverLoaded; then
+ LoadDriver
fi
while (true) do
- $VDRCMD
+ eval "$VDRCMD"
if test $? -eq 0 -o $? -eq 2; then exit; fi
- date
- echo "restarting VDR"
+ echo "`date` reloading DVB driver"
$KILL $VDRPRG
sleep 10
- (cd $DVBDIR; make rmmod; make insmod)
- date
+ UnloadDriver
+ LoadDriver
+ echo "`date` restarting VDR"
done