DVB Installation v4l-dvb unter SuSE10.3

Aus VDR Wiki
Wechseln zu: Navigation, Suche

Inhaltsverzeichnis

Vorbemerkung

Bei openSuSE 10.3 ist der Standardkernel (2.6.22.2-3-default) so vorbereitet, dass der DVB Treiber als Modul in den Kernel geladen werden kann. Die weitere Installationsanleitung beschreibt die modulbasierte Installation des DVB-Treibers.


Achtung! Das Paket "dvb_1.1.0_CVS20070305", das mittels Yast installiert werden kann, ist nicht der DVB Treiber, sondern es handelt sich hierbei lediglich um die DVB Firmware!

Installation DVB Treiber

Mercurial

Mercurial ist ein Tool das benötigt wird um die aktuellen DVB Treiber aus dem CVS zu laden, und um den DVB Treiber zu aktualisieren.

openSuSE10.3 Pakete nachinstallieren

Um Mercurial installieren zu können werden folgende OS Pakete benötigt:

python
python-devel

diese können mittels Yast nachinstalliert werden.

Installation Mercurial

cd /
mkdir downloads
cd /downloads
wget http://www.selenic.com/mercurial/release/mercurial-0.9.4.tar.gz
cd /tmp
tar -xzf /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 -a /downloads/v4l-dvb/ .
mv v4l-dvb/ DVB

Kernelkonfiguration erstellen und abspeichern

cd /usr/src/linux
make menuconfig
Device Drivers  ---> Multimedia devices  ---> <M> DVB For Linux
"Exit"
"Exit"
"Exit"
Do you wish to save your new kernel configuration?
"Yes"

DVB Treiber installieren

Falls kein Standardkernel verwendet wird kann es sein das die Datei "netdevice.h" beim Installieren des DVB Treiber´s nicht gefunden wird. Die Datei kann mit einem entsprechenden Link an die richtige Stelle gesetzt werden. (Pfad/Kernel-Version anpassen!)

Hier ein Beispiel zum Link:

cd /lib/modules/2.6.22.2-3-bigsmp/build/include/linux/
ln -s /usr/src/linux-2.6.22.2-3/include/linux/netdevice.h netdevice.h


DVB Treiber installieren:

cd /usr/local/src/DVB/
make && make install

Prüfen der DVB Treiber Installation

Im Modulverzeichnis des Kernels kann das Datum und Uhrzeit der Module betrachtet werden.

Unten sieht man das der DVB Treiber am 22. August um 11:39 Uhr installiert wurde. Wenn man am gleichen Tag sein OS installiert hat sollte man nur die Uhrzeit betrachten.

cd /lib/modules/$(uname -r)/kernel/drivers/media/dvb/ttpci
ls -l
-rw-r--r-- 1 root root  41688 Aug 22 11:39 budget-av.ko
-rw-r--r-- 1 root root  39476 Aug 22 11:39 budget-ci.ko
-rw-r--r-- 1 root root  30260 Aug 22 11:39 budget-core.ko
-rw-r--r-- 1 root root  28636 Aug 22 11:39 budget-patch.ko
-rw-r--r-- 1 root root  32632 Aug 22 11:39 budget.ko
-rw-r--r-- 1 root root 132364 Aug 22 11:39 dvb-ttpci.ko
-rw-r--r-- 1 root root  20320 Aug 22 11:39 ttpci-eeprom.ko

Startreihenfolge der DVB Module festlegen

Achtung! Wenn nur eine TV-Karte im System ist, kann dieser Punkt übersprungen werden!

Standardmäßig startet das OS die DVB Treibermodule automatisch. Dadurch kann nicht gewährleistet werden, in welcher Reihenfolge die DVB Treibermodule 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

das bewirkt das die DVB Treibermodule nicht automatisch vom OS gestartet werden.

System neu starten

Jetzt das Betriebssystem neu starten.

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)

Um das S-Video Signal im DVB Treiber zu aktivieren, um beispielsweise über das AV-Board den TV anzusteuern, 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 den 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 kann es sein das die obige Befehlsfolge zum Aktualisieren nicht funktioniert. Die Ursache kann die abweichende Kernelversion sein. Die neue Kernelversion kann in der Datei "/usr/local/src/DVB/v4l/.version" entsprechend korrigiert werden.

DVB Firmware installieren/aktualisieren

cd /downloads
wget http://www.linuxtv.org/downloads/firmware/dvb-ttpci-01.fw-2622
cd /lib/firmware
cp -a /downloads/dvb-ttpci-01.fw-2622 .
ln -s dvb-ttpci-01.fw-2622 dvb-ttpci-01.fw

System neu starten

init 6