DVB Installation

Aus VDR Wiki
(Unterschied zwischen Versionen)
Wechseln zu: Navigation, Suche
Zeile 65: Zeile 65:
 
videodev                4544  2  [dvb-ttpci]
 
videodev                4544  2  [dvb-ttpci]
 
ipv6                  124736  -1  (autoclean)
 
ipv6                  124736  -1  (autoclean)
8139too                11936  1  (autoclean)</pre>
+
8139too                11936  1  (autoclean)
reiserfs              147920  2
+
reiserfs              147920  2</pre>
 
Entladen:
 
Entladen:
 
<pre>make rmmod CARDS="av7110"</pre>
 
<pre>make rmmod CARDS="av7110"</pre>

Version vom 20. August 2004, 12:03 Uhr

Inhaltsverzeichnis

Allgemeine Voraussetzungen

Als erstes muss natürlich eine komplette Entwicklungsumgebung mit Compiler usw. installiert sein, ebenfalls benötigt werden die Kernel-Quellen [1] die unter /usr/src als Benutzer root entpackt werden

su
cd /usr/src
tar -jxvf linux-x.y.z.tar.bz2
ln -s linux-x.y.z linux

Normalerweise lassen sie sich auch mit dem Distributionseigenen Installationsprogamm installieren.

Kernel 2.4

Voraussetzungen

Voraussetzung für eine erfolgreiche Übersetzung ist ein Kernel der Version 2.4 mit Unterstützung für

Video4Linux Support (CONFIG_VIDEODEV)  
Für den integrierten MPEG-Dekoder und den Fernsehausgang
Input Core Support (CONFIG_INPUT) and  
Event Device Support (CONFIG_INPUT_EVDEV) 
Für den Treiber der DVB Fernbedienung

Der Treiber ist auf LinuxTV [2] verfügbar. Die Version die zur Entwicklung des VDR verwendet wird (und die damit eine gewisse Funktionsgarantie bietet) gibt es auf dessen Homepage ([3], [4]).

Entpacken

Das Archiv wird im selben Verzeichnis in welches später auch VDR kommt entpackt und ein symbolischer Link auf DVB angelegt.

cd /home/user/vdr
tar -zxvf /path/to/linux-dvb.2003-11-08.tar.bz2
ln -s linux-dvb.2003-11-08 DVB
cd DVB/driver

Kompilieren

Im Makefile des Drivers (../DVB/driver/Makefile) giebt es eine "Config", entweder vorm Kompilieren auskommentieren:

##
#  Configs
#

CARDS = av7110
#CARDS += margi
#CARDS += em8300
CARDS += b2c2

Oder:

make CARDS="av7110"

Ansonnsten:

make

Installieren

make install

Laden/Entladen

Driver laden:

make insmod CARDS="av7110"

Bei älteren Treibern sollte der Schriftzug von "Convergence" erscheinen. Ansonnsten giebt "lsmod" Auskunft ob die Module geladen wurden.

~ lsmod
Module                  Size  Used by
lirc_serial             7040   1
lirc_dev                8320   1  [lirc_serial]
dvb-ttpci             300736   8
evdev                   4160   0  (unused)
input                   3072   0  [dvb-ttpci evdev]
mt312                   5088   0
tda1004x                7952   0
ves1820                 4304   0
stv0299                 6592   0  (unused)
grundig_29504-491       3200   0
grundig_29504-401       3584   0
alps_tdlb7              4992   0
alps_tdmb7              3360   0
alps_bsrv2              3456   1
dvb-core               36720  31  [dvb-ttpci mt312 tda1004x ves1820 stv0299 grundig_29504-491 grundig_29504-401 alps_tdlb7 alps_tdmb7 alps_bsrv2]
videodev                4544   2  [dvb-ttpci]
ipv6                  124736  -1  (autoclean)
8139too                11936   1  (autoclean)
reiserfs              147920   2

Entladen:

make rmmod CARDS="av7110"

Kernel 2.6

Voraussetzungen

Hier gibt es zwei Möglichkeiten zu einem DVB-Treiber zu kommen

  • ein extra Treiber
  • der im Kernel integrierte Treiber

Installation des Treibers über CVS

Wenn es der extra DVB-Treiber sein soll muss er mindestens die Version 1.1.1 haben, oder besser noch, man lädt ihn direkt vom CVS

cvs -d :pserver:anonymous@linuxtv.org:/cvs/linuxtv login
cvs -d :pserver:anonymous@linuxtv.org:/cvs/linuxtv co dvb-kernel

Alles weitere funktioniert wie oben bereits beschrieben.

Installation des Treibers über Kernel

Wenn man sich für den Kernel-DVB-Treiber entscheidet, müssen bei den Kernelkonfiguration zusätzlich zu den oben genannten Optionen die folgenden aktiviert werden:

  • DVB For Linux (CONFIG_DVB) :
  • DVB Core Support (CONFIG_DVB_CORE) :
  • das entsprechende Frontend der DVB-Karte (im Zweifel mehrere) z.B. für eine Hauppauge Nexus mit der Firmware 2.1/2.2 STV0299

Bei einer Full-featured-DVB-Karte:

 AV7110 cards (CONFIG_DVB_AV7110)
 [x] Compile AV7110 [[firmware]] into the driver (CONFIG_DVB_AV7110_FIRMWARE)
 [x] AV7110 OSD support (CONFIG_DVB_AV7110_OSD)

Bei einer Budget-DVB-Karte:

Budget cards (CONFIG_DVB_BUDGET)

Nach Möglichkeit sollte der DVB-Treiber als Modul übersetzt werden, da er im Falle eines Absturzes neu geladen werden kann, ohne den Rechner neu starten zu müssen. Nach Abschluss der Konfiguration des Kernels einfach

make modules
make modules_install

Links

[1] http://www.kernel.org Linux-Kernel Homepage
[2] http://www.linuxtv.org LinuxTV Homepage
[3] http://www.linux-dvb.tv/download/ Nightly driver snapshots from Convergence DVB driver
[4] http://www.cadsoft.de/vdr VDR Homepage
[5] ftp://ftp.cadsoft.de/vdr/Developer VDR Download-Verzeichnis