Cubieboard 2 - Installationsanleitung VDPAU/softhd-device

Aus VDR Wiki
Wechseln zu: Navigation, Suche

Inhaltsverzeichnis

THIS HOWTO IS UNDER CONSTRUCTION

Dieses Howto befindet sich im Aufbau

VDR und Plugin Sektion muss noch bearbeitet werden
und es fehlt noch die Installation einiger Software
(sunxi-libvdpau, Startscripte ... )
und das setzen des governor's

Cubieboard2 Installation eines VDR mit vdr-softhd-device auf cubian

Benötigt

Bilder

erste Schritte

  1. Das Image entpacken und mittels dd auf eine SD-Karte kopieren.
  2. Booten

Für schöneres Arbeiten: SSH-Port wieder auf Standard-Port und Tastaturlayout auf Deutsch + Zeiteinstellung

  1. in der > /etc/ssh/sshd_config
  2. ssh port auf 22 stellen
  3. apt-get install console-data console-tools debconf
  4. Deutsches Layout auswählen de-latin1-nodeadkeys
  5. dpkg-reconfigure locales (umstellen auf deutsch)
  6. echo UTC > /etc/timezone
  7. dpkg-reconfigure tzdata
  8. reboot
  9. dpkg-reconfigure console-common

/etc/apt/sources.list ergänzen

Repo ergänzen
deb http://www.deb-multimedia.org wheezy main non-free

und aktualisieren
apt-get update
apt-get install deb-multimedia-keyring
apt-get update

Benötigte Pakete installieren

Benötigte Pakete installieren
cd /usr/local/src/
wget http://www.vdr-resource.de/mozilo/cms/download.php?cat=Cubieboard2&file=packages.list
xargs -a "packages.list" sudo apt-get install

In dem Rutsch gleich schon mal die Lib's für softhd-device verlinken

Libs für Softhd-device verlinken

Lib's suchen:
find / -name 'libxcb-xv.so.0*'

Ausgabe sollte wie folgt sein:

/usr/lib/arm-linux-gnueabihf/libxcb-xv.so.0
/usr/lib/arm-linux-gnueabihf/libxcb-xv.so.0.0.0

wenn korrekt:
cd /usr/lib/;
ln -s /usr/lib/arm-linux-gnueabihf/libxcb-xv.so.0 libxcb-xv.so.0;
ln -s /usr/lib/arm-linux-gnueabihf/libxcb-shm.so.0 libxcb-shm.so.0;
ln -s /usr/lib/arm-linux-gnueabihf/libxcb-dpms.so.0 libxcb-dpms.so.0;
ln -s /usr/lib/arm-linux-gnueabihf/libxcb-util.so.0 libxcb-util.so.0;
ln -s /usr/lib/arm-linux-gnueabihf/libxcb-screensaver.so.0 libxcb-screensaver.so.0;
ln -s /usr/lib/arm-linux-gnueabihf/libxcb-keysyms.so.1 libxcb-keysyms.so.1;
ln -s /usr/lib/arm-linux-gnueabihf/libxcb-icccm.so.4 libxcb-icccm.so.4;
ln -s /usr/lib/arm-linux-gnueabihf/libxcb-glx.so.0 libxcb-glx.so.0;
ln -s /usr/lib/arm-linux-gnueabihf/libxcb-randr.so.0 libxcb-randr.so.0;

FB Turbo 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

xorg.conf kopieren:
cp xorg.conf /etc/X11/xorg.conf

Mali Binär Treiber installieren

cd /usr/local/src/
git clone https://github.com/linux-sunxi/sunxi-mali.git
cd sunxi-mali
git submodule init
git submodule update
make install

Cedarx Modul beim Start laden lassen

echo sunxi_cedar_mod >> /etc/modules

HDMI-Ton-Ausgabe

THX von fritz@vdr-portal Datei /etc/asound.conf anlegen mit folgendem Inhalt:

pcm.dmixer {
  type dmix
  ipc_key 1024
  slave {
    pcm "hw:1,0"
    period_size 3000
    buffer_size 24000
    rate 48000
    format S16_LE
  }
}

pcm.sunxihdmi {
  type plug
  slave.pcm dmixer
}

Beim starten des VDR's mit vdr -P"softhddevice -x -a sunxihdmi" das Ausgabedevice mitgeben!!!

ffmpeg 1.0.8 installieren

cd /usr/local/src/
wget http://ffmpeg.org/releases/ffmpeg-1.0.8.tar.bz2
tar xfvj ffmpeg-1.0.8.tar.bz2
cd ffmpeg-1.0.8
./configure --enable-shared
make -j3

VDPAU-SUNXI

cd /usr/local/src/
git clone https://github.com/linux-sunxi/libvdpau-sunxi.git

Mittels Makefile gegen -lX11 linken
Bsp.:
--- libvdpau-sunxi/Makefile 2014-01-06 10:11:32.701666116 +0100
+++ b/Makefile 2014-01-06 10:44:05.541667046 +0100
@@ -26,7 +26,7 @@ endif

all: $(TARGET)
$(TARGET): $(OBJ)
- $(CC) $(LIB_LDFLAGS) $(LDFLAGS) $(OBJ) $(LIBS) -o $@
+ $(CC) $(LIB_LDFLAGS) $(LDFLAGS) $(OBJ) $(LIBS) -lX11 -o $@

Danach compilieren und installieren:
make clean
make -j3
make install

VDR + Plugins holen

cd /usr/local/src
wget ftp://ftp.tvdr.de/vdr/vdr-2.0.5.tar.bz2
git clone git://projects.vdr-developer.org/vdr-plugin-live.git
git clone git://projects.vdr-developer.org/vdr-plugin-epgsearch.git
git clone git://projects.vdr-developer.org/vdr-plugin-streamdev.git
git clone git://github.com/opdenkamp/xbmc-pvr-addons
ln -s xbmc-pvr-addons/addons/pvr.vdr.vnsi/vdr-plugin-vnsiserver/ vdr-plugin-vnsiserver
git clone git://github.com/pipelka/vdr-plugin-wirbelscan
git clone git://github.com/pipelka/vdr-plugin-xvdr
git clone git://projects.vdr-developer.org/vdr-plugin-softhddevice.git
git clone git://projects.vdr-developer.org/skin-nopacity.git

VDR entpacken und (Meiner Meinung nach) unbenötigtes entfernen

tar xfvj vdr-2.0.5.tar.bz2
ln -s vdr-2.0.5 VDR
cd VDR/PLUGINS/src/
rm -r dvbhddevice/ dvbsddevice/ hello/ pictures/ rcu/ skincurses/

Links erstellen

ln -s ../../../vdr-plugin-epgsearch/ epgsearch
ln -s ../../../vdr-plugin-live/ live
ln -s ../../../vdr-plugin-streamdev/ streamdev
ln -s ../../../vdr-plugin-vnsiserver/ vnsiserver
ln -s ../../../vdr-plugin-wirbelscan/ wirbelscan
ln -s ../../../vdr-plugin-xvdr/ xvdr
ln -s ../../../vdr-plugin-softhddevice/ softhddevice
ln -s ../../../skin-nopacity/ nopacity

Bei Bedarf live OSD Patch

Ermöglicht bei reinem Serverbetrieb das Anzeigen des OSD über vdr-live.

cd live
wget http://www.vdr-resource.de/osd.patch
patch -p1 -i osd.patch
cd ..

Softhddevice

Softhddevice muss mit Bitmap gebaut werden.

VDR bauen und installieren

cd /usr/local/src/VDR
make clean
make -j3
make -j3 plugins
make install

REC-LED


nano /usr/local/src/recled.sh

#!/bin/sh
case "$1" in
    before)
           echo "Before recording $2"
           echo 1 > /sys/class/gpio/gpio17_pg9/value
           ;;
    after)
           echo "After recording $2"
           echo 0 > /sys/class/gpio/gpio17_pg9/value
           ;;
    edited)
           echo "Edited recording $2"
           i=1
           while [ $i -le 3 ]
           do
           echo 1 > /sys/class/gpio/gpio17_pg9/value
           sleep 1
           echo 0 > /sys/class/gpio/gpio17_pg9/value
           sleep 1;
           i=`expr $i + 1`
           done
           ;;
    *)
           echo "ERROR: unknown state: $1"
           i=1
           while [ $i -le 3 ]
           do
           echo 1 > /sys/class/gpio/gpio17_pg9/value
           sleep 3
           echo 0 > /sys/class/gpio/gpio17_pg9/value
           sleep 2;
           i=`expr $i + 1`
           done
           ;;
esac

Beispiel VDR Startscript


#!/bin/sh
export VDR_LANG=de_DE.utf8;
export VDPAU_DRIVER=sunxi;
export DISPLAY=:0.0;
export VDPAU_OSD=1;
chmod 0777 /dev/disp;
chmod 0777 /dev/cedar_dev;
echo 17 > /sys/class/gpio/export;
echo out > /sys/class/gpio/gpio17_pg9/direction;
echo 1 > /sys/class/gpio/gpio17_pg9/value
/usr/local/bin/vdr -d -r "/usr/local/src/recled.sh" -w 60 -l 3.6 -P"softhddevice -x -a sunxihdmi" -Plive
echo 0 > /sys/class/gpio/gpio17_pg9/value

(Optional) Sundtek Treiber installieren

wget http://sundtek.de/media/sundtek_netinst.sh
chmod 0777 sundtek_netinst.sh
./sundtek_netinst.sh
/opt/bin/mediaclient --enablenetwork=on

THIS HOWTO IS UNDER CONSTRUCTION

Dieses Howto befindet sich im Aufbau

Troubleshooting

Sollte beim starten des VDR folgendes im Log erscheinen:
LIVE: can't preload /usr/local/share/vdr/plugins/live/img/rounded-box-blue-br.png! Generated pages might be degraded!

Dann müssen die nötigen Dateien manuell kopiert werden.
cd /usr/local/src/VDR/PLUGINS/src/live/
mkdir /usr/local/share/vdr/
mkdir /usr/local/share/vdr/plugins/
cp -r live/ /usr/local/share/vdr/plugins/