Slideshow in Python

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • Hallo,

    ich bin mir im Moment eine eigene Selfi-Box am bauen. Hier ein kurzer Überblick über den aktuellen Stand:

    - Ein Tastendruck startet die Prozedur
    - Eine 8x8-LED-Matrix zählt einen Countdown runter
    - Gleichzeitig wird über HDMI die Bildvorschau der PI-Cam angezeigt
    - Nach Ablauf des Countdowns wird ein Bild gemacht
    - Ein erneuter Knopfdruck und alles fängt von vorne an

    Soweit, So gut.
    Allerdings möchte ich gerne in den Pausen, in denen kein Tastendruck erzeugt wird, gerne die bereits aufgenommenen Bilder als Slideshow ablaufen lassen.
    Das ganze über denselben Monitor, der auch die Bildvorschau anzeigt.

    Ist es möglich so etwas aus Python heraus zu realisieren?
    Optimal wäre natürlich, wenn die Bilder zufällig angezeigt würden, sodass keine Abfolge entsteht.

  • Ich habe eine Möglichkeit gefunden, eine Diashow mittels FBI aus meinem Python.Script zu starten. Es wird per os.system("") ein Shell-Befehl ausgeführt. Allerdings müsste das ganze beim nächsten Tasterdruck auch wieder beendet werden, damit mein Programm wieder weiterlaufen kann.

    Habt Ihr eine Idee wie man so etwas anstellen kann?

  • Ich habe eine Möglichkeit gefunden, eine Diashow mittels FBI aus meinem Python.Script zu starten. Es wird per os.system("") ein Shell-Befehl ausgeführt. Allerdings müsste das ganze beim nächsten Tasterdruck auch wieder beendet werden, damit mein Programm wieder weiterlaufen kann.

    Habt Ihr eine Idee wie man so etwas anstellen kann?

    Eine Idee wäre:

    Starte FBI als Subprocess:

    Code
    import subprocess
    
    
    proc = subprocess.Popen(["fbi mit den richtigen Argumenten hier"])
    
    
    while True:
       startKnopf = readStartknopf()
       if startKnopf:
          proc.kill()   #Mach die Diashow wieder zu

    Könnte gehen ;)

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!