KodiDisplayInfo - Film und Musik Infos auf einem TFT Displays

KodiDisplayInfo ist ein kleines Python/Pygame Programm, welches die Kodi Media Center JSON-RPC API nutzt um aktuelle Information vom gerade laufenden Film oder Musik auf einem kleinen TFT Display anzuzeigen. Da auf den Displays nur eine begrenzte Anzahl von Pixeln zur Verfügung stehen, meist 320x240 bei 2.8" bzw. 480x320 bei 3.5" Displays, werden nur wenige Information wie Laufzeit und Titel oder Thumbnail angezeigt.

KodiDisplayInfo Startscreen

Startscreen

Aktuelles Logo von Kodi
und die Uhrzeit.

KodiDisplayInfo Laufzeit

Laufzeit

Oben: Aktuelle Uhrzeit, Ende.
Mitte: Laufzeit und Länge.
Unten: Titel.

KodiDisplayInfo Film Thumbnail

Film Thumbnail

Status: nicht live.

Entwicklung unterstützen*

KodiDisplayInfo Musik Thumbnail

Musik Thumbnail

Status: nicht live.

Entwicklung unterstützen*

*Affiliate-Link: Mit einem Kauf über diesen Link, kannst Du meine Arbeit unterstützen, ohne das es Dich einen Cent mehr kostet.

Anwendungsbeispiele: Mediaplayer Box mit Kodi und Raspberry Pi 2 B oder UP Board

Raspberry Pi mit Kodi als Mediaplayer Box

Mediaplayer Box Hardware 2014:
Raspberry Pi 2 B + TinyLCD 3.5" + OpenDisplayCase + Festplatte.

Raspberry Pi - Mediaplayer Box

Beispiel Kodi und KodiDisplayInfo

Kodi und KodiDisplayInfo
laufen parallel auf dem
Rapberry Pi 2 B / 3 B oder UP Board.

UP Board mit Kodi als Mediaplayer Box

Mediaplayer Box Hardware 2016:
UP Board + Adafruit PiTFT 3.5" + OpenDisplayCase + Festplatte.

UP Board - Mediaplayer Box

Installationsanleitung

Systemvoraussetzungen

pi@raspberrypi ~ $ sudo apt-get -y install python python-pygame git

Quellcode

git clone https://github.com/bjoern-reichert/KodiDisplayInfo.git

Einstellungen config.txt

Wechsel in das (Unter-)Verzeichnis "KodiDisplayInfo" und benenne die Datei "sample.config.txt" in "config.txt" um. Danach mit einem Editor die Datei bearbeiten.

[CONFIG]
#Screen Modus: time (default), later thumbnail
SCREENMODUS = time
#Title format: oneline (default), twoline
TITLEFORMAT = oneline
#Time format: minutes (default), kodi (00:00:00)
TIMEFORMAT = minutes

[DISPLAY]
# Possible resolutions: 320x240 (default) or 480x272 or 480x320
RESOLUTION = 480x320
# Set to your Framebuffer /dev/fb1 or /dev/fb2
FBDEV = /dev/fb1

# Setting find unter: Kodi : System → Settings → Services → Webserver → Allow control of Kodi via HTTP
[KODI_WEBSERVER]
# Set it to localhost or IP (192.168.2.101)
HOST = localhost
# Port of the Kodi Webserver
PORT = 8080
# Username
USER = kodi
# Password
PASS =

[COLOR]
# Color for background
BLACK = 000000
# Color for font
WHITE = FFFFFF
# Color for error message
RED = FF0000
# Color for progress bar background
GREEN = 87D31E
# Color for progress bar improvement
ORANGE = E07018

Aufruf

python displayinfo.py

Der Aufruf funktioniert nicht über SSH! (pygame.error: Unable to open a console terminal)

NO KODI ACCESS! Der Webserver von Kodi muss aktiviert werden und die Zugangs-Einstellungen müssen stimmen.

Um beim booten "KodiDisplayInfo" und "Kodi" parallel laufen zu lassen wird ein Start-Script benötigt.

Big Bunny Buck - (c) copyright 2008, Blender Foundation / www.bigbuckbunny.org

Kommentare:

Erlaubte HTML-Tags: <strong>, <a href="">, <em>
Info: Kommentar wird nach Bearbeitung zeitnah freigeschaltet.
  • icon_user

    05.09.2018 09:12 - Ronny

    Hallo, genau das würde ich gerne unter Libreelec zum laufen bringen, das problem ist das apt-get unter Libreelec nicht zugelassen wird. Gibt es einen Weg dies zu umgehen?

  • icon_user

    04.07.2018 21:28 - matthias

    hallo,

    hab das nach anleitung installiert. /dev/fb1 ist auch vorhanden. aber er zeigt auf dem display nichts an. stattdessen geht immer ein fenster auf dem hdmi bildschirm auf, mit dem inhalt der auf dem adafruit angezeigt werden soll.

    hab ich da irgendwas vergessen ?

  • icon_user

    11.07.2018 19:29 - Björn

    Dies ist korrekt, vom Desktop aus lässt sich dies nicht starten, Du benötigst ein startskript wir z.B. hier erklärt: Autostart Skript was beim booten dies erledigt.

  • icon_user

    09.04.2018 20:28 - Max

    Hallo. So etwas ähnliches suche ich! Kann man das Ganze(abgeändert?) auch für einen LCD der 2 oder 3 x 16 Zeilen darstellen kann nutzen?

  • icon_user

    11.04.2018 12:48 - Björn

    Nein, KodiDisplayInfo ist graphisch für TFT Display ausgerichtet. Das was Du suchst ist wahrscheinlich LCDproc.

  • icon_user

    14.03.2018 10:56 - Chris

    Hallo! Toll was Du da gezaubert hast. Kennst Du dieses Projekt: github.com/vitalogy/script.kodisplay

    Der dortige Autor hat glaublich einen anderen Ansatz, aber bringt offenbar auch Senderlogos, Temparatur und Fanart auf den Display. So wie ich die Lösung von viatology verstanden habe, muss aber Kodi und der Display auf dem selben Raspi laufen (was ich nicht so toll finde). So wie ich dein script verstanden habe, kann es sich bei Kodi und den "DisplayRaspi" um zwei unterschiedliche Maschinen handeln (was ich weit besser finde), da du das ganze über den webserver gelöst hast.

    Vielleicht finden sich in dem Projekt von viatology ansätze die du verwenden kannst um weitere infos (Temparatur,Fanart und Senderlogos) am Display darstellen zu können

  • icon_user

    15.03.2018 22:21 - Björn

    Das Projekt von vitalogy ist ein Kodi Addon. Ja, Kodi und KodiDisplayInfo kann auf der selben bzw. auch auf unterschiedlichen Endgeräten laufen - dazu sind die entsprechenden Einstellungen in der config.txt unter [KODI_WEBSERVER] vorhanden. PVR habe ich keine Test Möglichkeit zwecks Senderlogos und die weiteren freien Flächen sind mit anderen Infos verplant.

  • icon_user

    13.03.2018 20:25 - Björn

    Ich habe keine Funktionen/Buttons etc. integriert, da wenn KodiDisplayInfo und Kodi auf dem selben SBC gestartet werden, fehlt die Touch-Funktion auf dem kleinen TFT.

  • icon_user

    13.03.2018 23:11 - Mofapilot

    Ich wollte ein Radio bauen, bei dem der kleine LCD die Hauptbedienfläche ist, wäre dann die Touch-Funktion denkbar?

  • icon_user

    09.02.2018 21:20 - Rick Rivers

    Hi, finde deine Seite super. Leider benutzt ich eine aktuelle LibreELEC (official): 8.2.3 (RPi2.arm) Version. Und die kapiert leider keine git befehle. Kann Du mir sagen ob ich die displayinfo.py per Hand auf meinen Pi laden kann. Vielen Dank im Voraus

  • icon_user

    22.09.2017 00:52 - Aiello

    Hallo... Find das echte Sahne was du hier gebaut hast, so stell ich mir das auch vor :), aber leider bekomme ich dies nicht Installiert.. Habe ein Raspberry pi3...und libreelc drauf...kann mir das einer weiter Helfen bitte.. oder habt ihr das in Ubuntu laufen oder so? Würde mich riesig um ein wenig Hilfe freuen... Display ist dieses hier Waveshare 3.5 oder Kuman 3.5 Vielen Dank... LG Aiello

  • icon_user

    22.09.2017 19:58 - Björn

    openlec, libreelec funktionieren die Displays nicht, weil entsprechende Module fehlen. Ich empfehle immer das Raspian für RPi. Ob das Kuman 3.5 schon unter Raspbian Stretch funktioniert weiß ich nicht (habe dieses Display nicht), die Anleitung ist hier github.com/goodtft/LCD-show. Für weitere Probleme/Fragen musste Google fragen!

  • icon_user

    03.05.2017 00:09 - Matze

    Hab alles soweit eingefügt und eingestellt. Nun geht es trotzdem leider nicht.

    Das meldet das System als Fehlermeldung. Was kann ich tun?

    ImportError: No module named pygame

  • icon_user

    26.04.2017 20:24 - icedeath82

    Hi ich bin begeistert... Ich nutze eine ganze Zeit schon LCDHype doch das ist recht umständlich in meiner Konfiguration, mein kleines TFT wollte ich schon immer nutzen und siehe da ich habs gefunden... Ich würde gerne helfen denn es wäre schön wenn das Programm zb den PVR bereich erkennen würde und das Layout ändern würde zb. sender-logo, channel name, die Sendung die läuft... desweiteren wäre es super wenn das Menü angezeigt wird eine Eingabe ich ja nicht mal von Nöten... nur das man weiß wo man rum geistert.... Ich habe vor langer zeit den Entwickler von LCDHype beim plugin für kodi geholfen wäre toll wenn man hier was drehen kann.. ich denke dies hier hat auf dauer großes potenzial.

  • icon_user

    26.04.2017 21:02 - icedeath82

    Bei der Wiedergabe von Files bekomm ich ein Error... kann das jemand bestädigen ?? Kodi 17.1

    log

    Traceback (most recent call last):

    File "displayinfo.py", line 215, in

    main()

    File "displayinfo.py", line 186, in main

    draw_videotime.drawProperties(media_title, time_now, speed, media_time, media_totaltime)

    File "/home/pi/KodiDisplayInfo/classes/DrawToDisplay_VideoTime.py", line 129, in drawProperties

    last_space = video_title.rindex(' ', 0, max_word_count);

    ValueError: substring not found

  • icon_user

    11.02.2017 15:20 - Chris

    Bekomm es einfach nicht zum laufen. Bin genau nach Anleitung vorgegangen, aber bei starten erhalte ich den Fehler : Parse Config

    Traceback (most recent call last):

    File "displayinfo.py", line 132, in

    if configParser.get('DISPLAY', 'FBDEV')!="":

    File "/usr/lib/python2.7/ConfigParser.py", line 330, in get

    raise NoSectionError(section)

    ConfigParser.NoSectionError: No section: 'DISPLAY'

  • icon_user

    10.02.2017 20:33 - Schumi

    Hört sich alles sehr gut an. Genau danach suche ich. Nur schade, das das mit der Bedienung über den Touch nicht funktioniert. Dann wäre alles perfekt. Gibt es so eine Art Tutorial für Dummi`s? Ich habe leider auch nicht den Durchblick bei Linux und Python. Hier wird immer davon erzählt, was man noch aktivieren muss und was man zusätzlich noch benötigt. Muss ich noch einen Treiber für das Display installieren und wenn ja, wohin?

  • icon_user

    20.01.2017 20:58 - Uwe

    Hallo, klasse Sache. Gibt es sowas auch für einen ganz "normalen" TFT Bildschirm, der als zweiter Bildschirm am PC angeschlossen ist? Der Bildschirm wird als VGA Bildschirm am PC an den zweiten Monitorausgang angeschlossen. Das wäre sooo genial... :-)

  • icon_user

    20.01.2017 18:36 - noxx

    Werden auch Menüsbezeichnungen angzeigt, so das man über das Display navigieren kann?

  • icon_user

    20.01.2017 19:51 - Björn

    Nein, wenn KodiDisplayInfo und Kodi auf dem selben SBC gestartet werden, fehlt die Touch-Funktion auf dem kleinen TFT.

  • icon_user

    21.01.2017 11:21 - noxx

    danke. funktioniert nun alles. hatte ein rechte problem, mit sudo python displayinfo.py gehts.

    das display zeigt mir den mauszeiger an, wie wird der deaktiviert?

  • icon_user

    05.01.2017 12:26 - Markus

    Hallo,

    finde dein kleines Programm hier echt super. :-)

    Aber wirst du demnächst die Variante mit der Anzeige der Thumbnails online stellen?

    Gruß, Markus

  • icon_user

    28.12.2016 20:22 - Siggi

    Hi,

    bei mir läuft das Script leider nicht.

    Ich habe in der config.txt folgendes für FBDEV eingrtragen: FBDEV = /dev/fb1

    Führe ich das Script nun aus passiert folgendes:

    kodi KodiDisplayInfo # python2 displayinfo.py

    [info] Parse Config

    [info] Screen Setup 320x240

    [info] Start: KodiDisplayInfo

    Traceback (most recent call last):

    File "displayinfo.py", line 214, in

    main()

    File "displayinfo.py", line 147, in main

    screen = pygame.display.set_mode(getattr(draw_default, 'Screen'+_ConfigDefault['display.resolution'])(), 0, 32)

    pygame.error: No available video device

    Ich kenne mich nicht gut mit python aus, aber kann es sein das die Option FBDEV aus der config gar nicht geparst wird?

  • icon_user

    05.07.2016 09:15 - Basti

    Hey,

    schöne Sache!

    Hat sich jemand schonmal gedanken gemacht wie man das an einem Normalen PC nutzen könnte? Evtl über usb arduino + display und die daten über serielle Kommunikation rüberschicken? Denkt ihr das das funktionieren könnte?

  • icon_user

    15.03.2016 15:54 - EaZeE

    Hallo Björn,

    weiß nicht ob ich es hier reinschreiben soll, aber ich mach das jetzt einfach mal ganz frech. ;-)

    Ist es denn möglich den Filmtitel in 2 "Zeilen" aufzuteilen oder vielleicht sogar noch besser von rechts nach links scrollen zu lassen? Bei langen Filmtiteln bspw. LiveTV würde das durchaus Sinn machen.

  • icon_user

    16.03.2016 18:32 - Björn

    Der Screen wird jede Sekunde komplett neu gezeichnet, deshalb wird es nichts mit einer Laufschrift.

    Ich schaue mal, das ich eine weitere Konfiguration einbaue, damit der Filmtitel in 2 Zeilen erscheint oder die Schrift minimal kleiner wird.

  • icon_user

    18.03.2016 00:18 - EaZeE

    Danke für dein Feedback!

    Habe auch mal nach diversen Python "Befehlen" gesucht, bekomme es aber momentan nicht richtig hin, den Titel in 2 Teile zu teilen.

  • icon_user

    29.03.2016 14:10 - EaZeE

    Hallo Björn,

    habe jetzt auch noch ein bisschen rumgespielt, habe den Filmtitel jetzt in 3 Zeilen aufgeteilt.

    Habe mich auch mal an der Coveranzeige versucht, aber daran arbeitest du ja bestimmt schon. TV-Logos funktionieren soweit, bloß mit den Cover aus der Bibliothek hapert es noch ein bisschen, aber wie gesagt, ich kann auch kein python programmieren. ;-)

  • icon_user

    04.04.2016 11:07 - Björn

    Habe nun die Option integriert um den Filmtitel in zwei Zeilen aufzuteilen, bei Filmtitel wie "Die Tribute von Panem 3 - Mockingjay" oder "Die Entführung von Bus 657" klappt dies sehr gut.

    Die "Film Thumbnailanzeige" habe ich nur mal Testweise angefangen, das Interesse ist jetzt auch nicht so stark - mal schauen.

  • icon_user

    12.03.2016 17:51 - EaZeE

    Hallo!

    Sehr gute Idee, genau danach habe ich seit langem gesucht. Funktioniert auch alles soweit einwandfrei, nur eins ist mir aufgefallen.

    Bei Live-TV wird der Filmtitel nicht aktualisiert, Zeiten und die errechneten Zeiten werden alle angepasst. Hab mal in den Code geschaut, kann aber im Prinzip kein Python. :-(

    Ist ja alles nicht allzu schwer nachzuvollziehen, aber ich kann nicht sehen warum der Titel nicht aktualisiert wird.

    Hat da jemand eine Idee?

    Danke schonmal! :-)