OpenSUSE VDR DVB-S2 - xine - Часть 3: VDR
Материал из RuVDRWiki
Содержание
|
Установка VDR
Создание каталога
cd /data/installfiles mkdir vdr
Videoverzeichnis vorbereiten
In diesem Verzeichnis werden später die VDR Aufnahmen abgelegt.
cd /data mkdir vdrrecords cd / ln -s /data/vdrrecords/ video
Закачиваем исходники с VDR
cd /data/installfiles/vdr wget ftp://ftp.cadsoft.de/vdr/Developer/vdr-1.7.0.tar.bz2
Verzeichnis vorbereiten und Installationsdateien entpacken
cd /usr/local/src tar -xjf /data/installfiles/vdr/vdr-1.7.0.tar.bz2 mv vdr-1.7.0/ /usr/local/src/vdr
Патчим VDR для работы с h264
cd /data/installfiles/vdr wget http://www.linuxtv.org/pipermail/vdr/attachments/20080413/1054bcfb/attachment-0001.bin mv attachment-0001.bin vdr-1.7.0-h264-syncearly-framespersec-audioindexer-fielddetection-speedup.diff.bz2 bunzip2 vdr-1.7.0-h264-syncearly-framespersec-audioindexer-fielddetection-speedup.diff.bz2 cd /usr/local/src/vdr patch -p1 -i /data/installfiles/vdr/vdr-1.7.0-h264-syncearly-framespersec-audioindexer-fielddetection-speedup.diff
Правим Make.config
cd /usr/local/src/vdr cp -a Make.config.template Make.config vi Make.config DVBDIR = /usr/local/src/dvb/linux
Копируем скрипты и конфиги
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
Правим скрипт отключения питания на VDR
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
Создаем remote.conf
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
cd /usr/local/src/vdr make VFAT=1 && make plugins && make install
Запуск VDR с помощью скрипта runvdr
Das Skript runvdr wird benötigt um die DVB Treiber sowie den VDR zu starten.
Правим runvdr
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 1.19 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 dvb_ttpci modprobe budget_ci } # Unload all DVB driver modules loaded in LoadDriver(): function UnloadDriver() { modprobe -r budget_ci modprobe -r dvb_ttpci modprobe -r stv0299 modprobe -r lnbp21 } # 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 в автозагрузку
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
