Runvdr

Aus VDR Wiki
(Unterschied zwischen Versionen)
Wechseln zu: Navigation, Suche
(http://www.linuxtv.org/pipermail/vdr/2006-May/009220.html)
K (Hob den Schutz von „Runvdr“ auf)
 
(28 dazwischenliegende Versionen von 17 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
 
==Beschreibung==
 
==Beschreibung==
{{Box Datei | [[Struktur|$SOURCE]]/VDR/runvdr |
+
{{Box Datei | [[Struktur|$SOURCEDIR]]/VDR/runvdr |
 
<pre>
 
<pre>
 
#!/bin/sh
 
#!/bin/sh
#
+
 
 
# runvdr: Loads the DVB driver and runs VDR
 
# runvdr: Loads the DVB driver and runs VDR
 
#
 
#
Zeile 24: Zeile 24:
 
# how to reach the author.
 
# how to reach the author.
 
#
 
#
# $Id: runvdr 1.16 2006/02/04 15:20:48 kls Exp kls $
+
# $Id: runvdr 1.19 2006/05/14 16:02:05 kls Exp $
  
 
VDRPRG="./vdr"
 
VDRPRG="./vdr"
 
VDRCMD="$VDRPRG -w 60 $*"
 
VDRCMD="$VDRPRG -w 60 $*"
  
LSMOD="`/sbin/lsmod | grep -w '^dvb' | wc -l`"
 
 
KILL="/usr/bin/killall -q -TERM"
 
KILL="/usr/bin/killall -q -TERM"
  
Zeile 36: Zeile 35:
 
function DriverLoaded()
 
function DriverLoaded()
 
{
 
{
    return 1
+
  return 1
 
}
 
}
  
Zeile 42: Zeile 41:
 
function LoadDriver()
 
function LoadDriver()
 
{
 
{
    :
 
 
}
 
}
  
Zeile 48: Zeile 46:
 
function UnloadDriver()
 
function UnloadDriver()
 
{
 
{
    :
 
 
}
 
}
  
 
# Load driver if it hasn't been loaded already:
 
# Load driver if it hasn't been loaded already:
if ! DriverLoaded ; then
+
if ! DriverLoaded; then
    LoadDriver
+
  LoadDriver
    fi
+
  fi
  
 
while (true) do
 
while (true) do
 
       eval "$VDRCMD"
 
       eval "$VDRCMD"
       if test $? -eq 0 -o $? -eq 2 ; then exit; fi
+
       if test $? -eq 0 -o $? -eq 2; then exit; fi
 
       echo "`date` reloading DVB driver"
 
       echo "`date` reloading DVB driver"
 
       $KILL $VDRPRG
 
       $KILL $VDRPRG
Zeile 68: Zeile 65:
 
</pre>
 
</pre>
 
}}
 
}}
 +
 +
Beispiel Funktionen, für den aktuellen DVB Treiber [[DVB Installation v4l-dvb]].
 +
 +
function DriverLoaded()
 +
{
 +
    grep -qse dvb[-_]core /proc/modules
 +
}
 +
 +
# Load all DVB driver modules needed for your hardware:
 +
function LoadDriver()
 +
{
 +
    make -C "[[Struktur|$SOURCEDIR]]/DVB/v4l" load
 +
}
 +
 +
# Unload all DVB driver modules loaded in LoadDriver():
 +
function UnloadDriver()
 +
{
 +
    make -C "[[Struktur|$SOURCEDIR]]/DVB/v4l" unload
 +
}
  
 
==Scripts / Tools==
 
==Scripts / Tools==
Zeile 79: Zeile 95:
 
# [ftp://ftp.heise.de/pub/ct/listings/0308-202.zip für mehrere VDR Instanzen]
 
# [ftp://ftp.heise.de/pub/ct/listings/0308-202.zip für mehrere VDR Instanzen]
 
# [http://www.errror.org/vdr Errror]
 
# [http://www.errror.org/vdr Errror]
 +
# [http://www.udo-richter.de/vdr/scripts.en.html runvdr-extreme]
  
 
[[Kategorie:Skripte]]
 
[[Kategorie:Skripte]]

Aktuelle Version vom 5. März 2011, 12:00 Uhr

[Bearbeiten] Beschreibung

Datei
$SOURCEDIR/VDR/runvdr
#!/bin/sh

# runvdr: Loads the DVB driver and runs VDR
#
# 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.
#
# Any command line parameters will be passed on to the
# actual 'vdr' program.
#
# See the main source file 'vdr.c' for copyright information and
# how to reach the author.
#
# $Id: runvdr 1.19 2006/05/14 16:02:05 kls Exp $

VDRPRG="./vdr"
VDRCMD="$VDRPRG -w 60 $*"

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 ! DriverLoaded; then
   LoadDriver
   fi

while (true) do
      eval "$VDRCMD"
      if test $? -eq 0 -o $? -eq 2; then exit; fi
      echo "`date` reloading DVB driver"
      $KILL $VDRPRG
      sleep 10
      UnloadDriver
      LoadDriver
      echo "`date` restarting VDR"
      done


Beispiel Funktionen, für den aktuellen DVB Treiber DVB Installation v4l-dvb.

function DriverLoaded()
{
    grep -qse dvb[-_]core /proc/modules
}

# Load all DVB driver modules needed for your hardware:
function LoadDriver()
{
    make -C "$SOURCEDIR/DVB/v4l" load
}

# Unload all DVB driver modules loaded in LoadDriver():
function UnloadDriver()
{
    make -C "$SOURCEDIR/DVB/v4l" unload
}

[Bearbeiten] Scripts / Tools

  1. watchvdr
  2. [1]
  3. runvdr von Linvdr
  4. runvideo-rc
  5. runvideo
  6. Daemon
  7. Perl
  8. für mehrere VDR Instanzen
  9. Errror
  10. runvdr-extreme