HDTV Installationsanleitung Ubuntu
(→Sound) |
(→Sound) |
||
| Zeile 982: | Zeile 982: | ||
'''Der User der vdr-sxfe startet muß(!) in der group "audio" sein''' | '''Der User der vdr-sxfe startet muß(!) in der group "audio" sein''' | ||
| − | |||
mit '''aplay''' sieht man wo das Device (hier am Beispiel HDMI) konfiguriert ist (Card "'''0'''" Device "'''3'''") | mit '''aplay''' sieht man wo das Device (hier am Beispiel HDMI) konfiguriert ist (Card "'''0'''" Device "'''3'''") | ||
<pre> | <pre> | ||
Version vom 30. September 2009, 19:17 Uhr
Gehäuse/Karten Empfehlung
Wer gute Kombinationen hat, bitte posten ...
Asus Pundit4-P5N9300 mit TeVii S470 DVB-S2 PCI-E (~170,- Euro Gehäuse, ~80 Euro DVB-S2)
Installationsanleitung Ubuntu 9.04
Nvidia Installation
Achtung: vorher alle nvidia/nv Pakete/Module deinstallieren
apt-get install build-essential xserver-xorg-dev 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/X11/xorg.conf
Section "ServerLayout"
Identifier "Layout0"
Screen 0 "Screen0"
InputDevice "Keyboard0" "CoreKeyboard"
InputDevice "Mouse0" "CorePointer"
EndSection
Section "Files"
EndSection
Section "Module"
Load "dbe"
Load "extmod"
Load "type1"
Load "freetype"
Load "glx"
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"
Identifier "Monitor0"
VendorName "Unknown"
ModelName "Unknown"
HorizSync 28.0 - 33.0
VertRefresh 43.0 - 72.0
Option "DPMS"
EndSection
Section "Device"
Identifier "Device0"
Driver "nvidia"
VendorName "NVIDIA Corporation"
EndSection
Section "Screen"
Identifier "Screen0"
Device "Device0"
Monitor "Monitor0"
DefaultDepth 24
SubSection "Display"
Depth 24
EndSubSection
EndSection
Section "Extensions"
Option "Composite" "Disable"
EndSection
gdm restarten und anschließend im /var/log/Xorg.0.log prüfen ob der Treiberr wirklich geladen wurde
/etc/init.d/gdm restart
vdpinfo
Mit dem Tool kann man testen ob die vdapu Unterstützung funktioniert
cd /usr/local/src wget http://www.cs.rug.nl/~wladimir/vdpinfo/vdpinfo-0.0.5.tar.gz tar -xivf vdpinfo-0.0.5.tar.gz cd vdpinfo make cp vdpinfo /usr/local/bin
LIB Installation
apt-get install mercurial cvs subversion libncurses-dev zlib1g-dev apt-get install autoconf libtool automake pkg-config gettext unrar 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 / TBS 6920 (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 checkinstall 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 checkinstall 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 checkinstall 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
apt-get remove --purge libxine1 libxine1-bin libxine1-console libxine1-misc-plugins libxine1-x
Achtung! vorher prüfen, ob es in /usr/lib/xine oder /usr/local/lib/xine bereits plugins gibt, ./configure --prefix=/usr ggfs. entsprechend anpassen. Nach der Installation prüfen, ob im lib Verzeichnis die plugins vorhanden sind
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
./configure --prefix=/usr
make
checkinstall
ldconfig -v
Xine-UI
cd /usr/local/src apt-get install libxt-dev libpostproc-dev liblircclient-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 checkinstall
Xine Installation prüfen
Bei "Videoausgabe" muß "vdpau" vorhanden sein!
xine --list-plugins
Dies ist xine (X11 gui) - Ein freier Video-Player v0.99.6cvs.
(c) 2000-2007 Das xine Team.
Verfügbare xine-Plugins:
-Audioausgabe:
alsa, oss, esd, file, none.
-Videoausgabe:
vdpau, dxr3, aadxr3, xv, raw, SyncFB, opengl, xshm, aa, caca, xxmc, none,
sdl, vidix, vidixfb, fb, xvmc.
-Demuxer:
xvdr, anx, nsv, yuv4mpeg2, mpeg_block, matroska, ogg, pva, iff, mpeg-ts,
avi, quicktime, wve, idcin, ipmovie, vqa, wc3movie, roq, str, film,
smjpeg, fourxm, vmd, flashvideo, fli, real, asf, aud, aiff, flac, nsf,
realaudio, snd, tta, voc, vox, mpeg_pes, slave, mpeg, ac3, dts, cdda, wav,
mpc, rawdv, vc1es, mp3, shn, yuv_frames, elem, sputext, aac.
-Eingang:
CD, VCDO, rtp, DVD, stdin, VDR, pnm, VCD, v4l_radio, v4l_tv, rtsp, FILE,
DVB, http, tcp, xvdr, mms, pvr.
-Untertitel:
dxr3-spudec, spudec, spudvb, spucc, spucmml, sputext.
-Nachbearbeitung:
vdr, goom, switch, mosaico, upmix, upmix_mono, stretch, volnorm, warp,
swscale, expand, fill, invert, eq, denoise3d, boxblur, eq2, unsharp, pp,
noise, oscope, fftscope, fftgraph, autocrop, tvtime, audiochannel,
vdr_video, vdr_audio.
-Audiodecoder:
gsm610, mad, ffmpegaudio, realadec, vorbis, a/52, nsf, speex, mpc,
dvaudio, pcm, dts, faad.
-Videodecoder:
dxr3-mpeg2, vdpau_mpeg12, vdpau_vc1, mpeg2, realvdec, vdpau_h264,
ffmpegvideo, theora, bitplane, yuv, rgb, ffmpeg-wmv8, ffmpeg-wmv9.
VDR 1.7.9
cd /usr/local/src apt-get install libfreetype6-dev libfontconfig1-dev libjpeg62-dev libcap-dev libncurses5-dev libncursesw5-dev libbz2-dev ethtool wget ftp://ftp.cadsoft.de/vdr/Developer/vdr-1.7.9.tar.bz2 tar xivf vdr-1.7.9.tar.bz2 cd vdr-1.7.9 mv /usr/local/src/xine-0.9.3 PLUGINS/src/xine
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 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 ../.. make plugins make install cd PLUGINS/src/xineliboutput make make install mkdir -p /etc/vdr/plugins/xineliboutput cp *.mpg /etc/vdr/plugins/xineliboutput/ cd ../../../ make plugins make install
ab vdr-1.7.4
cd /usr/local/src/vdr-1.7.9/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 ../.. make plugins make install cd PLUGINS/src/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.9/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 -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
#!/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 "
/usr/sbin/ethtool -s eth0 wol g
/var/bin/runvdr > /var/log/vdr.log &
/usr/local/bin/switchtv
;;
stop)
echo -n "Shutting down VDR "
/usr/local/bin/switchtv kill
;;
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
/var/bin/vdrwakealarm
#!/bin/sh
DEV=/sys/class/rtc/rtc0/wakealarm
if [ -z "$1" ];then
wakeuptime=$(/usr/local/bin/svdrpsend.pl -d localhost NEXT abs|grep 250 |cut -f3 -d' '|tr -d '\r')
else
wakeuptime=$1
fi
echo ""
echo "initialisiere Wakeup ..."
echo 0 > $DEV
echo "setze Timer $wakeuptime ..."
echo $wakeuptime > $DEV
echo ""
echo "naechster Timer abzgl. 2h:"
echo "-------------------------"
ALARM_DATE=$(cat /proc/driver/rtc | grep alrm_date )
ALARM_TIME=$(cat /proc/driver/rtc | grep alrm_time )
echo "$ALARM_DATE"
echo "$ALARM_TIME"
echo ""
TEST=$(echo $ALARM_DATE|grep '\*\*')
if [ -n "$TEST" ];then
echo "**** ERROR: Wakeup nicht korrekt ... ****"
echo "**** neuer Wakeup in 4h ****"
wakeuptime=$(date +%s)
wakeuptime=$((wakeuptime+14400))
$0 $wakeuptime
fi
/usr/local/bin/switchtv
mit Umschaltung zu XBMC
#!/bin/bash
DEFAULT=run_vdrxine
if [ -n "`/bin/pidof switchtv`" ];then
echo "switchtv already running ..."
exit 0
fi
run_vdr() {
$DEFAULT
}
run_vdrxineliboutput() {
/usr/bin/xinit -e /usr/bin/vdr-sxfe --video=vdpau --post tvtime:method=use_vo_driver --audio=alsa --fullscreen --reconnect $@ &
}
run_vdrxine() {
/usr/bin/xinit -e /usr/bin/xine -I -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() {
if [ -f /usr/share/xbmc/xbmc.bin ];then
/usr/local/bin/scanvdr &
/usr/bin/xinit -e /usr/share/xbmc/xbmc.bin -fs $@ &
else
/etc/init.d/vdr restart
fi
}
kill_apps() {
killall -9 vdr-sxfe 2>/dev/null
killall -9 xterm 2>/dev/null
killall -9 runvdr 2>/dev/null
killall -9 vdr 2>/dev/null
killall -9 xine 2>/dev/null
killall -9 xbmc 2>/dev/null
killall -9 xbmc.bin 2>/dev/null
killall -9 scanvdr 2>/dev/null
killall -9 irexec 2>/dev/null
/usr/bin/killall xinit
while [ true ]
do
[[ "`ps -ef | grep -v grep | grep xinit`" = "" ]] && break
done
sleep 5
}
if [ "$1" = "xbmc" ];then
kill_apps
/usr/bin/irexec -d /etc/irexec.conf
run_xbmc
elif [ "$1" = "vdr" ];then
kill_apps
/usr/bin/irexec -d /etc/irexec.conf
/etc/init.d/vdr start
elif [ "$1" = "kill" ];then
kill_apps
elif [ -z "$1" ];then
killall -9 irexec 2>/dev/null
run_vdr
/usr/bin/irexec -d /etc/irexec.conf
fi
exit 0
Script permissions anpassen
chmod 755 /usr/local/bin/switchtv chmod 755 /etc/init.d/vdr chmod 755 /var/bin/runvdr chmod 755 /var/bin/vdrpoweroff chmod 775 /var/bin/wakealarm
Wakeup
Wenn das Wakeup nicht funktioniert, dann bitte http://www.mythtv.org/wiki/ACPI_Wakeup#Disable_hwclock_updates lesen
X
/etc/init.d/gdm disablen:
update-rc.d gdm remove
/etc/X11/Xwrapper.config
Diese Zeile
allowed_users=console
ändern in
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!)
# Please make this file available to others
# by sending it to <lirc@bartelmus.de>
#
# this config file was automatically generated
# using lirc-0.8.4a(default) on Sun Aug 30 19:33:29 2009
#
# contributed by
#
# brand: ./test
# model no. of remote control:
# devices being controlled by this remote:
#
begin remote
name Nova-HD-S2
bits 13
flags RC5|CONST_LENGTH
eps 30
aeps 100
one 915 854
zero 915 854
plead 951
gap 112860
toggle_bit_mask 0x800
begin codes
OK 0x17A5
Left 0x1796
Right 0x1797
Up 0x1794
Down 0x1795
Power 0x17BD
Go 0x17BB
TV 0x179C
Videos 0x1798
Music 0x1799
Pictures 0x179A
Guide 0x179B
Radio 0x178C
Back 0x179F
Menu 0x178D
Volume+ 0x1790
Volume- 0x1791
Ch+ 0x17A0
Ch- 0x17A1
Mute 0x178F
PrevCh 0x1792
Pause 0x17B0
Play 0x17B5
Stop 0x17B6
Next 0x179E
Prev 0x17A4
Forward 0x17B4
Rewind 0x17B2
0 0x1780
1 0x1781
2 0x1782
3 0x1783
4 0x1784
5 0x1785
6 0x1786
7 0x1787
8 0x1788
9 0x1789
Red 0x178B
Green 0x17AE
Yellow 0x17B8
Blue 0x17A9
* 0x178A
# 0x178E
end codes
end remote
/etc/irexec.conf
begin prog = irexec remote = NOVA-HD-S2 button = Go config = /usr/local/bin/switchtv xbmc & \n end begin prog = irexec remote = NOVA-HD-S2 button = TV config = /usr/local/bin/switchtv vdr & \n end
/etc/vdr/remote.conf
LIRC.Info Guide LIRC.Audio Music LIRC.Pause Pause LIRC.Play Play LIRC.Stop Stop LIRC.Next Next LIRC.Prev Prev LIRC.FastFwd Forward LIRC.FastRew Rewind LIRC.Schedule Pictures LIRC.Recordings Videos LIRC.0 PrevCh 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-
Audio
Vorsichthalber auf die neueste Alsa Version mit dem Script "AlsaUpgrade-1.0.x-rev-1.17.sh" von hier upgraden und anschließend neu booten
Der User der vdr-sxfe startet muß(!) in der group "audio" sein
mit aplay sieht man wo das Device (hier am Beispiel HDMI) konfiguriert ist (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
/etc/asound.conf
pcm.!default {
type hw
card 0
device 3
}
/etc/vdr/setup.conf (vdr muß vorher gestoppt sein)
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
~/.xine/config
# Anzahl der Audiopuffer # numeric, default: 230 engine.buffers.audio_num_buffers:250 # Anzahl der Videopuffer # numeric, default: 500 engine.buffers.video_num_buffers:1000 engine.buffers.video_num_frames:22
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
Installation
apt-get update apt-get install xbmc
advancedsettings.xml (~/.xbmc/userdata)
<advancedsettings>
<moviestacking action="prepend">
<regexp>custom[0-9]*</regexp>
</moviestacking>
</advancedsettings>
Lircmap.xml (~/.xbmc/userdata)
<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>Next</skipplus>
<skipminus>Prev</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
#!/bin/bash
VDR2JPEG="/usr/local/bin/vdr2jpeg"
FFMPEG="/usr/bin/ffmpeg"
IMGUSE="VDR2JPEG"
VDRREC="/nas01/videos/vdr" # you may need to adjust this
TVFILE="../tvshow.nfo"
NFOFILE="001.nfo"
DVDTHUMB="../folder.jpg"
DVDOFFSETVDR="18000"
DVDOFFSETSEC="5000"
DVD_XRES="144"
DVD_YRES="176"
FANTHUMB="../fanart.jpg"
FANOFFSETVDR="20000"
FANOFFSETSEC="6000"
FAN_XRES="1280"
FAN_YRES="720"
CHECKRUNNING=$(/bin/pidof -x $0|wc -w)
if [ $CHECKRUNNING -gt 2 ];then
echo "$CHECKRUNNING"
echo "scanvdr already running ..."
exit 0
fi
if [ "$1" = "-new" ];then
echo "regenerating all files ..."
find $VDRREC -name "*.jpg" -exec rm {} \;
find $VDRREC -name "*.nfo" -exec rm {} \;
elif [ -n "$1" ];then
echo " Usage:"
echo " $0"
echo " - or -"
echo " $0 -new"
exit 0
fi
for i in $(find $VDRREC -name "info*" -type f)
do
VDRDIR=$(dirname $i)
VDRINFO=$(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)
COUNTRECTS=$(find .. -name "*.ts" | wc -l)
let COUNTREC=COUNTREC+COUNTRECTS
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 [ "$VDRINFO" = "info.vdr" ];then
VIDEOFILE="001.vdr"
else
VIDEOFILE="00001.ts"
fi
if [ -f $VDR2JPEG ] && [ "$IMGUSE" = "VDR2JPEG" ] && [ "$VDRINFO" = "info.vdr" ];then
if [ ! -f $DVDTHUMB ];then
echo "creating DVD thumbnails ..."
$VDR2JPEG -x $DVD_XRES= -y $DVD_YRES -f $DVDOFFSETVDR -r .
mv 000${DVDOFFSETVDR}.jpg $DVDTHUMB
fi
if [ ! -f $FANTHUMB ];then
echo "creating FANART thumbnails ..."
$VDR2JPEG -x $FAN_XRES= -y $FAN_YRES -f $FANOFFSETVDR -r .
mv 000${FANOFFSETVDR}.jpg $FANTHUMB
fi
elif [ -f $FFMPEG ];then
if [ ! -f $DVDTHUMB ];then
echo "creating DVD thumbnails ..."
$FFMPEG -i $VIDEOFILE -itsoffset $DVDOFFSETSEC -s ${DVD_XRES}x${DVD_YRES} -f image2 -vframes 1 -y temp.jpg
mv temp.jpg $DVDTHUMB
fi
if [ ! -f $FANTHUMB ];then
echo "creating FANART thumbnails ..."
$FFMPEG -i $VIDEOFILE -itsoffset $FANOFFSETSEC -s ${FAN_XRES}x${FAN_YRES} -f image2 -vframes 1 -y temp.jpg
mv temp.jpg $FANTHUMB
fi
fi
echo "---"
done