feature satip4

6
146 147 TELE-audiovision International — The World‘s Largest Digital TV Trade Magazine — 11-12/2013 — www.TELE-audiovision.com www.TELE-audiovision.com — 11-12/2013 — TELE-audiovision International — 全球发行量最大的数字电视杂志 Fernsehen aus dem Netzwerk Teil 4 • ideal für Bastler, um Audio und Video zuhause zu streamen • eine kleine Platine dient als Basis für das eigene Heim IPTV Netzwerk • MPEG2 und VC Lizenzen müssen getrennt gekauft werden • zum Streaming wird TSReader Pro eingesetzt • kann auch mit VLC eingesetzt werden FEATURE Selfmade IPTV This is how our test centre looked like for this report.

Upload: tele-satellite-deu

Post on 28-Nov-2014

533 views

Category:

Documents


1 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Feature satip4

146 147TELE-audiovision International — The World‘s Largest Digital TV Trade Magazine — 11-12/2013 — www.TELE-audiovision.com www.TELE-audiovision.com — 11-12/2013 — TELE-audiovision International — 全球发行量最大的数字电视杂志

Fernsehen aus dem Netzwerk Teil 4

• ideal für Bastler, um Audio und Video zuhause zu streamen• eine kleine Platine dient als Basis für das eigene Heim IPTV Netzwerk• MPEG2 und VC Lizenzen müssen getrennt gekauft werden• zum Streaming wird TSReader Pro eingesetzt• kann auch mit VLC eingesetzt werden

FEATURE Selfmade IPTV

This is how our test centre looked like for this report.

Page 2: Feature satip4

1

2

148 TELE-audiovision International — The World‘s Largest Digital TV Trade Magazine — 11-12/2013 — www.TELE-audiovision.com

FEATURE Selfmade IPTV

1. The Raspberry Pi is a small computer with the footprint of a credit card. Still, it features all conceivable connections:- HDMI- Composite Video- Analog Stereo Audio- 2x USB- 1x Micro-USB for power supply- RJ-45 Network- SD card readerOn the PCB there are furthermore connectors for digital and analog inputs/outputs2. The Raspberry Pi will convert any TV or monitor into a full blown media center when using XBMC. Because the Raspberry Pi is so small, it will snug away behind the TV. If you then use a wireless keyboard with integrated trackball or touch pad, you won’t even see any loose cables.

Vitor Martins Augusto

Nachdem wir uns in den ersten drei Teilen zum Thema IPTV eher der Theorie gewidmet haben möch-ten wir nun im vierten Teil eine kon-krete IPTV-Lösung implementieren. Benötigt wird gar nicht mal so viel: als Server dient ein PC mit einem Empfänger für digitales Fernsehen (DVB, ATSC oder ISDB) und TSRea-der Pro. Als IPTV-Receiver benut-zen wir den Raspberry Pi.

Das häufigste Problem bei der Imple-mentierung von IPTV im Heim ist die Frage, wie man denn das IPTV am Fern-seher empfangen und darstellen soll. Natürlich könnte man an jedem Fernse-her einfach einen kompletten PC hinstel-len, doch dies würde nicht unbedingt gut aussehen und außerdem kostet auch ein günstiger PC doch einiges an Geld, von den Stromkosten mal abgesehen. Wir haben uns deshalb umgesehen, welches Gerät wir denn als IPTV Receiver benut-zen könnten. Unsere Kriterien: günstig, klein, verfügbar und vielseitig sollte das Gerät sein. Nachdem wir verschiede-ne Kandidaten geprüft haben (von der Spielekonsole bis zum modifizierten Ap-pleTV war alles dabei), entschieden wir uns für den Raspberry Pi.

Der Raspberry Pi ist ein winziger Com-puter, dessen Platine die Fläche einer Kreditkarte belegt (85.6mm x 56mm x 21mm). Trotz der kleinen Größe handelt

es sich um einen vollwertigen Computer mit einem ARM-Prozessor. Die Eckdaten sind:

SoC („System on Chip“): Broadcom BCM2835 mit einem ARM1176JZFS Kern, der mit 700MHz getaktet wird und eine Videocore 4 GPU Grafikeinheit ent-hält, die in der Lage ist, H.264 mit bis zu 40MBits/s in Hardware zu dekodieren. Weiterhin werden OpenGL ES2.0 und OpenVG Bibliotheken unterstützt.

Model B verfügt über 512MB RAM, ak-tuell werden die Platinen sogar zum glei-chen Preis mit 1GB RAM ausgeliefert.

Anschlüsse:- SD-Karte: von dieser wird das Be-

triebssystem geladen

Page 3: Feature satip4

3

4

5 6

7

150 TELE-audiovision International — The World‘s Largest Digital TV Trade Magazine — 11-12/2013 — www.TELE-audiovision.com

- 2x USB: zum Anschluss von Tastatur, Maus, USB-Speicher, usw.

- LAN: RJ-45 mit 100MBit/s

- Audio: analoger Stereo-Ausgang

- RCA Video: analoger Composite Video-Ausgang

- HDMI: für digitale Audio und Video Ausgabe

- Micro-USB: für Stromver-sorgung

Das interessante an die-sem Gerät ist sein Preis: of-fiziell kostet der Raspberry Pi Model B lediglich US$ 35, zu welchen sich Steuern und Versandkosten addieren. In Europa kann man den Ras-pberry Pi für ungefähr 35 Euro kaufen. Dieser niedrige Preis ist deshalb möglich, weil

dieser Miniatur-Computer von der Raspberry Pi Stiftung entwickelt wurde, die es sich zum Ziel gesetzt hat, einen absolut günstigen Computer für alle Kinder zur Verfügung zu stellen, um das Program-mieren auch im Kindesalter zu motivieren, wie es frü-her bei den 8-Bit Computern wie dem Spektrum und dem Commodore 64 der Fall war. Für alle anderen ist es aber toll, dass diese Platine un-eingeschränkt zu erwerben ist und somit Applikationen möglich sind, die vorher aus Kostengründen eigentlich un-vorstellbar wären.

Der Raspberry Pi wird in Zusammenarbeit von Far-nell und RS Electronics her-gestellt und ist bei diesen

weltweit zu beziehen. Damit man die Platine benutzen kann benötigt man weiterhin ein Micro-USB Netzteil, das auch bei modernen Smart-phones üblich ist. Außerdem braucht man eine SD-Karte, wir empfehlen eine mit 8GB. Ein passendes Gehäuse kann seit kurzem ebenfalls für ca. 6 Euro bestellt werden und macht auf jeden Fall Sinn, um die Platine vor einem Kurzschluss oder statischer Entladung zu schützen. Wir haben die Platine allerdings wochenlang ohne Gehäuse benutzt und diese auch ange-fasst, ohne dass etwas pas-siert wäre.

Weil die Platine so klein ist, lässt sie sich prima hin-ter dem Fernseher platzieren

3. The webpage “openelec.thestateofme.com” features all published versions of OpenELEC for Raspberry Pi, including Windows-friendly *.img version, which can be easily flashed using Image Writer, whose Windows version is called Win32 Disk Imager.4. Just download the latest rXXXXX.img.zip File and extract it with your favourite compressing tool.5. Use Win32 Disk Imager to write the image file onto the SD card. We recommend the use of 8GB SD cards with 6x speed or better. The card is written with 10MB/s which is not that bad. Flashing should take less than a minute.6. When the flashing is finished, a message box appears. Don’t remove the card yet, because we need to write the license keys for the MPEG2 decoder.7. On the root of the freshly written SD card you will find a file called “config.txt”. Open it with a text editor (we prefer to use the free Notepad++) and scroll down to the license keys section. Copy

& paste the license file you received from the Raspberry Pi store. After completing the purchase our keys arrived about 2 hours later, but the site mentions that it could take up to 72 hours.

und als Tastatur und Maus eignet sich am besten eine kabellose Version, die beide Funktionen auf kleiner Fläche integriert. Im Handel finden sich viele oft als „Multimedia“ oder „TV“ Tastatur bezeich-nete Modelle, deren Maus als Trackball oder Touchpad im-plementiert ist.

Ganz wichtig: um den Preis von Raspberry Pi klein zu halten, fehlen dem Gerät die Lizenzen, um MPEG2 abzu-spielen, obwohl die Hardware dazu durchaus in der Lage ist. Dies ist aber für die Dar-stellung von IPTV notwendig, da die meisten Kanäle, die in SD ausgestrahlt werden, in MPEG2 kodiert sind. Im Web-shop der Raspberry Pi Stif-tung kann man für 3,00 Euro die MPEG2 Lizenz kaufen. Man erhält per e-Mail einen Schlüssel, der diese Funkti-on aktiviert. Dieser Schüssel

Page 4: Feature satip4

8 12

139

10

11

14 15

152 153TELE-audiovision International — The World‘s Largest Digital TV Trade Magazine — 11-12/2013 — www.TELE-audiovision.com www.TELE-audiovision.com — 11-12/2013 — TELE-audiovision International — 全球发行量最大的数字电视杂志

muss auf der SD-Karte in der „config.txt“-Datei an ent-sprechender Stelle eingetra-gen werden. Fortan werden auch MPEG2 kodierte Inhalte mittels hardware-gestützter Dekodierung dargestellt. Auf gleiche Weise kann auch eine VC-1 Lizenz für 1.50 Euro ge-kauft werden, um entspre-chende Inhalte darstellen zu können.

Raspberry Pi funktioniert hauptsächlich mit einer an-gepassten Linux-Distribution, doch mittlerweile bekommt man auch schon fertige Firmware-Dateien („Image“ genannt) mit XBMC. Der selt-same Name dieser Multime-dia-Software entstand aus der Abkürzung für „Xbox Me-dia Center“: diese Software wurde ursprünglich für die erste Version der Xbox ent-wickelt. Mittlerweile wurde diese Software auf alle denk-baren Systemen portiert, da-runter auch Windows, Linux, MacOS sowie Android und iOS. Keine Frage: bei XBMC handelt es sich um eines der besten Multimedia-Program-me. Es werden praktisch alle Formate abgespielt (Audio, Video und Bilder), es gibt un-zählige Plugins und die Be-dienung ist kinderleicht. Wer XBMC noch nicht kennt sollte dieses Programm unbedingt auf Windows, MacOS oder Li-nux ausprobieren.

Wie im Linux-Umfeld üb-lich, gibt es gleich mehrere verschiedene Distributionen von XBMC für den Raspber-ry Pi: OpenELEC, Raspbmc, XBian, usw. Wir haben mit OpenELEC die besten Resul-tate erzielt.

Um den Raspberry Pi mit XBMC zu benutzen, müssen folgende Schritte durchge-führt werden:

1) Die Datei mit dem XBMC-Image muss von der OpenELEC Webseite geladen werden (siehe Linktabelle).

2) Entpacken Sie das Archiv zum Beispiel mit WinRAR.

3) Die *.img Datei wird anschließend mit Win32Dis-kImager auf die SD-Karte geflasht. Stellen Sie sicher, dass Win32DiskImager auch wirklich das korrekte Lauf-

werk für die SD-Karte ent-deckt hat, damit Sie nicht aus Versehen das falsche Laufwerk formatieren.

4) Nun muss die „config.txt“ Datei editiert werden: an der entsprechenden Stelle muss der Lizenz-Schlüssel für MPEG2 eingegeben werden.

Nun kann man den Ras-pberry Pi starten und nach wenigen Sekunden erscheint die XBMC Oberfläche, die hervorragend selbsterklä-rend ist. Wichtiger Hinweis: es ist normal, dass beim

8. Start TSReader Pro and tune to the desired transponder as usual.9. Open the “Forward” menu and select “Forward to UDP…”. On the list in the upper part of the window select each channel you want to stream and configure the respective IP address and port number. You can use the same IP address for all channels, but then you need to use individual port numbers. Remember that the multicast addresses start at 224.1.1.1 and go up to 239.255.255.255.

10. Using a text editor like Notepad++, you need to configure the play list for XBMC, introducing each streamed channel with the respective IP and port.11. In our first experiment, we streamed four channels and configured the IPTV.m3u file accordingly. Naturally you can name the file as you desire, as long as you keep the *.m3u extension.12. Not too soon, we wanted to try to increase our IPTV bouquet and added a second

TSReader session, this time using a DVB-T tuner. 13. With this TSReader session we were receiving the Portuguese digital terrestrial television, which contains only 4 channels.14. Each channel was assigned an IP address and an individual port number. 15. Streaming has started. TSReader tracks on how much data has been sent and how many errors occurred.

ersten Start, nachdem die SD-Karte beschrieben wur-de, das Betriebssystem au-tomatisch neu startet. Erst beim zweiten Start wird dann XBMC geladen. Der erste Durchlauf dient zur Konfigu-ration des Betriebssystems. Warten Sie daher etwa, an-statt es wie wir zu machen: wir dachten am Anfang, et-was sei fehlgelaufen und ha-ben prompt die SD-Karte neu programmiert…

Mit TSReader Pro ist es möglich, den empfangenen Transport Stream direkt über UDP in das Netzwerk einzu-speisen. Entweder kann der Transport Stream komplett 1:1 in das Netzwerk geleitet werden oder man benutzt die integrierte Demuxer-Funkti-on. Mit dieser kann jeder ein-zelne im Transport Stream enthaltene Kanal separat in das Netzwerk gestreamt werden. Da gewöhnliche Multimedia-Geräte normaler-weise über keinen Demuxer verfügen, können Sie einen Transport Stream nicht dar-stellen oder es wird nur ein Kanal des Transport Streams angezeigt ohne Möglichkeit, einen anderen Kanal auszu-wählen. Genau dies passiert auch mit XBMC, wenn man versucht, den kompletten Transport Stream zu empfan-gen: es wird einfach nur ein Kanal dargestellt, ohne dass man die Möglichkeit hat, auf einen anderen umzuschalten.

Deshalb benutzen wir die Demuxer-Funktion von TS-Reader Pro und streamen die gewünschten Kanäle per Mul-ticast in das Netzwerk, wobei wir aber für jeden Kanal eine individuelle Port-Nummer verwenden.

Damit XBMC diese Streams auf verschiedenen Ports empfangen kann, müssen wir eine Playliste im *.m3u For-mat erstellen. Dies ist prak-tisch, denn so erscheint in XBMC eine Liste mit den voll-ständigen Kanalnamen und das Zappen gestaltet sich äußerst komfortabel.

Der Clou ist aber, dass man mehrere Instanzen von TSReader Pro starten kann, jeweils mit einem andern Tu-

Page 5: Feature satip4

22

23

24

6

17

18

21

16

19

20

154 TELE-audiovision International — The World‘s Largest Digital TV Trade Magazine — 11-12/2013 — www.TELE-audiovision.com

16. Boot screen of the OpenELEC distribution of XBMC for the Raspberry Pi17. Main menu of XBMC. You can access all functions from here, using the keyboard, the mouse or any other device you connect, including a wide range of remote controllers.18. The video menu. You can add new folders containing video using the “Add Videos…” entry. These can be folders on the Raspberry Pi or shared folders within the network.19. Playing a TV channel received over the network – IPTV at its best20. XBMC includes a wide range of configurations for audio and video,

including the display of subtitles21. Zapping can be done using the |<< and >>| buttons or by going back to the playlist.22. Playing a streamed channel from HOTBIRD 13.0E.23. This is a different playlist, showing the channels we are streaming from our DVB-S/S2 card. You can have as many playlists as you wish.24. Zapping between the different channels within the playlist is easy, but naturally you have to expect 2-3 seconds to see the next picture. The reason is the buffering that is required, to ensure that sudden delays within the network traffic don’t stop the reproduction.

Page 6: Feature satip4

33

30

31

6

26

27

32

25

28

29

156 157TELE-audiovision International — The World‘s Largest Digital TV Trade Magazine — 11-12/2013 — www.TELE-audiovision.com www.TELE-audiovision.com — 11-12/2013 — TELE-audiovision International — 全球发行量最大的数字电视杂志

ner (egal ob auf einem oder mehreren PCs – schließlich benutzen wir ja Multicast), so dass man sich ein ansehnli-ches Bouquet erstellen kann. Wir haben zum Beispiel einige Kanäle eines Transponders von HOTBIRD (13.0E) mit dem portugiesischen digita-len terrestrischen Fernsehen kombiniert. Fortan stehen im ganzen Haus über das Netz-werk diese 8 Kanäle bereit und können mit dem Ras-pberry Pi, aber auch anderen Geräten (PC, Tablet, Konso-le, usw.) empfangen werden, wenn diese mit UDP-Streams umgehen können. Besonders einfach ist es natürlich, wenn auf dem jeweiligen Gerät XBMC installiert ist.

Das Format der *.m3u Playliste ist recht einfach und sieht so aus:

#EXTM3U#EXTINF:0,RTP-1#EXTVLCOPT:network-caching=1000udp://@224.2.2.2:1001#EXTINF:0,RTP-2#EXTVLCOPT:network-caching=1000udp://@224.2.2.2:1002#EXTINF:0,SIC#EXTVLCOPT:network-caching=1000udp://@224.2.2.2:1003

#EXTINF:0,TVI#EXTVLCOPT:network-caching=1000udp://@224.2.2.2:1004Die erste Zeile identifiziert

die Datei als EXTM3U-Play-liste und muss genau so vor-handen sein. Nun folgen für jeden Kanal 3 Zeilen: #EX-TINF bietet „Extended Info“, also weitere Informationen, damit XBMC statt dem Da-teinamen und der IP-Adresse den Namen des Kanals an-zeigt. Hier kann nach dem „0,“ ein beliebiger Text, in unserem Fall eben der Name des Kanals, eingegeben wer-den. Die nächste Zeile dient dazu XBMC anzuweisen, ei-nen Puffer anzulegen, da-mit das Bild bei kurzzeitigen Netzwerk-Kollisionen nicht stottert. Bei einem großen Wert dauert das Zappen deutlich länger. Wir verwen-deten Werte zwischen 100 und 1000. Nun folgt eine Zei-le, in welcher das Protokoll (udp://@) und die entspre-chende IP-Adresse mit Port-Nummer angegeben wird. Diese müssen natürlich zu den IP-Adressen und Port-Nummern passen, die in TS-Reader angegeben wurden.

Diese drei Zeilen wieder-holen sich für jeden einzel-

25. Here you can see both playlists: one for the Portuguese TDT transponder and one for the HOTBIRD 13.0E satellite transponder26. If you prefer, you can merge the channels of different playlists into a single playlist. Here we see all streamed channels in one single playlist, despite the fact that these channels come originally from different tuners.27. Naturally, XBMC has many more capabilities. Why not watch a movie? Almost all formats are recognized and supported, including subtitles and multiple audio channels.28. Time for a break: watching the classic Metropolis. Did you know that this masterpiece can be downloaded for free, because the copyright expired long time ago?29. Here a different movie, encoded and encapsulated differently (*.mp4): a recreation of the Space Odyssey, but using Lego actors…30. XBMC can be adjusted to your preferences and needs. Just go to the settings menu.31. Here you can setup every detail, including the weather settings.32. We specified the location of our test centre.33. There are many options to setup audio and video. The Raspberry Pi features a full HDMI connector and is capable of resolutions up to full HD at 1920x1080

nen Kanal. Um diese Datei zu erstellen und zu editieren, kann jeder beliebige Textedi-tor benutzt werden, denn es handelt sich im Grunde um eine normale *.txt-Datei, bei welcher die Datei-Endung auf *.m3u geändert wurde. Wir weisen hier auf Notepad++ hin - ein toller Open Source Editor mit vielen Funktionen und Plugins, der auch mit entsprechendem Plugin als Hex-Editor dient.

Die fertige *.m3u-Datei ko-piert man nun zum Beispiel auf einen USB-Speicher und steckt ihn an den Rasperry Pi. Dies kann bei laufendem Gerät erfolgen, XBMC er-kennt den Speicher automa-tisch. Geht man nun auf Vi-deo, kann man die Playliste anklicken und den gewünsch-ten Kanal wählen. Außerdem kann man leicht zum nächs-ten oder vorherigen Kanal zappen. Nur ein direktes nu-merisches Anwählen ist nicht vorgesehen. Weiterhin kann man wählen, ob man Kanä-le aus verschiedenen Trans-pondern, die von verschie-denen TSReader-Instanzen gestreamt werden, in eine einzige *.m3u-Playliste inte-grieren möchte, oder ob man nicht doch lieber verschiede-

ne Playlisten anlegt. Die hier beschriebene Konfiguration lässt sich übrigens auch mit VLC als Server verwirklichen, wodurch man nochmal et-was Geld spart, da es sich bei VLC um ein Open Source Projekt handelt. Hier muss man aber deutlich mehr Zeit als mit TSReader Pro inves-tieren, da die Konfiguration des VLC-Servers nicht so einfach ist. Wir konnten zum Beispiel problemlos über VLC einen DVB-T Transponder streamen, bei DVB-S klappte es aber nicht, da die aktuelle Version scheinbar einen Pro-blem mit DVB-S Tunern hat. Installiert man eine ältere VLC Version, dann klappt der DVB-S Empfang zwar, dafür funktioniert das Streamen aber nicht mehr.

Unser Fazit: IPTV in der Praxis ist gar nicht mal so kompliziert. Wir erzielten ab-solut brauchbare Resultate und mit einem 1000MBit/s Netzwerk braucht man sich nicht vor einer Überbelas-tung des Netzwerkes fürch-ten. Durch das Multicasting kann man beliebig viele IPTV-Receiver anschließen und mit XBMC kann man gleichzeitig auch auf ideale Weise auf Musik und Filme

zugreifen, die entweder lokal auf dem USB-Speicher oder im Netzwerk vorhanden sind.

Inzwischen hat die Ras-pberry Fan-Gemeinde auch schon diverse USB-Tuner zum Laufen gebracht und na-türlich werden wir demnächst ebenfalls versuchen, auf Ba-

sis des Rasperry Pi unseren eigenen „Linux-Receiver“ zu basteln. Auf jeden Fall ist der Raspberry Pi ein inter-essantes Gerät zum Basteln und wer sich mit Audio und Video beschäftigt bekommt so eine brauchbare Plattform für kleines Geld.

www.raspberrypi.orgWebseite der Raspberry Pi Stiftung. Hier findet man die wich-tigsten Betriebssystem-Images zum Download, einen Wiki, ein Forum und Anleitungen. Außerdem werden hier fast täglich neue interessante Projekte vorgestellt.

www.raspbmc.comEine von vielen XBMC-Distributionen für den Raspberry Pi. Die-se ist besonders einsteiger-freundlich.

wiki.openelec.tv/index.php?title=Installing_OpenELEC_on_Raspberry_PiWiki-Seite der OpenELEC XBMC Distribution für den Raspberry Pi. Diese scheint uns besonders ausgereift und bietet den größ-ten Funktionsumfang.

sources.openelec.tv/tmp/imageAuf dieser offiziellen Seite kann das OpenELEC XBMC Image für verschiedene Plattformen, auch dem Raspberry Pi, gela-den werden. Allerdings lässt sich dieses Image nur über Linux installieren.

openelec.thestateofme.comAuf dieser Seite werden die OpenELEC XBMC Images für Ras-pberry Pi auch im windows-kompatiblen Format zur Verfügung gestellt. Diese können mit Image Writer auf die SD-Karte ge-flasht werden. Wählen Sie am Ende der Liste die neueste ZIP-Datei (rXXXXX.img.zip).

https://launchpad.net/win32-image-writer/+downloadWebseite des Image Writer für Windows. Dieses Tool schreibt die Firmware-Images auf die SD-Speicherkarten.

www.tsreader.com/tsreaderWebseite von TSReader. Für die Streaming-Funktion wird die Professional Version benötigt, die kostenpflichtig ist.

www.videolan.org/vlcWer lieber Gratis-Lösungen benutzt, sollte VideoLANs VLC pro-bieren. Mit dieser Software ist es auch möglich, einen Trans-port-Stream zu demuxen und die enthaltenen Kanäle einzeln über separate IP-Adressen und/oder Ports zu streamen. Aller-dings ist die Konfiguration doch weitaus komplizierter.