OpenSUSE VDR DVB-S2 HD mittels Xine und VDPAU - VDR
Inhaltsverzeichnis |
Downloadverzeichnis vorbereiten
mkdir -p /data/installfiles/vdr
Installationsmedien herunterladen
cd /data/installfiles/vdr wget ftp://ftp.tvdr.de/vdr/Developer/vdr-1.7.11.tar.bz2
Videoverzeichnis vorbereiten
In diesem Verzeichnis werden später die VDR Aufnahmen abgelegt.
cd /data mkdir vdrrecords cd / ln -s /data/vdrrecords/ video
Installation VDR
Link auf compiler.h setzen
cd /usr/local/src/dvb/linux/include/linux ln -s /usr/src/linux/include/linux/compiler.h compiler.h
VDR Verzeichnis vorbereiten und Installationsmedien entpacken
cd /usr/local/src tar -xjf /data/installfiles/vdr/vdr-1.7.11.tar.bz2 ln -s vdr-1.7.11/ vdr
Make.config erstellen und anpassen
cd /usr/local/src/vdr cp -a Make.config.template Make.config vi Make.config DVBDIR = /usr/local/src/dvb/linux LOCDIR = /usr/local/src/vdr/locale PLUGINDIR= /usr/local/src/vdr/PLUGINS
VDR Konfigurationen ablegen
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
Shutdownskript erstellen und ablegen
cd /usr/local/bin vi vdrpoweroff.sh #!/bin/bash /sbin/poweroff
und anschließend das Skript ausführbar machen:
cd /usr/local/bin chmod +x vdrpoweroff.sh
dvbdevice.h anpassen
cd /usr/local/src/vdr vi dvbdevice.h
Das "typedef unsigned char __u8;" muss unter die include Zeile "#include <sys/mman.h>" hinzugefügt werden:
#include <sys/mman.h> // FIXME: workaround for broken linux-dvb header files typedef unsigned char __u8;
Installation VDR
Vorher noch fontconfig-devel ,libjpeg-devel, libcap-devel, gettext-tools, gcc, gcc-g++, make, ncurses-devel über Yast installieren!
cd /usr/local/src/vdr make VFAT=1 REMOTE=LIRC && make plugins && make install
Folgende Fehlermeldungen sind normal, und können ignoriert werden:
cp: „/usr/local/src/vdr/PLUGINS/lib/libvdr-wirbelscan.so.1.7.15“ und „/usr/local/src/vdr/PLUGINS/lib/libvdr-wirbelscan.so.1.7.15“ sind die gleiche Datei
cp: „/usr/local/src/vdr/PLUGINS/lib/libvdr-xineliboutput.so.1.7.15“ und „/usr/local/src/vdr/PLUGINS/lib/libvdr-xineliboutput.so.1.7.15“ sind die gleiche Datei
make: *** [install-plugins] Fehler 1
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
#!/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 2.0 2006/05/14 16:02:05 kls Exp $ 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 budget_ci } # Unload all DVB driver modules loaded in LoadDriver(): function UnloadDriver() { modprobe -r budget_ci } # 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
remote.conf erstellen
cd /etc/vdr vi remote.conf KBD.Up 00000000001B4F41 KBD.Down 00000000001B4F42 KBD.Menu 0000001B5B31397E #F8 KBD.Ok 000000000000000D #Enter KBD.Back 000000001B5B347E #Backspace KBD.Left 00000000001B4F44 KBD.Right 00000000001B4F43 KBD.Red 00000000001B4F50 #F1 KBD.Green 00000000001B4F51 #F2 KBD.Yellow 00000000001B4F52 #F3 KBD.Blue 00000000001B4F53 #F4 KBD.0 0000000000000030 KBD.1 0000000000000031 KBD.2 0000000000000032 KBD.3 0000000000000033 KBD.4 0000000000000034 KBD.5 0000000000000035 KBD.6 0000000000000036 KBD.7 0000000000000037 KBD.8 0000000000000038 KBD.9 0000000000000039 KBD.Power 0000001B5B32347E #F12 KBD.Volume+ 000000000000002B #+ KBD.Volume- 000000000000002D #- KBD.Mute 0000001B5B32307E #F9
VDR in den Autostart
Damit der VDR nach einem Systemstart automatisch gestartet wird kann das runvdr Skript am Ende der inittab des Systems eingetragen werden.
cd /etc/ vi inittab
# VDR vdr:35:once:/usr/local/bin/runvdr # end of /etc/inittab