HDTV
Allgemein
HDTV ist Digitalfernsehen höherer Auflösung (High Definition Television). Im Gegensatz zum herkömmlichen Fernsehen (analog, DVB-S/C/T, DVD) mit seiner Auflösung von maximal 720×576 sichtbaren Punkten (PAL+SECAM) oder 720×480 sichtbaren Punkten (NTSC) kann bei HDTV die Auflösung maximal 1920×1080 Punkte (1080i) betragen. Das Bild könnte also 5 normale Fernseher füllen. Es ist bereits ein Nachfolger namens Ultra High Definition Video definiert, der allerdings nicht auf Heimkinos, sondern auf echte Kinos abzielt.
Folgende Auflösungen sind im HDTV-Standard definiert: 1080i (interlaced, Halbbilder, d.h. von Vollbildern werden abwechselnd die geraden und die ungeraden Zeilen übertragen) und 720p (1280×720 Punkte). Eine Zahl, die nach dem Buchstaben (i oder p) folgt, gibt die Anzahl der Bilder pro Sekunde an (zb. 720p50 --> 50 fps).
Verfügbare Sender
Leider gibt es zur Zeit nur einen einzigen frei empfangbaren HDTV-Sender in deutscher Sprache mit HDTV-Vollprogramm, der mit VDR über Satellit oder Kabel empfangen werden kann.
Astra - 19.2°Ost
Sendername | Transponder | Auflösung | Bitrate1 | Status | Beschreibung / Bemerkung | ||
---|---|---|---|---|---|---|---|
Frequenz | Pol. | Modulat. | |||||
ANIXE HD | 11302 MHz | h | DVB-S2 | 1080i50 | 7.5 MBit/s | aktiv | Vollprogramm (Serien, Filme & Sport, natives HDTV - kein hochskaliertes Filmmaterial). |
arte HD | 11362 MHz | h | DVB-S2 | 720p50 | 10 MBit/s | aktiv | Vollprogramm des altbekannten SDTV Senders arte (z. Zt. nur wenig natives HD-Material). |
PREMIERE HD | 11914 MHz | h | DVB-S2 | 1080i50 | 12 MBit/s | aktiv (kodiert) |
Vollprogramm des PayTV Anbieter Premiere (Spielfilme, Serien und vereinzelt Sportübertragungen alle natives HD). |
DISCOVERY HD | 11914 MHz | h | DVB-S2 | 1080i50 | 14 MBit/s | aktiv (kodiert) |
Vollprogramm des PayTV Anbieter Premiere (Dokumentationen von Discovery alle natives HD). |
ORF1 HD | 10832 MHz | h | DVB-S | 720p50 | 10 MBit/s | aktiv (kodiert) |
Vollprogramm des Österreichischen Rundfunks (wenig natives HD). |
EinsFestival HD | 12421 MHz | h | DVB-S | 720p50 | 11 MBit/s | aktiv | Showcases zu besonderen Ereignissen z. B. Weihnachten (22.12.2008 bis 1.1.2009) oder Ostern. Nun mit Endlosschleife (ca 4 min). |
ASTRA HD+ | 11302 MHz | h | DVB-S2 | 1080i50 | 9 MBit/s | aktiv | verschiedene HD-Trailer (Endlosschleife ca. 30 min). |
Simul HD | 11361 MHz | h | DVB-S2 | 720p50 | - | aktiv | HDTV Demokanal |
Premiere HD Promo | - | - | - | - | - | eingestellt | wurde zugunsten des HDTV-Regelprogramms, das per DVB-S2 gesendet wird, eingestellt. |
ProSieben HD | 12722 MHz | h | - | - | - | abgeschaltet | Vollprogramm von ProSieben - Testbetrieb beendet - Sendebetrieb wird voraussichtlich erst wieder ab 2010 aufgenommen. |
Sat1 HD | 12722 MHz | h | - | - | - | abgeschaltet | Vollprogramm von Sat1 - Testbetrieb beendet - Sendebetrieb wird voraussichtlich erst wieder ab 2010 aufgenommen. |
Anmerkungen: 1 - Durchschnittswerte von Linowsat
- Außer den aufgelisteten deutschsprachigen Sendern gibt es noch weitere von Canal+ und anderen PayTV-Anbietern (siehe channels.conf).
Hotbird - 13°Ost
- HD-Forum - 11013 MHz H - Trailerschleife
Pro7 HD, Sat.1 HD, Premiere HD, Anixe HD und arte HD
Hinweis: Der Testbetrieb von Pro7 HD und Sat.1 HD wurde bis voraussichtlich 2010 eingestellt!!
Anders als die ersten Testausstrahlungen von Pro7 und Sat.1 in HDTV, senden diese beiden Sender ihre aktuelle HDTV-Parallelausstrahlung nicht mehr über DVB-S sondern über DVB-S2. Dieses Format ist auf Hardwareseite inkompatibel zu DVB-S-TV-Karten. Dafür sind dann der aktuellste Developer-VDR mit Patchen nötig sowie der multiproto DVB-Treiber (noch nicht im Kernel und auch nicht absehbar wann er das je sein wird). HDTV über DVB-C kann mit den normalen DVB-C Karten empfangen werden.
Ein weiteres Hindernis für die Wiedergabe dieser HDTV-Ausstrahlungen ist, dass Pro7 HD, Sat.1 HD, Premiere HD, Anixe HD und arte HD nicht in MPEG2 sondern in MPEG4/H.264 senden. Dieses Videoformat ist bei der Decodierung deutlich rechenintensiver als MPEG-2 und somit vermutlich bei Softwaredekodierung nicht ruckelfrei auf einem Rechner mit weniger als 3 GHz wiederzugeben. Auch Hardware-Hersteller werden bei der Entwicklung von Chips, die H.264 in voller HD-Auflösung von 1920 × 1080 Bildpunkten wiedergeben können, vor größere Probleme gestellt, weswegen es momentan nur wenige Geräte (meist Standalone-Lösungen wie z. B. den Pace S810und den Humax PR-HD1000) für diesen Zweck gibt.
Was braucht mein VDR für HDTV?
Hardware-Anforderungen – Ideal
zusätzliche Anforderungen zum Wiedergeben der HDTV-Inhalte:
- ein schneller Rechner (z. B. Pentium IV ab 3 GHz oder Athlon64 ab 2 GHz). Sollen die HD-Inhalte nicht auf dem Rechner mit den DVB-Karten sondern über das Netzwerk auf einem anderen Rechner wiedergegeben werden, so gilt dies nur für den Client-Rechner und nicht für den Rechner mit TV-Karten.
- bei langsamen Rechnern ist die Verwendung von internen und externen Hardwaredekodern möglich - Übliche Hardwaredekoder sind:
- Reel-HDe (intern)
- Broadcom HDTV (intern)
- Popcorn Hour (standalone Player)
- eine VDPAU-fähige Grafikkarte
- Im Gegensatz zu DVB-S und DVB-S2 wird bei DVB-C HDTV von den herkömmlichen Tunern empfangen. Einen C2-Standard gibt es hier "noch" nicht. Ein Ausgabedevice muss dementsprechend AVI oder H.264 (MPEG4) unterstützen. Eine FF-Karte als Ausgabedevice scheidet deshalb aus. Der Weg führt also mehr oder weniger zwansläufig zur Reel-HDe oder einer VDPAU-Lösung(Nvidia Grafikkarte/ GPU auf Motherboard (8x00/ 9x00 Chipsatz))
Software
Anforderungen – Minimal
zum Aufnehmen und zum Streamen auf andere Rechner:
- Einfaches Aufnehmen einer HDTV-Ausstrahlung setzt bei neueren VDR-Versionen keine zusätzliche Software voraus. Wird eine Full-featured-DVB-Karte zum Aufnehmen verwendet, so ist Firmware-Version FD2623 oder neuer nötig, diese Firmware verhindert einen Absturz des ARM-Chips auf diesen Karten während des Empfangs von HD-Inhalten. Alternativ kann auch die Ausgabe der HD-Inhalte über die FF-Karte verhindert werden; dies geht z. B. durch Abspielen einer Nicht-HD-Aufnahme während der gesamten Aufnahmezeit oder idealerweise mit dem Hauptmenüeintrag "Suspend TV output", der vom Streamdev-Server-Plugin bereitgestellt wird.
- Streamen eines HDTV-Programms an einen HTTP- oder VDR-Client (lokal oder über das Netzwerk) setzt das Streamdev-Server-Plugin voraus.
Installation
Eine Anleitung für eine HDTV-fähige VDR-Installation ist unter OpenSUSE_VDR_DVB-S2 zu finden. Die Anleitung lässt sich auch auf andere Linuxdistributionen anwenden.
Erfolgreiche Kombinationen (Bitte ergänzen):
- vdr-1.3.43, streamdev aus CVS, P3 800 MHz Aufnahme + Gleichzeitiges streamen zu P4/2.8 GHz, Windows 2k, vlc-0.8
- vdr-1.3.22, streamdev-CVS-20050313, P3 800 MHz Aufnahme + Gleichzeitiges streamen zu P4/2.8 GHz, Windows 2k, vlc-0.81
- LinVDR0.7 mit MT-Patch 20050403, DarkAngels Kernel 2.6.10 -> funktionierendes Live-HDTV!
- VDR 1.3.28, streamdev-0.3.3-pre3-geni, xine-Plugin 0.7.4 und xine v0.99.3cvs unter Suse 9.2: funktioniert, wenn auch auf meinem System mit starkem Ruckeln (P4-2533).
- VDR 1.3.29, streamdev-0.3.3-pre3-geni, MPlayer 1.07 unter Debian 3.1 selbst kompiliert: Streamen von HDTV per TransportStream, im Zweifelsfall Protokoll mit in der URL angeben: mplayer http://vdr:3000/TS/90, d. h. der VDR-Rechner ist im Netzwerk mit dem Namen vdr ansprechbar, ansonsten IP-Adresse verwenden, Kanal 90 ist der HDTV-Sender, natürlich anpassen. So läuft HDTV auf meinen P4-3.2Ghz perfekt.
- VDR 1.4.0, vdr-xine 0.7.9, libxine1 1.1.1-1vdr1 und xine-ui 0.99.3-1.3: alles auf demselben Rechner (2x AthlonMP @2000 MHz) funktioniert ruckelfrei bei 1440x1024 (Canal+ HD) und 1920x1088 (Astra HD).
- VDR 1.4.0, vdr-xine-0.7.9, xine-lib-cvs-20060319194500, xine-ui-cvs-20060319194500, 1x AthlonXP2000, Stream in Datei speichern, danach abspielen, Canal+ und AstraHD meistens ruckelfrei, aber Artefakte.
- VDR 1.4.1, streamdev aus CVS, AMD Athlon XP 1800+, über 100Mbit-LAN oder 54MBit-WLAN an einen Windows XP Rechner streamen und mit VLC ansehen (Canal+ und AstraHD) mit Artefakten.
- VDR 1.4.2-1ctvdr2, streamdev-0.3.3-pre3-geni, gestreamed an Pentium M 1.6GHz, 100Mbit-LAN, VLC 0.85 (HD-Hit, Euro1080 HD-1) ohne Deinterlacing ruckelfrei, mit Deinterlacing Tonaussetzer.
- VDR 1.4.4-Toxic-Tonic Edition, streamdev-0.3.3-pre3-geni, VDR mit 733 MHz und nexus -s bzw. nova se2 streamed an Athlon64 3500+, 1Gbit-LAN, VLC 0.85 (Astra HD). Stream von Nexus mit Tonaussetzer und Artefakte, Stream von se2 ohne Probleme. Bei Deinterleacing mit Bob merkwürdiges Ruckeln, Deinterleacing anderer Art OK.
channels.conf für HDTV per Sat ASTRA 19.2E
: ->HDTV Deutsch arte HD;ZDFvision:11361:hC23M16O35S1:S19.2E:22000:6210=27:6221=deu,6222=fra:6230:0:11120:1:1011:0 ANIXE HD;BetaDigital:11302:hC910M2O35S1:S19.2E:22000:255:0;259=deu:0:0:4900:1:1007:0 ASTRA HD+;BetaDigital:11302:hC910M2O35S1:S19.2E:22000:511:0;515=deu:0:0:4901:1:1007:0 ORF 1 HD;ORF:10832:hC56M2O0S0:S19.2E:22000:1920:1921=deu,1922=eng;1923=deu:1925:D05,1702,1801:61920:1:1057:0 PREMIERE HD,PREM HD;PREMIERE:11914:hC910M2O35S1:S19.2E:27500:767:0;771=deu,772=eng:32:1830,1833,9C4,1801:129:133:6:0 DISCOVERY HD,DISC HD;PREMIERE:11914:hC910M2O35S1:S19.2E:27500:1023:0;1027=deu:32:1830,1833,9C4,1801:130:133:6:0 : ->HDTV Demokanal EinsFestival HD;ARD:12422:hC34O0S0:S19.2E:27500:1601:1602=deu;1606=deu:0:0:28396:1:1201:0 Simul HD;IRT:11361:hC23M5O35S1:S19.2E:22000:6410:6420=deu:0:0:11140:1:1011:0 : ->HDTV teilweise ausser Betrieb bis 2010 ProSieben HD;ProSiebenSat.1:12722:hC23M5O35S1:S19.2E:22000:255:0;259=deu:0:0:10200:1:1119:0 Sat1 HD;ProSiebenSat.1:12722:hC23M5O35S1:S19.2E:22000:511:0;515=deu:0:0:10201:1:1119:0 : ->HDTV Ausland CANAL+ HD;DIGITAL+:10847:vC56M2O0S0:S19.2E:22000:175:0:0:0:30162:1:1058:0 CANAL+ HI-TECH HD;CSAT:12522:vC23M5O35S1:S19.2E:22000:160:0;82=fra,83=eng:0:100:9201:1:1106:0 NATIONAL GEO HD;CSAT:12522:vC23M5O35S1:S19.2E:22000:161:0;86=fra:0:100:9202:1:1106:0 TF1 HD;CSAT:12522:vC23M5O35S1:S19.2E:22000:163:0;94=fra:0:100:9204:1:1106:0 CANAL HD TEST 3;IMEDIA:12522:vC23M5O35S1:S19.2E:22000:164+163:0;98=fra,99=eng:0:100:9220:1:1106:0 CINE PREMIER HD;CSAT:12580:vC23M5O35S1:S19.2E:22000:160:0;82=fra,83=eng:0:100:9301:1:1110:0 13EME RUE HD;CSAT:12580:vC23M5O35S1:S19.2E:22000:161:0;86=fra:0:100:9302:1:1110:0 DISNEY MAGIC HD;CSAT:12580:vC23M5O35S1:S19.2E:22000:162:0;90=fra,91=eng:0:100:9303:1:1110:0 M6 HD;CSAT:12580:vC23M5O35S1:S19.2E:22000:170:0;122=fra:0:100:9310:1:1110:0 FRANCE 2 HD;CSAT:12610:vC56O0S0:S19.2E:22000:171:124=fra;126=fra:0:0:9611:1:1112:0 TVP HD - test;TVP:10773:hC56O0S0:S19.2E:22000:517:700=pol;701=pol:0:0:17126:1:1053:0
Beispiel channels.conf für HDTV per DVB-C
PREMIERE HD,PREM HD;PREMIERE:346000:C0M256:C:6900:767:0;771=deu,772=eng:32:1830,1833,9C4,1801:129:133:6:0 DISCOVERY HD,DISC HD;PREMIERE:346000:C0M256:C:6900:1023:0;1027=deu:32:1830,1833,9C4,1801:130:133:6:0 ANIXE HD;BetaDigital:522000:C0M256:C:6900:1535:0;1539=deu:0:0:132:133:6:0
MPEG4-HDTV
Für den MPEG4-Stream über DVB-S braucht man ein gepatches szap für pmt/pat streaming (Siehe szap-pmt.diff), und viel Rechenpower. Nach aktuellen Informationen von Technotrend werden etwa im zweiten Quartal MPEG4-Hardwaredecoderkarten erwartet. Das sind die Nachfolgekarten der derzeitigen Premium 2300. Aufzeichnen geht aber bereits.
Premiere HD / DPC.TV11:11914:h:0:27500:767:772:129
Das aktuelle HDTV-Programm von Premiere wird über DVB-S2 gesendet und ist nicht mit einer DVB-S-Karte zu empfangen.
Auf HotBird gibt es einen H.264 Sender der mit DVB-S sendet
HD FORUM:11241:v:1:27500:33:36:13809
Hinweis: Der o.a Patch für szap ist in den aktuellen DVB-APPS schon integriert.
Installationsanleitung Ubuntu 9.04
Nvidia Installation
apt-get install build-essential /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
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
Firmware Installation
cd /usr/local/src apt-get install unrar -y cd /usr/local/src wget http://tevii.com/Tevii_linuxdriver_0815.rar unrar x Tevii_linuxdriver_0815.rar cp tevii_linuxdriver_0815/fw/dvb-fe-cx24116.fw /lib/firmware/dvb-fe-cx24116-1.23.86.1.fw ln -s /lib/firmware/dvb-fe-cx24116-1.23.86.1.fw /lib/firmware/dvb-fe-cx24116.fw
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
Xine-VDPAU
cd /usr/local/src svn co svn://jusst.de/xine-vdpau cd xine-vdpau ./autogen.sh ./configure --prefix=/usr 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-20090412200000.tar.bz2 tar xivf xine-ui-cvs-20090412200000.tar.bz2 cd xine-ui ./autogen.sh --prefix=/usr --enable-vdr-keys make make install
VDR 1.7.7
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.7.tar.bz2 tar xivf vdr-1.7.7.tar.bz2 wget http://www.zulu-entertainment.de/page/klick.php?d=VDR+Extensions+Patch tar xivf VDR-Extensions-Patch-72.tar.bz2 cd vdr-1.7.7 patch -p1 < ../VDR-Extensions-Patch-72/vdr-1.7.7_extensions.diff mv Make.config.template Make.config
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 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 = /media/video 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 ### VDR-Extensions: # Comment the patches you don't need # DVDCHAPJUMP needs DVDARCHIVE enabled # DVDARCHIVE needs LIEMIEXT enabled # SORTRECORDS needs LIEMIEXT enabled # you can only enable MENUORG or SETUP #ANALOGTV = 1 #ATSC = 1 #CHANNELSCAN = 1 #CMDRECCMDI18N = 1 #CMDSUBMENU = 1 #CUTTERLIMIT = 1 #CUTTERQUEUE = 1 #CUTTIME = 1 #DDEPGENTRY = 1 #DELTIMESHIFTREC = 1 #DOLBYINREC = 1 #DVBSETUP = 1 #DVDARCHIVE = 1 #DVDCHAPJUMP = 1 #DVLFRIENDLYFNAMES = 1 #DVLRECSCRIPTADDON = 1 #DVLVIDPREFER = 1 #EM84XX = 1 #GRAPHTFT = 1 #HARDLINKCUTTER = 1 #JUMPPLAY = 1 #LIEMIEXT = 1 #LIRCSETTINGS = 1 #LIVEBUFFER = 1 #LNBSHARE = 1 #MAINMENUHOOKS = 1 #MENUORG = 1 #NOEPG = 1 #OSDMAXITEMS = 1 #PARENTALRATING = 1 #PINPLUGIN = 1 #PLUGINAPI = 1 #PLUGINMISSING = 1 #PLUGINPARAM = 1 #ROTOR = 1 #SETTIME = 1 #SETUP = 1 #SOFTOSD = 1 #SOURCECAPS = 1 #SORTRECORDS = 1 #STREAMDEVEXT = 1 #TIMERCMD = 1 #TIMERINFO = 1 #TTXTSUBS = 1 #VALIDINPUT = 1 #VOLCTRL = 1 #WAREAGLEICON = 1 #YAEPG = 1 ### You don't need to touch the following: ifdef DVBDIR INCLUDES += -I$(DVBDIR)/include endif ifdef ANALOGTV DEFINES += -DUSE_ANALOGTV endif ifdef ATSC DEFINES += -DUSE_ATSC endif ifdef CHANNELSCAN DEFINES += -DUSE_CHANNELSCAN endif ifdef CMDRECCMDI18N DEFINES += -DUSE_CMDRECCMDI18N endif ifdef CMDSUBMENU DEFINES += -DUSE_CMDSUBMENU endif ifdef CUTTERLIMIT DEFINES += -DUSE_CUTTERLIMIT endif ifdef CUTTERQUEUE DEFINES += -DUSE_CUTTERQUEUE endif ifdef CUTTIME DEFINES += -DUSE_CUTTIME endif ifdef DDEPGENTRY DEFINES += -DUSE_DDEPGENTRY endif ifdef DELTIMESHIFTREC DEFINES += -DUSE_DELTIMESHIFTREC endif ifdef DOLBYINREC DEFINES += -DUSE_DOLBYINREC endif ifdef DVBSETUP DEFINES += -DUSE_DVBSETUP endif ifdef DVDARCHIVE ifdef LIEMIEXT DEFINES += -DUSE_DVDARCHIVE endif endif ifdef DVLRECSCRIPTADDON DEFINES += -DUSE_DVLRECSCRIPTADDON endif ifdef DVLVIDPREFER DEFINES += -DUSE_DVLVIDPREFER endif ifdef DVLFRIENDLYFNAMES DEFINES += -DUSE_DVLFRIENDLYFNAMES endif ifdef EM84XX DEFINES += -DUSE_EM84XX endif ifdef GRAPHTFT DEFINES += -DUSE_GRAPHTFT endif ifdef HARDLINKCUTTER DEFINES += -DUSE_HARDLINKCUTTER endif ifdef JUMPPLAY DEFINES += -DUSE_JUMPPLAY endif ifdef LIEMIEXT DEFINES += -DUSE_LIEMIEXT endif ifdef LIRCSETTINGS DEFINES += -DUSE_LIRCSETTINGS endif ifdef LIVEBUFFER DEFINES += -DUSE_LIVEBUFFER endif ifdef LNBSHARE DEFINES += -DUSE_LNBSHARE endif ifdef MAINMENUHOOKS DEFINES += -DUSE_MAINMENUHOOKS endif ifdef MENUORG DEFINES += -DUSE_MENUORG else ifdef SETUP DEFINES += -DUSE_SETUP endif endif ifdef NOEPG DEFINES += -DUSE_NOEPG endif ifdef OSDMAXITEMS DEFINES += -DUSE_OSDMAXITEMS endif ifdef PARENTALRATING DEFINES += -DUSE_PARENTALRATING endif ifdef PINPLUGIN DEFINES += -DUSE_PINPLUGIN endif ifdef PLUGINMISSING DEFINES += -DUSE_PLUGINMISSING endif ifdef PLUGINPARAM DEFINES += -DUSE_PLUGINPARAM endif ifdef ROTOR DEFINES += -DUSE_ROTOR endif ifdef SETTIME DEFINES += -DUSE_SETTIME endif ifdef SOFTOSD DEFINES += -DUSE_SOFTOSD endif ifdef SOURCECAPS DEFINES += -DUSE_SOURCECAPS endif ifdef SORTRECORDS ifdef LIEMIEXT DEFINES += -DUSE_SORTRECORDS endif endif ifdef STREAMDEVEXT DEFINES += -DUSE_STREAMDEVEXT endif ifdef TIMERCMD DEFINES += -DUSE_TIMERCMD endif ifdef TIMERINFO DEFINES += -DUSE_TIMERINFO endif ifdef TTXTSUBS DEFINES += -DUSE_TTXTSUBS endif ifdef VALIDINPUT DEFINES += -DUSE_VALIDINPUT endif ifdef VOLCTRL DEFINES += -DUSE_VOLCTRL endif ifdef WAREAGLEICON DEFINES += -DUSE_WAREAGLEICON endif ifdef YAEPG DEFINES += -DUSE_YAEPG endif
Vorbereitung:
mkdir /media/video mkdir -p /usr/lib/vdr/plugins mkdir -p /usr/lib/vdr/scripts mkdir -p /etc/vdr/plugins make make plugins make install cp -a svdrpsend.pl /usr/bin cp *.conf /etc/vdr/
Xineliboutput 1.0.4
cd /usr/local/src/vdr-1.7.7/PLUGINS/src apt-get install libextractor-dev wget http://heanet.dl.sourceforge.net/sourceforge/xineliboutput/vdr-xineliboutput-1.0.4.tar.bz2 tar xivf vdr-xineliboutput-1.0.4.tar.bz2 mv xineliboutput-1.0.4 xineliboutput cd xineliboutput make make install mkdir -p /etc/vdr/plugins/xineliboutput cp *.mpg /etc/vdr/plugins/xineliboutput/ cd ../../../ make plugins make install
Scripts
/var/bin/runvdr
export LANG=de_DE export LC_COLLATE=de_DE PATH=/usr/local/bin:$PATH VDRPRG="/usr/bin/vdr" VDRCMD="/usr/bin/vdr -c /etc/vdr -E /var/vdr -l 3 \ -s /var/bin/vdrpoweroff.sh \ -P'xineliboutput -l none -r 37890 -p' \ -u root \ $*" 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
/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 & /usr/local/bin/switchtv init ;; 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
/usr/local/bin/switchtv
#!/bin/bash RUNAS="vdr" run_vdr() { killall -9 vdr-sxfe kill_xinit killall xbmc killall xbmc.bin su - $RUNAS -c "/usr/bin/xinit -e /usr/bin/vdr-sxfe --video=vdpau --post tvtime:method=use_vo_driver --audio=alsa --fullscreen --reconnect --lirc $@ &" } run_xbmc() { killall -9 vdr-sxfe kill_xinit /usr/local/bin/scanvdr & su - $RUNAS -c "/usr/bin/xinit -e /usr/share/xbmc/xbmc.bin -fs $@ &" } kill_xinit() { /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" = "init" ];then sleep 5 run_vdr elif [ "$1" = "kill" ];then killall -9 vdr-sxfe killall -9 xbmc killall -9 xbmc.bin elif [ -z "$1" ];then if [ "`ps -ef | grep -v grep | grep 'vdr-sxfe'`" != "" ];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
Lirc
/etc/lirc/hardware.conf
# /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="" <pre> ==== /etc/lircd.conf ==== <pre> #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 Rewind 0x00A8 SkipBack 0x0195 Play 0x00CF Pause 0x0077 Stop 0x0080 Fwdwind 0x00D0 SkipFwd 0x0197 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
VDR Config
/etc/vdr/remote.conf:
KBD.Up 00000000001B5B41 KBD.Down 00000000001B5B42 KBD.Menu 000000000000006D KBD.Ok 000000000000000D KBD.Back 000000000000007F KBD.Left 00000000001B5B44 KBD.Right 00000000001B5B43 KBD.Red 000000001B5B5B41 KBD.Green 000000001B5B5B42 KBD.Yellow 000000001B5B5B43 KBD.Blue 000000001B5B5B44 KBD.0 0000000000000030 KBD.1 0000000000000031 KBD.2 0000000000000032 KBD.3 0000000000000033 KBD.4 0000000000000034 KBD.5 0000000000000035 KBD.6 0000000000000036 KBD.7 0000000000000037 KBD.8 0000000000000038 KBD.9 0000000000000039 KBD.Info 0000000000000069 KBD.FastFwd 0000001B5B31377E KBD.FastRew 000000001B5B5B45 KBD.Power 0000000000000070 KBD.Volume+ 0000001B5B32347E KBD.Volume- 0000001B5B32337E KBD.Mute 0000001B5B32317E KBD.User7 0000001B5B31387E KBD.User8 0000001B5B31397E KBD.User9 0000001B5B32307E XKeySym.Up Up XKeySym.Down Down XKeySym.Menu m XKeySym.Ok Return XKeySym.Back BackSpace XKeySym.Left Left XKeySym.Right Right XKeySym.Red F1 XKeySym.Green F2 XKeySym.Yellow F3 XKeySym.Blue F4 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.Info i XKeySym.Pause space XKeySym.FastFwd F6 XKeySym.FastRew F5 XKeySym.Power p XKeySym.Volume+ F12 XKeySym.Volume- F11 XKeySym.Mute F10 XKeySym.User7 F7 XKeySym.User8 F8 XKeySym.User9 F9 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.Play Play LIRC.Pause Pause LIRC.Stop Stop LIRC.Record Rec LIRC.Power Power LIRC.Volume+ Vol+ LIRC.Volume- Vol- LIRC.Channel+ Ch+ LIRC.Channel- Ch- LIRC.Mute Mute