OpenSuSE DVB-S2 - VDR

Aus VDR Wiki
(Unterschied zwischen Versionen)
Wechseln zu: Navigation, Suche
(VDR starten)
Zeile 165: Zeile 165:
 
}}
 
}}
  
===VDR starten===
+
====VDR starten====
 
  /usr/local/bin/runvdr
 
  /usr/local/bin/runvdr

Version vom 7. Oktober 2007, 12:14 Uhr

Inhaltsverzeichnis

Installation VDR

Download Verzeichnis erstellen

cd /data/installfiles
mkdir vdr

Videoverzeichnis vorbereiten

cd /data
mkdir vdrrecords
cd /
ln -s /data/vdrrecords/ video

VDR herunterladen und vorbereiten

cd /data/installfiles/vdr
wget ftp://ftp.cadsoft.de/vdr/Developer/vdr-1.5.9.tar.bz2
cd /usr/local/src
tar -xjf /data/installfiles/vdr/vdr-1.5.9.tar.bz2
mv vdr-1.5.9/ vdr

VDR Patches herunterladen

Den hier aufgeführten Patch habe ich aus der Mailinglist entnommen.

cd /data/installfiles/vdr
wget http://www.linuxtv.org/pipermail/vdr/attachments/20070927/9b023c8d/attachment-0001.bin
mv attachment-0001.bin vdr-1.5.9-dvbs2-h264-syncearly-framespersec.diff

VDR für h264/DVBS2 patchen

cd /usr/local/src/vdr
patch -p1 -i /data/installfiles/vdr/vdr-1.5.9-dvbs2-h264-syncearly-framespersec.diff

Makefile anpassen

cd /usr/local/src/vdr
vi Makefile

LOCDIR   = /usr/local/src/vdr/locale
DVBDIR   = /usr/local/src/dvb/linux

ifdef DVBDIR
INCLUDES += -I$(DVBDIR)/include
endif

skincurses.c anpassen

cd /usr/local/src/vdr/PLUGINS/src/skincurses
vi skincurses.c

cCursesOsd::cCursesOsd(int Left, int Top)
:cOsd(Left, Top, 0)

Skripte und Konfigurationsdateien vorbereiten

cd /usr/local/src/vdr
cp -a svdrpsend.pl /usr/local/bin
mkdir -p /etc/vdr/plugins /var/vdr
mv *.conf /etc/vdr
mv channels.conf.cable /etc/vdr
mv channels.conf.terr /etc/vdr

channels.conf editieren und HDTV Kanäle hinzufügen

cd /etc/vdr
vi channels.conf

:HDTV
ASTRA  HD;BetaDigital:12722:hC23M5S1Z35:S19.2E:22000:10767+767:768=deu:0:0:10202:1:1119:0
ProSieben HD;ProSiebenSat.1:12722:hC23M5S1Z35:S19.2E:22000:0:0:0:0:10200:1:1119:0
Sat.1 HD;ProSiebenSat.1:12722:hC23M5S1Z35:S19.2E:22000:0:0:0:0:10201:1:1119:0
ANIXE HD;BetaDigital:12722:hC23M5S1Z35:S19.2E:22000:0:0:0:0:10203:1:1119:0
:@1000 New channels

Shutdownskript erstellen und ablegen

cd /usr/local/bin
vi vdrpoweroff.sh 

#!/bin/bash
/sbin/poweroff 

cd /usr/local/bin
chmod +x vdrpoweroff.sh

VDR installieren

cd /usr/local/src/vdr/
make VFAT=1 && make plugins && make install

VDR mittels runvdr starten

Das Skript runvdr wird benötigt um die DVB Treiber sowie den VDR zu starten.

runvdr anpassen

cd /usr/local/bin
vi runvdr
Datei
/usr/local/bin/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 $<br>

export LANG=de_DE
export LC_COLLATE=de_DE

PATH=/usr/local/bin:$PATH
VDRPRG="/usr/local/bin/vdr"
VDRCMD="$VDRPRG -t /dev/tty8 -w 60 -c /etc/vdr -E /var/vdr --vfat \
       -L /usr/local/src/vdr/PLUGINS/lib \
       -s /usr/local/bin/vdrpoweroff.sh \
       $*"
 
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()
{
modprobe stb6100
modprobe stb0899
modprobe lnbp21
modprobe budget-ci
}
# Unload all DVB driver modules loaded in LoadDriver():
function UnloadDriver()
{
modprobe -r budget-ci
modprobe -r lnbp21
modprobe -r stb0899
modprobe -r stb6100
}
# 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


VDR starten

/usr/local/bin/runvdr