HDTV Installationsanleitung Ubuntu
Aus VDR Wiki
		Version vom 5. September 2009, 13:14 Uhr von 82.135.6.197  (Diskussion)
Installationsanleitung Ubuntu 9.04
obwohl vdr-1.7.8 verfügbar ist, läuft derzeit die beschriebene Konfig mit vdr-1.7.0 am besten ...
Nvidia Installation
apt-get install build-essential xserver-xorg-dev /etc/init.d/gdm stop cd /home/deinkonto wget ftp://download.nvidia.com/XFree86/Linux-x86/185.19/NVIDIA-Linux-x86-185.19-pkg1.run #(oder neuer) sh *.run /etc/init.d/gdm start
LIB Installation
apt-get install mercurial cvs subversion libncurses-dev zlib1g-dev apt-get install autoconf libtool automake pkg-config gettext apt-get install liba52-0.7.4-dev libmp3lame-dev libvorbis-dev libpng12-dev libx11-dev libxv-dev libasound2-dev
Treiber Installation
cd /usr/local/src hg clone http://mercurial.intuxication.org/hg/s2-liplianin/ cd s2-liplianin cd linux/include/linux ln -s /usr/src/linux-headers-`uname -r`/include/linux/compiler.h ./ cd ../../../ make make install depmod -a reboot
Firmware Installation (unterschiedlich je nach Karte)
TT-S2-1600
cd /usr/src hg clone http://powarman.dyndns.org/hg/v4l-dvb cd v4l-dvb make make install
TeVii S470 DVB-S2 PCI-E :
cd /usr/local/src wget http://www.tbsdtv.com/download/tbs6920_8920_v23_linux_x86_x64.rar unrar x tbs6920_8920_v23_linux_x86_x64.rar tar xivf linux-s2api-tbs6920-8920-v23.tar.gz cd linux-s2api-tbs6920-8920-v23 make make install #firmware runterladen von http://www.vdr-portal.de/board/thread.php?threadid=86740 tar xvzf firmware.tar.gz cp dvb-fe-cx24116.fw /lib/firmware/
Nova-HD-S2:
cd /usr/local/src apt-get install unrar -y rm /lib/firmware/dvb-fe-c* cd /usr/local/src wget http://www.hauppauge.de/software/mce/88x_2_122_26109_WHQL.zip unzip -jo 88x_2_122_26109_WHQL.zip Driver88/hcw88bda.sys dd if=hcw88bda.sys of=dvb-fe-cx26109.fw skip=75504 bs=1 count=32501 cp dvb-fe-cx26109.fw /lib/firmware/ ln -s /lib/firmware/dvb-fe-cx26109.fw /lib/firmware/dvb-fe-cx24116.fw
ffmpeg
cd /usr/local/src apt-get install build-essential apt-get install mercurial cvs subversion git-core libncurses-dev apt-get install autoconf libtool automake pkg-config gettext apt-get install liba52-0.7.4-dev libmp3lame-dev libvorbis-dev zlib1g-dev libpng12-dev libx11-dev libxv-dev libxvmc-dev libasound2-dev libmpcdec-dev apt-get install yasm apt-get build-dep ffmpeg git clone git://git.videolan.org/x264.git cd x264 ./configure --prefix=/usr --enable-pic --enable-shared --enable-pthread --enable-asm --extra-cflags="-mtune=native -march=native -mfpmath=sse -O4 -pipe" make make install ldconfig -v cd /usr/local/src svn checkout svn://svn.mplayerhq.hu/ffmpeg/trunk ffmpeg cd ffmpeg/ ./configure --prefix=/usr --enable-shared --enable-gpl --enable-postproc --enable-libmp3lame --enable-libvorbis --enable-pthreads --enable-libx264 --extra-cflags="-mtune=native -march=native -mfpmath=sse -O4 -pipe" make make install ldconfig –v
xine plugin
cd /usr/local/src wget http://home.vr-web.de/~rnissl/vdr-xine-0.9.3.tgz tar xivf vdr-xine-0.9.3.tgz
Xine-VDPAU
cd /usr/local/src
svn co svn://jusst.de/xine-vdpau
cd xine-vdpau
## vi /usr/local/src/xine-vdpau/src/combined/ffmpeg/ff_video_decoder.c
## "dort gibt es 2 Einträge mit RGBA32 dies ändern in RGB32"
find ../xine-0.9.3 -name xine-lib.patch -exec patch -p1 -i \{} \; 
./autogen.sh
make
make install
ldconfig -v
Xine-UI
cd /usr/local/src apt-get install libxt-dev libpostproc-dev wget http://home.vrweb.de/~rnissl/xine-ui-cvs-20090617220000.tar.bz2 tar xivf xine-ui-cvs-20090617220000.tar.bz2 cd xine-ui ./autogen.sh --prefix=/usr --enable-vdr-keys make make install
VDR 1.7.x
cd /usr/local/src apt-get install libfreetype6-dev libfontconfig1-dev libjpeg62-dev libcap-dev libncurses5-dev libncursesw5-dev wget ftp://ftp.cadsoft.de/vdr/Developer/vdr-1.7.x.tar.bz2 tar xivf vdr-1.7.x.tar.bz2 cd vdr-1.7.x mv /usr/local/src/xine-0.9.3 PLUGINS/src/xine
vi Make.config
# # User defined Makefile options for the Video Disk Recorder # # Copy this file to 'Make.config' and change the parameters as necessary. # # See the main source file 'vdr.c' for copyright information and # how to reach the author. # # $Id: Make.config.template 2.0 2008/01/13 12:54:09 kls Exp $ ### The C compiler and options: CC = gcc CFLAGS = -g -O2 -Wall CXX = g++ CXXFLAGS = -g -O2 -Wall -Woverloaded-virtual -Wno-parentheses ifdef PLUGIN CFLAGS += -fPIC CXXFLAGS += -fPIC DEFINES += -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE endif ### The directory environment: DVBDIR = /usr/local/src/s2-liplianin/linux MANDIR = /usr/man BINDIR = /usr/bin LOCDIR = /usr/share/locale PLUGINDIR= ./PLUGINS PLUGINLIBDIR= /usr/lib/vdr/plugins VDRSCRIPTDIR= /usr/lib/vdr/scripts VIDEODIR = /var/lib/video.00 CONFDIR = /etc/vdr/ ### The remote control: LIRC_DEVICE = /dev/lircd RCU_DEVICE = /dev/ttyS1 ## Define if you want vdr to not run as root #VDR_USER = vdr
Vorbereitung:
mkdir /var/lib/video.00 mkdir -p /usr/lib/vdr/plugins mkdir -p /usr/lib/vdr/scripts mkdir -p /etc/vdr/plugins make make plugins make i18n make install locale-gen de_DE.UTF-8 de_DE dpkg-reconfigure locales cp -a svdrpsend.pl /usr/bin cp *.conf /etc/vdr/
Wer Probleme hat in der Art:
dvbdevice.c: In constructor âcDvbDevice::cDvbDevice(int)â: dvbdevice.c:487: error: âFE_CAN_2G_MODULATIONâ was not declared in this scope
# vi /usr/include/linux/dvb/frontend.h
    FE_HAS_EXTENDED_CAPS        = 0x800000,   // We need more bitspace for newer APIs, indicate this.
// Einfuegen, anfang
    FE_CAN_2G_MODULATION        = 0x10000000, /* frontend supports "2nd generation modulation" (DVB-S2) */
// Einfuegen, ende
    FE_NEEDS_BENDING        = 0x20000000, // not supported anymore, don't use (frontend requires frequency bending)
Xineliboutput 1.0.4 plugin (bis vdr-1.7.3)
cd /usr/local/src/vdr-1.7.x/PLUGINS/src wget http://downloads.sourceforge.net/project/xineliboutput/xineliboutput/vdr-xineliboutput-1.0.4/vdr-xineliboutput-1.0.4.tar.bz2 tar xivf vdr-xineliboutput-1.0.4.tar.bz2 mv xineliboutput* xineliboutput cd xineliboutput make make install mkdir -p /etc/vdr/plugins/xineliboutput cp *.mpg /etc/vdr/plugins/xineliboutput/ cd ../../../ make plugins make install
Xineliboutput CVS plugin (ab vdr-1.7.4)
cd /usr/local/src/vdr-1.7.x/PLUGINS/src apt-get install libextractor-dev cvs -d:pserver:anonymous@xineliboutput.cvs.sourceforge.net:/cvsroot/xineliboutput login cvs -z3 -d:pserver:anonymous@xineliboutput.cvs.sourceforge.net:/cvsroot/xineliboutput co -P vdr-xineliboutput mv vdr-xineliboutput* xineliboutput cd xineliboutput make make install mkdir -p /etc/vdr/plugins/xineliboutput cp *.mpg /etc/vdr/plugins/xineliboutput/ cd ../../../ make plugins make install
Xine plugin
cd /usr/local/src/vdr-1.7.x/PLUGINS/src/xine/data mkdir -p /etc/vdr/plugins/xine cp *.mpg /etc/vdr/plugins/xine
Scripts
/var/bin/runvdr
#!/bin/bash
export VDR_LANG=de_DE
export VDR_CHARSET_OVERRIDE="ISO-8859-15"
export LANG="de_DE"
export LC_COLLATE="de_DE"
export LC_ALL="de_DE"
PATH=/usr/local/bin:$PATH
/usr/bin/amixer set 'IEC958',1 unmute
/usr/bin/touch /var/lib/video.00/.update
VDRPRG="/usr/bin/vdr"
VDRCMD="/usr/bin/vdr -c /etc/vdr -v /var/lib/video.00 -E /var/vdr -l 3 --user=root --lirc=/dev/null \
-s /var/bin/vdrpoweroff.sh \
-P'xineliboutput -l none -r 37890 -p' \ 
-P'xine -r' \
$*"
KILL="/usr/bin/killall -q -TERM"
# Detect whether the DVB driver is already loaded
# and return 0 if it *is* loaded, 1 if not:
DriverLoaded()
{
  return 1
}
# Load all DVB driver modules needed for your hardware:
LoadDriver ()
{
  return 0
}
# Unload all DVB driver modules loaded in LoadDriver():
UnloadDriver ()
{
  return 0
}
# Load driver if it hasn't been loaded already:
if ! DriverLoaded; then
   LoadDriver
fi
while (true) do
      eval "$VDRCMD"
      if test $? -eq 0 -o $? -eq 2; then exit; fi
      echo "`date` reloading DVB driver"
      $KILL $VDRPRG
      sleep 10
      UnloadDriver
      LoadDriver
      echo "`date` restarting VDR"
      done
/var/bin/vdrpoweroff.sh
#!/bin/bash /sbin/poweroff
/etc/init.d/vdr
#!/bin/bash
### BEGIN INIT INFO
# Provides:          VDR
# Required-Start:    $network
# Required-Stop:     $network
# Default-Start:     3 5
# Default-Stop:      0 1 2 6
# Description:       Start, Stop or Restart VDR
### END INIT INFO
# Shell functions sourced from /etc/rc.status:
# set -e
# Reset status of this service
# rc_reset
#
case "$1" in
    start)
        echo -n "Starting VDR "
                /var/bin/runvdr > /var/log/vdr.log &
                /usr/bin/irexec -d /etc/irexec.conf &
                # fuer xineliboutput
                /usr/local/bin/switchtv vdr &
                # fuer xine
                #/usr/local/bin/switchtv vdrxine &
        ;;
    stop)
        echo -n "Shutting down VDR "
                /usr/bin/killall irexec
                /usr/local/bin/switchtv kill
                /usr/bin/killall runvdr
                /bin/kill `/bin/pidof /usr/bin/vdr` 2>/dev/null
        ;;
    restart)
        echo -n "Restart VDR "
        $0 stop
        sleep 5
        $0 start
        ;;
    *)
        echo "Usage: $0 {start|stop|restart}"
        exit 1
        ;;
esac
# rc_exit
exit 0
update-rc.d vdr defaults
/usr/local/bin/switchtv
mit Umschaltung zu XBMC
#!/bin/bash
run_vdr() {
    kill_apps
    /usr/bin/xinit -e /usr/bin/vdr-sxfe --video=vdpau --post tvtime:method=use_vo_driver --audio=alsa --fullscreen --reconnect --lirc $@ &
}
run_vdrxine() {
    kill_apps
    /usr/bin/xinit -e /usr/bin/xine -V vdpau -f -r anamorphic  --post vdr_video --post vdr_audio --post upmix_mono --post vdr --verbose=2 vdr:/tmp/vdr-xine/stream#demux:mpeg_pes &
}
run_xbmc() {
    kill_apps
    /usr/local/bin/scanvdr &
    /usr/bin/xinit -e  /usr/share/xbmc/xbmc.bin -fs $@ &
}
kill_apps() {
     killall -9 vdr-sxfe 2>/dev/null
     killall -9 xine     2>/dev/null
     killall -9 xbmc     2>/dev/null
     killall -9 xbmc.bin 2>/dev/null
     /usr/bin/killall xinit
     while [ true ]
     do
        [[ "`ps -ef | grep -v grep | grep xinit`" = "" ]] && break
     done
}
if [ "$1" = "xbmc" ];then
     run_xbmc
elif [ "$1" = "vdr" ];then
     run_vdr
elif [ "$1" = "vdrxine" ];then
     run_vdrxine
elif [ "$1" = "kill" ];then
     kill_apps
elif [ -z "$1" ];then
     if [ "`ps -ef | grep -v grep | egrep "vdr-sxfe|bin/xine"`" != "" ];then
         echo "VDR application is running => starting XBMC ..."
         run_xbmc
     elif [ "`ps -ef | grep -v grep | grep 'xbmc'`" != "" ];then
         echo "XBMC application is running => starting VDR ..."
         run_vdr
     else
         echo "no application is running => starting VDR ..."
         run_vdr
     fi
fi
exit 0
X
/etc/init.d/gdm (muß disabled werden)
Edit file /etc/X11/Xwrapper.config: Change this line:
allowed_users=console
to
allowed_users=anybody
# /etc/X11/xorg.conf
# nvidia-xconfig: X configuration file generated by nvidia-xconfig
# nvidia-xconfig:  version 1.0  (buildmeister@builder63)  Fri Apr  3 13:01:52 PST 2009
Section "ServerLayout"
    Identifier     "Layout0"
    Screen      0  "Screen0" 0 0
    InputDevice    "Keyboard0" "CoreKeyboard"
    InputDevice    "Mouse0" "CorePointer"
EndSection
Section "InputDevice"
    # generated from default
    Identifier     "Mouse0"
    Driver         "mouse"
    Option         "Protocol" "auto"
    Option         "Device" "/dev/psaux"
    Option         "Emulate3Buttons" "no"
    Option         "ZAxisMapping" "4 5"
EndSection
Section "InputDevice"
    # generated from default
    Identifier     "Keyboard0"
    Driver         "kbd"
EndSection
Section "Monitor"
#    VendorName     "Unknown"
#    ModelName      "Unknown"
    Identifier     "Monitor0"
    #HorizSync       15.0 - 68.0
    HorizSync       15.0 - 75.0
    VertRefresh     23.0 - 61.0
    Option         "DPMS"
    Option         "ExactModeTimingsDVI" "True"
    Option         "UseDisplayDevice" "DFP-0"
    Option         "UseEDIDFreqs" "False"
    # 1920x1080p @ 50Hz (EIA/CEA-861B)
    ModeLine "1920x1080@50" 148.500 1920 2448 2492 2640 1080 1084 1089 1125 +hsync +vsync
    # 1920x1080p @ 60Hz (EIA/CEA-861B)
    ModeLine "1920x1080@60" 148.500 1920 2008 2052 2200 1080 1084 1089 1125 +hsync +vsync
    # 1920x1080p @ 24Hz (EIA/CEA-861B)
    ModeLine "1920x1080@24" 74.250 1920 2558 2602 2750 1080 1084 1089 1125 +hsync +vsync
    # 1920x1080p @ 23.976Hz (EIA/CEA-861B)
    ModeLine "1920x1080@23.976" 74.175 1920 2558 2602 2750 1080 1084 1089 1125 +hsync +vsync
    # 1920x1080i @ 50Hz (EIA/CEA-861B)
    Modeline "1920x1080@50i" 74.250 1920 2448 2492 2640 1080 1085 1095 1125 +hsync +vsync Interlace
    # 1920x1080i @ 60Hz (EIA/CEA-861B)
    Modeline "1920x1080@60i" 74.250 1920 2008 2052 2200 1080 1085 1095 1125 +hsync +vsync Interlace
    # 1920x1080p @ 59.94Hz (EIA/CEA-861B)
    ModeLine "1920x1080@59.94" 148.350 1920 2008 2052 2200 1080 1084 1089 1125 +hsync +vsync
    # 1920x1080i @ 59.94Hz (EIA/CEA-861B)
    Modeline "1920x1080@59.94i" 74.175 1920 2008 2052 2200 1080 1085 1095 1125 +hsync +vsync Interlace
    # 1920x1080p @ 25Hz (EIA/CEA-861B)
    ModeLine "1920x1080@25" 74.250 1920 2448 2492 2640 1080 1084 1089 1125 +hsync +vsync
    # 1920x1080p @ 29.97Hz (EIA/CEA-861B)
    ModeLine "1920x1080@29.97" 74.175 1920 2008 2052 2200 1080 1084 1089 1125 +hsync +vsync
    # 1920x1080p @ 30Hz (EIA/CEA-861B)
    ModeLine "1920x1080@30" 74.250 1920 2008 2052 2200 1080 1084 1089 1125 +hsync
EndSection
Section "Device"
    Identifier     "Device0"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    Option         "CustomEdid" "DFP-0:/etc/X11/edid.bin"
    Option         "ConnectedMonitor" "DFP-0"
    Option         "UseDisplayDevice" "DFP-0"
EndSection
Section "Screen"
    Identifier     "Screen0"
    Device         "Device0"
    Monitor        "Monitor0"
    DefaultDepth    24
    Option         "NoLogo"
    Option         "DynamicTwinView" "false"
    Option         "AllowGLXWithComposite" "True"
    Option         "AddARGBVisuals" "True"
    Option         "AddARGBGLXVisuals" "True"
    Option         "NoLogo" "False"
    Option         "RenderAccel" "True"
    Option         "UseEvents" "True"
    Option         "TripleBuffer" "True"
    Option         "ExactModeTimingsDVI" "True"
    Option         "FlatPanelProperties" "Scaling = Native"
    SubSection     "Display"
        Depth       24
        Modes      "1920x1080@50" "1920x1080@24"
    EndSubSection
EndSection
Section "Extensions"
    Option         "Composite" "Disable"
EndSection
Section "Module"
    Load           "extmod"
    Load           "glx"
    #Load           "v4l"
EndSection
Lirc
apt-get install lirc lirc-modules-source
/etc/lirc/hardware.conf (nur für Nova-HD-S2 IR Empfänger!)
# /etc/lirc/hardware.conf # #Chosen Remote Control REMOTE="Hauppauge Nova-HD-S2" REMOTE_MODULES="" REMOTE_DRIVER="devinput" TEMPIREVENT=`ls /dev/input/by-path/ |grep event-ir` REMOTE_DEVICE="/dev/input/by-path/$TEMPIREVENT" REMOTE_LIRCD_CONF="/etc/lircd.conf" REMOTE_LIRCD_ARGS="" #Chosen IR Transmitter TRANSMITTER="None" TRANSMITTER_MODULES="" TRANSMITTER_DRIVER="" TRANSMITTER_DEVICE="" TRANSMITTER_LIRCD_CONF="" TRANSMITTER_LIRCD_ARGS="" #Enable lircd START_LIRCD="true" #Don't start lircmd even if there seems to be a good config file #START_LIRCMD="false" #Try to load appropriate kernel modules LOAD_MODULES="" # Default configuration files for your hardware if any LIRCMD_CONF="" #Forcing noninteractive reconfiguration #If lirc is to be reconfigured by an external application #that doesn't have a debconf frontend available, the noninteractive #frontend can be invoked and set to parse REMOTE and TRANSMITTER #It will then populate all other variables without any user input #If you would like to configure lirc via standard methods, be sure #to leave this set to "false" FORCE_NONINTERACTIVE_RECONFIGURATION="false" START_LIRCMD=""
/etc/lircd.conf (nur für Nova-HD-S2 IR Empfänger!)
#This configuration has been automatically generated via
#the Ubuntu LIRC package maintainer scripts.
#
#It includes the default configuration for the remote and/or
#transmitter that you have selected during package installation.
#
#Feel free to add any custom remotes to the configuration
#via additional include directives or below the existing
#Ubuntu include directives from your selected remote and/or
#transmitter.
#Configuration for the Hauppauge Nova-T 500 remote:
#include "/usr/share/lirc/remotes/hauppauge/lircd.conf.hauppauge_novat500"
# brand:                       Hauppauge NOVA-HD-S2
# model no. of remote control: Hauppage NOVA-HD-S2 Snowboard Shape Silver over Black
#
begin remote
 name  NOVA-HD-S2
 bits           16
 eps            30
 aeps          100
 one             0     0
 zero            0     0
 pre_data_bits   16
 pre_data       0x1
 gap          199999
 min_repeat 1
 toggle_bit      0
     begin codes
         test1                    0x0174
         Pictures                 0x016F
         Go                       0x0161
         Text                     0x0184
         Sub                      0x0172
         Power                    0x0074
         TV                       0x0179
         Videos                   0x0189
         Music                    0x0188
         Pictures                 0x00E2
         Guide                    0x016D
         Radio                    0x0181
         Up                       0x0067
         Left                     0x0069
         OK                       0x001C
         Right                    0x006A
         Down                     0x006C
         Back                     0x00AE
         Menu                     0x008B
         Vol+                     0x0073
         Vol-                     0x0072
         Mute                     0x0071
         Ch+                      0x0192
         Ch-                      0x0193
         Record                   0x00A7
         FastRew                  0x00A8
         FastFwd                  0x00D0
         SkipBack                 0x0195
         SkipFwd                  0x0197
         Play                     0x00CF
         Pause                    0x0077
         Stop                     0x0080
         Sleep                    0x008E
         NextSong                 0x00A3
         PrevSong                 0x00A5
         Sorpre1                  0x00D0
         PrevCh                   0x019C
         1                        0x0002
         2                        0x0003
         3                        0x0004
         4                        0x0005
         5                        0x0006
         6                        0x0007
         7                        0x0008
         8                        0x0009
         9                        0x000A
         *                        0x0037
         0                        0x000B
         #                        0x0029
         one                      0x004F
         two                      0x0050
         three                    0x0051
         four                     0x004B
         five                     0x004C
         six                      0x004D
         seven                    0x0047
         eight                    0x0048
         nine                     0x0049
         ten                      0x0052
         Red                      0x018E
         Green                    0x018F
         Yellow                   0x0190
         Blue                     0x0191
 end codes
end remote
/etc/irexec.conf
begin prog = irexec remote = NOVA-HD-S2 button = Guide config = /usr/local/bin/switchtv & \n end
/etc/vdr/remote.conf
LIRC.Up Up LIRC.Down Down LIRC.Menu Menu LIRC.Ok OK LIRC.Back Back LIRC.Left Left LIRC.Right Right LIRC.Red Red LIRC.Green Green LIRC.Yellow Yellow LIRC.Blue Blue LIRC.0 0 LIRC.1 1 LIRC.2 2 LIRC.3 3 LIRC.4 4 LIRC.5 5 LIRC.6 6 LIRC.7 7 LIRC.8 8 LIRC.9 9 LIRC.Power Power LIRC.Volume+ Volume+ LIRC.Volume- Volume- LIRC.Mute Mute LIRC.Channel+ Ch+ LIRC.Channel- Ch- XKeySym.Up Up XKeySym.Down Down XKeySym.Menu Menu XKeySym.Ok OK XKeySym.Back Back XKeySym.Left Left XKeySym.Right Right XKeySym.Red Red XKeySym.Green Green XKeySym.Yellow Yellow XKeySym.Blue Blue 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.Power Power XKeySym.Volume+ Volume+ XKeySym.Volume- Volume- XKeySym.Mute Mute XKeySym.Channel+ Ch+ XKeySym.Channel- Ch-
Audio
Vorsichthalber auf die neueste Alsa Version mit dem Script "AlsaUpgrade-1.0.x-rev-1.17.sh" upgraden und anschließend neu booten
Der User der vdr-sxfe startet muß(!) in der group "audio" sein
HDMI
Im folgenden sieht man das HDMI Device auf Card "0" Device "3"
aplay -l **** List of PLAYBACK Hardware Devices **** card 0: NVidia [HDA NVidia], device 0: ALC883 Analog [ALC883 Analog] Subdevices: 1/1 Subdevice #0: subdevice #0 card 0: NVidia [HDA NVidia], device 3: NVIDIA HDMI [NVIDIA HDMI] Subdevices: 0/1 Subdevice #0: subdevice #0
# vi /etc/asound.conf
pcm.!default {
        type hw
        card 0
        device 3
}
# /etc/vdr/setup.conf xineliboutput.Audio.Port = hw:0,3 xineliboutput.Audio.Speakers = Pass Through
# ~/.xine/config_xineliboutput audio.device.alsa_front_device:default audio.device.alsa_passthrough_device:hw:0,3 audio.device.alsa_surround51_device:default audio.output.speaker_arrangement:Pass Through audio.synchronization.av_sync_method:resample audio.synchronization.force_rate:48000 audio.synchronization.resample_mode:on
XBMC
# /etc/apt/sources.list.d/xbmc.list deb http://ppa.launchpad.net/team-xbmc-svn/ppa/ubuntu jaunty main deb-src http://ppa.launchpad.net/team-xbmc-svn/ppa/ubuntu jaunty main
apt-get install xbmc
# Lircmap.xml
<lircmap>
  <remote device="NOVA-HD-S2">
         <power>Power</power>
         <info>Red</info>
         <display>Green</display>
         <title>Yellow</title>
         <start>Blue</start>
         <skipplus>SkipFwd</skipplus>
         <skipminus>SkipBack</skipminus>
         <channelplus>Ch+</channelplus>
         <channelminus>Ch-</channelminus>
         <skipplus>NextSong</skipplus>
         <skipminus>PrevSong</skipminus>
         <mymusic>Music</mymusic>
         <mypictures>Pictures</mypictures>
         <myTV>TV</myTV>
         <myvideo>Videos</myvideo>
         <up>Up</up>
         <left>Left</left>
         <right>Right</right>
         <down>Down</down>
         <up>Up</up>
         <select>OK</select>
         <menu>Menu</menu>
         <play>Play</play>
         <pause>Pause</pause>
         <stop>Stop</stop>
         <forward>FastFwd</forward>
         <reverse>FastRew</reverse>
         <back>Back</back>
         <zero>0</zero>
         <one>1</one>
         <two>2</two>
         <three>3</three>
         <four>4</four>
         <five>5</five>
         <six>6</six>
         <seven>7</seven>
         <eight>8</eight>
         <nine>9</nine>
  </remote>
</lircmap>
#/usr/local/bin/scanvdr
VDRREC="/var/lib/video.00"
TVFILE="../tvshow.nfo"
VDRINFO="info.vdr"
NFOFILE="001.nfo"
DVDTHUMB="../folder.jpg"
DVDOFFSET="18000"
DVD_XRES="1280"
DVD_YRES="720"
FANTHUMB="../fanart.jpg"
FANOFFSET="20000"
FAN_XRES="1280"
FAN_YRES="720"
if [ "$1" = "-new" ];then
  echo "regenerating all files ..."
  find $VDRREC -name "*.jpg" -exec rm {} \;
  find $VDRREC -name "*.nfo" -exec rm {} \;
fi
VDR2JPEG="/usr/local/bin/vdr2jpeg"
for i in $(find $VDRREC -name info.vdr)
do
  VDRDIR=$(dirname $i)
  VDRFILE=$(basename $i)
  cd $VDRDIR
  if [ -f $VDRINFO ];then
     AIRED=$(basename $VDRDIR | awk -F'.' '{print $1}')
     DAUER=$(grep "^E " $VDRINFO | awk '{print $4/60}' | awk -F'.' '{print $1}')
     TITEL=$(grep "^T " $VDRINFO | sed "s/^T //")
     INHALT=$(grep "^D " $VDRINFO | sed "s/^D //")
     KURZTEXT=$(grep "^S " $VDRINFO | sed "s/^S //")
     if [ -z "$KURZTEXT" ];then
          KURZTEXT="$TITEL"
     fi
  fi
  echo "${TITEL}:"
  echo "creating database infos ..."
  COUNTREC=$(find .. -name "*.rec" | wc -l)
  HTEXT=$(find .. -name $VDRINFO | sort -n | xargs cat | grep "^S " | sed "s/^S //")
  if [ -z "$HTEXT" ];then
        HTEXT="$DAUER min: $INHALT"
  elif [ "$COUNTREC" = "1" ];then
        HTEXT="[ ${HTEXT} ]
$DAUER min: $INHALT"
  fi
  echo "<tvshow>"                  > $TVFILE
  echo "<title>$TITEL</title>"    >> $TVFILE
  echo "<plot>$HTEXT</plot>"      >> $TVFILE
  echo "</tvshow>"                >> $TVFILE
  if [ ! -f $NFOFILE ];then
     echo "<episodedetails>"                     > $NFOFILE
     echo "<title>$KURZTEXT</title>"            >> $NFOFILE
     echo "<rating></rating>"                   >> $NFOFILE
     echo "<season></season>"                   >> $NFOFILE
     echo "<episode></episode>"                 >> $NFOFILE
     echo "<plot>$DAUER min: $INHALT</plot>"    >> $NFOFILE
     echo "<credits>VDR</credits>"              >> $NFOFILE
     echo "<director></director>"               >> $NFOFILE
     echo "<aired>$AIRED</aired>"               >> $NFOFILE
     echo "<runtime>$DAUER min</runtime>"       >> $NFOFILE
     echo "<actor></actor>"                     >> $NFOFILE
     echo "</episodedetails>"                   >> $NFOFILE
  fi
  if [ -f $VDR2JPEG ];then
     if [ ! -f $DVDTHUMB ];then
       echo "creating DVD thumbnails ..."
       $VDR2JPEG -x $DVD_XRES= -y $DVD_YRES -f $DVDOFFSET -r .
       mv 000${DVDOFFSET}.jpg $DVDTHUMB
     fi
     if [ ! -f $FANTHUMB ];then
       echo "creating FANART thumbnails ..."
       $VDR2JPEG -x $FAN_XRES= -y $FAN_YRES -f $FANOFFSET -r .
       mv 000${FANOFFSET}.jpg $FANTHUMB
     fi
  else
     echo "cannot create Fanart - $VDR2JPEG not found!"
  fi
  echo "---"
done

