Dies ist das alte HowTo vom 16.12.2014, das aktuelle befindet sich im ersten Post.
Hier ist eine Installationsanleitung für einen VDR-Client auf einem Cubieboard2, Cubietruck oder Banana PI.
Ich benutze dazu die Images von Igor Pečovnik .
Als erstes das passende Image für das Board herunterladen und auf eine SD-Karte spielen.
Image für Cubieboard2/Cubietruck http://mirror.igorpecovnik.com/Cubietruck_Deb…ezy_3.4.105.zip
Image für Banana PI http://mirror.igorpecovnik.com/Bananapi_Debia…ezy_3.4.105.zip
Wenn man später HDMI benutzen will sollte man beim ersten Start am HDMI Ausgang einen Monitor anschließen. Die Installationsroutine erkennt den Monitor und stellt dann alles dafür ein.
Nachdem das System automatisch neu gestartet hat kann man sich als root einloggen (Passwort: 1234) und muss ein neues Passwort vergeben. Es ist auch gleich schon möglich sich über ssh (Port 22) einzuloggen.
Einrichten des Systems:
hiermit wird die Sprache, Tastatur Layout und Zeitzone eingestellt
apt-get install mc console-data console-tools console-common debconf
dpkg-reconfigure locales
echo UTC > /etc/timezone
dpkg-reconfigure tzdata
Noch eine Paketquelle hinzufügen:
Ich nutze als Editor mcedit, es kann aber jeder seinen Lieblingseditor verwenden.
mcedit /etc/apt/sources.list
Folgende Zeile hinten anfügen.
deb http://www.deb-multimedia.org wheezy main non-free
Die Änderungen werden mit F2 gespeichert und mit F10 wird der Editor verlassen.
Den Mali Treiber bei den Modulen hinzufügen:
Folgende Zeile hinten anfügen.
Jetzt die Kommandozeile des Kernels anpassen.
Hier gibt es verschiedenen Dateien für jedes System:
Cubieboard 2
Cubietruck
Banana PI
Die 3. Zeile sollte dann folgendermaßen aussehen (Auflösung vom Monitor ggf. anpassen, wichtig aber am Ende p50 zu wählen)
extraargs=rootfstype=ext4 sunxi_ve_mem_reserve=190 sunxi_g2d_mem_reserve=16 sunxi_fb_mem_reserve=32 hdmi.audio=EDID:0 disp.screen0_output_mode=1920x1080p50 panic=10 consoleblank=0
Als nächstes kann man eine feste Netzwerkadresse vergeben:
mcedit /etc/network/interfaces
Den Bereich für eth0 folgendermaßen ändern (Adressen natürlich ans eigene Netzwerk anpassen):
auto eth0
iface eth0 inet static
address 192.168.1.243
netmask 255.255.255.0
gateway 192.168.1.254
Und einen Nameserver einstellen:
Zum Beispiel der eigene Router(Wieder ans eigene Netzwerk anpassen):
Noch eine kleine Änderung in der .bin Datei, wieder für jedes System eine andere Datei.
Cubieboard 2
cd /boot
bin2fex cubieboard2.bin cubieboard2.fex
mcedit cubieboard2.fex
Cubietruck
cd /boot
bin2fex cubietruck.bin cubietruck.fex
mcedit cubietruck.fex
Banana PI
cd /boot
bin2fex bananapi.bin bananapi.fex
mcedit bananapi.fex
Jetzt in der fex Datei den Bereich [disp_init] suchen und folgende Zeilen ändern:
fb0_framebuffer_num = 4
fb0_scaler_mode_enable = 0
Editor schliessen und aus der fex Datei wieder eine bin Datei machen, wieder für jedes System unterschiedlich.
Cubieboard 2
fex2bin cubieboard2.fex cubieboard2.bin
Cubietruck
fex2bin cubietruck.fex cubietruck.bin
Banana PI
fex2bin bananapi.fex bananapi.bin
System neu starten:
Nach dem Neustart die Paketquellen aktualisieren:
apt-get update
apt-get install deb-multimedia-keyring
apt-get update
Bei apt-get install deb-multimedia-keyring die Frage mit y beantworten.
Jetzt die benötigten Pakete nachinstallieren:
apt-get install git build-essential autoconf libtool gettext automake xutils-dev pkg-config xserver-xorg-dev libdrm-dev x11proto-xf86dri-dev xserver-xorg debhelper dh-autoreconf x11proto-xext-dev libxext-dev libxfixes-dev libvdpau-dev libfreetype6-dev libfontconfig1-dev libjpeg8-dev libcap-dev libxcb-screensaver0-dev libxcb-randr0-dev libxcb-dpms0-dev libxcb-icccm4-dev libx11-xcb-dev libxcb-ewmh-dev alsa-base alsa-utils libasound2-dev libudev-dev libglib2.0-dev libxcb-xv0 libxcb-shm0 libxcb-dpms0 libxcb-util0 libxcb-screensaver0 libxcb-keysyms1 libxcb-icccm4 libxcb-glx0 libxcb-randr0 psmisc
Den XF86 Treiber installieren.
cd /usr/local/src/
git clone https://github.com/ssvb/xf86-video-fbturbo.git
cd xf86-video-fbturbo
autoreconf -vi
./configure --prefix=/usr
make -j3
make install
cp xorg.conf /etc/X11
Nun die ffmpeg Bibliothek installieren (Der Make Befehl braucht ca. 40 Minuten, Zeit für eine kleine Pause)
cd /usr/local/src/
wget http://ffmpeg.org/releases/ffmpeg-2.4.4.tar.bz2
tar xfvj ffmpeg-2.4.4.tar.bz2
cd ffmpeg-2.4.4
./configure --enable-shared --prefix=/usr
make -j3
make install
Jetzt wird der sunxi-vdpau Treiber installiert:
cd /usr/local/src/
git clone -b deint https://github.com/zillevdr/libvdpau-sunxi/
cd libvdpau-sunxi
make -j3
make install
Nun geht es an den VDR mit Plugins. Ich habe hier das Streamdev und femon Plugin dabei, für den Fall dass man ihn als Streamdev-Client verwenden will.
cd /usr/local/src
wget ftp://ftp.tvdr.de/vdr/vdr-2.0.6.tar.bz2
wget http://www.saunalahti.fi/~rahrenbe/vdr/femon/files/vdr-femon-2.0.0.tgz
git clone git://projects.vdr-developer.org/vdr-plugin-softhddevice.git
git clone git://projects.vdr-developer.org/vdr-plugin-streamdev.git
tar xfvj vdr-2.0.6.tar.bz2
tar xfvz vdr-femon-2.0.0.tgz
ln -s vdr-2.0.6 VDR
cd VDR/PLUGINS/src/
rm -r dvbhddevice/ dvbsddevice/ hello/ pictures/ rcu/ skincurses/ osddemo/
ln -s ../../../vdr-plugin-streamdev/ streamdev
ln -s ../../../vdr-plugin-softhddevice/ softhddevice
ln -s ../../../femon-2.0.0/ femon
Display More
Jetzt muss noch eine Kleinigkeit beim softhddevice Plugin angepasst werden:
mcedit /usr/local/src/vdr-plugin-softhddevice/Makefile
Bei der Zeile mit "#CONFIG += -DUSE_BITMAP # VDPAU, use bitmap surface for OSD" auskommentierung entfernen:
CONFIG += -DUSE_BITMAP # VDPAU, use bitmap surface for OSD
Zeile mit "### Make it standard" suchen und -fsigned-char in den folgenden Zeilen anhängen:
override CXXFLAGS += $(_CFLAGS) $(DEFINES) $(INCLUDES) \
-g -W -Wall -Wextra -Winit-self -Werror=overloaded-virtual -fsigned-char
override CFLAGS> += $(_CFLAGS) $(DEFINES) $(INCLUDES) \
-g -W -Wall -Wextra -Winit-self -Wdeclaration-after-statement -fsigned-char
Die Datei schliessen und wir können den VDR kompilieren:
cd /usr/local/src/VDR
make clean
make -j3
make install
Nun eine config Datei für den Sound anlegen:
Die Zeile pcm "hw:0,0" ist für Analog Ausgabe, für HDMI in pcm "hw:3,0" ändern.
pcm.dmixer {
type dmix
ipc_key 1024
slave {
pcm "hw:0,0"
period_size 3000
buffer_size 24000
rate 48000
format S16_LE
}
}
pcm.sunxihdmi {
type plug
slave.pcm dmixer
}
Display More
Eine remote.conf für Tastatursteuerung anlegen:
mcedit /var/lib/vdr/remote.conf
XKeySym.Up Up
XKeySym.Down Down
XKeySym.Menu F2
XKeySym.Ok Return
XKeySym.Back f
XKeySym.Left Left
XKeySym.Right Right
XKeySym.Red F5
XKeySym.Green F6
XKeySym.Yellow F7
XKeySym.Blue F8
XKeySym.0 0
XKeySym.1 1
XKeySym.2 2
XKeySym.3 3
XKeySym.4 4
XKeySym.5 5
XKeySym.6 6
XKeySym.7 7
XKeySym.8 8
XKeySym.9 9
XKeySym.Volume+ +
XKeySym.Volume- -
XKeySym.Mute m
XKeySym.Info i
XKeySym.Pause space
XKeySym.FastFwd s
XKeySym.FastRew r
XKeySym.Power v
Display More
Eine runvdr Datei anlegen:
mcedit /usr/local/bin/runvdr
Hier ein Beispielcode für die runvdr:
#!/bin/sh
export LC_MESSAGES=de_DE.UTF-8
export LC_LANG=de_DE.UTF-8
export VDPAU_DRIVER=sunxi;
export DISPLAY=:0.0;
export VDPAU_OSD=1;
export VDPAU_DEINT=1;
chmod 0777 /dev/disp;
chmod 0777 /dev/cedar_dev;
chmod 0777 /dev/g2d;
/usr/local/bin/vdr -d -l 2 -P streamdev-client -P"softhddevice -x -a sunxihdmi"
Display More
runvdr ausführbar machen:
chmod +x /usr/local/bin/runvdr
und VDR für einen ersten Test starten