Auf meinem Raspberry Pi läuft OSMC (ehemals Raspbmc), einfach gesagt das Kodi Mediacenter mit schlankem Linux hintendran, von dem man bei der normalen Verwendung nicht viel bemerkt.
So habe ich aus dem Bildschirm im Esszimmer einen digitalen Bilderrahmen mit der Möglichkeit, beim Essen auch mal nen Film zu schauen, gemacht.
OnScreen-Plugins für Kodi, mit denen sich der Bildinhalt bei laufenden Videos mit weiteren Informationen anreichern lässt, konnte ich keine finden, also musste ich halt selbst tätig werden...
Es ergaben sich bei mir drei Möglichkeiten, Informationen dauerhaft während eines laufenden Videos einzublenden:
1. Modifizierte VideoFullScreen.xml
Dies ist ein Hack in einer Datei, die man eigentlich nicht anfassen sollte und es ist auch nicht auszuschließen, dass dieser Hack nach einem Kodi-Update wieder verschwindet und dann neu vorgenommen werden muss.Dafür ist die Änderung keine große Sache und keine weiteren Plugins notwendig.
Die Datei VideoFullScreen.xml befindet sich auf meinem Raspberry Pi mit OSMC und verwendetem OSMC-Skin unter
/usr/share/kodi/addons/skin.osmc/16x9/VideoFullScreen.xml
Bei anderen Systemen oder anderen Skins wird der Pfad abweichen. Auf dem Mac findet man das
addons-Verzeichnis zum Beispiel unter
~/Library/Application Support/Kodi/addons/(für vom Benutzer installierte Skins) oder auch unter
/Applications/Kodi.app/Contents/Resources/Kodi/addons/(Rechtsklick auf Kodi-Programmicon und "Paketinhalt anzeigen" wählen). Durch das Einfügen folgender Tags direkt hinter dem
<controls>-Tag (siehe Screenshot meiner VideoFullScreen.xml rechts) wird bei mir rechts unten am Bildschirmrand die aktuelle Uhrzeit gefolgt von einem Schrägstrich und der Film-Restlaufzeit in Stunden:Minuten angezeigt:
<description>Clock</description>
<left>1650</left>
<top>1020</top>
<width>200</width>
<height>5</height>
<align>right</align>
<aligny>top</aligny>
<font>font12</font>
<textcolor>grey</textcolor>
<shadowcolor>black</shadowcolor>
<label>$INFO[System.Time] / $INFO[Player.TimeRemaining(hh:mm)]</label>
</control>
2. Modifizierte VideoFullScreen.xml + Plugin für mehr Informationsgehalt
Allerdings kann man an zuvor erwähnter Stelle auch nur auf bestimmte Variablen, wie etwa die System-Zeit, Player-Restzeit & Co., zurückgreifen.Weitere Informationen (wie etwa die Raum-Temperatur, die per HTTP-Request von meinem Server abgefragt werden kann) oder Berechnungen (wie etwa die Rest-Laufzeit in Prozent) bekommt man nur mit Hilfe eines Plugins/Addons zu Stande.
Hier kann ein AddOn für Kodi heruntergeladen werden, welches mehr oder weniger nur ein Proof-Of-Concept ist. Das AddOn muss entpackt und im addon-Verzeichnis
/usr/share/kodi/addons/platziert werden.
Es läuft ständig im Hintergrund; all 60 Sekunden wird die Funktion
updateWindowaus dem Python-Skript addon.py ausgeführt. In diesem Beispiel wird einfach bei jedem Durchlauf eine Variable von 0 an hochgezählt (um etwas Power zu sparen allerdings nur, wenn ein Video läuft) und in eine Kodi-Property namens osdinfo geschrieben, auf welches ich von der VideoFullScreen.xml aus zugreifen kann.
global i
if xbmc.Player().isPlayingVideo() == 1:
i = i + 1
s = "%s " % i
HOME.setProperty("osdinfo", s)
Den
<label>
-Tag aus dem ersten Beispiel (vorletzte Zeile, vor dem abschließenden </control>
-Tag) wandeln wir wie folgt um, um diese hochzählende Variable anzuzeigen:
Hierdurch sind diversen Berechnungen und Daten-Abrufen aus anderen Systemen – etwas Python-Wissen vorhanden – keine Grenzen gesetzt.
3. Plugin "OSDinfo"
Das praktische an einem Plugin ist, dass man es ohne Eingriff in irgendwelche xml-Dateien auf unterschiedlichen Kodi-Systemen nutzen kann und dass es – sofern sich am Plugin-System von Kodi durch die ständigen Updates nicht viel ändert – auch nach einem Update noch funktionieren wird.Allerdings ist das Entwickeln eines solchen Plugins mit einem deutlichen Aufwand verbunden, da die Dokumentation der Kodi-API nicht gerade sehr...naja...nach viel Sucherei findet man auch mal irgendwo die Information, die man gesucht hatte.
Die beste API-Übersicht fand ich hier:
http://romanvm.github.io/Kodistubs/_autosummary/xbmcgui.html#xbmcgui.ControlLabel
http://mirrors.xbmc.org/docs/python-docs/
Letztendlich ist bei mir ein vollständiges Kodi-Plugin namens OSDinfo entstanden, welches sich nach der Installation unter
Optionen > Einstellungen > Addons > Aktivierte Addons > Dienste > OSDinfo wieder findet. Das Plugin habe ich in diesen separaten Artikel ausgegliedert.
![]() ![]() ![]() ![]() |
|
Erstellt am: 24.04.2016 | .Kommentieren |