Neutrino:Customizing: Unterschied zwischen den Versionen

Aus TuxBoxWIKI
Zur Navigation springen Zur Suche springen
(Änderung 10727 von Dixidix (Diskussion) wurde rückgängig gemacht.)
KKeine Bearbeitungszusammenfassung
 
(35 dazwischenliegende Versionen von 9 Benutzern werden nicht angezeigt)
Zeile 7: Zeile 7:


=Allgemeines=
=Allgemeines=
Unter [[Neutrino]] gibt es einige Möglichkeiten die Benutzeroberfläche ([[GUI]]) nach seinen eigenen Wünschen anzupassen und da [[Neutrino]] nach dem Client-Server Prinzip funktioniert, lässt sich [[Neutrino]] über einige Befehle mittels [[API]] auch ohne [[GUI]] in gewissem Umfang bedienen. Desweiteren besteht auch die Möglichkeit, einzelne Ereignisse wie z.B. Aufnahmestop, Bildformatumschaltung etc. abzufangen und diese bei Bedarf mittels [[WP:Unix-Shell|Shell-]][[WP:Bash|Script]] für bestimmte zusätzliche Funktionen zu nutzen. Es wäre auch möglich, ein eigenes Webinterface zu benutzen.  
Unter [[Neutrino]] gibt es einige Möglichkeiten die Benutzeroberfläche ([[GUI]]) nach seinen eigenen Wünschen anzupassen und da [[Neutrino]] nach dem Client-Server Prinzip funktioniert, lässt sich [[Neutrino]] über einige Befehle mittels [[Programmierschnittstelle|API]] auch ohne [[GUI]] in gewissem Umfang bedienen. Desweiteren besteht auch die Möglichkeit, einzelne Ereignisse wie z.B. Aufnahmestop, Bildformatumschaltung etc. abzufangen und diese bei Bedarf mittels [[WP:Unix-Shell|Shell-]][[WP:Bash|Script]] für bestimmte zusätzliche Funktionen zu nutzen. Es wäre auch möglich, ein eigenes Webinterface zu benutzen.  


=Benutzeroberfläche anpassen=
=Benutzeroberfläche anpassen=
Zeile 28: Zeile 28:
==eigene Icons==
==eigene Icons==
Für alle Icons, also Symbole, die in den Menüs und Fenstern zu sehen sind, können ersatzweise eigene Icons verwendet werden. Es werden dafür entsprechende Dateien im Raw-Format benötigt. Auch die Größe sollte man dabei beachten, damit es zu keinen unschönen Abbildungen in den jeweiligen Fenstern kommt.  
Für alle Icons, also Symbole, die in den Menüs und Fenstern zu sehen sind, können ersatzweise eigene Icons verwendet werden. Es werden dafür entsprechende Dateien im Raw-Format benötigt. Auch die Größe sollte man dabei beachten, damit es zu keinen unschönen Abbildungen in den jeweiligen Fenstern kommt.  
Mgck hat auch ein kleines Programm ([http://tuxbox-forum.dreambox-fan.de/forum/viewtopic.php?f=27&t=45435 RawIconEditor] )zum editieren solcher Icons geschrieben, womit man relativ einfach solche Icons bearbeiten kann.
Mgck hat auch ein kleines Programm ([http://www.tuxbox.org/forum/viewtopic.php?f=27&t=45435 RawIconEditor] )zum editieren solcher Icons geschrieben, womit man relativ einfach solche Icons bearbeiten kann.
Die entsprechenden Icons werden hier abgelegt:
Die entsprechenden Icons werden hier abgelegt:


  var/share/tuxbox/neutrino/icons/
  var/share/tuxbox/neutrino/icons/
==eigene Radiomode-, Shutdown- und Scanbilder==
Ebenso wie Icons lassen sich auch die Hintergrundbilder austauschen. Dies erfolgt auf die gleiche Weise wie bei eigenen Icons. Der Unterschied ist nur, dass auch die dazugehörigen .pal-Dateien nicht vergessen werden dürfen. Diese Hintergrundbilder sind relativ groß und schlucken einiges vom ohnehin knappen Speicherplatz in der Box. Man sollte daher eigentlich davon absehen diese Logos zu tauschen, aber wenn man es dennoch haben möchte, sei hier der Hinweis angebracht, dass das Risiko, sein Image "platzen" zu lassen ungemein größer wird. Alternativ besteht auch die Möglichkeit Symlinks auf die Dateien zu setzen. Diese können dann auf ein Ausgelagertes Verzeichnis zeigen, welche sich z.B. auf MMC oder HDD befinden.


==Senderlogos==
==Senderlogos==
ab CVS-Stand 25.05.2008  
ab CVS-Stand 17.07.2008  




Im Infobar besteht die Möglichkeit, Senderlogos einzublenden. Es werden dafür entsprechende Dateien vom gleichen Raw-Format wie Icons benötigt und auch im gleichen Ordner wie die alternativen Icons abgelegt.
Im Infobar besteht die Möglichkeit, Senderlogos einzublenden.  
 
===Dateiformat und Speicherort===
Es werden dafür entsprechende Dateien vom gleichen Raw-Format wie Icons benötigt und werden standardmäßig im gleichen Ordner wie die alternativen Icons abgelegt.
  /var/share/tuxbox/neutrino/icons/
  /var/share/tuxbox/neutrino/icons/
Je nachdem wo man diese angezeigt haben möchte, ist die Größe der Dateien variabel, nur die Höhe der Grafiken darf 66px nicht überschreiten. Richtwerte sind 120x64px. Die Position der Logos lässt sich, sofern dieser Menüeintrag aktiviert ist, im Menü  
Der Speicherort ist entsprechend den eigenen Bedürfnissen anpassbar.
'''''Diverse Einstellungen>Infobar>Senderlogo anzeigen''''' einstellen.  
 
'''Hinweis!'''
 
''Bei [[jFFS2|jffs2]]-[[Images]] ist '''kein''' '''''/var''''' Ordner vorhanden. Falls man nicht bereits einen anderen Speicherort eingetragen hat, muss das Verzeichnis entsprechend ohne das '''''/var''''' in den Infobareinstellungen eingetragen werden. Ohne dies zu beachten, werden dann natürlich keine Logos angezeigt!
/share/tuxbox/neutrino/icons/''
 
[[Bild:Stop_hand.png|none]]'''Warnung!'''
''Auch wenn die Möglichkeit besteht, die verschiedensten Dateien in den Var-Bereich eines [[Images]] zu packen, sollte man es nicht übertreiben und möglichst nur das einspielen, was auch wirklich gebraucht wird. Die Gefahr sein [[Images|Image]] zu zerstören ("[[Imageplatzer]]") steigt mit jedem Byte, das dazu kommt. Eine [[Neutrino:Service:Software-Aktualisierung:Experten-Funktionen|Sicherung]] des [[Images]] ist in jedem Fall ratsam!''
''Empfehlenswert ist daher, eine Auslagerung auf ein [[SD-Medium]], sofern man ein entsprechendes [[Hardware:dbox2:Erweiterungen:IDE-Interface|IDE-Interface]] nutzen kann. Eine Auslagerung auf [[HDD]] ist auch möglich, jedoch eher unpraktisch für Daten die recht häufig geholt werden müssen, insbesondere wenn sich die [[HDD]] gerade mal eben vom [[Spindown]] aufrappeln muss.''
 
===Größe der Logos===
Je nachdem wo man die Logos angezeigt haben möchte, ist auch die Größe der Grafikdateien variabel. Erfahrungsgemäß sind Logos mit der Größe 120x34px zu empfehlen, damit sie optisch am besten auf allen Positionen eingepasst werden können. Diese Empfehlung ist allerdings nicht zwingend, da abhängig von der Position, an welcher die Logos platziert werden sollen unterschiedliche Platzverhältnisse vorhanden sind. So kann es durchaus vorkommen, dass ein Logo an der Stelle des Programmnames sehr gut passt, aber für die Anzeige im Ziffernfeld viel zu breit ist und deshalb nicht angezeigt wird. Es liegt also im Ermessen der Logoersteller für welche Position sie ihre Logos bevorzugt herstellen. Die Position der Logos lässt sich im Menü [[Neutrino:Einstellungen:OSD]]->'''Infobar''' einstellen
 
'''''Hinweis!''' In älteren Image-Versionen ist diese Funktion unter [[Neutrino:Einstellungen:Diverse_Einstellungen|Diverse Einstellungen]]->Infobar->Anzeige
zu finden.''
 
 
'''Hinweis!'''
 
''Die normale Anzeige von Programmnummer und Sendername hat Vorrang gegenüber der Anzeige der Logos, was bedeutet, dass Logos nur dann angezeigt werden, wenn sie auch an der entsprechenden Stelle des Infobars genug Platz haben, um die Anzeige der Standardinformationen nicht zu verschlechtern oder gar zu verhindern. Es spielt also durchaus eine Rolle was man für [[Neutrino:Einstellungen:Video#Bildbereich_einstelle|OSD- ]] und [[Neutrino:Einstellungen:Farben#Schriftgr.C3.B6.C3.9Fe|Schriftgrößen-Einstellungen]] vorgenommen hat. Sollte es damit Probleme geben, wird dies im [[Bootlog|Log]] der Box auch mitgeteilt.''  
 
 
===Darstellung===
Es besteht auch die Möglichkeit den Hintergrund der Logos gerahmt oder schattiert darzustellen. Dies kann unter Umständen bei bestimmten Themes sinnvoll sein.
*[[Bild:infobar_channellogo_gerahmt.png|300px]]
*[[Bild:infobar_channellogo_schattiert.png|300px]]
 
Die Darstellung der Logos lässt sich im Menü [[Neutrino:Einstellungen:OSD]] einstellen.
 
'''''Hinweis!:''' In älteren Image-Versionen ist diese Einstellung noch unter''''' [[Neutrino:Einstellungen:Diverse_Einstellungen|Diverse Einstellungen]] zu finden'''''




Zeile 46: Zeile 81:




Der Dateiname für ein Logo setzt sich aus der '''ChannelID''' und der Dateiendung "'''.raw'''" zusammen.
===Dateinamen===
Der Dateiname für ein Logo setzt sich aus der '''ChannelID''' '''oder''' dem '''Realnamen des Kanals''' wie er in den EPG-Informationen angezeigt wird und der Dateiendung "'''.raw'''" zusammen.
Beispiel hier für 3Sat:
Beispiel hier für 3Sat:
  43700016d67.raw
  43700016d67.raw
Diese ChannelID ist eine Kombination einiger Daten, die man beispielsweise aus den [[Neutrino#Technische_Information|Streaminfos]] abrufen kann.  
oder
3sat.raw
 
Die ChannelID ist eine Kombination einiger Daten, die man beispielsweise aus den [[Neutrino#Technische_Information|Streaminfos]] abrufen kann.  
*[[Bild:Technische_informationen.png|400px]]
*[[Bild:Technische_informationen.png|400px]]
Diese setzt sich zusammen aus  
Diese setzt sich zusammen aus  
Zeile 65: Zeile 104:
enthält ebenfalls diese Daten.
enthält ebenfalls diese Daten.


'''Hinweis:''' ''Die ChannelID's sind je nach Empfangsmöglichkeiten (Kabel-Provider, Satellit  usw.) unterschiedlich. Wenn es denn möglich sein sollte, könnte man evtl. auf vorgefertigte Logo-Packs zurückgreifen. Derzeit gibt es aber nur wenige Quellen''
'''Hinweis:''' ''Die ChannelID's sind je nach Empfangsmöglichkeiten (Kabel-Provider, Satellit  usw.) unterschiedlich. Wenn möglich, sollte man evtl. auf vorgefertigte Logo-Packs zurückgreifen.''




Wird solch eine Raw-Datei anhand der ChannelID erkannt, wird sie automatisch zum passenden Kanal angezeigt.
Wird solch eine Raw-Datei anhand der ChannelID bzw. dem Sendernamen erkannt, wird sie automatisch zum passenden Kanal angezeigt.


Hier einige Beipiele:
Hier einige Beipiele:
Zeile 82: Zeile 121:
Nach dem Einspielen sind die Logos sofort verfügbar sobald sie durch den Infobar aufgerufen werden. Ein Neustart von Neutrino ist nicht erforderlich.
Nach dem Einspielen sind die Logos sofort verfügbar sobald sie durch den Infobar aufgerufen werden. Ein Neustart von Neutrino ist nicht erforderlich.


===Verfügbarkeit von Logos===
Sollte jemand Logos zur Verfügung stellen wollen, besteht [http://www.dbox2-tuning.net/ulc hier] die Möglichkeit, Logos zu sammeln.
Sollte jemand Logos zur Verfügung stellen wollen, besteht [http://www.dbox2-tuning.net/ulc hier] die Möglichkeit, Logos zu sammeln.
Eine Online-Nachladefunktion ist geplant, aber derzeit noch nicht verfügbar.




==eigene LCD-Vorlagen==
==eigene LCD-Vorlagen==
Neben dem [[Bootlogo austauschen|LCD-Bootlogo]] lassen sich auch die während des Betriebs der Box vom LC-Displays abgebildeten Hintergründe nach eigenen Wünschen austauschen. Hierfür werden Bilder im png-Format mit einer Auflösung von 120x64 Pixel 1bit-Modus, horizontale und vertikale Auflösung jeweils 96 dpi benötigt.
Neben dem [[Dbox2:Bootlogo austauschen|LCD-Bootlogo]] lassen sich auch die während des Betriebs der Box vom LC-Displays abgebildeten Hintergründe nach eigenen Wünschen austauschen. Hierfür werden Bilder im png-Format mit einer Auflösung von 120x64 Pixel 1bit-Modus, horizontale und vertikale Auflösung jeweils 96 dpi benötigt.
Speicherort:
Speicherort:


  var/share/tuxbox/neutrino/lcdd/
  var/share/tuxbox/neutrino/lcdd/


Diese Dateien können hierbei ersetzt werden:
*lcd.png
*lcd2.png
*lcd3.png
*power.png
*setup.png


=Ereignisse abfangen=
=eigene Bootlogos verwenden=


{{MissingText}}
siehe [[Dbox2:Bootlogo austauschen|Bootlogo austauschen]]




==Aufnahme Start==
=Ereignisse abfangen=
Wenn eine Aufnahme gestartet wird, wird zunächst (wenn vorhanden) dieses Skript ausgeführt:
Angenommen man möchte eine nächtliche Timeraufname machen und diese aber möglicht bald auf seinem Rechner wiederfinden. Hier kann es beispielsweise nützlich sein, nachdem die Aufnahme beendet wurde, sich diese von einer evtl. vorhandenen Festplatte über das Netzwerk auf seinen Rechner kopieren zu lassen. Genau hierfür bietet Neutrino die Möglichkeit, eine entsprechende Aktion auszuführen. In diesem Fall wäre es das Script '''recording.end''' dass, sofern es vorhanden und ausführbar ist, nach jedem Ende einer Aufnahme ausgeführt wird. Dieses und noch einige weitere Ereignisse lassen sich damit abfangen und nutzen... 


/var/tuxbox/config/recording.start  (Rechte auf 755)
==Aufnahme==
{{customize_recording}}




==Aufnahme Ende==
==Standby==
Seit [[Yadi]] 1.9.0.2 ist im folgenden Pfad eine Beispielkonfiguration für ein Skript, was bei Aufnahmeende ausgeführt wird. Damit es ausgeführt wird, muss es in record.end umbenannt werden. Rechte müssen auf 755 stehen.
{{customizing_standby}}


/var/tuxbox/config/recording.end''.dist''


Wenn ihr das Beispielskript /var/tuxbox/config/recording.end.dist umbenennt in recording.end werden die aufgenommenen ts-files mit dbox2genpsi gepatcht, sodass sie auch unter [[Enigma]] abspielbar sind.
==Audioplayer==
{{customizing_audioplayer}}


und so sieht es aus:
#!/bin/sh
# $Id: recording.end,v 1.5 2004/08/07 21:11:31 essu Exp $
FOUND=`grep network_nfs_recordingdir /var/tuxbox/config/neutrino.conf` || exit
RECDIR=`expr substr $FOUND 26 154`
cd $RECDIR && FILES=`ls -c *.ts` || exit
for FILE in $FILES; do
break;
done
dbox2genpsi $RECDIR/$FILE


Natürlich können an dieser Stelle auch andere Skripte ausgeführt werden.
==Bildbetrachter==
{{customizing_picviewer}}




==Standby ON==
==Movieplayer==
Wenn die Box in den Standby geschickt wird, wird dieses Skript (wenn vorhanden) ausgeführt:
{{customizing_movieplayer}}


/var/tuxbox/config/standby.on  (Rechte auf 755)


==Bildformatumschaltung==
{{customizing_formatswitch}}


==Standby OFF==
Wenn die Box aus dem Standby geholt wird, wird dieses Skript (wenn vorhanden) ausgeführt:


/var/tuxbox/config/standby.off  (Rechte auf 755)
==Kanalsuche==
{{customizing_scan}}


==Audioplayer Start==
Wenn der Audioplayer gestartet wird, wird dieses Skript (wenn vorhanden) ausgeführt:


/var/tuxbox/config/audioplayer.start  (Rechte auf 755)
==IDE-Menü==
Beispiel:
{{Mount unmount scripts}}
#!/bin/sh
killall -9 sectionsd
Das beendet den [[sectionsd]] beim Starten des [[Audioplayer]]s


==Sambadienstprogramme Auslagern==
{{Samba}}


==Audioplayer Stop==
=OSD-Schriftart=
Wenn der Audioplayer beendet wird, wird dieses Skript (wenn vorhanden) ausgeführt:
{{customizing_osdfont}}
 
/var/tuxbox/config/audioplayer.end  (Rechte auf 755)
Beispiel:
#!/bin/sh
sectionsd
Das startet den [[sectionsd]] nach Beendung des [[Audioplayer]]s
 
 
==Bildbetrachter Start==
(ab Pictureviewer Version 1.63)
Wenn der [[Neutrino:Bildbetrachter|Bildbetrachter]] gestartet wird, wird dieses Skript (wenn vorhanden) ausgeführt:
 
/var/tuxbox/config/pictureviewer.start  (Rechte auf 755)
Beispiel:
#!/bin/sh
killall -9 sectionsd
Das beendet den [[sectionsd]] beim Starten des [[Neutrino:Bildbetrachter|Bildbetrachter]]s
 
 
==Bildbetrachter Stop==
Wenn der [[Neutrino:Bildbetrachter|Bildbetrachter]] beendet wird, wird dieses Skript (wenn vorhanden) ausgeführt:
 
/var/tuxbox/config/pictureviewer.end  (Rechte auf 755)
 
 
==Movieplayer Start==
Wenn der Movieplayer gestartet wird, wird dieses Skript (wenn vorhanden) ausgeführt:
 
/var/tuxbox/config/movieplayer.start  (Rechte auf 755)
Beispiel:
#!/bin/sh
killall -9 sectionsd
Das beendet den [[sectionsd]] beim Starten des [[Movieplayer]]s
 
 
==Movieplayer Stop==
Wenn der Movieplayer beendet wird, wird dieses Skript (wenn vorhanden) ausgeführt:
 
/var/tuxbox/config/movieplayer.end  (Rechte auf 755)
Beispiel:
#!/bin/sh
sectionsd
Das startet den [[sectionsd]] nach Beendung des [[Movieplayer]]s
 
 
==Bei Bildformatumschaltung==
Wenn das jeweilige Bildformat umgeschaltet wird, werden diese Skripte (wenn vorhanden) ausgeführt:
 
/var/tuxbox/config/16:9.start  (Rechte auf 755)
 
/var/tuxbox/config/4:3.start  (Rechte auf 755)
 
Ausserdem gibt es noch die Alternativen für [[Lirc]], welche ebenfalls genutzt werden können.
 
16:9.lirc
 
4:3.lirc




Zeile 211: Zeile 190:
  /share/tuxbox/neutrino/httpd
  /share/tuxbox/neutrino/httpd


Bei [[squashFS]] [[Images]] ([[Yadi]]) ist dieses Verzeichnis schreibgeschützt. Das heißt, dass Änderungen dort nicht so einfach möglich sind. Es gibt jedoch einen Eintrag in der nhttpd.conf, der einen alternativen Pfad beinhaltet. Man erstellt unter /var das Verzeichnis "httpd":
Bei [[squashFS]] [[Images]] ([[Images:Yadi|Yadi]]) ist dieses Verzeichnis schreibgeschützt. Das heißt, dass Änderungen dort nicht so einfach möglich sind. Es gibt jedoch einen Eintrag in der nhttpd.conf, der einen alternativen Pfad beinhaltet. Man erstellt unter /var das Verzeichnis "httpd":
  /var/httpd
  /var/httpd
In diesen Pfad kann man das alternative Webinterface ablegen. Bei Aufruf im Browser
In diesen Pfad kann man das alternative Webinterface ablegen. Bei Aufruf im Browser
  <nowiki>http://<dboxIP>/</nowiki>
  <nowiki>http://<dboxIP>/</nowiki>
erscheint die in diesem Verzeichnis abgelegte "index.html"
erscheint die in diesem Verzeichnis abgelegte "index.html"
=nhttpd /control api doku=
Diese Dokumentation ist auch im [[CVS]] [http://cvs.tuxbox.org/cgi-bin/viewcvs.cgi/tuxbox/apps/tuxbox/neutrino/daemons/nhttpd/api_doku.txt?view=markup hier] zu finden. Bei Aufrufen vom Browser ist im Handler "dbox" durch die IP Adresse der Dbox zu ersetzen.
==Die Kanalliste==
'''Handler:''' <nowiki>http://dbox/control/channellist</nowiki><br>
'''Parameter:''' keine<br>
'''Rückgabe:'''
Es wird die gesamte Kanalliste von [[Neutrino]] zurückgegeben. Jede Zeile wird von einem Enter (\n) von der Nächsten getrennt. Eine Zeile enthält ein Programm.
'''Rückgabeformat:''' channel_id Programmname
Die channel_id dient als Handle für andere Operationen wie Zappen oder [[EPG]].
Die channel_id ist eine 64 bit Hexadezimalzahl.
'''Beispiel:'''
>>><nowiki>http://dbox/control/channellist</nowiki>
16dca Das Erste
16e29 EinsExtra
16e2a EinsFestival
16e2b EinsMuXx
16d66 ZDF
==EPG-Abfrage==
'''Handler:''' <nowiki>http://dbox/control/epg</nowiki><br>
'''Parameter:''' keine<br>
'''Rückgabe:'''
Es werden alle verfügbaren EPGs aller Programme zur aktuellen Zeit zurückgegeben. Jede Zeile wird von einem Enter (\n) von der Nächsten getrennt. Eine Zeile enthält die Information über die aktuell laufende Sendung.
'''Rückgabeformat:''' channel_id EVENTID Titel der Sendung
Die EVENTID dient als Handle um genauere Informationen abzufragen.
'''Beispiel:'''
>>><nowiki>http://dbox/control/epg</nowiki>
8716804 571264467523 Wasserloch Nr. 3
8716304 571231699926 Ein Käfig voller Helden
8716311 571232198133 Cop Rock
'''Parameter:''' channel_id (64 bit, hexadezimal)<br>
'''Rückgabe:'''
Als Rückgabe wird die Eventliste des durch die channel_id identifizierten Senders gesendet, d.h. eine Liste, welche Filme auf diesem Sender kommen. Jede Zeile wird von einem Enter (\n) von der Nächsten getrennt.
'''Rückgabeformat:''' EVENTID Startzeit Dauer Titel der Sendung
Die EVENTID dient als Handle um genauere EPG-Informationen abzufragen.
'''Beispiel:'''
>>><nowiki>http://dbox/control/epg?8716304</nowiki>
571231699925 1021322700 1500 Shooting Stars
571231699926 1021324200 1500 Ein Kaefig voller Helden
571231699927 1021325700 1500 The Hitchhiker
571231699928 1021327200 1500 The Hitchhiker
'''Parameter:''' id=channel_id<br>
'''Rückgabe:'''
Als Rückgabe wird die Eventliste des durch die channel_id identifizierten Senders gesendet, das heißt eine Liste, was für Filme auf einem Sender kommen. Jeder Datensatz wird von einem EnterEnter (\n\n) vom  Nächsten getrennt.
'''Rückgabeformat:'''
EVENTID Startzeit DURATION
TITLE
INFO1
INFO2
Die EVENTID dient als Handle um genauere EPG-Informationen abzufragen.
'''Beispiel:'''
>>><nowiki>http://dbox/control/epg?id=16dcb</nowiki>
6143198520 1067754600 1800
Daten der Woche
Moderation: Andrea Müller
Themen:Š* Kandidatenkür: Maas wird SpitzenkandidatŠ* ......
6143198521 1067756400 1800
Abendschau
Themen:Š* Protestmarsch "Es reicht"Š* ..........
'''Parameter:''' eventid=EVENTID<br>
'''Rückgabe:'''
Es wird die ausführliche Beschreibung eines Films zurückgegeben. Diese besteht aus einem Titel, einer allgemeinen Info und der Beschreibung. Titel Info und Beschreibung werden mit einem Enter (\n) voneinander getrennt. Es muss beachtet werden, dass in der Beschreibung weitere Enter vorkommen können.
'''Rückgabeformat:'''<br>
Titel<br>
Info<br>
Beschreibung
'''Beispiel:'''
>>><nowiki>http://dbox/control/epg?eventid=571231699926</nowiki>
Ein Käfig voller Helden
Operation 'Tiger'
blablabla
'''Parameter:''' ext<br>
'''Rückgabe:'''
Es werden alle verfügbaren EPGs aller Programme zur aktuellen Zeit zurückgegeben. Jede Zeile wird von einem Enter (\n) von der Nächsten getrennt.
Eine Zeile enthält die Information über die aktuell laufende Sendung.
'''Rückgabeformat:''' channel_id Startzeit Dauer EVENTID Titel der Sendung
Die EVENTID dient als Handle um genauere Informationen abzufragen.
'''Beispiel:'''
>>><nowiki>http://dbox/control/epg?ext</nowiki>
8716330 1025382300 6900 571233417784 Rocky 2
==Die DBox herunterfahren==
'''Handler:''' <nowiki>http://dbox/control/shutdown</nowiki>
'''Parameter:''' keine<br>
'''Rückgabe:'''
Es wird der Text "ok" bei Erfolg oder "error" im Fehlerfall zurückgegeben. Die Dbox schaltet sich bei "ok" sofort ab.
'''Rückgabeformat:''' ok / error
'''Beispiel:'''
>>><nowiki>http://dbox/control/shutdown</nowiki>
ok
==Standby Mode==
'''Handler:''' <nowiki>http://dbox/control/standby</nowiki>
'''Parameter:''' on<br>
'''Rückgabe:'''
Schaltet in den Standby Mode
'''Rückgabeformat:''' ok /error
'''Beispiel:'''
>>><nowiki>http://dbox/control/standby?on</nowiki>
ok
'''Parameter:''' off<br>
'''Rückgabe:'''
Schaltet den Standby Mode aus
'''Rückgabeformat:''' ok /error
'''Beispiel:'''
>>><nowiki>http://dbox/control/standby?off</nowiki>
ok
==Lautstärke-Steuerung==
'''Handler:''' <nowiki>http://dbox/control/volume</nowiki>
'''Parameter:''' keine<br>
'''Rückgabe:'''
Es wird die aktuell eingestellte Lautstärke zurückgegeben - die Werte bewegen sich zwischen 0 (leise) und 100 (laut).
'''Rückgabeformat:''' Lautstärke
'''Beispiel:'''
>>><nowiki>http://dbox/control/volume</nowiki>
80
'''Parameter:''' <Lautstärke als ganze Zahl in 5er Schritten><br>
'''Rückgabe:'''
Es kann die Lautstärke eingestellt werden - die Werte müssen sich zwischen 0 (leise) und 100 (laut) bewegen. Es sollten nur Werte in 5er-Schritten gesetzt werden (5,10,...).
'''Rückgabeformat:''' ok / error
'''Beispiel:'''
>>><nowiki>http://dbox/control/volume?40</nowiki>
ok
'''Parameter:''' mute<br>
'''Rückgabe:'''
Die Audio-Ausgabe wird abgeschaltet. Es kommt als Bestätigung der String "mute" zurück.
'''Rückgabeformat:''' ok
'''Beispiel:'''
>>><nowiki>http://dbox/control/volume?mute</nowiki>
mute
'''Parameter:''' unmute<br>
'''Rückgabe:'''
Die Audio-Ausgabe wird wieder eingeschaltet. Es kommt als Bestätigung der String "unmute" zurück.
'''Rückgabeformat:''' ok
'''Beispiel:'''
>>><nowiki>http://dbox/control/volume?mute</nowiki>
unmute
'''Parameter:''' status<br>
'''Rückgabe:'''
Es wird der Status (ob gerade mute aktiv ist) zurückgegeben. (0 - unmuted, 1 - mute)
'''Rückgabeformat:''' 0 oder 1
'''Beispiel:'''
>>><nowiki>http://dbox/control/volume?status</nowiki>
1
==Programm umschalten / Playback==
'''Handler:''' <nowiki>http://dbox/control/zapto</nowiki>
'''Parameter:''' keine<br>
'''Rückgabe:'''
Es wird die channel_id (hex-value, 64 bit, kein 0x-prefix) des aktuell laufenden Senders zurückgegeben.
'''Beispiel:'''
>>><nowiki>http://dbox/control/zapto</nowiki>
16dcb
'''Parameter:''' getpids<br>
'''Rückgabe:'''
Es werden die VPID und die APID des laufenden Senders angezeigt. Die beiden Werte sind durch ein Enter voneinander getrennt.
'''Rückgabeformat:''' VPID, APID
'''Beispiel:'''
>>><nowiki>http://dbox/control/zapto?getpids</nowiki>
305
306
'''Parameter:''' getallpids<br>
'''Rückgabe:'''
Es werden die VTXT PID, VPID und alle APIDs des laufenden Senders angezeigt. Die Werte sind durch ein Enter voneinander getrennt. Hinter jeder APID wird eine kurze Beschreibung angegeben, bei [[AC3]] Streams zusätzlich (AC3).
'''Rückgabeformat:'''<br>
VPID<br>
APID <description> [(AC3)]<br>
[APID...]<br>
[VTXT PID]
'''Beispiel:'''
>>><nowiki>http://dbox/control/zapto?getallpids</nowiki>
00511
00512 deutsch
00513 englisch
00515 Dolby Digital 2.0
00032 vtxt
00101 pmt
oder
00101
00102 German 
00104 vtxt
00100 pmt
'''Parameter:''' stopplayback<br>
'''Rückgabe:'''
Stoppt die Decodierung, um grabben zu können. Zusätzlich wird der Sectionsd gestoppt. Rückgabewert sollte ok für Erfolg sein.
'''Rückgabeformat:''' ok / error
'''Beispiel:'''
>>><nowiki>http://dbox/control/zapto?stopplayback</nowiki>
ok
'''Parameter:''' startplayback<br>
'''Rückgabe:'''
Startet die Decodierung nach dem Grabben wieder, [[Sectionsd]] wird auch wieder gestartet. Rückgabewert sollte ok für Erfolg sein.
'''Rückgabeformat:''' ok
'''Beispiel:'''
>>><nowiki>http://dbox/control/zapto?startplayback</nowiki>
ok
'''Parameter:''' statusplayback<br>
'''Rückgabe:'''
'1': Playback aktiv, '0': kein Playback aktiv
'''Rückgabeformat:''' 0/1
'''Beispiel:'''
>>><nowiki>http://dbox/control/zapto?statusplayback</nowiki>
0
'''Parameter:''' stopsectionsd<br>
'''Rückgabe:'''
Stoppt den [[Sectionsd]] zum Grabben. Rückgabewert sollte ok für Erfolg sein.
'''Rückgabeformat:''' ok
'''Beispiel:'''
>>><nowiki>http://dbox/control/zapto?stopsectionsd</nowiki>
ok
'''Parameter:''' startsectionsd<br>
'''Rückgabe:'''
Startet [[Sectionsd]] nach dem Grabben wieder. Rückgabewert sollte "ok" für Erfolg sein.
'''Rückgabeformat:''' ok
'''Beispiel:'''
>>><nowiki>http://dbox/control/zapto?startsectionsd</nowiki>
ok
'''Parameter:''' statussectionsd<br>
'''Rückgabe:'''
gibt den Status des [[Sectionsd]] zurück. (Scanning, bzw, kein Scanning)
'''Rückgabe-Format:''' '1': sectionsd scanning an, '0': sectionsd scanning aus
'''Beispiel:'''
>>><nowiki>http://dbox/control/zapto?statussectionsd</nowiki>
1
'''Parameter:''' channel_id (64 bit, hexidecimal value)<br>
'''Rückgabe:'''
Zappt auf den angegebenen Kanal. Als Rückgabe ist im Erfolgsfall "ok" zu erwarten.
'''Rückgabeformat:''' ok / error
'''Beispiel:'''
>>><nowiki>http://dbox/control/zapto?16dcb</nowiki>
ok
==Radio/TV, Record Mode==
'''Handler:''' <nowiki>http://dbox/control/setmode</nowiki>
'''Parameter:''' status<br>
'''Rückgabe:'''
Es wird der aktuelle record mode Status zurückgegeben
'''Rückgabeformat:''' on / off
'''Beispiel:'''
>>><nowiki>http://dbox/control/setmode?status</nowiki>
on
'''Parameter:''' radio<br>
'''Rückgabe:'''
Schaltet in den radio mode
'''Rückgabeformat:''' ok / error
'''Beispiel:'''
>>><nowiki>http://dbox/control/setmode?radio</nowiki>
ok
'''Parameter:''' tv<br>
'''Rückgabe:'''
Schaltet in den TV mode
'''Rückgabeformat:''' ok / error
'''Beispiel:'''
>>><nowiki>http://dbox/control/setmode?tv</nowiki>
ok
'''Parameter:''' record<br>
'''Rückgabe:'''
Schaltet in den record mode
Dies beinhaltet auch das Stoppen, bzw. das Starten des [[sectionsd]] Scanning, das Starten des Playbacks(immer) und Stoppen des Playbacks (nur bei stopplayback=true).
'''Rückgabeformat:''' ok / error
'''Beispiele:'''
>>><nowiki>http://dbox/control/setmode?record=start</nowiki>
ok
>>><nowiki>http://dbox/control/setmode?record=start&stopplayback=true</nowiki>
ok
>>><nowiki>http://dbox/control/setmode?record=stop</nowiki>
ok
==Radio/TV Mode Abfrage==
'''Handler:''' <nowiki>http://dbox/control/getmode</nowiki>
'''Parameter:'''<br>
'''Rückgabe:''' "tv", "radio", "unkown"
Es wird der aktuelle mode zurückgegeben tv / radio / unknown (shouldn't happen)
'''Beispiel:'''
>>><nowiki>http://dbox/control/getmode</nowiki>
tv
==Datum von der Box abfragen==
'''Handler:''' <nowiki>http://dbox/control/getdate</nowiki>
'''Parameter:''' keine<br>
'''Rückgabe:'''
Es wird das Datum zurückgegeben.
'''Rückgabeformat:''' dd.mm.yyyy
'''Beispiel:'''
>>><nowiki>http://dbox/control/getdate</nowiki>
25.02.2005
==Uhrzeit von der Box abfragen==
'''Handler:''' <nowiki>http://dbox/control/gettime</nowiki>
'''Parameter:''' keine<br>
'''Rückgabe:'''
Es wird die Uhrzeit zurückgegeben.
'''Rückgabeformat:''' hh:mm:ss
'''Beispiel:'''
>>><nowiki>http://dbox/control/gettime</nowiki>
20:34:24
'''Parameter:''' rawtime<br>
'''Rückgabe:'''
Es wird die Uhrzeit im [[time_t]] Format zurückgegeben.
'''Rückgabeformat:''' [[time_t]]
'''Beispiel:'''
>>><nowiki>http://dbox/control/gettime?rawtime</nowiki>
1046804654
==Allgemeine Informationen abfragen==
'''Handler:''' <nowiki>http://dbox/control/info</nowiki>
'''Parameter:''' streaminfo<br>
'''Rückgabe:'''
Es werden Streaminfos zurückgegeben. Die Werte sind durch Enter (\n) getrennt
'''Rückgabeformat:''' X_res Y_res [[Bitrate]] Videoformat [[Framerate]] Audioformat
'''Beispiel:'''
>>><nowiki>http://dbox/control/info?streaminfo</nowiki>
480
576
997500
4:3
25
joint stereo
'''Parameter:''' version<br>
'''Rückgabe:'''
Aktuelle [[cramfs]] - Version. Es wird der Inhalt der Datei /.version zurückgegeben.
'''Beispiel:'''
>>><nowiki>http://dbox/control/info?version</nowiki>
version: 1.1.27032002-21.8
md5sum: f1d7d47578bb9040a82085182934ce0e
Erstellt von alexW
'''Parameter:''' settings<br>
'''Rückgabe:'''
Aktuelle Settings und DBox Typ
'''Beispiel:'''
>>><nowiki>http://dbox/control/info?settings</nowiki>
Boxtype Nokia
videooutput RGB
videoformat 4:3
'''Parameter:''' httpdversion<br>
'''Rückgabe:''' <br>
Version des httpd<br>
1 : nhttpd (legacy api)<br>
2 : thttpd<br>
3 : nhttpd
'''Beispiel:'''
>>><nowiki>http://dbox/control/info?httpdversion</nowiki>
3
==Aktuellen Kanal abfragen==
'''Handler:''' <nowiki>http://dbox/control/getonidsid</nowiki>
'''Parameter:'''<br>
'''Rückgabe:'''
Es wird die TSIDONIDSID des aktuellen Kanals zurückgegeben.
''Diese Funktion sollte NICHT mehr verwendet werden und ist durch folgenden Aufruf ersetzt:'' <br>
<nowiki>http://dbox/control/zapto</nowiki>
'''Rückgabeformat:''' TSIDONIDSID
'''Beispiel:'''
>>><nowiki>http://dbox/control/getonidsid</nowiki>
44d00016dca
==services.xml lesen==
'''Handler:''' <nowiki>http://dbox/control/getservicesxml</nowiki>
'''Parameter:''' <br>
'''Rückgabe:'''
Es wird der Inhalt der Datei /var/tuxbox/config/zapit/[[services.xml]] zurückgegeben.
'''Beispiel:'''
>>><nowiki>http://dbox/control/getservicesxml</nowiki>
<xml version="1.0" encoding="iso-8859-1"?>
<ZAPIT>
<cable>
<transponder transportID="00001" networkID="0">
<cable frequency="04020" symbolRate="06900" fec="0" polarity="0"/>
...
==bouquets.xml auslesen==
'''Handler:''' <nowiki>http://dbox/control/getbouquetsxml</nowiki>
'''Parameter:''' <br>
'''Rückgabe:'''
Es wird der Inhalt der Datei /var/tuxbox/config/zapit/[[bouquets.xml]] zurückgegeben.
'''Beispiel:'''
>>><nowiki>http://dbox/control/getbouquetsxml</nowiki>
<?xml version="1.0" encoding="iso-8859-1"?>
<ZAPIT>
        <Bouquet name="beispielbouquet" hidden="0" locked="0">
                <channel serviceID="6d67" name="3sat" onid="0001"/>
...
==Bouquetlist abfragen==
'''Handler:''' <nowiki>http://dbox/control/getbouquets</nowiki>
'''Parameter:''' <br>
'''Rückgabe:'''
Es werden alle [[Bouquets]] zurückgeliefert
'''Beispiel:'''
>>><nowiki>http://dbox/control/getbouquets</nowiki>
1 ARD
3 Premiere World
4 VisionProgramme
5 ZDFvision
==Bouquet abfragen==
'''Handler:''' <nowiki>http://dbox/control/getbouquet</nowiki>
'''Parameter:''' [[Bouquet]] Nr. und TV|RADIO<br>
'''Rueckgabe:'''
Es werden alle Sender des Bouquets zurückgeliefert
'''Rückgabeformat:''' [Nummer_des_Kanals] [channel_id] [Name_des_Senders]
'''Beispiel:'''
>>><nowiki>http://dbox/control/getbouquet?bouquet=2&mode=TV</nowiki>
20 12ee3 RTL Television
21 85002e SAT.1
22 850382 ProSieben
23 12ef4 RTL2
24 12f1c VOX
==Fenster in Neutrino==
'''Handler:''' <nowiki>http://dbox/control/message</nowiki>
'''Parameter:''' popup=text oder nmsg=text<br>
'''Rückgabe:''' ok
'''Character encoding:''' [[UTF-8]], Leerzeichen werden mit ''%20'' dargestellt
[[Neutrino]] öffnet ein Popup (popup) oder Message (nmsg) Window, in dem der Textteil des Parameter angezeigt wird. Ein Popup Fenster schließt sich nach einiger Zeit von selbst, während ein Message Window vom Benutzer geschlossen werden muss.
'''Beispiel:'''
>>><nowiki>http://dbox/control/message?popup=Hello%20World</nowiki>
Popup Window auf dem Bildschirm "Hello World"
>>><nowiki>http://dbox/control/message?nmsg=Hello%20Welt</nowiki>
Message Window auf dem Bildschirm "Hello World"
==Timerd Interface==
'''Handler:''' <nowiki>http://dbox/control/timer</nowiki>
'''Parameter:'''<br>
'''Rückgabe:'''
Zeigt die Liste aller Timer
'''Rückgabeformat:''' [eventID] [eventType] [eventRepeat] [repcount] [announceTime] [alarmTime] [stopTime] [data]
''eventID'' ist der Timerplatz. <br>
''eventType'' ist die Art des Timers, die kann sein:
1 = SHUTDOWN
2 = NEXTPROGRAM
3 = ZAPTO
4 = STANDBY
5 = RECORD
6 = REMIND
7 = SLEEPTIMER
8 = EXEC_PLUGIN
siehe dazu auch: [http://cvs.tuxbox.org/cgi-bin/viewcvs.cgi/*checkout*/tuxbox/apps/tuxbox/neutrino/daemons/timerd/doku.html?rev=1.3&content-type=text/plain [[Neutrino]] Timer Doku]
''eventRepeat'' ist die Angabe der Timerwiederholung. Die kann sein:
0 = ONCE (Einmal)
1 = DAILY (Täglich)
2 = WEEKLY (Wöchentlich)
3 = BIWEEKLY (Alle 2 Wochen)
4 = FOURWEEKLY (Alle 4 Wochen)
5 = MONTHLY (Monatlich)
6 = BYEVENTDESCRIPTION (noch nicht implementiert)
Es gibt auch noch eine Möglichkeit WEEKDAYS also auch Wochentage festzulegen, an denen die Aufnahme stattfinden soll. Dies wird über einen Bitschlüssel angegeben, der Bit 9-15 als die Wochentage ansieht. <br>
Das heißt:
0000000100000000 = 256    = Montag
0000001000000000 = 512    = Dinstag
0000010000000000 = 1024  = Mittwoch
0000100000000000 = 2048  = Donerstag
0001000000000000 = 4096  = Freitag
0010000000000000 = 8192  = Samstag
0100000000000000 = 16384  = Sontag
Demzufolge ist Montag+ Mittwoch+ Samstag
0000000100000000 =  256
0000010000000000 = 1024
0010000000000000 = 8192
----------------  ----
0010010100000000 = 9472
Siehe dazu auch: [http://cvs.tuxbox.org/cgi-bin/viewcvs.cgi/tuxbox/apps/tuxbox/neutrino/lib/timerdclient/timerdtypes.h?rev=1.10&content-type=text/vnd.viewcvs-markup timerdtypes.h]
''repcount'' bestimmt die Anzahl der Timeraufrufe, nach der der Timer automatisch gelöscht wird. 0 bedeutet, dass es keine Beschränkung gibt. Bei eventRepeat=ONCE hat diese Einstellung keine Auswirkungen.<br>
''announceTime'' ist die Zeit, an der die Warnung vor dem Timer auf dem Bildschirm erscheint.<br>
''alarmTime'' ist die Zeit des Timer-Starts<br>
''stopTime'' ist die Stoppzeit für den Timer<br>
''data'' ist der Name des Senders.
'''Beispiel:'''
>>><nowiki>http://dbox/control/timer</nowiki>
1 1 1 4 1034309516 1034309576 1034284376 555089
d.h. event 1, SHUTDOWN, DAILY, nach 4 Timerausführungen wird der Timer gelöscht, announcezeit, alarm/startzeit, stoppzeit, kanal/daten
''die zeiten sind time_t (Unix Zeitstempel)''
'''Parameter:''' action,[id],<alarm|ad,amo,ay,ah,ami>,<stop|sd,smo,sy,sh,smi>,announce,type,rep,repcount,channel_id,msg,rs<br>
'''Rückgabe:''' ok / error
''announce'', ''type'', ''rep'' und ''repcount'' analog zu oben.
''action'' kann entweder new oder modify sein. Bei ''modify'' muss noch ein Parameter id angegeben werden, um festzulegen, welcher Timer modifiziert wird.
Man kann entweder ''alarm'' und ''stop'' mit einer [[time_t]] Zeit verwenden oder die anderen Variablen mit den Daten füttern:
a/sd  = Tag
a/smo = Monat
a/sy  = Jahr
a/sh  = Stunde
a/smi = Minute
''channel_id'' ist die Kennung des Senders (als Hexadezimalzahl ohne '0x'-Prefix).<br>
''msg'' ist die Message die bei REMIND gesendet wird
Ist der Parameter "rs" auf "1" gesetzt, so wird bei Aufnahmetimern, die in [[Neutrino]] konfigurierte "Aufnahmestart/stop-Korrektur" berücksichtigt.
siehe dazu auch: [http://cvs.tuxbox.org/cgi-bin/viewcvs.cgi/tuxbox/apps/tuxbox/neutrino/daemons/nhttpd/webapi.cpp?rev=HEAD&content-type=text/vnd.viewcvs-markup webapi.cpp]
'''Rückgabeformat:''' ok / error
'''Beispiel:'''
>>><nowiki>http://dbox/control/timer?action=new&alarm=1034309576&stop=1034284376&announce=1034309576&type=1&rep=1&channel_id=16dcb</nowiki>
ok
==Shellscript ausführen==
'''Handler:''' <nowiki>http://dbox/cgi-bin/exec</nowiki> oder <nowiki>http://dbox/control/exec</nowiki>
'''Parameter:''' <Scriptname> (ohne .sh!)<br>
'''Rückgabe:'''
Führt das Shellscript aus und liefert die Ausgabe an den Client zurück. 404 Bei Nicht-Auffinden.
'''Beispiel:'''
buli.sh gibt einen RSS-Feed zurück, der vom Newsticker angezeigt wird. In newsticker.list muss dann der Aufruf folgendermaßen aussehen:
<nowiki>http://dbox/cgi-bin/exec?buli</nowiki>
HINWEIS: Shellscript muss im richtigen Verzeichnis liegen. Ansonsten 404. (siehe oben unter Custom Plugins)
==System-/Treiberfunktionen==
'''Handler:''' <nowiki>http://dbox/control/system</nowiki>
'''Parameter:''' getAViAExtIec<br>
'''Rückgabe:''' Status des Iec (optischer Ausgang)
0 = Iec deaktiviert<br>
1 = Iec aktiviert
'''Beispiel:'''
<nowiki>http://dbox/control/system?getAViAExtIec</nowiki>
1
'''Parameter:''' setAViAExtIec=on<br>
'''Rückgabe:''' ok
Aktiviert den Iec
'''Beispiel:'''
<nowiki>http://dbox/control/system?setAViAExtIec=on</nowiki>
ok
'''Parameter:''' setAViAExtIec=off<br>
'''Rückgabe:''' ok
Deaktiviert den Iec
'''Beispiel:'''
<nowiki>http://dbox/control/system?setAViAExtIec=off</nowiki>
ok
'''Parameter:''' getAViAExtPlayBack<br>
'''Rückgabe:''' Gibt zurück, in welchem Dekoder-Modus der Avia läuft
0 = PES<br>
1 = SPTS
'''Beispiel:'''
<nowiki>http://dbox/control/system?getAViAExtPlayBack</nowiki>
1
'''Parameter:''' getAViAExtPlayBack=pes<br>
'''Rückgabe:''' ok
Aktiviert den DualPES-Modus
'''Beispiel:'''
<nowiki>http://dbox/control/system?setAViAExtPlayBack=pes</nowiki>
ok
'''Parameter:''' getAViAExtPlayBack=spts<br>
'''Rückgabe:''' ok
Aktiviert den SPTS-Modus
'''Beispiel:'''
<nowiki>http://dbox/control/system?setAViAExtPlayBack=spts</nowiki>
ok





Aktuelle Version vom 4. Januar 2015, 00:01 Uhr

Vorlage:Howto sidebar


Allgemeines

Unter Neutrino gibt es einige Möglichkeiten die Benutzeroberfläche (GUI) nach seinen eigenen Wünschen anzupassen und da Neutrino nach dem Client-Server Prinzip funktioniert, lässt sich Neutrino über einige Befehle mittels API auch ohne GUI in gewissem Umfang bedienen. Desweiteren besteht auch die Möglichkeit, einzelne Ereignisse wie z.B. Aufnahmestop, Bildformatumschaltung etc. abzufangen und diese bei Bedarf mittels Shell-Script für bestimmte zusätzliche Funktionen zu nutzen. Es wäre auch möglich, ein eigenes Webinterface zu benutzen.

Benutzeroberfläche anpassen

Alternative Sprachen (custom locale)

Die locale ist eine Datei, welche für die Ausgabe der Sprache auf der GUI verantwortlich ist. Eigene oder geänderte locales können bei squashFS Images im /var Verzeichnis gespeichert werden:

format: UTF-8 encoded 
directory: /var/tuxbox/config/locale or /share/tuxbox/neutrino/locale 
filenames: *.locale

Die Sprache kann nach Neustart unter Einstellungen:Sprache ausgewählt werden


Plugins hinzufügen/entfernen

Eigene Plugins können gespeichert werden unter:

directory: /var/tuxbox/plugins or /lib/tuxbox/plugins 
Disabling plugin X (X.cfg, X.so) available in /lib/tuxbox/plugins: touch /var/tuxbox/plugins/X.cfg

eigene Icons

Für alle Icons, also Symbole, die in den Menüs und Fenstern zu sehen sind, können ersatzweise eigene Icons verwendet werden. Es werden dafür entsprechende Dateien im Raw-Format benötigt. Auch die Größe sollte man dabei beachten, damit es zu keinen unschönen Abbildungen in den jeweiligen Fenstern kommt. Mgck hat auch ein kleines Programm (RawIconEditor )zum editieren solcher Icons geschrieben, womit man relativ einfach solche Icons bearbeiten kann. Die entsprechenden Icons werden hier abgelegt:

var/share/tuxbox/neutrino/icons/

eigene Radiomode-, Shutdown- und Scanbilder

Ebenso wie Icons lassen sich auch die Hintergrundbilder austauschen. Dies erfolgt auf die gleiche Weise wie bei eigenen Icons. Der Unterschied ist nur, dass auch die dazugehörigen .pal-Dateien nicht vergessen werden dürfen. Diese Hintergrundbilder sind relativ groß und schlucken einiges vom ohnehin knappen Speicherplatz in der Box. Man sollte daher eigentlich davon absehen diese Logos zu tauschen, aber wenn man es dennoch haben möchte, sei hier der Hinweis angebracht, dass das Risiko, sein Image "platzen" zu lassen ungemein größer wird. Alternativ besteht auch die Möglichkeit Symlinks auf die Dateien zu setzen. Diese können dann auf ein Ausgelagertes Verzeichnis zeigen, welche sich z.B. auf MMC oder HDD befinden.

Senderlogos

ab CVS-Stand 17.07.2008


Im Infobar besteht die Möglichkeit, Senderlogos einzublenden.

Dateiformat und Speicherort

Es werden dafür entsprechende Dateien vom gleichen Raw-Format wie Icons benötigt und werden standardmäßig im gleichen Ordner wie die alternativen Icons abgelegt.

/var/share/tuxbox/neutrino/icons/

Der Speicherort ist entsprechend den eigenen Bedürfnissen anpassbar.

Hinweis!

Bei jffs2-Images ist kein /var Ordner vorhanden. Falls man nicht bereits einen anderen Speicherort eingetragen hat, muss das Verzeichnis entsprechend ohne das /var in den Infobareinstellungen eingetragen werden. Ohne dies zu beachten, werden dann natürlich keine Logos angezeigt!

/share/tuxbox/neutrino/icons/ 
Stop hand.png

Warnung!

Auch wenn die Möglichkeit besteht, die verschiedensten Dateien in den Var-Bereich eines Images zu packen, sollte man es nicht übertreiben und möglichst nur das einspielen, was auch wirklich gebraucht wird. Die Gefahr sein Image zu zerstören ("Imageplatzer") steigt mit jedem Byte, das dazu kommt. Eine Sicherung des Images ist in jedem Fall ratsam! Empfehlenswert ist daher, eine Auslagerung auf ein SD-Medium, sofern man ein entsprechendes IDE-Interface nutzen kann. Eine Auslagerung auf HDD ist auch möglich, jedoch eher unpraktisch für Daten die recht häufig geholt werden müssen, insbesondere wenn sich die HDD gerade mal eben vom Spindown aufrappeln muss.

Größe der Logos

Je nachdem wo man die Logos angezeigt haben möchte, ist auch die Größe der Grafikdateien variabel. Erfahrungsgemäß sind Logos mit der Größe 120x34px zu empfehlen, damit sie optisch am besten auf allen Positionen eingepasst werden können. Diese Empfehlung ist allerdings nicht zwingend, da abhängig von der Position, an welcher die Logos platziert werden sollen unterschiedliche Platzverhältnisse vorhanden sind. So kann es durchaus vorkommen, dass ein Logo an der Stelle des Programmnames sehr gut passt, aber für die Anzeige im Ziffernfeld viel zu breit ist und deshalb nicht angezeigt wird. Es liegt also im Ermessen der Logoersteller für welche Position sie ihre Logos bevorzugt herstellen. Die Position der Logos lässt sich im Menü Neutrino:Einstellungen:OSD->Infobar einstellen

Hinweis! In älteren Image-Versionen ist diese Funktion unter Diverse Einstellungen->Infobar->Anzeige zu finden.


Hinweis!

Die normale Anzeige von Programmnummer und Sendername hat Vorrang gegenüber der Anzeige der Logos, was bedeutet, dass Logos nur dann angezeigt werden, wenn sie auch an der entsprechenden Stelle des Infobars genug Platz haben, um die Anzeige der Standardinformationen nicht zu verschlechtern oder gar zu verhindern. Es spielt also durchaus eine Rolle was man für OSD- und Schriftgrößen-Einstellungen vorgenommen hat. Sollte es damit Probleme geben, wird dies im Log der Box auch mitgeteilt.


Darstellung

Es besteht auch die Möglichkeit den Hintergrund der Logos gerahmt oder schattiert darzustellen. Dies kann unter Umständen bei bestimmten Themes sinnvoll sein.

  • Infobar channellogo gerahmt.png
  • Infobar channellogo schattiert.png

Die Darstellung der Logos lässt sich im Menü Neutrino:Einstellungen:OSD einstellen.

Hinweis!: In älteren Image-Versionen ist diese Einstellung noch unter Diverse Einstellungen zu finden


  • Diverse einstellungen infobar.jpg


Dateinamen

Der Dateiname für ein Logo setzt sich aus der ChannelID oder dem Realnamen des Kanals wie er in den EPG-Informationen angezeigt wird und der Dateiendung ".raw" zusammen. Beispiel hier für 3Sat:

43700016d67.raw

oder

3sat.raw

Die ChannelID ist eine Kombination einiger Daten, die man beispielsweise aus den Streaminfos abrufen kann.

  • Technische informationen.png

Diese setzt sich zusammen aus

  • tsid 0x0437
  • onid 0x0001
  • sid 0x6d67

Wie man sieht, ist das angezeigte Format in den Informationen etwas anders. Es werden nur die fett abgebildeten Daten benötigt.

Eine weitere Möglichkeit, die ChannelID zu gewinnen besteht darin, diese über den Webbrowser abzurufen. Dafür muss die dBox natürlich mit dem PC verbunden sein. Im Browser gibt man hierfür diese Daten ein:

http://<dBoxIP>/control/getonidsid

Als Rückgabe erscheint dann die gewünschte ID vom aktuell eingeschaltetem Sender.

Die Datei

/var/tuxbox/config/zapit/services.xml

enthält ebenfalls diese Daten.

Hinweis: Die ChannelID's sind je nach Empfangsmöglichkeiten (Kabel-Provider, Satellit usw.) unterschiedlich. Wenn möglich, sollte man evtl. auf vorgefertigte Logo-Packs zurückgreifen.


Wird solch eine Raw-Datei anhand der ChannelID bzw. dem Sendernamen erkannt, wird sie automatisch zum passenden Kanal angezeigt.

Hier einige Beipiele:


  • Infobar chlogo number.jpg anstelle Kanalnummer 120x64px
  • Infobar chlogo ersatz.jpg anstelle Sendername [max]x64px
  • Infobar chlogo beside.jpg neben Sendername [max]x64px


Hinweis: [max] gibt die Breite an, die verwendet werden kann. Die Breite für das Logo kann je nach Länge des Programmnames, der je nach Einstellung bis zur Zeitanzeige reichen kann, variieren. Dies ist somit auch davon abhängig, welche Einstellungen für den OSD-Bereich gemacht wurden. Sollte ein Logo nicht passen, kann das Bootlog mehr Informationen über die maximal mögliche Größe Aufschluß geben

Nach dem Einspielen sind die Logos sofort verfügbar sobald sie durch den Infobar aufgerufen werden. Ein Neustart von Neutrino ist nicht erforderlich.


Verfügbarkeit von Logos

Sollte jemand Logos zur Verfügung stellen wollen, besteht hier die Möglichkeit, Logos zu sammeln. Eine Online-Nachladefunktion ist geplant, aber derzeit noch nicht verfügbar.


eigene LCD-Vorlagen

Neben dem LCD-Bootlogo lassen sich auch die während des Betriebs der Box vom LC-Displays abgebildeten Hintergründe nach eigenen Wünschen austauschen. Hierfür werden Bilder im png-Format mit einer Auflösung von 120x64 Pixel 1bit-Modus, horizontale und vertikale Auflösung jeweils 96 dpi benötigt. Speicherort:

var/share/tuxbox/neutrino/lcdd/

Diese Dateien können hierbei ersetzt werden:

  • lcd.png
  • lcd2.png
  • lcd3.png
  • power.png
  • setup.png

eigene Bootlogos verwenden

siehe Bootlogo austauschen


Ereignisse abfangen

Angenommen man möchte eine nächtliche Timeraufname machen und diese aber möglicht bald auf seinem Rechner wiederfinden. Hier kann es beispielsweise nützlich sein, nachdem die Aufnahme beendet wurde, sich diese von einer evtl. vorhandenen Festplatte über das Netzwerk auf seinen Rechner kopieren zu lassen. Genau hierfür bietet Neutrino die Möglichkeit, eine entsprechende Aktion auszuführen. In diesem Fall wäre es das Script recording.end dass, sofern es vorhanden und ausführbar ist, nach jedem Ende einer Aufnahme ausgeführt wird. Dieses und noch einige weitere Ereignisse lassen sich damit abfangen und nutzen...

Aufnahme

Aufnahme Ankündigung

Wenn eine Aufnahme angekündigt wird, wird zunächst (wenn vorhanden) dieses Skript ausgeführt:

/var/tuxbox/config/recording.timer   (Rechte auf 755)

Dieses Script kann benutzt werden um eine evtl. im Standby/ Spindown befindliche Platte im Server/ NAS zu "wecken"


Aufnahme Start

Wenn eine Aufnahme gestartet wird, wird zunächst (wenn vorhanden) dieses Skript ausgeführt:

/var/tuxbox/config/recording.start   (Rechte auf 755)

Aufnahme Ende

Seit Yadi 1.9.0.2 ist im folgenden Pfad eine Beispielkonfiguration für ein Skript, was bei Aufnahmeende ausgeführt wird. Damit es ausgeführt wird, muss es in record.end umbenannt werden. Rechte müssen auf 755 stehen.

/var/tuxbox/config/recording.end

Wenn ihr das Beispielskript /var/tuxbox/config/recording.end.dist umbenennt in recording.end werden die aufgenommenen ts-files mit dbox2genpsi gepatcht, sodass sie auch unter Enigma abspielbar sind.

und so sieht es aus:

#!/bin/sh 
# $Id: recording.end,v 1.5 2004/08/07 21:11:31 essu Exp $ 
FOUND=`grep network_nfs_recordingdir /var/tuxbox/config/neutrino.conf` || exit 
RECDIR=`expr substr $FOUND 26 154` 
cd $RECDIR && FILES=`ls -c *.ts` || exit 
for FILE in $FILES; do 
break; 
done 
dbox2genpsi $RECDIR/$FILE

Natürlich können an dieser Stelle auch andere Skripte ausgeführt werden.


Standby

Standby ON

Wenn die Box in den Standby geschickt wird, wird dieses Skript (wenn vorhanden) ausgeführt:

/var/tuxbox/config/standby.on   (Rechte auf 755)


Standby OFF

Wenn die Box aus dem Standby geholt wird, wird dieses Skript (wenn vorhanden) ausgeführt:

/var/tuxbox/config/standby.off   (Rechte auf 755)


Audioplayer

Audioplayer Start

Wenn der Audioplayer gestartet wird, wird dieses Skript (wenn vorhanden) ausgeführt:

/var/tuxbox/config/audioplayer.start   (Rechte auf 755)

Beispiel:

#!/bin/sh 
killall -9 sectionsd

Das beendet den sectionsd beim Starten des Audioplayers

Audioplayer Stop

Wenn der Audioplayer beendet wird, wird dieses Skript (wenn vorhanden) ausgeführt:

/var/tuxbox/config/audioplayer.end   (Rechte auf 755)

Beispiel:

#!/bin/sh 
sectionsd

Das startet den sectionsd nach Beendung des Audioplayers


Bildbetrachter

Bildbetrachter Start

(ab Pictureviewer Version 1.63) Wenn der Bildbetrachter gestartet wird, wird dieses Skript (wenn vorhanden) ausgeführt:

/var/tuxbox/config/pictureviewer.start   (Rechte auf 755)

Beispiel:

#!/bin/sh 
killall -9 sectionsd

Das beendet den sectionsd beim Starten des Bildbetrachters


Bildbetrachter Stop

Wenn der Bildbetrachter beendet wird, wird dieses Skript (wenn vorhanden) ausgeführt:

/var/tuxbox/config/pictureviewer.end   (Rechte auf 755)


Movieplayer

Movieplayer Start

Wenn der Movieplayer gestartet wird, wird dieses Skript (wenn vorhanden) ausgeführt:

/var/tuxbox/config/movieplayer.start   (Rechte auf 755)

Beispiel:

#!/bin/sh 
killall -9 sectionsd

Das beendet den sectionsd beim Starten des Movieplayers


Movieplayer Stop

Wenn der Movieplayer beendet wird, wird dieses Skript (wenn vorhanden) ausgeführt:

/var/tuxbox/config/movieplayer.end   (Rechte auf 755)

Beispiel:

#!/bin/sh 
sectionsd

Das startet den sectionsd nach Beendung des Movieplayers


Bildformatumschaltung

Wenn auf ein Bildformat umgeschaltet wird, werden diese Skripte (wenn vorhanden) ausgeführt:

16:9

/var/tuxbox/config/16:9.start   (Rechte auf 755)

4:3

/var/tuxbox/config/4:3.start   (Rechte auf 755)

mit Lirc

Ausserdem gibt es noch die Alternativen für Lirc, welche ebenfalls genutzt werden können.

16:9.lirc
4:3.lirc


Kanalsuche

Kanalsuche starten

Wenn Kanalsuche gestartet wird, wird dieses Skript (wenn vorhanden) ausgeführt:

/var/tuxbox/config/scan.start   (Rechte auf 755)


Kanalsuche beendet

Wenn Kanalsuche beendet wurde, wird dieses Skript (wenn vorhanden) ausgeführt:

/var/tuxbox/config/scan.end   (Rechte auf 755)


IDE-Menü

Beim Prüfen, Löschen, Übernehmen, Formatieren von Partitionen wird immer die betreffende Partition vorher automatisch ausgehangen, also immer dann wenn es systembedingt erforderlich ist.

Unter Umständen ist es dann notwendig, beim Ein- oder Aushängen, diverse Prozesse, die von einem eingehangenem Laufwerk ausgehen, zu "behandeln". Für diesen Zweck kann man benutzerdefinierte Scripte beim Mounten/Unmounten ausführen lassen, die bei Wartungsvorgängen, welche mit dem Menü durchgeführt werden, notwendige Aufgaben übernehmen können. Diese Scripte werden immer nur dann ausgeführt, wenn sie vorhanden und ausführbar sind. Das Schema für die Benennung ist variabel und richtet sich nach den lokalen Gegebenheiten, d.h. es muss für jede Partition ein eigenes Script verwendet werden.

Das Schema für die Scriptnamen erfolgt quasi konform zur Partitionstabelle, wobei Laufwerke und Partitionen beginnend bei 0 nummeriert werden. Die Laufwerke und Partitionen sind also wie folgt nummeriert:

  • HDD-Master 0
  • HDD-Slave 1
  • MMC/SD 2

Für Partitionen:

  • 1.Partition 0
  • 2.Partition 1
  • 3.Partition 2
  • 4.Partition 3


Stop hand.png HINWEIS: Sollte beispielsweise ein NFS-Client mit einer eingehangenen Partition verbunden sein, ist es allerdings ratsam, die Verbindung vom Clienten aus zu trennen. Sollte solch eine Verbindung bestehen, wird eine Fehlermeldung angezeigt, die darauf hinweist.

Partition aushängen

     /var/tuxbox/config/before_unmount_[LAUFWERK 0...2]_[PARTITION 0...3].sh

Partition einhängen

     /var/tuxbox/config/after_mount_[LAUFWERK 0...2]_[PARTITION 0...3].sh

Beispiel

Es soll auf einem MMC-Laufwerk die 2.Partition verarbeitet werden, dann werden die Scripte so benannt:

     /var/tuxbox/config/before_unmount_2_1.sh
     /var/tuxbox/config/after_mount_2_1.sh

Sambadienstprogramme Auslagern

Es besteht die Möglichkeit, die vom Receiver gestreamten Daten neben den bekannten Möglichkeiten wie FTP oder NFS auch über Sambafreigaben, wie man sie von Windows her kennt, verfügbar zu machen. Sinnvoll ist dies aber nur, wenn auch Festplatten nachgerüstet wurden. Daher ist dies auch nur in Verbindung mit solchen Laufwerken (zumindest über die GUI) möglich. Wenn du ein Image besitzt, welches mit Sambasupport ausgestattet ist, bedeutet dies allerdings nicht unbedingt, dass man auch entsprechende Freigaben erstellen kann. Bei selbst erstellten Images ist dies durch die Build-Option --enable-sambaserver in der Regel gegeben, weil hier die notwendigen Dienstprogramme und der GUI-Support automatisch eingebaut werden. Diese Programme (smbd, nmbd) sind aber recht groß und werden mitunter von Imageanbietern aus Platzgründen nicht mit in das Image eingebaut. Dies trifft z.B. auf das JtG-Image zu. Diese Programme müssen daher erst "nachinstalliert werden. Am Beispiel des JtG-Image soll gezeigt werden, wie man diese Funktion nachträglich aktivieren kann.

Support vorhanden?

Zunächst sollte man nachschauen, ob das Image sambatauglich ist. Erkennbar ist dies daran, dass in den Netzwerkeinstellungen ein Menüeintrag für Sambaserver vorhanden ist.

Eintrag für Sambaserver ganz unten

Auch im IDE-Menü sollten die Menüeintrage, welche für die Sambafreigaben zuständig sind, vorhanden sein.

Die komplette Sambasektion sollte sichtbar sein.

Images bei denen diese Einträge nicht vorhanden sind, haben entweder keinen Samba-Support oder kann man zmindest nicht über die GUI für Sambafreigaben einrichten. Sind diese Einträge vorhanden wird man entweder darauf hingewiesen, dass die Sambadienste noch hicht installiert sind und sollte nachinstalliern, andernfalls kann man mit der Einrichtung fortfahren.

Laufwerk einrichten

Es wird ein Ort benötigt, wo die Dienstprogramme installiert werden. Im Fall JtG ist dieser Ort bereits als Umgebungsvariable vorbereitet, d.h. Programme die dort installiert sind, können direkt wie Programme aus /bin, /sbin oder /var/bin aufgerufen werden. Die Programme werden einfach nach

/hdd/bin 

installiert. Dabei ist /hdd lediglich ein Symlink auf /mnt/hdd1 und im Normalzustand nicht beschreibbar, da dieser im Readonly-Bereich des Images liegt.

Stop hand.png HINWEIS: Eine Installation nach /var/bin zerstört das Image! Siehe Imageplatzer

Man benötigt also eine Partition auf einem separaten Laufwerk. Hierfür bietet sich nun das Auslagern auf Festplatte oder SD/MMC an. Es ist empfehlenswert dafür eine separate Partition zu erstellen, welche ausschließlich dafür vorgesehen ist, ausführbare Dateien, also Programme, Scripte etc. dort zu installieren und diese Partition sollte auch selbst keine Sambafreigabe sein. Auch vom Speicherplatz her kann diese Partition knapp gehalten werden, um nicht unnötig Speicher zu vergeuden.

Die Einrichtung der Partition erfolgt wie hier beschrieben. Als Mountpunkt wird

/hdd

angegeben. Für eine Auslagerung kann auch eine SD/MMC-Partition verwendet werden, die nach /hdd eingehangen wird. Das ist zwar etwas verwirrend, da es sich ja um keine HDD im technischen Sinne handelt, aber es sollte genauso funktionieren.

Installation

Hat man das Laufwerk eingerichtet, muss noch der Ordner /bin angelegt werden. Dafür geht man am einfachsten per FTP auf die Box und wechselt nach /hdd und legt /bin als neues Verzeichnis an. Das Verzeichnis am besten mit den Rechten 777 versehen. Die benötigten Dienstprogramme kann man sich hier herunterladen: Samba2

Diese Programme entpacken und per FTP nach /hdd/bin einspielen. Auch hier die Rechte jeweils auf 755 (ausführbar) setzen.

Die Installation sollte damit abgeschlossen sein. Die Menüeinträge für die Sambaeinrichtung sollten damit auch zur Verfügung stehen. Sambafreigaben können nun wie hier beschrieben eingerichtet werden.

OSD-Schriftart

Neutrino bietet die Möglichkeit, eine alternative Schriftart für das OSD anzuzeigen.


Stop hand.png HINWEIS: Die Vorgehensweise wurde ab dem CVS-Stand vom 4. Juli 2010 geändert, zuvor war noch der Name des Fonts (welcher aus der Fontdatei extrahiert werden musste) mit anzugeben. Seit 4. Juli 2010 holt sich Neutrino den Fontnamen selbständig und diese Angabe ist nicht mehr notwendig. Für ältere Softwarestände ändert sich nichts.

Neutrino muss mit den entsprechenden Startparametern aufgerufen werden. Die dafür benötigte Startoption lautet:

neu:

--font [sizeoffset /dir/font.ttf]"

alt:

--font [sizeoffset /dir/file.ttf [/dir/bold.ttf [/dir/italic.ttf]]] 

Neutrino wird über das Startscript

  • /etc/init.d/start_neutrino

bzw.

  • /var/etc/init.d/start_neutrino

aufgerufen.


Für gewöhnlich lautet der Aufruf von Neutrino so:

until neutrino -f -u ; do

Man ändert entprechend nur die erste Zeile ab, indem man zusätzlich zu den Startparametern -f und -u um den Parmeter --font erweitert. Hier als Beispiel wird die Schriftart "Verdana" verwendet. Ein Aufruf von Neutrino mit Schrift-Option könnte dann etwa so aussehen:

neu:

FONTS="0 /var/share/fonts/verdana.ttf"

alt:

FONTS="0 /var/share/fonts/verdana.ttf /var/share/fonts/verdanab.ttf /var/share/fonts/verdanai.ttf" 
FONTSTART="--font $FONTS"
until neutrino -u -f $FONTSTART

Hinweis! Es ist daruf zu achten, dass man auch eine passende ttf-Schriftart verwendet, die alle benötigten Zeichen enthält und Darstellungen in Standard, Bold und Italic ermöglicht. Auch mit der Größe von Schriftartdateien sollte man hier Vorsichtig sein, um zum einen lange Ladezeiten und zum anderen Imageplatzer zu vermeiden. Auch auf eine korrekte Syntax des Startaufrufs ist zu achten, da Neutrino sonst nicht startet.


custom Webinterface

Das Webinterface von Neutrino liegt im Verzeichnis:

/share/tuxbox/neutrino/httpd

Bei squashFS Images (Yadi) ist dieses Verzeichnis schreibgeschützt. Das heißt, dass Änderungen dort nicht so einfach möglich sind. Es gibt jedoch einen Eintrag in der nhttpd.conf, der einen alternativen Pfad beinhaltet. Man erstellt unter /var das Verzeichnis "httpd":

/var/httpd

In diesen Pfad kann man das alternative Webinterface ablegen. Bei Aufruf im Browser

http://<dboxIP>/

erscheint die in diesem Verzeichnis abgelegte "index.html"



Review-KandidatDieser Artikel befindet sich derzeit im Reviewprozess. Hilf mit, ihn zu verbessern! Falls du bei weiteren Artikeln helfen willst, findest du hier eine Auswahl offener Artikel.