DVB Installation v4l-dvb unter SuSE10.2
Vorbemerkung
Beim Kernel 2.6* gibt es mehrere Möglichkeiten die DVB Treiber zu verwenden.
- Kernel-Treiber (die bereits im Kernel enthalten sind)
Nachteil: meist veraltet
- Treiber von LinuxTV
Nachteil: etwas Installations- und Konfigurationsaufwand
Ich beschränke mich hier auf die Installation der seperaten DVB Treiber von LinuxTV. Bei einer SuSE10.2 Distribution sind bereits DVB Treiber enthalten die man mittels YAST installieren kann. Hierbei handelt es sich um die Version "dvb 1.1.0_CVS20060907". Diese habe ich nicht verwendet da dieser Treiber sowie die enthaltene Firmware ziemlich veraltet ist.
Installation DVB Treiber
Mercurial
Mercurial ist ein Tool das benötigt wird um die aktuellen DVB Treiber herunter zu laden und den Treiber später zu aktualisieren.
SuSE10.2 Pakete nachinstallieren
Um Mercurial installieren zu können werden folgende OS Pakete benötigt:
python python-devel
Installation Mercurial
cd / mkdir downloads cd /downloads wget http://www.selenic.com/mercurial/release/mercurial-0.9.4.tar.gz cd /tmp tar -xvzf /downloads/mercurial-0.9.4.tar.gz cd mercurial-0.9.4/ python setup.py install cd /tmp rm -r mercurial-0.9.4/
Installation DVB Treiber
Mit dieser hier beschriebenen Installation werden die vorhandenen DVB Kernelmodule durch die neuen ersetzt.
DVB Treiber herunterladen und vorbereiten
cd /downloads hg clone http://linuxtv.org/hg/v4l-dvb cd /usr/local/src cp -av /downloads/v4l-dvb/ . mv v4l-dvb/ DVB
Kernelkonfiguration abspeichern
cd /usr/src/linux make menuconfig Device Drivers ---> Multimedia devices ---> Digital Video Broadcasting Devices ---> [*] DVB For Linux "Exit" "Exit" "Exit" "Exit" Do you wish to save your new kernel configuration? "Yes"
DVB Treiber installieren
Falls netdevice.h beim make nicht gefunden wird, einfach einen entsprechenden Link setzen (Pfad/Kernel-Version anpassen!) ln -s /usr/src/linux-2.6.18.8-0.3/include/linux/netdevice.h netdevice.h
cd /usr/local/src/DVB/ make make install
Prüfen der DVB Treiber Installation
Man kann in das Modulverzeichnis des Kernels wechseln und das Datum mit Uhrzeit der Module betrachten. Hier sieht man das ich meinen Treiber am 13. Dec um 14:58 Uhr installiert habe. Wenn man natürlich am gleichen Tag sein Betriebssystem installiert hat sollte man die Uhrzeit verwenden.
cd /lib/modules/$(uname -r)/kernel/drivers/media/dvb/ttpci ls -l -rw-r--r-- 1 root root 29436 Dec 13 14:58 budget-av.ko -rw-r--r-- 1 root root 29284 Dec 13 14:58 budget-ci.ko -rw-r--r-- 1 root root 18500 Dec 13 14:58 budget-core.ko -rw-r--r-- 1 root root 17452 Dec 13 14:58 budget-patch.ko -rw-r--r-- 1 root root 21336 Dec 13 14:58 budget.ko -rw-r--r-- 1 root root 124552 Dec 13 14:58 dvb-ttpci.ko -rw-r--r-- 1 root root 8320 Dec 13 14:58 ttpci-eeprom.ko
Startreihenfolge der DVB Module festlegen
Wenn nur eine TV-Karte im System ist, kann dieser Punkt übersprungen werden.
Standardmäßig startet das Betriebssystem die DVB Treiber Module. Dadurch kann nicht gewährleistet werden, in welcher Reihenfolge die DVB Module gestartet werden. Wenn z.B. die Budget TV-Karte als erste gestartet wird, so ist diese dann das primäre TV Interface. Dadurch kann es unter umständen mit MPlayer oder anderen Programmen zu Problemen kommen. Die FullFeatured TV-Karte muss das primäre TV Interface sein.
In der Datei "blacklist" sind alle Module eingetragen, die nicht vom Betriebssystem automatisch gestartet werden. Folgende Einträge müssen darin gemacht werden:
cd /etc/modprobe.d vi blacklist # DVB Module die nicht vom System gestartet werden blacklist dvb_core blacklist dvb_ttpci blacklist budget_core blacklist budget blacklist budget_ci
System neu starten
Jetzt muss das Betriebssystem neu gestartet werden.
init 6
DVB Module laden (ohne S-Video)
Die hier geladenen Module sind für FullFeatured sowie Budget TV-Karten. Nach dem laden der Module sollte ein schwarzes Bild auf dem TV angezeigt werden. Danach kann der VDR gestartet werden.
laden der Module:
modprobe dvb_core modprobe dvb_ttpci modprobe budget_core modprobe budget modprobe budget_ci
entladen der Module:
modprobe -r budget_ci modprobe -r budget modprobe -r budget_core modprobe -r dvb_ttpci modprobe -r dvb_core
DVB Module laden (mit S-Video)
Die hier geladenen Module sind für FullFeatured sowie Budget TV-Karten. Nach dem laden der Module sollte ein schwarzes Bild auf dem TV angezeigt werden. Danach kann der VDR gestartet werden.
Um S-Video im DVB Treiber zu aktivieren muss folgender Eintrag in der Datei "modprobe.conf" gemacht werden:
cd /etc vi modprobe.conf # Diesen Eintrag in die Datei einfügen options dvb_ttpci vidmode=2 hw_sections=0
laden der Module:
modprobe dvb_core modprobe dvb_ttpci modprobe budget_core modprobe budget modprobe budget_ci
entladen der Module:
modprobe -r budget_ci modprobe -r budget modprobe -r budget_core modprobe -r dvb_ttpci modprobe -r dvb_core
aktualisieren der DVB Treiber
Um die gerade installierten DVB Treiber später mal zu aktualisieren kann das folgendermaßen gemacht werden:
cd /usr/local/src/DVB hg pull -u http://linuxtv.org/hg/v4l-dvb make make install
Falls man einen neuen Kernel installiert hat, dann klappt obige Befehlsfolge zum Aktualisieren nicht... zumindest hat's bei mir nicht funktioniert. Die Ursache ist die jetzt abweichende Kernelversion. Das muss man in der Datei /usr/local/src/DVB/v4l/.version entsprechend korrigieren (KERNELRELEASE).
Installation DVB Apps
cd /downloads hg clone http://linuxtv.org/hg/dvb-apps cd /tmp cp -av /downloads/dvb-apps . cd dvb-apps/ make make install cd /tmp rm -r dvb-apps
DVB Firmware installieren/aktualisieren
cd /downloads wget http://www.linuxtv.org/downloads/firmware/dvb-ttpci-01.fw-2622 mkdir -p /lib/firmware/ cd /lib/firmware cp -av /downloads/dvb-ttpci-01.fw-2622 . ln -sf dvb-ttpci-01.fw-2622 dvb-ttpci-01.fw
System neu starten
init 6
Das passende "runvdr" Skript
Zu dieser hier beschriebenen DVB Treiber installation gibt es natürlich auch die passende "runvdr". Über das Skript werden die DVB Module und der VDR gestartet, gestoppt etc.