Als Kunde des A1 IPTV - Angebotes bekommt man ein A1 DSL - Modem samt
einer A1 TV-Box. Diese Kombination funktioniert natürlich einwandfrei.
Möchte man den Funktionsumfang erweitern und beispielsweise eine MINIX
NEO - Box als Streaming Client betreiben, so bietet sich hier die
bekannte Software "KODI" an, die für alle möglichen Hardwareplattformen
und Betriebssysteme erhältlich ist.
TV-Variante ohne Server, ohne Aufnahme und Timeshift
Die
A1 TV - Box kann man direkt gegen die MINIX Box ersetzen. Auf der
Mini-Box läuft ein Android Betriebssystem. Unter kodi.tv kann man sich
den Client herunterladen und auf der Mini Box installieren. Dann ist
noch unter
SYSTEM ->
STETTINS ->
ADDONS ->
PVR clients auszuwählen.
Dort findet man den
PVR IPTV Simple Client der zu installieren
ist. Unter Konfiguration ist der Pfad zu einer .m3u - Liste anzugeben.
Die m3u Liste sollte einfacher weise in einem lokalen Ordner (z.Bsp.
Downloads) abgelegt werden.
Die .m3u - Datei beinhaltet die IP-Adressen mit den Streaming-Links und Sendernamen und sieht für die Basissender von A1 so aus:
[c]#EXTM3U
## A1TV_Basis, Stand: Nov. 2015
## KODI
#EXTINF:-1 tvg-num="1" tvg-logo="609",ORF eins
rtp://@239.2.16.1:8208
#EXTINF:-1 tvg-num="2" tvg-logo="625",ORF 2-W
rtp://@239.2.16.2:8208
#EXTINF:-1 tvg-num="3" tvg-logo="671",ATV
rtp://@239.2.16.3:8208
#EXTINF:-1 tvg-num="4" tvg-logo="4",PULS 4
rtp://@239.2.16.4:8208
#EXTINF:-1 tvg-num="5" tvg-logo="227",Servus TV
rtp://@239.2.16.11:8208
#EXTINF:-1 tvg-num="6" tvg-logo="5",SAT.1 Austria
rtp://@239.2.16.5:8208
#EXTINF:-1 tvg-num="7" tvg-logo="7",ProSieben Austria
rtp://@239.2.16.7:8208
#EXTINF:-1 tvg-num="9" tvg-logo="6",RTL Austria
rtp://@239.2.16.6:8208
#EXTINF:-1 tvg-num="10" tvg-logo="75",A1 TV Plus-Info
rtp://@239.2.16.10:8208
#EXTINF:-1 tvg-num="14" tvg-logo="672",ATV 2
rtp://@239.2.16.91:8208
#EXTINF:-1 tvg-num="18" tvg-logo="574",Das Erste
rtp://@239.2.16.16:8208
#EXTINF:-1 tvg-num="19" tvg-logo="642",ZDF
rtp://@239.2.16.17:8208
#EXTINF:-1 tvg-num="22" tvg-logo="611",ORF III
rtp://@239.2.16.29:8208
#EXTINF:-1 tvg-num="23" tvg-logo="578",3sat
rtp://@239.2.16.21:8208
#EXTINF:-1 tvg-num="27" tvg-logo="612",ORF SPORT +
rtp://@239.2.16.78:8208
#EXTINF:-1 tvg-num="34" tvg-logo="709",gotv
rtp://@239.2.16.36:8208
#EXTINF:-1 tvg-num="66" tvg-logo="617",ORF 2-B
rtp://@239.2.16.65:8208
#EXTINF:-1 tvg-num="67" tvg-logo="618",ORF 2-K
rtp://@239.2.16.66:8208
#EXTINF:-1 tvg-num="68" tvg-logo="619",ORF 2-NÖ
rtp://@239.2.16.67:8208
#EXTINF:-1 tvg-num="69" tvg-logo="620",ORF 2-OÖ
rtp://@239.2.16.68:8208
#EXTINF:-1 tvg-num="70" tvg-logo="621",ORF 2-S
rtp://@239.2.16.69:8208
#EXTINF:-1 tvg-num="71" tvg-logo="622",ORF 2-St
rtp://@239.2.16.70:8208
#EXTINF:-1 tvg-num="72" tvg-logo="623",ORF 2-T
rtp://@239.2.16.71:8208
#EXTINF:-1 tvg-num="73" tvg-logo="624",ORF 2-V
rtp://@239.2.16.72:8208
#EXTINF:-1 tvg-num="92" tvg-logo="724",Melodie TV
rtp://@239.2.16.37:8208
#EXTINF:-1 tvg-num="94" tvg-logo="738",Bibel TV
rtp://@239.2.16.81:8208
#EXTINF:-1 tvg-num="95" tvg-logo="725",K-TV
rtp://@239.2.16.82:8208
#EXTINF:-1 tvg-num="105" tvg-logo="726",RTS Sat
rtp://@239.2.16.63:8208
#EXTINF:-1 tvg-num="120" tvg-logo="719",Okto
rtp://@239.2.16.34:8208
#EXTINF:-1 tvg-num="121" tvg-logo="85",Schau TV
rtp://@239.2.16.83:8208
#EXTINF:-1 tvg-num="122" tvg-logo="86",RT24
rtp://@239.2.16.84:8208
#EXTINF:-1 tvg-num="123" tvg-logo="87",P3 TV
rtp://@239.2.16.85:8208
#EXTINF:-1 tvg-num="124" tvg-logo="88",WNTV
rtp://@239.2.16.86:8208
#EXTINF:-1 tvg-num="125" tvg-logo="89",LT1
rtp://@239.2.16.87:8208
#EXTINF:-1 tvg-num="127" tvg-logo="91",KT1
rtp://@239.2.16.89:8208
#EXTINF:-1 tvg-num="128" tvg-logo="92",N1
rtp://@239.2.16.90:8208
#EXTINF:-1 tvg-num="129" tvg-logo="142",Kärnten TV
rtp://@239.2.16.112:8208
#EXTINF:-1 tvg-num="130" tvg-logo="143",Tirol TV
rtp://@239.2.16.109:8208
#EXTINF:-1 tvg-num="132" tvg-logo="141",HT1
rtp://@239.2.16.114:8208
#EXTINF:-1 tvg-num="133" tvg-logo="211",Mühlviertel TV
rtp://@239.2.16.113:8208[/c]
Jetzt muss nur mehr "Settings" -> "TV" der "Enabled" Button
gecheckt werden und die Wiedergabe der TV-Kanäle sollte funktionieren.
Mit dieser Methode ist stellt die Android Box einen IPTV Client dar, der
die Streaming Links direkt abspielt. Da kein Server im Hintergrund
läuft, ist es auch nicht möglich Timeshift oder Aufnahmen von Sendungen
zu realisieren.
TV - Variante mit Server, Timeshift, EPG und Aufnahme
Um diese Funktionen zu erhalten, muss in heimische Netzwerk ein IPTV
Server integriert werden. In meinem Fall habe ich einen Raspberry Pi2
für diesen Zweck konfiguriert.
Folgende Komponenten benötigen wir dazu:
- Raspberry Pi2 (an das heimische Netzwerk angeschlossen)
- Micro SD Karte mit 8GB
- eine externe Festplatte oder USB-Stick als Speicher für die Aufnahmen
- das Softwareimage XBIAN und einen Imageextractor
- (für den Mac gibt´s diese Version: ApplePi-Baker)
Ist
alles heruntergeladen, so beginnt man mit dem Extrahieren des Images
auf die Speicherkarte. Dazu startet man die Software win32diskimager.exe
und wählt den Pfad zur Image-Datei. (die nennt sich in diesem Fall:
XBian_Latest_rpi2.img). Dann ist die Speicherkarte einzulegen und der
zugeordnete Laufwerksbuchstabe auszuwählen. Danach kann der
Schreibvorgang mit "Write" gestartet werden. ACHTUNG: Das gewählte
Laufwerk wird mit dem Image ausgestattet. Hier unbedingt sichergehen,
dass nicht ein falsches Laufwerk ausgewählt wird. Nach ein paar Minuten
ist die SD-Karte fertig beschrieben und kann in den Raspberry PI
eingesteckt werden.
Jetzt kann man den Raspberry PI an einen
Monitor, Keyboard, LAN und per Micro-USB an eine 5V/2A Versorgung
anschließen. Er wird jetzt booten. Es startet das Script: raspi-config,
das bequem mit dem Keyboard bedient werden kann. Hier wird als erstes
der tvheadend - Server installiert:
Zunächst wählt man "Packages" aus und bestätigt.
dann scrollt man bis zur Kategorie "video" und bestätigt wiederum.
hier ist nun tvheadend auf "Yes" zu setzen und wieder zu bestätigen.
Jetzt beginnt der Download des Paketes und die anschließende
Installation. Ist der Prozess beendet, so ist das raspi-config script zu
beenden und in die bash zu gehen. Der default Login lautet:
xbian und das Passwort:
raspberry
Zunächst sind noch alle Updates und Upgrades durchzuführen:
sudo apt-get update
sudo apt-get upgrade
Als
nächstes macht es noch Sinn, die IP Adresse des Raspberry PI zu kennen,
die er vom DHCP Server des Routers zugewiesen bekommen hat. Die müssen
wir ja wissen, wenn wir auf den TV-Server Zugriff haben wollen. Dazu
gibt man einfach folgendes ein:
ifconfig
Als Antwort erhält man dann folgende Infos zum Ethernet - Anschluss. In diesem Fall eth0:
Wie man sieht, ist in diesem Beispiel die Adresse 10.0.2.15
zugewiesen worden. Mit dieser Information können wir den Raspberry Pi
nun neu starten und an einem Client-Computer mit dem Setup von TVHeadend
fortfahren.
sudo reboot
Nach dem Neustart sollte
der Raspberry tvheadend-Server jetzt auf einem Client-PC erreichbar
sein. Dazu öffnet man einen Webbrowser und gibt in der Adresszeile
folgende Adresse ein: http://10.0.2.15:9981
Jetzt muss folgendes zu sehen sein:
Wir suchen und klicken auf den TAB "Konfiguration". Hier geben wir ein
paar allgemeine Einstellungen ein: den Servernamen (bei mir hier einfach
Tvheadend); den Ansichtsmodus stellt man auf "Experte". Die restlichen
Einstellung belässt man auf default. Unter Spracheinstellungen ist
"German" zu wählen. (oder was auch immer gewünscht wird). Die
Webbenutzeroberfläche ist im default Modus auch ganz schön. Wer auch noch
Senderlogos haben will, der stellt unter "Picon" wie folgt ein:
Nach all den Einstellungen nicht vergessen auf "Speichern" zu klicken.
Jetzt kommt die eigentliche Arbeit: Das Editieren der Senderliste.
Hierzu erstellt man als erstes ein "Netzwerk". Unter den Tabs: Konfiguration -> DVB-Inputs -> Netzwerke legen wir ein neues "Netzwerk" (eigentlich TV-Netzwerk) an.
Mit "Hinzufügen" öffnet sich ein Fenster in dem man "
IPTV Network"
auswählt. Bestätigt man das so öffnet sich ein weiteres Fenster. Hier
nimmt man ein paar wenige Einstellungen vor. Sinnvoller Weise benennen
wir das Netzwerk
A1TV.
Mit "Speichern" werden die Einstellungen abgeschlossen. Jetzt klickt man
auf den TAB "Muxes". Hier müssen alle Sender angelegt werden. Diese
Arbeit muss man sich einmal antun. (Es gibt dann aber die Möglichkeit,
über die Konsole die config-Dateien vom Server zu sichern - dazu später
aber mehr)
In dem Bild ist die fertige Mux-Tabelle zu sehen. Mit "Hinzufügen" wird
ein neuer "MUX" (Signalquelle) hinzugefügt. Hier wählt man aus den
verfügbaren Netzwerken A1TV (das, das wir vorher angelegt haben) aus.
Im sich jetzt öffnenden Fenster ist unter URL die Streaming - Adresse
vom jeweiligen Sender einzugeben (hier z. Bsp.: rtp://239.2.16.21:8202
für 3sat). In Mux-Name ist der Sendername einzugeben.
Danach auf "
Speichern" drücken und mit "
Hinzufügen"
den nächsten Sender konfigurieren. Hat man die mühevolle Arbeit dann
getan und alle Sender eingegeben, so müssen die Muxes einem
Service/Kanal zugeordnet werden. Das ist die eigentliche Senderliste,
die der Server dann den Clients zur Verfügung stellt. (Ein MUX muss
jetzt nicht unbedingt eine IP-Streaming Adresse sein, sondern kann auch
aus einem Sat-, oder DVB-T Empfänger kommen. Da hier in einer
Signalfrequenz mehrere TV oder Radioprogramme per Multiplexverfahren
(eben MUX) übertragen werden. Darum ist die Bezeichnung MUX für
IP-Adressen hier vielleicht etwas verwirrend). Das Zuordnen der Services
geschieht im TAB "
Services". Hier einfach auf "
Services zuordnen" -> "
alle Services zuordnen" klicken und warten bis der Prozess abgeschlossen ist. Nun kann ein erster Test erfolgen.
Links neben den Kanalnamen ist ein kleiner "Play-Button" zu sehen. Ist
das VLC-Player-Plugin im Browser installiert, so wird beim Anklicken des
Buttons ein Wiedergabefenster geöffnet, das den aktuellen Stream
anzeigt.
EPG und Senderlogos
Weiter geht´s beim Konfigurieren nun mit
dem elektronischen Programm Guide (EPG). Hier muss ein wenig getrickst
werden. Aus diversen Foren und Anleitungen im Web habe ich eine für mich
funktionierende Konfiguration zusammengestellt. Wir beginnen im
Tvheadend-Server unter
Konfiguration ->
Kanal/EPG ->
EPG-Grabber Module mit den Einstellungen.
Hier ist der interne Grabber "XMLTV: Sweden (TVZon)" zu aktivieren. Danach wieder auf
Speichern drücken.
Danach
müssen wir wieder auf den Raspberry PI in die Konsole. Man macht das
entweder vom Client-PC aus über ein Terminal (z. Bsp. Putty) oder direkt
am Raspberry PI, wenn dieser noch an Keyboard und Monitor angeschlossen
ist. Die folgenden Anleitungen stammen von
https://github.com/Bronkoknorb/a1tv-helpers
Ist die Konsole, am besten als root-admin geöffnet, so installiert man zuerst
ruby und die dazugehörigen libraries.
sudo apt-get install ruby ruby-dev
sudo gem install rest-client
Als nächstes benötigt man xmltv:
sudo apt-get install xmltv-util
sudo su hts
tv_grab_se_tvzon --configure
Nach der letzten Eingabe fragt das Konfigurationsscript des Grabbers nach folgenden Informationen:
- Root-URL for grabbing data (hier http://xmltv.xmltv.se/channels-Austria.xml.gz eingeben)
- Directory to store the cache: /home/hts/.xmltv/cache
- Select Channels : Hier all auswählen
Jetzt muss der TVheadend - Service neu gestartet werden:
sudo service tvheadend restart
Jetzt kann wieder auf das Webinterface von TVheadend gewechselt werden. Im
EPG-Grabber TAB kann jetzt noch die Zeit zum Synchronisieren der EPG Datenbank ausgewählt werden.
Jetzt ist der Server soweit fertig konfiguriert und die Clients können
eingerichtet werden. In meinem Fall habe ich auf der MINIX NEO X8
Android Box ein Kodi installiert. In der Liste Addons -> PVR-Addons
ist unter vielen auch ein TVHEADEND Addon gelistet. Dieses wird
installiert. Alle anderen PVR-Addons müssen deaktiviert werden.
In den Client Einstellungen ist lediglich noch die IP Adresse des
Raspbery PI anzugeben. Die Ports sind default (9981). Wenn beim
TVheadend Server kein eigener User angelegt ist, so brauchen wir auch im
Client unter user und pass nichts einzutragen.
Jetzt fehlt nur
mehr die Aufnahmefunktion am Server. Hierzu begeben wir uns wieder in
das Webinterface vom Server. Unter Konfiguration -> Aufnahme sind die
abgebildeten Einstellungen zu machen:
Ich habe hier das default profile editiert. Wichtig ist der
Aufnahmedateipfad. Steckt am Raspberry PI ein externer USB-Datenträger,
so kann dieser für die Aufnahme verwendet werden. (In der Xbian Konsole
kann man sich den Datenträger entsprechend vo
rbereiten und Verzeichnisse
erstellen). Die Einstellungen sind weitgehend selbsterklärend....