MediaPortal: Unterschied zwischen den Versionen

Aus Vu+ WIKI
Wechseln zu: Navigation, Suche
(Python hält Einzug in DVB-Receivern)
Zeile 1: Zeile 1:
  
 +
=Einleitung=
  
 +
===Was ist das MediaPortal ?===
  
= 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ß.
  
==Einleitung==
 
  
===Historisches zu DVB-Receivern===
+
===Historisches zu Enigma2/Linux===
Mitte/Ende der 90er Jahre kam der Startschuss für digitales Fernsehen- und Radio, das parallel zum analogen Broadcasting ausgestrahlt wurde. Dazu ging die Technik DVB (DigitalVideoBroadcasting) an Start. Der Vorteil von DVB - gegenüber Analoger Technik - ist, dass in der Frequenz-Bandbreite eines einzigen, analogen TV-Senders gleich mehrere digitale TV-Sender Platz finden. Das spart Bandbreite und daher Betriebskosten. Zudem ist der Empfang stabiler, bzw. weniger empfindlich. Bei analoger Technik muss das Empfangs-Signal perfekt sein, damit es wirklich gut aussieht (keine "Schattenbilder", kein "Krisseln", usw.). DVB dagegen bringt eine Fehlerkorrektur mit, und gleicht die Empfangsschwächen bis zu einer bestimmten Signalstärke unbemerkt aus.
 
DVB hat aber auch Schwächen: Unter einer Mindest-Empfangsstärke reißt das Signal entweder komplett ab, oder es hat herbe Aussetzer. Weitere Schwächen bringt DVB für den Zuschauer/Hörer, wenn der Programmverbreiter die Datenrate der einzelnen Angebote drosselt, um noch mehr von jenen in die Bandbreite eines analogen Senders unterzubringen. Trotzdem: Selbst wenn die Datenrate relativ hoch ist, passen immer noch mehrere Angebote in die Bandbreite eines analogen Angebots. Ein Programmanbieter kann auch mehrere solcher Bandbreiten mieten, um seine Programmvielfalt nochmals zu erhöhen, oder auch die Qualität. Das Abwägen unter den Faktoren, ist Entscheidung des Providers/Broadcasters.
 
  
Einer der Pioniere unter den deutschsprachigen DVB-Angeboten war DF1. DF1 war ein Anbieter/Provider, der von der Kirch-Gruppe (Leo Kirch, war ein deutscher Filmhändler) gegründet wurde. Die Idee, mittels neuer Technologie nicht einen einzelnen Sender zu gründen, sondern eine ganze Reihe von Sendern (Bouquet), basierte einerseits auf den Bandbreiten-Vorteilen von DVB, als auch, dass die Kirch-Gruppe über ein ungeheures Potential an Rechten über die Ausstrahlung von Filmen verfügte. Um die Vielfalt zu ergänzen sicherte man sich noch zusätzlich die Rechte an beliebten Sport-Events, wie Formel-1. DF1 wurde leicht größenwahnsinnig, und sendete bei einem Formel-1-Rennen sogar einzelne Kameras als DVB-Einzelsender (Unterkanäle) die es dem Zuschauer ermöglichen sollten, selber die Regie zu übernehmen, indem er selber entscheiden konnte, welche Kamera er gerne nun sehen will. Wobei "größenwahnsinnig" evtl. auch ungerecht ausgedrückt ist, denn DF1 setzte halt all' das um, was das DVB-Konsortium als neue Features angepriesen hat. Die Zuschauer waren aber dazu noch nicht bereit, und der Technik-Overkill, sowie Miss-Management trieb DF1, sowie die Kirch-Gruppe in den Ruin.
+
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.
Zu empfangen war DF1 nur mit einem digitalen Zusatz-Empfänger (DVB-Settopbox). Ausgeliefert wurde die DBox(1), ausschließlich von der Firma Nokia. Es dauerte nicht lange, bis die ersten Bastler genauer wissen wollten, was unter der Motorhaube solch einer Box steckt, um ein eigenes (und besseres) Betriebssystem darauf laufen zu lassen, und so wurde die DBox1 in den "Debug-Modus" versetzt, um den Bootloader umlenken zu können. Es entstand "DVB2000", weitgehend in Assembler - von einem findigen Bastler - geschrieben. Nicht nur einzelne Leuchtdioden konnte ("Uli") separat ansteuern, sondern auch die - bislang ungenutzte SCSI-Schnittstelle - wurde unterstützt, um zB. auch eine Sendung auf Festplatte aufnehmen zu können. Das war sensationell! Die Umschaltzeiten erhöhten sich zudem um das 2 bis 6 fache. Einige Zeit später ging DF1 in "Premiere" auf, die zuvor ein ähnliches Konzept verfolgten, aber noch analog sendeten. Es wurde die DBox2 an die Kunden ausgeliefert (Hersteller waren Nokia, Sagem und Phillips).
+
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.
Auch diese Box brachten Schrauber bald in den Debug-Modus, und sie lenkten den Bootloader um, um darauf ein abgespecktes Linux darauf laufen lassen zu können. Daraufhin waren theoretisch die Möglichkeiten unbegrenzt: Es entstand die OpenSource-Community "Tuxbox", die drei Box-Oberflächen ins Leben rief: Enigma, Neutrino und LCARS, und es wurde damals in C und C++ sowie auch in Assemblerteilen programmiert. LCARS hatte sich nicht durchsetzen können. Zunächst schien Neutrino sich durchzusetzen, da dort das Aufnehmen von DVB-Sendungen auf Festplatte zuerst am stabilsten war. Doch die Industrie interessierte sich dennoch mehr für Enigma, da der Haupt-Programmierer zukunftsorientierter programmierte, die besseren APIs bot, und auch jenseits des - damals etablierten GTX-Chips der DBoxen - schnelle Lösungen anbieten konnte.
 
  
===Python hält Einzug in DVB-Receivern===
 
  
Später erschienen durch neu gegründete Firmen einige DVB-Receiver auf Linux(Tuxbox)-Basis (mit neueren Technik-Features), die eine hohe Fangemeinde hatten, da sie zunächst zu großen Teilen mit den Sourcen der Tuxbox-Community liefen.
+
===Python hält Einzug in Linux basiernde DVB-Receiver===
Enigma hat sich als Standard der neuen Firmen am Ende durchgesetzt, und später entstand Enigma2, welches unter Python läuft. Zuvor gab es stets das "Prozessor-Problem". In der Regel programmiert man auf einem PC mit einem x86 Prozessor. Doch die Receiver haben andere Prozessoren. Damit die - auf dem PC entwickelte - Software auch auf dem Receiver läuft, benötigte es einen Cross-Compiler, der ausführbare Binaries für die Receiver verständlich compiliert. Mit Python kam alles anders: Der Cross-Compiler ist bereits in der Box enthalten: Man muss nur noch - mit einem Texteditor geschriebene - Sourcen via FTP in den Receiver hochladen, und nach Neustart kümmert sich ein - im Receiver enthaltener - Compiler darum. Die Sourcen werden also direkt im Receiver in Maschinenlesbare Formate übersetzt.
+
 
Genau darauf basiert auch das MediaPortal...
+
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===
 
===Enigma2 nicht gleich Enigma2===
  
Angetriggert durch "Tuxbox" wandte sich die Firma "DreamMultimedia" als einer der Ersten Enigma zu. Einige Teile von Tuxbox (zB. die Treiber zu Dreamboxben) wurden bei Dreamboxen von Anfang an "NonPublic", und somit "ClosedSource". Als dann andere Firmen (wie der Hersteller von VU+ Boxen) sich daran anschlosssen, entschied sich DMM ihre Source noch weiter zu "closen".
+
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.
Es wurde dazu einst ein "Fork" gemacht, und von fortan driftete Enigma2 zwischen den Herstellern auseinander. Demnach gibt es Dinge, die auf einer Dreambox problemlos laufen, aber auf einer VU+-Box nicht. Daher ist Enigma2 nicht gleich Enigma2.
 
  
 
<br><br>
 
<br><br>
  
==Was ist das MediaPortal ?==
+
=Was bietet das MediaPortal?=
 +
 
 +
===Quantität===
 +
 
 +
Es gibt vier Hauptkategorien (mit dem Stand von März 2014 zur v5.1.2):
 +
 
 +
- Mediatheken ( > 30 Module )<br>
 +
- Grauzone ( < 20 Module)<br>
 +
- Fun/Music/Sport ( > 60 Module)<br>
 +
- Porn ( > 40 Module)<br>
 +
 
 +
===Qualität===
  
Das MediaPortal ist eine - unter Python entwickelte - Zusatzsoftware (Plugin) für digitale TV/Radio-Empfangsgeräte (Receiver/Settopboxen), die im DVB-Receiver-Betriebssystem Enigma2 residiert. Somit läuft es u.a. unter Dreamboxen, sowie VU+ Boxen.
+
Die Qualität der Module im MediaPortal sind stark von äußeren Einflüssen abhängig, sowie natürlich auch von Fehlern, die im Team der MediaPortal-Programmierer passieren können. Grundsätzlich gibt kein Programmierer ein Modul zu einer Plattform mit Streaming-Inhalten frei, wenn er es nicht selber ordentlich geprüft hat!<br>
Das MediaPortal ist im Grunde eine Sammlung von Plugins, die innerhalb einer - von den Programmierern stets weiterentwickelten - einheitlichen Oberfläche läuft. Die Einzel-Plugins (Module) geben Inhalte der Mediatheken von ARD/ZDF/RTL/N24 usw. wieder. Aber auch Module von rechtlich nicht eindeutig geklärten Plattformen (Grauzone), sowie Erotik-Inhalte verschiedener Anbieter werden hier vereint.
+
Wenn ein Modul nicht mehr funktionieren sollte, wurde meist irgendein Detail auf Seiten des Streaming-Portals geändert, was in den Sourcen dann noch auf den vorigen Details fundiert. Sollte so etwas vorkommen, dann ist es 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.<br>
Die Grauzone-Angebote müssen vom User - nach Akzeptierung - innerhalb des Setup-Menüs erst freigeschaltet werden. Die Programmierer distanzieren sich für die Verwendung.
+
'''Doch bevor ein User im offiziellen Thread 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...<br><br>
Ähnlich verhält es sich bei den Angeboten von erotischen Inhalten. Jene müssen nicht nur ebenso vom User erst freigeschaltet werden, sondern hier greift zusätzlich noch ein Jugendschutz. Einerseits sind sie mit einem PIN geschützt, sowie andererseits kann man sie mit einer "Panikfunktion" auch bei überraschendem Besuch auch mit einer Taste "verstecken", sodass niemand von der Existenz weiß.
+
a) an Änderungen am Streaming-Portal liegen, oder<br>
 +
b) an Störungen beim Provider eines Users, oder an individueller Fehlkonfiguration im LAN-Umfeld, oder an Fehlern nach einem Update an *irgendeiner* Komponente im Receiver, und und und...<br><br>
 +
Daher ist es sehr wichtig für die Programmierer des MediaPortals, zu wissen, dass all' diese Faktoren bereits vom User geprüft wurden!'''

Version vom 6. März 2014, 23:08 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, sowie natürlich auch von Fehlern, die im Team der MediaPortal-Programmierer passieren können. Grundsätzlich gibt kein Programmierer ein Modul zu einer Plattform mit Streaming-Inhalten frei, wenn er es nicht selber ordentlich geprüft hat!
Wenn ein Modul nicht mehr funktionieren sollte, wurde meist irgendein Detail auf Seiten des Streaming-Portals geändert, was in den Sourcen dann noch auf den vorigen Details fundiert. Sollte so etwas vorkommen, dann ist es 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 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 Störungen beim Provider eines Users, 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 geprüft wurden!