MediaPortal: Unterschied zwischen den Versionen

Aus Vu+ WIKI
Wechseln zu: Navigation, Suche
(Streaming-Protokolle RTMP/HTTP)
Zeile 50: Zeile 50:
 
=Streaming-Protokolle RTMP/HTTP=
 
=Streaming-Protokolle RTMP/HTTP=
  
ToDo
+
Streaming-Portale können ihre Filme/Clips (meist .mp4 oder .flv) mit unterschiedlichen Streaming-Protokollen anbieten. Das liegt nicht im Einflussbereich des MediaPortals, sondern des Anbieters. Manche bieten ausschlisslich HTTP an, manche ausschliesslich RTMP, und manche beides gleichzeitig (zB. das ZDF kann beides). Die Module des MediaPortals bevorzugen grundsätzlich RTMP, sofern ein Anbieter dieses anbietet. Sollte RTMP nicht angeboten werden, dann bekommt man als MediaPortal-User nicht mit, das im Hintergrund HTTP werkelt...
 +
 
 +
Schwierig nachzuvollziehen ist es zB. bei der ARD-Mediathek, da dort mehrere Anbieter in einem Modul zusammengefasst werden (WDR, SR, HR, EinsExtra, usw.). Es gibt dort durchaus einzelne Sender, die nur HTTP anbieten. Dies muss ein Programmierer wissen, und ist gezwungen, dies in seinen Sourcen hart-codiert so einzubinden. Wenn sich daran etwas ändert, muss der Modul-Programmierer ein Update erstellen.
 +
 
 +
===Was ist RTMP?===
 +
 
 +
RTMP ist ein Protokoll zum Streaming von VideoClips. Statt "http://www.irgendwas.de" gibt es auch andere Aufrufe im Internet. ZB. "rtmp://blaaa" wäre solch einer. Die genaue URL ist nicht für die Ewigkeit, denn ein Anbieter kann jene auch mal wechseln, was im MediaPortal zum Nicht-Funktionieren führt. Dann muss man auf ein Update warten.<br>
 +
Es gibt aber auch Streaming-Plattformenm die http://www.irgedwas.de/stream.mp4 anbieten. Dann würde ein Inhalt eben via HTTP laufen.
 +
 
 +
===Was mache ich, wenn ich RTMP-Dump einstelle, und es passiert nix?===
 +
 
 +
Wenn man RTMP-Dump einstellt, und es passiert nichts, dann kann es auch sein, dass ein Anbieter lediglich HTTP als Protokoll anbietet. Kein Wunder, dass dann RTMP-Dump dort nicht funktioniert... Ok, sollte einleuchten... Doch woher weiß man, dass RTMP-Dump nicht funktioniert?
 +
Dafür gibt es derzeit keine Lösung im MP... Man muss es tatsächlich wissen!!! Da das derzeit nicht jeder User weiß, ist es nachvollziehbar, dass es immer wieder Fragen dazu geben wird, obwohl die Problematik bekannt ist.
 +
 
 +
===Was ist überhaupt RTMP-Dump?===
 +
 
 +
RTMP-Dump ist eine Funktion, die nur dann wirksam wird, wenn folgende Vorraussetzungen gegeben sind:<br><br>
 +
- RTMP-Dump funktioniert nur bei Usern, die eine Festplatte in ihrem Receiver verbaut haben<br>
 +
- RTMP-Dump speichert auf die Festplatte einige Zeit Streaming-Daten eines Streaming-Portal-Anbieters, wenn jeneer auch RTMP-fähig ins MediaPortal einprogrammiert wurde...
 +
- RTMP-Dump funktioniert NICHT, bei Streaming-Diensten, die nur HTTP-Streaming anbieten!++
  
 
=RTMP-Dump=
 
=RTMP-Dump=

Version vom 7. März 2014, 01:55 Uhr

Einleitung

Was ist das MediaPortal ?

Das MediaPortal ist eine - unter Python entwickelte - Zusatzsoftware (Plugin) für digitale, auf Linux basierende TV/Radio-Empfangsgeräte (DVB-Receiver/Settopboxen), auf denen die Benutzeroberfläche Enigma2 (E2) residiert. Somit läuft es u.a. unter Dreamboxen, sowie VU+ Boxen. Das MediaPortal eine Sammlung von Plugin-Modulen, die innerhalb einer - von den Programmierern stets weiterentwickelten - einheitlichen Plugin-Oberfläche laufen. Die internen Plugin-Module geben Inhalte der Mediatheken von ARD/ZDF/RTL/N24 usw. wieder. Auch Module zu Streaming-Plattformen mit rechtlich nicht eindeutig geklärten Inhalten (hier Grauzone genannt), sowie Erotik-Angebote verschiedener Anbieter sind hier zwar implementiert. Aber sowohl die Grauzone- als auch die Erotik-Module sind per Voreinstellung abgeschaltet, und müssen vom User innerhalb eines PIN-geschützten Setup-Menüs selber freigeschaltet werden, da sich die Programmierer für die Verwendung distanzieren möchten, und die Verantwortung der Benutzung damit dem User übergeben. Für Erotik-Angebote gibt es zusätzlich noch Jugendschutz-Funktionen. Zum Einen kann man den Aufruf dieser Module mit einer zusätzlichen PIN-Abfrage schützen, sowie kann man zum Anderen mit einer "Panikfunktion" bei überraschendem Besuch das Vorhandensein der Erotik-Module auch mit der Info-Taste im Haupt-Menü ausblenden, bzw. verstecken, sodass niemand von der Existenz weiß.


Historisches zu Enigma2/Linux

Nach dem Startschuss zu DVB, lieferte der ersten DVB-Provider DF1 im deutschsprachigen Raum (gegründet von der Kirchgruppe; Leo Kirch war ein Filmehändler) die DBox als Settopbox für seine kostenpflichtigen Angebote aus. Die DBox wurde ausschließlich von Nokia hergestellt, und die proprietäre Benutzeroberfläche (GUI) lief in einer Java-Umgebung. Die Bootzeiten waren sehr lang, und die Umschaltzeiten dauerten teilweise 5 Sekunden. Dann wurde der Bootloader gehackt, und ein findiger Programmierer hat die Sprungmarken auf Bereiche gelenkt, in denen er eigene Sourcen laufen lassen konnte (DVB2000). In Assembler geschrieben, waren die Bootzeiten erstaunlich und die Umschaltzeiten teilweise unter einer Sekunde. Dann ging DF1 pleite, und der Pay-TV Anbieter Premiere (zuvor noch Analog) übernahm. In späteren original Firmware-Versionen der DBox waren Boot- und Umschaltzeiten auch akzeptabel. Doch nun wurde an Premiere-Kunden auch die DBox2 ausgeliefert. Hersteller waren Nokia, Sagem und Phillips. Auch hier wurde nach einer Weile der Bootloader gehackt, und an der Sprungmarke wurde diesmal ein Linuxkernel geladen, der dann ein deutlich abgespecktes Linux hinterher lud. Als GUI entstanden Enigma (Anfangs EliteDVB), Neutrino und LCARS, im extra dafür gegründeten OpenSource-Projekt Tuxbox. Damals wurde hauptsächlich in C und C++ programmiert. Linux in Settopboxen war plötzlich sehr beliebt, und einige Firmen entschieden sich dazu, eigene Settopboxen auf den Markt zu bringen, auf Linux-Basis.


Python hält Einzug in Linux basiernde DVB-Receiver

Als Enigma2 an den Start ging, wurde in Python programmiert. Grund dafür war unter Anderem, dass zuvor ein Cross-Compiler auf dem PC mit x86-Prozessoren installiert werden musste, um ausführbare Dateien für die Settopboxen compilieren zu können, die (auch heute noch) meist keine x86-Prozessoren haben. Da die Speicherkapazität der Flash-ROMs - in denen das Betriebssystem Linux und die ganzen Apps und GUIs reinpassen müssen - im Laufe der Jahre zunahm, dachte man darüber nach, ob man nicht den Compiler direkt in die Box packen kann. Dann bräuchte man beim Programmieren auf dem PC nur noch einen Editor benutzen, die Sourcen in die Flash-ROMs der Box hochladen, und die Settopboxen würden sie sich selber compilieren. Dies kam dann mit Einzug von Python. Sowohl Enigma2, als auch sämtliche Plugins - die unter Enigma2 laufen - sind idR. ebenfalls in Python programmiert. So auch das MediaPortal.


Enigma2 nicht gleich Enigma2

Ein wenig kompliziert für den End-User ist, dass Enigma2 nicht auf allen Boxen gleich ist. Aufgrund von Streitigkeiten einiger Hersteller, hat die Firma DreamMultiMedia (Hersteller von Dreamboxen, und Pionier bei Linux-Settopboxen) große Teile der Sourcen von Enigma2 von OpenSource auf ClosedSource umgestellt. Somit fehlen Funktionen in Nicht-Dreamboxen, die von dem Tag der Umstellung an, für Dreamboxen hinzu kamen. Beispielsweise das Skinnen von Scrollbars.



Was bietet das MediaPortal?

Quantität

Es gibt vier Hauptkategorien (mit dem Stand von März 2014 zur v5.1.2):

- Mediatheken ( > 30 Module )
- Grauzone ( < 20 Module)
- Fun/Music/Sport ( > 60 Module)
- Porn ( > 40 Module)

Qualität

Die Qualität der Module im MediaPortal sind stark von äußeren Einflüssen abhängig. Natürlich können auch einem MediaPortal-Programmierer Fehler unterlaufen. Aber grundsätzlich gibt kein Modul-Programmierer sein Modul zu einer Plattform mit Streaming-Inhalten frei, ohne es nicht zuvor selber ordentlich geprüft zu haben!
Wenn ein Modul plötzlich nicht mehr funktionieren sollte, wurde meist nicht "schlampig programmiert", sondern irgendein Detail auf Seiten des Streaming-Portals wurde geändert, aber die Sourcen fundieren noch auf den vorigen Details. Sollte so etwas vorkommen, dann ist es durchaus erwünscht, dies in einem der offiziellen Threads zum MediaPortal zu verkünden. Denn schließlich verwendet ein Modul-Programmierer nicht täglich seine eigenen Module, um zu prüfen, dass sie auch noch stets laufen. Hier ist man natürlich auf die Zuarbeit von Usern angewiesen.

Doch bevor ein User im "offiziellen Thread" zum MediaPortal die Nicht-Funktion eines Moduls postet, sollte er zuvor die Funktionen noch an seinem PC im Browser gegen-prüfen. Sollte es auch auf dem PC nicht laufen, so kann man dem Media-Portal zunächst qualitativ keine "Schuld" zuweisen, denn die vermisste Funktionalität kann...

a) an Änderungen am Streaming-Portal liegen, oder
b) an individuellen Störungen beim Provider eines Users liegen, oder an individueller Fehlkonfiguration im LAN-Umfeld, oder an Fehlern nach einem Update an *irgendeiner* Komponente im Receiver, und und und...

Daher ist es sehr wichtig für die Programmierer des MediaPortals, zu wissen, dass all' diese Faktoren bereits vom User gründlich geprüft wurden, bevor man einen ernstzunehmenden "Bug-Report" postet!

Im Falle von b) ist es sehr lästig für sämtliche, mitlesenden User, dass beim User "123hallo" plötzlich das N24-Modul nicht mehr läuft, obwohl es bei allen anderen problemlos läuft. Es entsteht eine Extra-Situation im offiziellen MediaPortal-Thread, dessen Verlauf alle evtl. genervt mitlesen, wenn sich später herausstellt, dass der User "123hallo" irgendeine Komponente am Vortag (o.ä.) geändert hatte, die zum Fehlverhalten führte. Denn hier konnte die Community meist nichts dabei hinzu lernen, und musste das "Gejammer" eines Einzelnen zuvor mitlesen.
Man sollte also als User abwägen, ob man ausreichend getestet hat, bevor man im offiziellen MediaPortal-Thread postet. Und nur wenn man sich unsicher ist, sollte man besser den "MediaPortal HILFE-Thread" nutzen. Der Hilfe-Thread ist aber kein Abfall-Eimer für alles, was nicht im offiziellen Thread besprochen wird. Auch hier geht man davon aus, dass zuvor ordentlich getestet wurde. Nehmt Euch also die Mühe, und testet ordentlich, bevor Ihr postet!!!!

Streaming-Protokolle RTMP/HTTP

Streaming-Portale können ihre Filme/Clips (meist .mp4 oder .flv) mit unterschiedlichen Streaming-Protokollen anbieten. Das liegt nicht im Einflussbereich des MediaPortals, sondern des Anbieters. Manche bieten ausschlisslich HTTP an, manche ausschliesslich RTMP, und manche beides gleichzeitig (zB. das ZDF kann beides). Die Module des MediaPortals bevorzugen grundsätzlich RTMP, sofern ein Anbieter dieses anbietet. Sollte RTMP nicht angeboten werden, dann bekommt man als MediaPortal-User nicht mit, das im Hintergrund HTTP werkelt...

Schwierig nachzuvollziehen ist es zB. bei der ARD-Mediathek, da dort mehrere Anbieter in einem Modul zusammengefasst werden (WDR, SR, HR, EinsExtra, usw.). Es gibt dort durchaus einzelne Sender, die nur HTTP anbieten. Dies muss ein Programmierer wissen, und ist gezwungen, dies in seinen Sourcen hart-codiert so einzubinden. Wenn sich daran etwas ändert, muss der Modul-Programmierer ein Update erstellen.

Was ist RTMP?

RTMP ist ein Protokoll zum Streaming von VideoClips. Statt "http://www.irgendwas.de" gibt es auch andere Aufrufe im Internet. ZB. "rtmp://blaaa" wäre solch einer. Die genaue URL ist nicht für die Ewigkeit, denn ein Anbieter kann jene auch mal wechseln, was im MediaPortal zum Nicht-Funktionieren führt. Dann muss man auf ein Update warten.
Es gibt aber auch Streaming-Plattformenm die http://www.irgedwas.de/stream.mp4 anbieten. Dann würde ein Inhalt eben via HTTP laufen.

Was mache ich, wenn ich RTMP-Dump einstelle, und es passiert nix?

Wenn man RTMP-Dump einstellt, und es passiert nichts, dann kann es auch sein, dass ein Anbieter lediglich HTTP als Protokoll anbietet. Kein Wunder, dass dann RTMP-Dump dort nicht funktioniert... Ok, sollte einleuchten... Doch woher weiß man, dass RTMP-Dump nicht funktioniert? Dafür gibt es derzeit keine Lösung im MP... Man muss es tatsächlich wissen!!! Da das derzeit nicht jeder User weiß, ist es nachvollziehbar, dass es immer wieder Fragen dazu geben wird, obwohl die Problematik bekannt ist.

Was ist überhaupt RTMP-Dump?

RTMP-Dump ist eine Funktion, die nur dann wirksam wird, wenn folgende Vorraussetzungen gegeben sind:

- RTMP-Dump funktioniert nur bei Usern, die eine Festplatte in ihrem Receiver verbaut haben
- RTMP-Dump speichert auf die Festplatte einige Zeit Streaming-Daten eines Streaming-Portal-Anbieters, wenn jeneer auch RTMP-fähig ins MediaPortal einprogrammiert wurde... - RTMP-Dump funktioniert NICHT, bei Streaming-Diensten, die nur HTTP-Streaming anbieten!++

RTMP-Dump

ToDo

HTTP-Dump

ToDo

Abrisse bei manchen Streaming-Portalen/Modulen

ToDo

MediaInfo - Der stille Helfer (nur HTTP)

ToDo

Installation/Auto-Update/Image

ToDo

Art der Installation (Kopieren via FTP oder .ipk Paket)

ToDo

Abhängigkeiten/Installation

ToDo

Nachzuinstallierende Pakete, bei manueller Installation

ToDo

FAQ/Häufigste Fehler

ToDo

Known Bugs

ToDo

Erstellen von Skins

ToDo