Gentoo VDR DVB-C reel eHD

Aus VDR Wiki
(Unterschied zwischen Versionen)
Wechseln zu: Navigation, Suche
(jgghgjkjkvgcfx)
K (Änderungen von Benutzer:202.114.66.170 rückgängig gemacht und letzte Version von Benutzer:Hulk wiederhergestellt)
Zeile 1: Zeile 1:
<a href= http://sites.google.com/site/diabeticdogfoodneaatc/diabetes-clinic-nottingham-uk---------diabetes-clinic-nottingham-uk >diabetes clinic nottingham uk</a>
+
= Installation eines Gentoo DVB-C HDTV-VDR Systemes mit  Reelbox eHD PCI Support =
<a href= http://sites.google.com/site/diabeticdogfoodneaatc/diabetic-dog-food-royal-canin-diabetic-dog-food-hills-diabetic-dog-food-----diabetic-dog-food >diabetic dog food</a>
+
 
<a href= http://sites.google.com/site/diabeticdogfoodneaatc/diabetic-exchanges---diabetic-exchanges-diet-----diabetic-exchanges >diabetic exchanges</a>
+
Hier folgt eine ausführliche Anleitung zur Installation eines Gentoo-VDR 1.6.0 Systemes inkl. der h.264 Patches von r.nissl und Support für die
<a href= http://sites.google.com/site/diabeticdogfoodneaatc/diabetic-food-pyramid---diabetic-food-pyramid-chart-----diabetic-food-pyramid >diabetic food pyramid</a>
+
Reelbox eHD PCI Karte.
<a href= http://sites.google.com/site/diabeticdogfoodneaatc/diabetic-gastroparesis--diabetic-gastroparesis-symptoms--diabetic-gastroparesis-emedicine-----diabetic-gastroparesis >diabetic gastroparesis</a>
+
 
<a href= http://sites.google.com/site/diabeticdogfoodneaatc/diabetic-jewelry-fashionable-diabetic-jewelry-----diabetic-jewelry >diabetic jewelry</a>
+
Als Basis für die Installation dient ein Gentoo 2007 Base System (Stand 12.02.08) mit der folgenden make.conf
<a href= http://sites.google.com/site/diabeticdogfoodneaatc/diabetic-test-strips-discount-diabetic-test-strips-----diabetic-test-strips >diabetic test strips</a>
+
 
<a href= http://sites.google.com/site/diabeticdogfoodneaatc/diabeties-symptoms--diabetes-symptoms-----diabeties-symptoms >diabeties symptoms</a>
+
<pre>
<a href= http://sites.google.com/site/diabeticdogfoodneaatc/diablo-2-character-builds-diablo-2-character-builds-sorc-----diablo-2-character-builds >diablo 2 character builds</a>
+
# Please consult /etc/make.conf.example for a more detailed example.
<a href= http://sites.google.com/site/diabeticdogfoodneaatc/diablo-2-editing-diablo-2-editing-program-diablo-2-editing-software-----diablo-2-editing >diablo 2 editing</a>
+
CFLAGS="-O2 -march=i686 -pipe"
<a href= http://sites.google.com/site/diabeticdogfoodneaatc/diablo-2-runewords------diablo-2-runewords >diablo 2 runewords</a>
+
CXXFLAGS="${CFLAGS}"
<a href= http://sites.google.com/site/diabeticdogfoodneaatc/diablo-cody-nude-------------diablo-cody-nude >diablo cody nude</a>
+
# This should not be changed unless you know exactly what you are doing.  You
<a href= http://sites.google.com/site/diabeticdogfoodneaatc/diablo-wheels--diablo-wheels-wishbone-----diablo-wheels >diablo wheels</a>
+
# should probably be using a different stage, instead.
<a href= http://sites.google.com/site/diabeticdogfoodneaatc/diabolic--diabolic-lyrics--diabolic-digital-----diabolic >diabolic</a>
+
CHOST="i686-pc-linux-gnu"
<a href= http://sites.google.com/site/diabeticdogfoodneaatc/diagnostic-trouble-codes--honda-diagnostic-trouble-codes-----diagnostic-trouble-codes >diagnostic trouble codes</a>
+
MAKEOPTS="-j3"
<a href= http://sites.google.com/site/diabeticdogfoodneaatc/diagnostic-ultrasound--diagnostic-ultrasound-corporation--diagnostic-ultrasound-technician-----diagnostic-ultrasound >diagnostic ultrasound</a>
+
ACCEPT_KEYWORDS="~x86"
<a href= http://sites.google.com/site/diabeticdogfoodneaatc/diagram-of-a-skeleton--diagram-of-a-skeleton-system-----diagram-of-a-skeleton >diagram of a skeleton</a>
+
USE="aac a52 acpi aio asf dga dts dvb dvdread evo ffmpeg httpd icq imon exif
<a href= http://sites.google.com/site/diabeticdogfoodneaatc/diagram-of-a-windmill----labelled-diagram-of-a-windmill----schematic-diagram-of-a-windmill-power-plant-----diagram-of-a-windmill >diagram of a windmill</a>
+
    imagemagick lcd lesstif lirc live lm_sensors matroska matrox mjpeg mmx
 +
    mmxext network nvram pcmcia pdf projectx rtc samba sasl screen server
 +
    sourcecaps sse sse2 stream svg svga v4l v4l2 vcd vdr vdr-net vfat wxwindows
 +
    unicode cmdctrl cmdsubmenu ddepgentry dolbyinrec dvbplayer dvbsetup jumpplay
 +
    timerinfo wareagleicon liemikuutio child-protection reelchannelscan
 +
    xinerama xvid xvmc dolby-record-switch slang noepg -arts -gnome -kde -ldap"
 +
LINGUAS="de en"
 +
</pre>
 +
 
 +
=== Vorbereitung des VDR 1.6.0 ===
 +
 
 +
* Anpassung der /etc/make.conf am Ende der Datei:
 +
 
 +
  VDR_LOCAL_PATCHES_DIR="/usr/src/vdr-patches"
 +
  source /usr/portage/local/layman/make.conf
 +
 
 +
* Anlage des VDR Patch-Verzeichnisses:
 +
 
 +
  mkdir -p /usr/src/vdr-patches/1.6.0 (vdr-1.6.0 dient hier als Basis)
 +
 
 +
* Download des h.264 Patches für DVB-C
 +
 
 +
<pre>
 +
cd /usr/src/vdr-patches/1.6.0
 +
wget http://www.linuxtv.org/pipermail/vdr/attachments/20080319/67b02b27/attachment-0003.bin
 +
mv attachment-0003.bin vdr-1.6.0-h264-syncearly-framespersec-audioindexer-fielddetection-speedup.diff.bz2
 +
bunzip2 vdr-1.6.0-h264-syncearly-framespersec-audioindexer-fielddetection-speedup.diff.bz2
 +
</pre>
 +
 
 +
Ich musste den Patch noch anpassen, damit dieser mit meinen Use-Flags und dem VDR-Extensions-Patch-57 kompiliert. Ich bekam rejects in remux.c und remux.h. Diese liessen sich auf den syncearly Patch zurückführen, der auch in dem Extensions-Patch enthalten ist.
 +
 
 +
=== Installation TFTP-Server ===
 +
 
 +
die Reel Karte versucht beim Start einen tftp-connect auf den VDR und dort den download des hdplayers. Dieser ist somit recht leicht zu aktualisieren.
 +
Dafür muss aber auf dem VDR-System ein tftp-Server laufen, der den hdplayer zur Verfügung stellt.
 +
 
 +
  emerge net-ftp/tftp-hpa
 +
 
 +
Anschliessend wird noch kurz in der Konfiguration das Basisverzeichnis hinterlegt
 +
 
 +
* /etc/conf.d/in.tftpd
 +
 
 +
  INTFTPD_PATH="/opt/reelbox-ehd/"
 +
 
 +
Nun wird noch der automatische Start des Servers eingetragen:
 +
 
 +
  rc-update add in.tftpd default
 +
  /etc/init.d/in.tftpd start
 +
 
 +
=== Die benötigten Ebuild-Pakete ===
 +
 
 +
Folgende Pakete wurden bisher für die Reel-eHD generiert:
 +
 
 +
* media-video/reelbox-ehd-driver
 +
 
 +
Der Kernel Kartentreiber (hdshm)
 +
 
 +
* media-video/reelbox-ehd-bin
 +
 
 +
Linux Kernel für die Karte und hdplayer
 +
 
 +
* media-video/reelbox-ehd-tools
 +
 
 +
Tools und Programmme für den Betrieb der Karte
 +
 
 +
* media-plugins/vdr-reelbox
 +
 
 +
Plugin für den VDR
 +
 
 +
=== Einbindung der Karte ===
 +
 
 +
Nachdem die Karte eingebaut ist, sollte diese mit einem lspci -v einen ähnlichen Eintrag zu finden sein:
 +
 
 +
<pre>
 +
02:09.0 Multimedia controller: Unknown device 1905:8100
 +
Subsystem: Unknown device 1905:8100
 +
Flags: bus master, medium devsel, latency 64, IRQ 5
 +
Memory at f7efb000 (32-bit, non-prefetchable) [size=4K]
 +
Memory at e8000000 (32-bit, non-prefetchable) [size=128M]
 +
Capabilities: [40] Power Management version 2
 +
</pre>
 +
 
 +
==== eHD Kerneltreiber ====
 +
 
 +
Den Kerneltreiber für die Reel-eHD merged man einfach mittels:
 +
 
 +
  emerge reelbox-ehd-driver
 +
 
 +
Für den Betrieb der Karte wird noch das TUN-Device benötigt, welches in den laufenden Kernel fest einkompiliert, oder als Modul geladen werden kann.
 +
Damit der Kartentreiber beim Booten geladen wird, wird dieser einfach (hier mit dem TUN-Device) in die Datei /etc/modules.autoload.d/kernel-2.6 eingetragen:
 +
 
 +
<pre>
 +
echo "tun" >> /etc/modules.autoload.d/kernel-2.6
 +
echo "hdshm" >> /etc/modules.autoload.d/kernel-2.6
 +
</pre>
 +
 
 +
Für den Erstbetrieb lädt man die Module einmalig von Hand:
 +
 
 +
<pre>
 +
modprobe tun
 +
modprobe hdshm
 +
</pre>
 +
 
 +
Mittels dmesg sollte die Karte nun folgendes ausgeben:
 +
 
 +
<pre>
 +
hdshm_init_struct: Phys start eb000000, start d0c80000, nc-start d1000000
 +
hde_fb: init 0
 +
</pre>
 +
 
 +
==== eHD Binaries ====
 +
 
 +
Da die wenigsten User eine Crossdev Umgebung haben, werden die Pakete, die auf der eHD-Karte direkt laufen als Binärarchive von Reel ohne Änderungen übernommen und eingespielt. Dies betrifft den hdplayer und den Linux Kernel für die eHD.
 +
 
 +
  emerge reelbox-ehd-bin
 +
 
 +
==== eHD Tools ====
 +
 
 +
Für den Betrieb der eHD werden hier einige Tools und Programme installiert, die z.B. für das Starten der Karte verantwortlich sind.
 +
 
 +
  emerge reelbox-ehd-tools
 +
 
 +
==== Start der Karte ====
 +
 
 +
Wenn alles richtig durchgeführt worden ist und keine Fehlermeldungen kamen, sollte die eHD einfach mittels
 +
 
 +
  /etc/init.d/reelbox-ehd start
 +
 
 +
hochgefahren werden. Anschliessend sollte nach einem erfolgreichen Boot mittels ifconfig prüfen, ob das Tun-Device aktiviert wurde:
 +
 
 +
<pre>
 +
vdr # ifconfig tun0
 +
tun0      Protokoll:UNSPEC  Hardware Adresse 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 
 +
          inet Adresse:192.168.99.130  P-z-P:192.168.99.130  Maske:255.255.255.252
 +
          UP PUNKTZUPUNKT RUNNING NOARP MULTICAST  MTU:8300  Metric:1
 +
          RX packets:383 errors:0 dropped:0 overruns:0 frame:0
 +
          TX packets:490 errors:0 dropped:0 overruns:0 carrier:0
 +
          Kollisionen:0 Sendewarteschlangenlänge:500
 +
          RX bytes:32541 (31.7 Kb)  TX bytes:168190 (164.2 Kb)
 +
</pre>
 +
 
 +
Wenn dieses Device aktiv ist, so sollte die reel-eHD nun auch pingbar sein:
 +
 
 +
<pre>
 +
vdr # ping 192.168.99.129
 +
ping -c 1 192.168.99.129
 +
PING 192.168.99.129 (192.168.99.129) 56(84) bytes of data.
 +
64 bytes from 192.168.99.129: icmp_seq=1 ttl=64 time=4.58 ms
 +
 
 +
--- 192.168.99.129 ping statistics ---
 +
1 packets transmitted, 1 received, 0% packet loss, time 0ms
 +
rtt min/avg/max/mdev = 4.588/4.588/4.588/0.000 ms
 +
</pre>
 +
 
 +
Mittels telnet sollte man direkt auf der Karte landen. Hier kann man auch gleich prüfen, ob in /tmp der hdplayer liegt und ob dieser bereits läuft (ps):
 +
<pre>
 +
vdr # telnet eHD
 +
Trying 192.168.99.129...
 +
Connected to eHD.
 +
Escape character is '^]'.
 +
 
 +
 
 +
 
 +
BusyBox v1.2.2 (2008.03.25-10:08+0000) Built-in shell (ash)
 +
Enter 'help' for a list of built-in commands.
 +
 
 +
 
 +
Welcome to extensionHD
 +
 
 +
This image is based on SDK V1.7.
 +
It was built @ Fr 11. Apr 12:14:32 CEST 2008 on rollercoaster.
 +
 
 +
hdext # ls -la /tmp/hdplayer
 +
-rwxr-xr-x    1 0        0          141092 Jan  1 00:00 /tmp/hdplayer
 +
hdext # ps
 +
  PID  Uid    VmSize Stat Command
 +
    1 0          656 S  init 
 +
    2 0              SWN [ksoftirqd/0]
 +
    3 0              SW< [events/0]
 +
    4 0              SW< [khelper]
 +
    5 0              SW< [kthread]
 +
    6 0              SW< [kblockd/0]
 +
  20 0              DW  [swapper]
 +
  84 0              SW  [pdflush]
 +
  85 0              SW  [pdflush]
 +
  87 0              SW< [aio/0]
 +
  86 0              SW  [kswapd0]
 +
  91 0              SW  [kseriod]
 +
  133 0              SW< [VIDEO/0]
 +
  134 0              SW< [AUDIO/0]
 +
  135 0              SW< [PSI/0]
 +
  139 0              SW< [VIDEO/0]
 +
  140 0              SW< [AUDIO/0]
 +
  141 0              SW< [PSI/0]
 +
  171 0          636 S  syslogd -m 0 -C
 +
  173 0          628 S  klogd
 +
  235 0          572 S < udevd
 +
  254 1          684 S  portmap
 +
  256 0          516 S  telnetd -l /sbin/loginash
 +
  283 0          468 S  shmnetd
 +
  293 0          684 S  /bin/sh /sbin/hdplayermgr -d
 +
  300 0          616 S  /usr/bin/hdctrld -o DVI -a WF -v 576i -s -d
 +
  309 0          660 S  init 
 +
  314 0          616 S  /usr/bin/hdctrld -o DVI -a WF -v 576i -s -d
 +
  824 0          616 S  /usr/bin/hdctrld -o DVI -a WF -v 576i -s -d
 +
  827 0          572 S  sh -c /tmp/hdplayer
 +
  828 0          2896 S  /tmp/hdplayer
 +
  829 0          2896 S  /tmp/hdplayer
 +
  830 0          2896 R N /tmp/hdplayer
 +
6305 0          792 S  /bin/ash --login
 +
6315 0          424 S  sleep 2
 +
6316 0          712 R  ps
 +
hdext #
 +
</pre>
 +
 
 +
Sollte der hdplayer nicht laufen, so stimmt vermutlich etwas mit dem tftp-Server nicht. Wenn alles so aussieht wie in dem obigen Beispiel, ist die Karte betriebsbereit und die Installation des VDR kann beginnen.
 +
 
 +
Ansonsten fügt man as Startskript nun dem Default Bootmodus hinzu, damit die Karte automatisch beim Booten gestartet wird:
 +
 
 +
  rc-update add reelbox-ehd default
 +
 
 +
=== Installation des VDR ===
 +
 
 +
Falls noch nicht geschehen, so sollte nun der vdr installiert werden:
 +
 
 +
  emerge vdr
 +
 
 +
Nachdem dieser installiert worden ist, muss beachtet werden, das '''der vdr mit der reel-eHD aktuell nur funktioniert wenn dieser als root läuft und nicht wie unter gentoo eigentlich üblich als vdr'''
 +
 
 +
==== Anpassung der VDR-Konfiguration ====
 +
 
 +
Folgende Änderungen sollten nach der Installation des vdr durchgeführt werden:
 +
 
 +
* Umstellung des VDR auf den root-User
 +
 
 +
Hierzu öffnet man die Datei /etc/conf.d/vdr und aktiviert den folgenden Eintrag:
 +
<pre>
 +
# for people who really know what they do
 +
# and who want to start vdr as user root
 +
#  allowed values: YES no
 +
#  default: no
 +
START_VDR_AS_ROOT="YES"
 +
</pre>
 +
 
 +
* Das Startskript soll auf das reelbox-ehd Skript warten
 +
 
 +
Das reelbox Plugin funktioniert nur, wenn die eHD bereits läuft. Befindet sich die Karte noch im Booten, sieht man anschliessend nur des Reel-eHD Logo und bekommt kein Live-Bild. Also sollte das vdr-Startskript auf die Reel warten, bevor er startet. Möglicherweise wird dies später noch geändert, da hier auch bessere Möglichkeiten zur Überprüfung zu Verfügung stehen. Momentan ist der einfachste Weg aber das init-Skript anzupassen. Hier fügt man im depend Zweig einfach das Reel-eHD Startskript hinzu:
 +
 
 +
<pre>
 +
depend() {
 +
        need net
 +
        [ "${IR_CTRL}" = "lirc" ] && need lircd
 +
        use lircd coldplug
 +
        after checkroot
 +
        after reelbox-ehd
 +
}
 +
</pre>
 +
 
 +
==== Installation des reelbox Plugins ====
 +
 
 +
Das Reelbox Plugin stellt die eigentliche Verbindung zwischen VDR und Karte her und wird wie jedes andere Plugin auch einfach per emerge installiert:
 +
 
 +
  emerge vdr-reelbox
 +
  eselect vdr-plugin enable vdr-reelbox
 +
 
 +
Anschliessend startet man den vdr (neu) und es sollte ein Livebild ausgegeben werden.
 +
 
 +
=== Sourcen ===
 +
 
 +
Die oben beschriebenen Pakete befinden sich zur Zeit noch nicht im offiziellen Gentoo Portage und können bis dahin manuell downgeloaded werden. Zu finden sind die Ebuilds und Distfiles [http://quacks.fratzengeballer.org hier]
 +
 
 +
Download aller Dateien mit wget:
 +
 
 +
<pre>
 +
wget -r -np http://quacks.fratzengeballer.org/portage/ && find -name 'index.html*' -exec rm "{}" \;
 +
</pre>
 +
 
 +
 
 +
 
 +
[[Kategorie:Gentoo]]

Version vom 1. November 2008, 19:48 Uhr

Inhaltsverzeichnis

Installation eines Gentoo DVB-C HDTV-VDR Systemes mit Reelbox eHD PCI Support

Hier folgt eine ausführliche Anleitung zur Installation eines Gentoo-VDR 1.6.0 Systemes inkl. der h.264 Patches von r.nissl und Support für die Reelbox eHD PCI Karte.

Als Basis für die Installation dient ein Gentoo 2007 Base System (Stand 12.02.08) mit der folgenden make.conf

# Please consult /etc/make.conf.example for a more detailed example.
CFLAGS="-O2 -march=i686 -pipe"
CXXFLAGS="${CFLAGS}"
# This should not be changed unless you know exactly what you are doing.  You
# should probably be using a different stage, instead.
CHOST="i686-pc-linux-gnu"
MAKEOPTS="-j3"
ACCEPT_KEYWORDS="~x86"
USE="aac a52 acpi aio asf dga dts dvb dvdread evo ffmpeg httpd icq imon exif
     imagemagick lcd lesstif lirc live lm_sensors matroska matrox mjpeg mmx
     mmxext network nvram pcmcia pdf projectx rtc samba sasl screen server
     sourcecaps sse sse2 stream svg svga v4l v4l2 vcd vdr vdr-net vfat wxwindows
     unicode cmdctrl cmdsubmenu ddepgentry dolbyinrec dvbplayer dvbsetup jumpplay 
     timerinfo wareagleicon liemikuutio child-protection reelchannelscan
     xinerama xvid xvmc dolby-record-switch slang noepg -arts -gnome -kde -ldap"
LINGUAS="de en"

Vorbereitung des VDR 1.6.0

  • Anpassung der /etc/make.conf am Ende der Datei:
 VDR_LOCAL_PATCHES_DIR="/usr/src/vdr-patches"
 source /usr/portage/local/layman/make.conf
  • Anlage des VDR Patch-Verzeichnisses:
 mkdir -p /usr/src/vdr-patches/1.6.0 (vdr-1.6.0 dient hier als Basis)
  • Download des h.264 Patches für DVB-C
cd /usr/src/vdr-patches/1.6.0
wget http://www.linuxtv.org/pipermail/vdr/attachments/20080319/67b02b27/attachment-0003.bin
mv attachment-0003.bin vdr-1.6.0-h264-syncearly-framespersec-audioindexer-fielddetection-speedup.diff.bz2
bunzip2 vdr-1.6.0-h264-syncearly-framespersec-audioindexer-fielddetection-speedup.diff.bz2

Ich musste den Patch noch anpassen, damit dieser mit meinen Use-Flags und dem VDR-Extensions-Patch-57 kompiliert. Ich bekam rejects in remux.c und remux.h. Diese liessen sich auf den syncearly Patch zurückführen, der auch in dem Extensions-Patch enthalten ist.

Installation TFTP-Server

die Reel Karte versucht beim Start einen tftp-connect auf den VDR und dort den download des hdplayers. Dieser ist somit recht leicht zu aktualisieren. Dafür muss aber auf dem VDR-System ein tftp-Server laufen, der den hdplayer zur Verfügung stellt.

 emerge net-ftp/tftp-hpa

Anschliessend wird noch kurz in der Konfiguration das Basisverzeichnis hinterlegt

  • /etc/conf.d/in.tftpd
 INTFTPD_PATH="/opt/reelbox-ehd/"

Nun wird noch der automatische Start des Servers eingetragen:

 rc-update add in.tftpd default
 /etc/init.d/in.tftpd start

Die benötigten Ebuild-Pakete

Folgende Pakete wurden bisher für die Reel-eHD generiert:

  • media-video/reelbox-ehd-driver

Der Kernel Kartentreiber (hdshm)

  • media-video/reelbox-ehd-bin

Linux Kernel für die Karte und hdplayer

  • media-video/reelbox-ehd-tools

Tools und Programmme für den Betrieb der Karte

  • media-plugins/vdr-reelbox

Plugin für den VDR

Einbindung der Karte

Nachdem die Karte eingebaut ist, sollte diese mit einem lspci -v einen ähnlichen Eintrag zu finden sein:

02:09.0 Multimedia controller: Unknown device 1905:8100
	Subsystem: Unknown device 1905:8100
	Flags: bus master, medium devsel, latency 64, IRQ 5
	Memory at f7efb000 (32-bit, non-prefetchable) [size=4K]
	Memory at e8000000 (32-bit, non-prefetchable) [size=128M]
	Capabilities: [40] Power Management version 2

eHD Kerneltreiber

Den Kerneltreiber für die Reel-eHD merged man einfach mittels:

  emerge reelbox-ehd-driver

Für den Betrieb der Karte wird noch das TUN-Device benötigt, welches in den laufenden Kernel fest einkompiliert, oder als Modul geladen werden kann. Damit der Kartentreiber beim Booten geladen wird, wird dieser einfach (hier mit dem TUN-Device) in die Datei /etc/modules.autoload.d/kernel-2.6 eingetragen:

echo "tun" >> /etc/modules.autoload.d/kernel-2.6
echo "hdshm" >> /etc/modules.autoload.d/kernel-2.6

Für den Erstbetrieb lädt man die Module einmalig von Hand:

modprobe tun
modprobe hdshm

Mittels dmesg sollte die Karte nun folgendes ausgeben:

hdshm_init_struct: Phys start eb000000, start d0c80000, nc-start d1000000
hde_fb: init 0

eHD Binaries

Da die wenigsten User eine Crossdev Umgebung haben, werden die Pakete, die auf der eHD-Karte direkt laufen als Binärarchive von Reel ohne Änderungen übernommen und eingespielt. Dies betrifft den hdplayer und den Linux Kernel für die eHD.

 emerge reelbox-ehd-bin

eHD Tools

Für den Betrieb der eHD werden hier einige Tools und Programme installiert, die z.B. für das Starten der Karte verantwortlich sind.

 emerge reelbox-ehd-tools

Start der Karte

Wenn alles richtig durchgeführt worden ist und keine Fehlermeldungen kamen, sollte die eHD einfach mittels

 /etc/init.d/reelbox-ehd start

hochgefahren werden. Anschliessend sollte nach einem erfolgreichen Boot mittels ifconfig prüfen, ob das Tun-Device aktiviert wurde:

 vdr # ifconfig tun0
tun0      Protokoll:UNSPEC  Hardware Adresse 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  
          inet Adresse:192.168.99.130  P-z-P:192.168.99.130  Maske:255.255.255.252
          UP PUNKTZUPUNKT RUNNING NOARP MULTICAST  MTU:8300  Metric:1
          RX packets:383 errors:0 dropped:0 overruns:0 frame:0
          TX packets:490 errors:0 dropped:0 overruns:0 carrier:0
          Kollisionen:0 Sendewarteschlangenlänge:500 
          RX bytes:32541 (31.7 Kb)  TX bytes:168190 (164.2 Kb)

Wenn dieses Device aktiv ist, so sollte die reel-eHD nun auch pingbar sein:

vdr # ping 192.168.99.129
ping -c 1 192.168.99.129
PING 192.168.99.129 (192.168.99.129) 56(84) bytes of data.
64 bytes from 192.168.99.129: icmp_seq=1 ttl=64 time=4.58 ms

--- 192.168.99.129 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 4.588/4.588/4.588/0.000 ms

Mittels telnet sollte man direkt auf der Karte landen. Hier kann man auch gleich prüfen, ob in /tmp der hdplayer liegt und ob dieser bereits läuft (ps):

vdr # telnet eHD
Trying 192.168.99.129...
Connected to eHD.
Escape character is '^]'.



BusyBox v1.2.2 (2008.03.25-10:08+0000) Built-in shell (ash)
Enter 'help' for a list of built-in commands.


Welcome to extensionHD

This image is based on SDK V1.7.
It was built @ Fr 11. Apr 12:14:32 CEST 2008 on rollercoaster.

hdext # ls -la /tmp/hdplayer
-rwxr-xr-x    1 0        0          141092 Jan  1 00:00 /tmp/hdplayer
hdext # ps
  PID  Uid     VmSize Stat Command
    1 0           656 S   init  
    2 0               SWN [ksoftirqd/0]
    3 0               SW< [events/0]
    4 0               SW< [khelper]
    5 0               SW< [kthread]
    6 0               SW< [kblockd/0]
   20 0               DW  [swapper]
   84 0               SW  [pdflush]
   85 0               SW  [pdflush]
   87 0               SW< [aio/0]
   86 0               SW  [kswapd0]
   91 0               SW  [kseriod]
  133 0               SW< [VIDEO/0]
  134 0               SW< [AUDIO/0]
  135 0               SW< [PSI/0]
  139 0               SW< [VIDEO/0]
  140 0               SW< [AUDIO/0]
  141 0               SW< [PSI/0]
  171 0           636 S   syslogd -m 0 -C 
  173 0           628 S   klogd 
  235 0           572 S < udevd 
  254 1           684 S   portmap 
  256 0           516 S   telnetd -l /sbin/loginash 
  283 0           468 S   shmnetd 
  293 0           684 S   /bin/sh /sbin/hdplayermgr -d 
  300 0           616 S   /usr/bin/hdctrld -o DVI -a WF -v 576i -s -d 
  309 0           660 S   init  
  314 0           616 S   /usr/bin/hdctrld -o DVI -a WF -v 576i -s -d 
  824 0           616 S   /usr/bin/hdctrld -o DVI -a WF -v 576i -s -d 
  827 0           572 S   sh -c /tmp/hdplayer 
  828 0          2896 S   /tmp/hdplayer 
  829 0          2896 S   /tmp/hdplayer 
  830 0          2896 R N /tmp/hdplayer 
 6305 0           792 S   /bin/ash --login 
 6315 0           424 S   sleep 2 
 6316 0           712 R   ps 
hdext #

Sollte der hdplayer nicht laufen, so stimmt vermutlich etwas mit dem tftp-Server nicht. Wenn alles so aussieht wie in dem obigen Beispiel, ist die Karte betriebsbereit und die Installation des VDR kann beginnen.

Ansonsten fügt man as Startskript nun dem Default Bootmodus hinzu, damit die Karte automatisch beim Booten gestartet wird:

 rc-update add reelbox-ehd default

Installation des VDR

Falls noch nicht geschehen, so sollte nun der vdr installiert werden:

 emerge vdr

Nachdem dieser installiert worden ist, muss beachtet werden, das der vdr mit der reel-eHD aktuell nur funktioniert wenn dieser als root läuft und nicht wie unter gentoo eigentlich üblich als vdr

Anpassung der VDR-Konfiguration

Folgende Änderungen sollten nach der Installation des vdr durchgeführt werden:

  • Umstellung des VDR auf den root-User

Hierzu öffnet man die Datei /etc/conf.d/vdr und aktiviert den folgenden Eintrag:

# for people who really know what they do
# and who want to start vdr as user root
#   allowed values: YES no
#   default: no
START_VDR_AS_ROOT="YES"
  • Das Startskript soll auf das reelbox-ehd Skript warten

Das reelbox Plugin funktioniert nur, wenn die eHD bereits läuft. Befindet sich die Karte noch im Booten, sieht man anschliessend nur des Reel-eHD Logo und bekommt kein Live-Bild. Also sollte das vdr-Startskript auf die Reel warten, bevor er startet. Möglicherweise wird dies später noch geändert, da hier auch bessere Möglichkeiten zur Überprüfung zu Verfügung stehen. Momentan ist der einfachste Weg aber das init-Skript anzupassen. Hier fügt man im depend Zweig einfach das Reel-eHD Startskript hinzu:

depend() {
        need net
        [ "${IR_CTRL}" = "lirc" ] && need lircd
        use lircd coldplug
        after checkroot
        after reelbox-ehd
}

Installation des reelbox Plugins

Das Reelbox Plugin stellt die eigentliche Verbindung zwischen VDR und Karte her und wird wie jedes andere Plugin auch einfach per emerge installiert:

 emerge vdr-reelbox
 eselect vdr-plugin enable vdr-reelbox

Anschliessend startet man den vdr (neu) und es sollte ein Livebild ausgegeben werden.

Sourcen

Die oben beschriebenen Pakete befinden sich zur Zeit noch nicht im offiziellen Gentoo Portage und können bis dahin manuell downgeloaded werden. Zu finden sind die Ebuilds und Distfiles hier

Download aller Dateien mit wget:

wget -r -np http://quacks.fratzengeballer.org/portage/ && find -name 'index.html*' -exec rm "{}" \;