C't-VDR - 2. Karte nachträglich einrichten
K (Grammatik) |
|||
(21 dazwischenliegende Versionen von 3 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
− | + | Hier ein paar Tipps zur Installation einer zweiten DVB-Karte. Diese Anleitung bezieht sich auf einen [[C't-VDR]] in Version 3 oder höher, sollte aber auf andere Distributionen übertragbar sein. Ansonsten evtl. Änderungen für andere Distributionen ergänzen! | |
− | Hier ein paar Tipps zur Installation einer zweiten DVB-Karte. Diese Anleitung bezieht sich auf einen | + | |
− | 1. Karte einbauen und booten | + | '''1.''' Karte einbauen und booten |
− | 2. Mit "lspci" nachschauen, ob Linux die Karte überhaupt erkennt. Der Output sollte etwa diese Zeilen enthalten: | + | Hierzu evtl. für die Jumperung von VIA Riserkarten [[EPIA_ME6000#ME6000_mit_2_PCI_Karten|hier]] gucken. |
+ | |||
+ | '''2.''' Mit "lspci" nachschauen, ob Linux die Karte überhaupt erkennt. Der Output sollte etwa diese Zeilen enthalten: | ||
0000:01:00.0 Multimedia controller: Philips Semiconductors SAA7146 (rev 01) | 0000:01:00.0 Multimedia controller: Philips Semiconductors SAA7146 (rev 01) | ||
Zeile 11: | Zeile 12: | ||
Die zweite Karte muss nun Linux bekannt gemacht werden. | Die zweite Karte muss nun Linux bekannt gemacht werden. | ||
− | 3. Dafür zuerst den VDR stoppen mit | + | '''3.''' Dafür zuerst den VDR stoppen mit |
/etc/init.d/vdr stop | /etc/init.d/vdr stop | ||
Zeile 17: | Zeile 18: | ||
(oder aus dem OSD heraus unter Befehle/VDR-Wartung/VDR Stoppen.) | (oder aus dem OSD heraus unter Befehle/VDR-Wartung/VDR Stoppen.) | ||
− | 4. Dann zur Kontrolle die Liste der geladenen Module anzeigen mit: | + | '''4.''' Dann zur Kontrolle die Liste der geladenen Module anzeigen mit: |
lsmod | lsmod | ||
Zeile 31: | Zeile 32: | ||
Sollte bei einem dieser Module eine Fehlermeldung kommen, dass dieses Modul noch von einem anderen abhängig ist, dieses zuerst entladen und dann das betreffende Modul noch einmal probieren zu entladen! Abhängigkeiten werden bei der Ausgabe von lsmod in Klammern hinter dem Modulnamen ganz rechts angezeigt. | Sollte bei einem dieser Module eine Fehlermeldung kommen, dass dieses Modul noch von einem anderen abhängig ist, dieses zuerst entladen und dann das betreffende Modul noch einmal probieren zu entladen! Abhängigkeiten werden bei der Ausgabe von lsmod in Klammern hinter dem Modulnamen ganz rechts angezeigt. | ||
− | 5. Jetzt ist noch die Datei mit der alten Modulkonfiguration ('''/etc/modutils/linuxtv-dvb.2.4.27-ctvdr-1''') | + | '''5.''' Jetzt ist noch die Datei mit der alten Modulkonfiguration ('''/etc/modutils/linuxtv-dvb.2.4.27-ctvdr-1''') umbenennen (z.B. in .bak). |
− | 6. Für den Kernel der c't VDR Version 3 Folgendes ausführen: | + | '''6.''' Für den Kernel der c't VDR Version 3 Folgendes ausführen: |
dpkg-reconfigure linuxtv-dvb-modules-2.4.27-ctvdr-1 | dpkg-reconfigure linuxtv-dvb-modules-2.4.27-ctvdr-1 | ||
Zeile 41: | Zeile 42: | ||
dpkg-reconfigure linuxtv-dvb-ct-modules-2.4.27-ctvdr-1 | dpkg-reconfigure linuxtv-dvb-ct-modules-2.4.27-ctvdr-1 | ||
− | Dieses Kommando startet erneut das Skript, das nach vorhandenen DVB-Karten sucht. Es kann nämlich sein, dass die neue Karte ein anderes Frontend-Modul braucht als die Alte. Im blauen Fenster Frage nach der Suche mit "Ja" beantworten. | + | Dieses Kommando startet erneut das Skript, das nach vorhandenen DVB-Karten sucht. Es kann nämlich sein, dass die neue Karte ein anderes Frontend-Modul braucht, als die Alte. Im blauen Fenster die Frage nach der Suche mit "Ja" beantworten. |
Jetzt sollte eine neue Version der Datei '''etc/modutils/linuxtv-dvb.2.4.27-ctvdr-1''' geschrieben worden sein. | Jetzt sollte eine neue Version der Datei '''etc/modutils/linuxtv-dvb.2.4.27-ctvdr-1''' geschrieben worden sein. | ||
− | Diese ist wahrscheinlich größer und enthält neue Module für die zweite Karte (außer diese benötigt | + | Diese ist wahrscheinlich größer und enthält neue Module für die zweite Karte (außer diese benötigt nur dieselben Module wie die Erste) z.B. dvb-ttpci-budget für eine Hauppauge Nova-S. |
− | 7. Nun mit | + | Meine sieht nun wie folgt aus (für eine Nova-S und eine FF 1.x; dürfte aber bei jedem verschieden sein, da, je nach Karte, andere Module gebraucht werden!): |
+ | <pre> | ||
+ | #!/bin/sh | ||
+ | if [ "`uname -r`" == "2.4.27-ctvdr-1" ] ; then | ||
+ | cat <<EOF | ||
+ | alias char-major-250 dvb | ||
+ | probeall dvb dvb-ttpci | ||
+ | below dvb-ttpci stv0299 | ||
+ | add probeall dvb dvb-ttpci-budget | ||
+ | below dvb-ttpci-budget stv0299 | ||
+ | EOF | ||
+ | fi | ||
+ | </pre> | ||
+ | |||
+ | '''7.''' Nun mit | ||
modprobe dvb | modprobe dvb | ||
Zeile 54: | Zeile 69: | ||
lsmod | lsmod | ||
− | überprüfen, ob oben entladene Module jetzt wieder geladen wurden. | + | überprüfen, ob oben entladene Module (unter 4. per rmmod) und die Neuen für die Zweite (stehen in der vom Skript erzeugten linuxtv-dvb.2.4.27-ctvdr-1 jetzt zusätzlich zu denen von früher drin) jetzt (wieder) geladen wurden. |
− | 8. Jetzt den VDR wieder starten: | + | '''8.''' Jetzt den VDR wieder starten: |
/etc/init.d/vdr start | /etc/init.d/vdr start | ||
− | Jetzt geht | + | Jetzt geht evtl. nur die erste (alte) Karte, die vorher schon ging, da die neuen zusätzlichen Module nicht automatisch geladen wurden! |
+ | Deshalb müssen diese mit | ||
− | + | modprobe Modulname (meist dvb-ttpci-budget oder dvb-ttpci-budget-ci und evtl. das Frontend) | |
+ | |||
+ | manuell geladen und den VDR übers OSD unter Einstellungen\Neustart neu gestartet werden. | ||
+ | |||
+ | '''9.''' Nun muss man noch im OSD unter Einstellungen\DVB\ das Primäre DVB-Interface auf die Nr. der neuen Budget-Karte ändern (alte FF ist 1, daher sollte diese jetzt 2 sein). | ||
+ | |||
+ | Funktioniert die Umstellung des primären DVB-Interfaces im OSD nun (ist die 1 also in eine 2 änderbar), dann sollten, wenn eine Aufnahme läuft, trotzdem noch alle Kanäle umschaltbar sein (also man kann diese noch gucken). Im OSD (Enter drücken) steht dann "DVB2: 1 Aufnahme". | ||
+ | |||
+ | Leider vergisst er das Laden der zusätzlichen Module für die neue Karte beim Reboot wieder! | ||
+ | |||
+ | '''10.''' Deshalb noch | ||
+ | |||
+ | update-modules | ||
+ | depmod -a | ||
+ | |||
+ | ausführen. Nun sollte die /etc/modules.conf sich geändert haben und ein Änderungsdatum von jetzt haben. | ||
===Probleme=== | ===Probleme=== | ||
Zeile 83: | Zeile 114: | ||
ermitteln. | ermitteln. | ||
− | Dann muss man in /usr/share/ | + | Dann muss man in /usr/share/vdr/shutdown-hooks/ den Inhalt der S50.vdrconvert in Folgendes ändern (in vdrdevel ist nur ein Symlink darauf): |
<pre># | <pre># | ||
Zeile 120: | Zeile 151: | ||
[http://www.vdr-portal.de/board/thread.php?threadid=54095 Thread zum VDRConvert-Fehler] | [http://www.vdr-portal.de/board/thread.php?threadid=54095 Thread zum VDRConvert-Fehler] | ||
+ | |||
+ | [[Kategorie:C't-VDR|2. Karte nachträglich einrichten]] |
Aktuelle Version vom 10. Februar 2009, 20:17 Uhr
Hier ein paar Tipps zur Installation einer zweiten DVB-Karte. Diese Anleitung bezieht sich auf einen C't-VDR in Version 3 oder höher, sollte aber auf andere Distributionen übertragbar sein. Ansonsten evtl. Änderungen für andere Distributionen ergänzen!
1. Karte einbauen und booten
Hierzu evtl. für die Jumperung von VIA Riserkarten hier gucken.
2. Mit "lspci" nachschauen, ob Linux die Karte überhaupt erkennt. Der Output sollte etwa diese Zeilen enthalten:
0000:01:00.0 Multimedia controller: Philips Semiconductors SAA7146 (rev 01) 0000:01:02.0 Multimedia controller: Philips Semiconductors SAA7146 (rev 01)
Die zweite Karte muss nun Linux bekannt gemacht werden.
3. Dafür zuerst den VDR stoppen mit
/etc/init.d/vdr stop
(oder aus dem OSD heraus unter Befehle/VDR-Wartung/VDR Stoppen.)
4. Dann zur Kontrolle die Liste der geladenen Module anzeigen mit:
lsmod
und die geladenen DVB-Module entladen mit:
rmmod dvb-ttpci rmmod ttpci-eeprom rmmod stv0299 rmmod tda1004x rmmod dvb-core
Sollte bei einem dieser Module eine Fehlermeldung kommen, dass dieses Modul noch von einem anderen abhängig ist, dieses zuerst entladen und dann das betreffende Modul noch einmal probieren zu entladen! Abhängigkeiten werden bei der Ausgabe von lsmod in Klammern hinter dem Modulnamen ganz rechts angezeigt.
5. Jetzt ist noch die Datei mit der alten Modulkonfiguration (/etc/modutils/linuxtv-dvb.2.4.27-ctvdr-1) umbenennen (z.B. in .bak).
6. Für den Kernel der c't VDR Version 3 Folgendes ausführen:
dpkg-reconfigure linuxtv-dvb-modules-2.4.27-ctvdr-1
(oder evtl. bei Verwendung des 2.4.27-ctvdr-1 Kernels unter neueren c't VDR-Versionen:)
dpkg-reconfigure linuxtv-dvb-ct-modules-2.4.27-ctvdr-1
Dieses Kommando startet erneut das Skript, das nach vorhandenen DVB-Karten sucht. Es kann nämlich sein, dass die neue Karte ein anderes Frontend-Modul braucht, als die Alte. Im blauen Fenster die Frage nach der Suche mit "Ja" beantworten.
Jetzt sollte eine neue Version der Datei etc/modutils/linuxtv-dvb.2.4.27-ctvdr-1 geschrieben worden sein. Diese ist wahrscheinlich größer und enthält neue Module für die zweite Karte (außer diese benötigt nur dieselben Module wie die Erste) z.B. dvb-ttpci-budget für eine Hauppauge Nova-S.
Meine sieht nun wie folgt aus (für eine Nova-S und eine FF 1.x; dürfte aber bei jedem verschieden sein, da, je nach Karte, andere Module gebraucht werden!):
#!/bin/sh if [ "`uname -r`" == "2.4.27-ctvdr-1" ] ; then cat <<EOF alias char-major-250 dvb probeall dvb dvb-ttpci below dvb-ttpci stv0299 add probeall dvb dvb-ttpci-budget below dvb-ttpci-budget stv0299 EOF fi
7. Nun mit
modprobe dvb
die DVB-Module wieder laden und mit
lsmod
überprüfen, ob oben entladene Module (unter 4. per rmmod) und die Neuen für die Zweite (stehen in der vom Skript erzeugten linuxtv-dvb.2.4.27-ctvdr-1 jetzt zusätzlich zu denen von früher drin) jetzt (wieder) geladen wurden.
8. Jetzt den VDR wieder starten:
/etc/init.d/vdr start
Jetzt geht evtl. nur die erste (alte) Karte, die vorher schon ging, da die neuen zusätzlichen Module nicht automatisch geladen wurden! Deshalb müssen diese mit
modprobe Modulname (meist dvb-ttpci-budget oder dvb-ttpci-budget-ci und evtl. das Frontend)
manuell geladen und den VDR übers OSD unter Einstellungen\Neustart neu gestartet werden.
9. Nun muss man noch im OSD unter Einstellungen\DVB\ das Primäre DVB-Interface auf die Nr. der neuen Budget-Karte ändern (alte FF ist 1, daher sollte diese jetzt 2 sein).
Funktioniert die Umstellung des primären DVB-Interfaces im OSD nun (ist die 1 also in eine 2 änderbar), dann sollten, wenn eine Aufnahme läuft, trotzdem noch alle Kanäle umschaltbar sein (also man kann diese noch gucken). Im OSD (Enter drücken) steht dann "DVB2: 1 Aufnahme".
Leider vergisst er das Laden der zusätzlichen Module für die neue Karte beim Reboot wieder!
10. Deshalb noch
update-modules depmod -a
ausführen. Nun sollte die /etc/modules.conf sich geändert haben und ein Änderungsdatum von jetzt haben.
[Bearbeiten] Probleme
Wenn der VDR nach den obigen Schritten die zweite Karte zur Aufnahme nutzen kann, aber sich mit folgender Fehlermeldung im Log weigert, herunterzufahren,:
vdrdevel-shutdown: executing /usr/share/vdrdevel/shutdown-hooks/S50.vdrconvert as shell script vdrdevel-shutdown: /usr/share/vdrdevel/shutdown-hooks/S50.vdrconvert requests to try again in 5 minutes vdr: [1849] connect from 127.0.0.1, port 32769 - accepted vdr: [1849] SVDRP message: 'Shutdown aborted. Retry in 5 minutes.' vdr: [1849] info: Shutdown aborted. Retry in 5 minutes. vdr: [1849] closing SVDRP connection
dann liegt dies an der zu alten VDRConvert-Version: vdrdevel-addon-vdrconvert (0.1.1+1) evtl. im Zusammenhang mit dem Burn-Plugin. Eine neuere Version von VDRConvert ist bei e-Tobi aber nicht für VDRDevel zu bekommen! Die Version lässt sich mithilfe von
ctvdrdevelinfo (bzw. ctvdrinfo)
ermitteln.
Dann muss man in /usr/share/vdr/shutdown-hooks/ den Inhalt der S50.vdrconvert in Folgendes ändern (in vdrdevel ist nur ein Symlink darauf):
# # vdrconvert shutdown hook script - Tobias Grimm <tg@e-tobi.net> # ------------------------------- # # This script checks if vdrconvert is still doing anything, and if so # advices VDR to try the shutdown again in 5 minutes # . /etc/vdr/vdrconvert/vdrconvert.conf # check if any job is still in queue or any convert process is running: for JOBFIL in $CONVERT_JOBS ; do JOB=$JOBFIL JOBFIL="/var/spool/vdrconvert/$JOBFIL" let LINES=0 LINES=`cat $JOBFIL | wc -l` run=`ps -aef|grep $VDRCONVERTBINDIR/${JOB}.sh|grep -v grep|wc -l` if [ $LINES -gt 0 -o $run -gt 0 ] ; then # there is still a job in queue or running, so # we should defer the shutdown for 5 minutes echo "TRY_AGAIN=5" fi done exit 0
Vorher diese Datei Backuppen!
Links: