PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Fernsehen mit EPG



palm-man
08.04.04, 14:47
Hallo,

dieser Tipp zeigt euch, wie ihr tvtime und Nextview EPG so konfiguriert, dass ihr unter tvtime immer die aktuellen Daten des EPGs (Elektronischer Programmführer) habt. Wenn ihr also mit eurer TV-Karte ins Ferne schaut, bekommt ihr zusätzliche Informationen zum laufenden Programm (Was läuft? Was kommt danach? Um was gehts?).

Wie funktionierts?

Ihr braucht zuerst die beiden Programme tvtime (http://tvtime.net) und Nextview EPG (http://nxtvepg.sf.net). Ladet sie euch runter, installiert sie, oder installiert sie aus dem Repository eurer Distribution.

Für Debian heißt das:


apt-get install tvtime nxtvepg


Nun müsst ihr tvtime einmal starten. Seht nach, ob ihr ein Fernsehbild seht und macht einen Sendersuchlauf: drückt die rechte Maustaste, wählt "Channel management" und dann "Scan channels for signal". Eventuell müsst ihr noch die Frequenztabelle richtig einstellen. Ihr bekommt dann im Verzeichnis .tvtime eures Homeverzeichnisses eine Datei stationlist.xml. Dort drin stehen alle Sender, die tvtime beim Scan gefunden hat.

Nun zum nächsten Programm: Nextview EPG. Startet es mit dem Befehl "nxtvepg", wählt "Configure" -> "Provider Scan" und dann "Start scan". Lasst Nextview EPG durchlaufen, bis er einen Provider für das EPG in eurem Kabel entdeckt. In Deutschland sind das Kabel 1 und RTL II.

Dann sollte Nextview EPG in der Statuszeile (unten) anzeigen, wie weit er mit der Datenbank bereits ist. Auch das Fenster, das anzeigt, was gerade läuft, sollte sich mit Sendungen füllen.

Somit habt ihr dann erstmal einen funktionierenden EPG und ein funktionierendes Fernsehprogramm.

Exportiert jetzt den EPG als XML-Datei: dazu wählt ihr in Nextview EPG "Control" -> "Export as XMLTV...". Als Speicherort wählt ihr aus eurem Home-Verzeichnis das Verzeichnis .tvtime und als Dateinamen "listings.xml".

Jetzt müsst ihr tvtime noch den Weg zeigen zu den EPG-Daten. Das macht ihr so (und als Benutzer):


tvtime-configure --xmltv=~/.tvtime/listings.xml


Öffnet nun im Editor eurer Wahl die Dateien listings.xml und stationlist.xml. In der Datei listings.xml steht euer EPG. Ganz oben in der Datei stehen die Kanäle. Ein Eintrag sieht so aus:


<channel id="CNI0DC1">
<display-name>ARD</display-name>
</channel>

Dieser Sender heißt also "ARD" ;)

In der Datei stationlist.xml stehen die Sender drin. Ändert nun die Sendernamen zu den Äquivalenten aus der listings.xml-Datei. Dafür ist es nützlich, tvtime zu starten und zu sehen, an welcher Postion sich welcher Sender befindet. (Sender wechselt ihr in tvtime mit den Hoch-Runter-Tasten, siehe auch "man tvtime" ;))
Der Eintrag für ARD sollte dann so ähnlich wie hier aussehen:


<station name="ARD" active="1" position="7" band="VHF E2-E12" channel="E7" finetune="0" norm="PAL"/>

(Ihr ändert nur den Namen, alles andere lasst ihr, wie's ist.)

Jetzt könnt ihr tvtime starten und schon mal in den Genuss eines elektronischen Programmführers kommen. Immer, wenn ihr den Sender wechselt, wird angezeigt, wie der Sender heißt, wie spät es gerade ist, was gerade läuft, von wann bis wann die aktuelle Sendung geht und was als nächstes auf diesem Sender kommt. Wenn in der rechten unteren Ecke ein "i" auftaucht, heißt das, es gibt weitere Informationen zur Sendung. Drückt dann mit der linken Maustaste auf das Fernsehbild: angezeigt wird dann, um was es geht.

Tvtime lässt sich auch komplett über die Tastatur bedienen, schaut dazu in die Man-Page. (Oder ihr konfiguriert euch eine Fernbedienung mit LIRC :))

Nun ist es sehr aufwendig, die Daten des EPGs manuell auf dem aktuellen Stand zu halten -- das könnt ihr automatisieren :)

Schritt eins dazu ist, beim Start eures Computers Nextview EPG als Daemon zu starten. Es gibt in eurem Linux-System ein Shellscript, das bei jedem Start ausgeführt wird. Bei Debian heißt das /etc/init.d/bootmisc.sh. Fügt an diese Datei folgende Zeilen an:


# EPG
su benutzername -c "/usr/bin/nxtvepg -daemon"

(Statt "benutzername" wählt ihr natürlich den Benutzername, unter dem ihr Nextview EPG laufen lassen wollt. Nehmt am besten den Benutzer, mit dem ihr Nextview EPG bereits einmal konfiguriert habt.)

Nach jedem Start läuft jetzt das Programm im Hintergrund und aktualisiert die EPG-Daten.

Über einen Cronjob müssen wir nun stündlich, täglich, oder wie ihr wollt, die EPG-Daten ins XML-Format konvertieren.

Erstellt euch dazu ein Shellscript und speichert es als "update-epg" im Verzeichnis .tvtime eures Homeverzeichnisses:


#!/bin/bash
/usr/bin/nxtvepg -provider d92 -dump xml > /home/benutzername/.tvtime/listings.xml

("benutzername" ersetzt ihr genauso wie oben. Im Beispiel ist der Provider Kabel 1. Die drei Zeichen identifizieren den Provider. "man nxtvepg" sagt:


-provider CNI
Select a provider by its hexadecimal CNI (Country and Network Iden-
tifier), e.g. -provider d92 for Kabel1. You can find out the
provider's CNI during a provider scan or from the database file
names. Use the code FF for the merged database (in the last used
configuration as saved in the rc/ini file).

Ihr könnt also auch "FF" wählen.)
Gebt dem Shellskript Ausführungsrechte: "chmod +x ~/.tvtime/update-epg".

Jetzt legen wir einen Cron-Job an, der dieses Shellskript stündlich startet. Am einfachsten geht das wohl mit dem Programm KCron (dabei bei KDE). Startet es als Benutzer, wählt "Bearbeiten" -> "Neu...". Tragt als Kommentar ein: "Update EPG", wählt als Programm das Shellskript "update-epg" aus dem tvtime-Verzeichnis. Macht dann ein Häkchen hin bei "Jeden Tag ausführen", wählt die Stunden aus, in denen das Skript ausgeführt werden soll, und wählt als Startminute "0". (Oder lasst es auch häufiger oder seltener laufen.)

Von nun an solltet ihr immer die aktuellen EPG-Daten in tvtime zur Verfügung haben.

Wenn ihr in tvtime fern seht und den Sender wechselt, kann Nextview EPG seine Daten nicht mehr aktualisieren. Es wird aber weiter arbeiten, wenn ihr den Sender nach eurer TV-Session wieder zurückstellt auf euren EPG-Provider.

Viel Spaß bei Fernsehen! :)

K@sperl
12.04.04, 21:08
Wenn ihr in tvtime fern seht und den Sender wechselt, kann Nextview EPG seine Daten nicht mehr aktualisieren. Es wird aber weiter arbeiten, wenn ihr den Sender nach eurer TV-Session wieder zurückstellt auf euren EPG-Provider.
Heißt das, daß ich jedesmal, wenn ich tvtime beende, vorm beenden den Sender auf Kabel1 stellen muß?

palm-man
12.04.04, 21:44
Heißt das, daß ich jedesmal, wenn ich tvtime beende, vorm beenden den Sender auf Kabel1 stellen muß?

Nein, das macht Nextview EPG selbst. Bei mir war's sogar so: nach einer kurzen Zeit wechselte der Sender in tvtime auf Kabel 1; der Daemon hatte also nicht bemerkt, dass ein anderes Programm auf die Videoschnittstelle zugreift. (Laut Internetseite sollte Nextview EPG das eigentlich merken) Ich bevorzuge es daher momentan, tvtime über ein Shellscript zu starten:


#!/bin/bash
nxtvepg -daemonstop
tvtime
nxtvepg -daemon

Das beendet zuerst den Nextview-EPG-Daemon, startet tvtime und wenn du fertig bist mit fernsehen, startet es den Daemon wieder.

K@sperl
12.04.04, 22:00
Besten Dank, funktioniert super, denn bis jetzt hat tvtime auch immer auf Kabel1 automatisch umgeschaltet :)

Toff
13.04.04, 17:46
Besten Dank, funktioniert super, denn bis jetzt hat tvtime auch immer auf Kabel1 automatisch umgeschaltet :)
Danke dir, genialer Guide!

CU
Toff