Der Raspberry Pi bietet sich ja aufgrund seiner geringen Abmessungen und aufgrund seines geringen Stromverbrauchs hervorragend als digitaler Bilderrahmen an.
Mein Ziel bei der ganzen Sache war es, den Raspberry Pi via HDMI-Kabel an meinen Fernseher anzuschließen und dann soll automatisch eine Slideshow ausgesuchter Bilder dort ablaufen.
Im nachfolgenden beschreibe ich zwei unterschiedliche Varianten,
- Bilder für die Diashow sind auf dem Raspberry Pi gespeichert
- Bilder für die Diashow sind auf einem zentralen Server gespeichert
Grundkonfiguration
Bevor man gezwungen ist, sich für eine der beiden Varianten zu entscheiden, muss man das Bildprogramm installieren. Ich habe als Bildbetrachtungstool pqiv genommen, welches klein und schlank ist und meiner Meinung nach wunderbar auf dem Pi läuft.
Die Installation von pqiv ist ein wenig aufwendiger, da man das Tool selbst kompilieren muss. Es ist zwar auch eine Version in den Paketquellen enthalten, aber diese scheint nicht reibungslos zu laufen und Fehler zu erzeugen. Deshalb installieren wir hier mal schnell pqiv:
Erstmal entfernen wir das evtl. bereits installierte Programm vom Pi
sudo apt-get remove pqiv
Nun noch zwei Pakete installieren, die wir für das weitere Vorgehen benötigen
sudo apt-get install git libgtk2.0-dev
Nun laden wir pqiv von github herunter. Es wird automatisch ein Verzeichnis im Home-Verzeichnis mit dem Namen pqiv angelegt
git clone https://github.com/phillipberndt/pqiv.git -b 0.12
Der erste Schritt des Komilierens
cd pqiv ./configure
Nun müsst ihr mit einem Editor die Datei pqiv.c im Verzeichnis /home/pi/pqiv öffnen. Dort sucht ihr nach dem Eintrag „gchar option“; und ersetzt das durch „gint option“;.
Danach gebt ihr noch den Befehl ein und fertig
sudo make all install
Wenn kein Fehler auftaucht, dann ist pqiv auf eurem Pi installiert und ihr könnt es jetzt schon starten. Der Befehl dazu ist
pqiv [-option] [file or folder]
Auf dieser Seite findet ihr eine übersichtliche Darstellung Optionen ➡ http://www.digipedia.pl/man/doc/view/pqiv.1/
Nachdem nun das Bildbetrachtungstool installiert wurde, konfigurieren wir im nächsten Schritt den Autostart von pqiv.
Zuerst ist zu prüfen, ob der Pi beim booten automatisch den XServer mitstartet. Geht auf die Konsole und gebt dort den Befehl ein
sudo raspi-config
Nachdem ihr das alles Konfiguriert habt, startet der Raspberry Pi neu und danach sollte die grafische Oberfläche starten.
Noch sind wir mit der Grundkonfiguration noch nicht fertig. Der Raspberry Pi schaltet nach einer definierten Zeit den Bildschirm ab, was wir ja bei unserer Diashow nicht wollen. Die Bilder sollen ja immer auf dem Bildschirm zu sehen sein.
Im Internet gibt es einige Anleitungen zu diesem Thema, die ich auch fast alle ausprobiert habe. Das Einzige, was bei mir funktioniert hat ist folgendes.
Ich habe Datei /etc/lightdm/lightdm.conf editiert und dort einen Eintrag in der Kategorie [SeatDefaults] eingetragen.
xserver-command=X -s 0 -dpms
Führt auch danach einen Neustart durch, damit die Konfiguration wirksam wird.
Variante 1: Bilder für die Diashow sind auf dem Raspberry Pi gespeichert
Nachdem nun pqiv auf den Pi installiert wurde, geht es darum das Tool automatisch zu starten.
Bevor wir mit der Autostart-Konfiguration weitermachen, ist es erforderlich einen Ordner zu erstellen, in dem die Bilder für die Diashow abgespeichert werden. Ich habe zu diesem Zweck einen Ordner im Home-Verzeichnis erstellt.
mkdir /home/pi/Bilder
Legt nun eine Datei im einem beliebigen Verzeichnis an, wo ihr die Startoptionen für pqiv eintragen könnt. Ich habe die Datei im Verzeichnis /home/pi/.config/autostart angelegt.
Erzeugen einer neuen Datei
cd /home/pi/.config/autostart touch start_pqiv.sh
Tragt die folgende Zeile
/usr/bin/pqiv -sf /home/pi/Bilder
in der neuen Datei ein. Ich habe das mit dem Editor nano auf der Konsole erledigt.
sudo nano /home/pi/.config/autostart/start_pqiv.sh
Speichert die Änderung mit der Tastenkombination Strg+X.
Nun müsst ihr noch eine weitere Datei im Verzeichnis /home/pi/.config/autostart/ anlegen.
cd /home/pi/.config/autostart touch pqiv.desktop
Auch hier müsst ihr noch ein paar Zeilen eintragen:
[Desktop Entry] Type=Application Exec=/home/pi/.config/autostart/start_pqiv.sh
Auch hier habe ich die neue Datei mit dem Editor nano bearbeitet:
Zum Abschluss müssen wir noch die beiden neuen Datein ausführbar machen. Das geht ebenfalls auf der Konsole mit dem Befehl
chmod u+x pqiv.desktop start_pqiv.sh
Startet euren Raspberry Pi neu und pqiv mit Diashow sollte automatisch gestartet werden.
Variante 2:Bilder für die Diashow sind auf einem zentralen Server gespeichert
Die zweite Variante unseres digitalen Bilderrahmens unterscheidet sich lediglich im Speicherort, wo wir die Bilder für die Diashow hinterlegen. Die Variante 2 könnt ihr nutzen, wenn ihr mehrere Raspberry Pis als digitale Bilderrahmen verwendet möchtet, wo entweder jeweils die gleichen oder unterschiedliche Bilder abgespielt werden. Da es bei mehreren Geräten wahrscheinlich aufwendig ist, die Bilder auf die Pis zu schieben, ist es konfortabler die Bilder auf einem zentralen Server zu hinterlegen. Von dort können die Raspberrys die Bilder abrufen.
Für den Dateitransfer nutzen wir NFS, da es ziemlich einfach zu konfigurieren ist und wir die NFS-Freigaben bei den Bilderrahmen als Ordner einbinden können. Im Groben und Ganzen soll das Konstrukt dann so aussehen:
Damit wir weitermachen können, benötigen wir einen Linux-PC, den wir als zentrale Bildablage im Netzwerk nutzen können. Auf diesem PC müssen wir erstmal einen NFS-Server installieren und die Freigabe konfigurieren.
Gib mir gerne einen Kaffee ☕ aus!
Wenn dir meine Beiträge gefallen und geholfen haben, dann kannst du mir gerne einen Kaffee ☕ ausgeben.
bc1qfuz93hw2fhdvfuxf6mlxlk8zdadvnktppkzqzj
Im nachfolgenden nehmen wir an, dass der Server die IP-Adresse 192.168.2.120 und der Raspberry Pi die IP-Adresse 192.168.2.13 hat.
Installation des NFS-Servers:
nfs-kernel-server
Freigabe des Bilderordners auf dem NFS-Servers:
Die Freigaben werden in der Datei /etc/exports eingetragen.
/home/benutzername/Bilder 192.168.2.13(ro,async)
Die Zeile besagt folgendes
- /home/benutzername/Bilder = Pfad zum Bilderordner
- 192.168.2.13 = IP-Adresse des Raspberry Pis
- (ro,async) = Der Raspberry Pi erhält nur Leserechte auf den freigegebenen Ordner und es erfolgt ein asynchroner Datentransfer
Zum Schluss lassen wir die neue Konfiguration mit dem Befehl einlesen
sudo exportfs -ra
Wechselt nun auf den Raspberry Pi. Zuerst müssen wir dort das Paket nfs-common installieren:
sudo aptitude install nfs-common
Nach der Installation schauen wir, ob wir auf dem raspberry Pi die NFS-Freigabe sehen:
showmount -e 192.168.2.120
Seht ihr nun die Freigabe, gehts weiter.
Auf dem Raspberry Pi möchten wir die Freigabe als neuen Ordner einbinden, der automatisch bei jedem Neustart eingebunden (=gemountet) wird.
Legt also einen neuen Ordner an
sudo mkdir /mnt/nfs-freigabe
Danach könnt ihr prüfen, ob ihr die Freigabe auf dem Pi einbinden könnt:
sudo mount 192.168.2.120:/home/benutzername/Bilder
Prüft nun, ob ihr die Bilder die auf dem Server gespeichert wurden, im neuen Ordner auf dem Raspberry seht
cd /mnt/nfs-freigabe ls
Das Einbinden der NFS-Freigabe soll nun bei jedem Start des Raspberry Pis automatisch erfolgen. Ihr müsst dazu einen Eintrag in der Datei /etc/fstab vornehmen.
sudo nano /etc/fstab
Tragt dort die Zeile ein:
192.168.2.120:/home/benutzername/Bilder /mnt/nfs-freigabe nfs rw 0 0
Wenn ihr dort nun eine Liste eurer Bilder seht, hat alles funktioniert und ihr könnt mit der Konfiguration von pqiv weitermachen. Wie ihr euch sicherlich denken könnt, müsst ihr im Gegensatz zur Variante 1 nur den Pfad in der Datei start_pqiv.sh umbiegen:
/usr/bin/pqiv -sf /home/pi/Bilder
Nach einem Neustart der Raspberry Pi sollte die pqiv automatisch starten und die Bilder aus der NFS-Freigabe laden.
Da die Bilder immer vom Server geladen werden, könnt ihr zu jederzeit eine neue Diashow erstellen, ohne das die Betrachter des digitalen Bilderrahmes etwas davon mitbekommen.
Weiteres
Was ihr beim Einsatz eines Bilderrahmen mit dem Raspberry Pis noch beachten sollt:
- pqiv erzeugt unter Umständen eine hohe CPU-Last, was evtl. weitere Dienste/Programme auf dem Raspberry negativ beeinflusst:
- Der ständige Abruf der Bilder vom zentralen Server durch die Option -w kann beim Einsatz mehrere digitaler Bilderrahmen u.U. eine hohe Netzlast erzeugen und dadurch andere Dienste im Netzwerk beeinflussen. Als Abhilfe könnt ihr den ständigen Abruf der Bilder durch pqiv abschalten. Alternativ könnt ihr auch die Variante 1 verwenden und die Bilder vom Server mittels eines Cron Jobs in definierten Abständen auf den Raspberry kopieren lassen. Lokal könnt ihr ja ohne weiteres die Option -w verwenden, da so keine Last auf dem Netzwerk erzeugt wird.

ist absolut technik-begeistert und großer Fan von Linux und Open Source. Raspberry Pi Bastler der ersten Stunde und nach wie vor begeistert von dem kleinen Stück Hardware, auf dem er tolle Projekte umsetzt. Teilt hier seine Erfahrungen mit Nextcloud, Pi-hole, YubiKey, Synology und openmediavault und anderen spannenden IT-Themen. Nutzt Markdown und LaTeX zum Dokumentieren seiner Projekte und Gitea zum Versionieren. Sitzt vor einem 49“ Monitor, nutzt Windows und MacOS zum Arbeiten, Linux auf seinen Servern und virtuellen Maschinen und hört dabei Spotify und MP3s und Radio-Streams über seinen RadioPi.
HalloDeine Anleitung ist ja echt bis ins kleinste Detail gut beschrieben! Vielen Dank!Hast du es auch geschafft, dass die Bilder im Vollbildmodus angezeigt werden?Wenn ich ihn als digitalen Bilderrahmen benutze möchte ich ja nicht noch den Desktop sehen und der Bildschirm soll ja voll ausgefüllt werden (bei zu kleinen Bildern mit schwarzem Rahmen).Ich hoffe du kannst mir weiterhelfen. Vielen Dank!Gruss
Hallo Simon,
schön, dass dir die Anleitung geholfen hat.
Hast du dir schon mal die Optionen von pqiv angesehen?
Was passiert, wenn du ein upscaling mit dem Parameter t machst? Erhältst du dann ein Vollbild?
Grüße
Danke, jetzt funktioniert alles wie es soll!
Hallo Stefan,
nach Deiner Anleitung hat es einmal mit pqiv geklappt. Danach nicht mehr. Warum auch immer. Zwischenzeitlich kann ich Dir das Programm FEH empfehlen. Klappt gut und macht was es soll. Mächtige Kommandozeile und einfach per apt-get zu installieren. das Komando als Beispiel macht eine Diashow als Vollbild ohne Mausteiger und skaliert voll zeigt das Bild für 10s und holt sich alle Bilder aus der Ramdiskexport DISPLAY=:0 && feh -D 1 -Z -F -x -Y /home/pi/ram
Ich habe die 50MB Ramdisk, für Bilder die ich mittels wget ständig austausche, angelegt und eine 50MB für die log Dateien, damit schone ich mein SD Karte:
pi@raspberrypi ~ $ cat /etc/fstabproc /proc proc defaults 0 0/dev/mmcblk0p1 /boot vfat defaults 0 2/dev/mmcblk0p2 / ext4 defaults,noatime 0 1tmpfs /var/log tmpfs nodev,nosuid,size=50M 0 0tmpfs /home/pi/ram tmpfs nodev,nosuid,size=50M 0 0# tmpfs /var/tmp tmpfs nodev,nosuid,size=50M 0 0# a swapfile is not a swap partition, so no using swapon|off from here on, use dphys-swapfile swap[on|off] for that
Mit Samba komme ich auc direkt auf die Laufwerke. Die Anleitung dafür ist hier:http://simonthepiman.com/how_to_setup_windows_file_server.php
hoffe es ist was Nützliches dabei. Wir arbeiten gerade an einer Inforscreen Lösung mit XIBO (www.xibo.org.uk). Ein Kollege ist mit seinem Raspi recht weit.
Gruss
Christoph
Hallo Christoph,
danke für die Info.
Hallo,finde den Artikel sehr interessant, da ich die Tage auch einen Infoscreen mit dem PI bauen will. Werde mal versuchen das nach zu vollziehen.Was mir die ganze Zeit aber schon Kopf zerbrechen macht: Habt ihr eine Power-Down Lösung ? Weil einfach Strom vom PI weg nehmen (z.B. für Nachts per Zeitschaltuhr) schrottet früher oder später ja das Filesystem – und per ssh einen normalen Shutdown vorher machen ist bei der Anwendung „Digitaler Bilderrahmen / Infoscreen“ ja auch eher unpraktisch… Meine einzige Idee ist aktuell eine USV vorzusetzen und von dort das Power-Down-Signal abzufangen :(Björn
Hi Björn,
wahrscheinlich ist die Beste Lösung alles via Zeitschaltuhr herunter zu fahren. Du musst ja dann auch deinen Monitor vom Strom trennen.
Eine zentrale Lösung, um mittels SSH die Pis auszuschalten ist mir nicht bekannt.
Falls du hier eine brauchbare Lösung findest, wäre es nett, wenn du hier ne kurze Info hinterlässt.
Auch wenn Du den Raspberry Pi am Fernseher betreibst: Es wäre interessant, was für einen standalone-Bilderrahmen für ein Monitor / Display geeignet wäre. Also irgendetwas stromsparendes, was problemlos 24h am Tag laufen könnte ohne kaputt zu gehen.
Hallo Stefan!Klasse Anleitung!Mich würde allerdings noch interessieren, wie dies über FTP zu realisieren ist, vielleicht könntest du deinen Beitrag um diesen Punkt erweitern 😉
Hallo dasObst,
mir ist nicht ganz klar, was du mit einem FTP-Server hier machen willst.
Falls du ein Programm suchst, mit dem du von einem Windows-PC aus Bilder ohne Konfigurationsaufwand auf den Pi laden kannst, würde ich dir WinSCP empfehlen.
Hallo Stefan,Danke für den Beitrag. Ich habe deine Anleitung befolgt, aber leider startet bei mir die Bildershow nicht automatisch. Beim der Fehleranalyse konnte ich Tippfehler ausschließen. Hast du ne Idee fürs Troubleshooting?
Hallo Tom,
verwendest du pqiv? Hast du das Programm in den Autostart gelegt oder startest du das manuell? Hast du dir die Optionen schon mal angeschaut, ob du evtl. einen anderen Parameter zum starten benötigst?
@TomDa ist ein Schreibfehler beim erstellen der pqiv.desktop Datei.Bei Type schreibt man Application mit c und nicht mit k (beim Bild ist es richtig).Dann klappt es auch mit dem Autostart;)Ansonsten vielen Dank für die Anleitung, meine Frau freut sich über ihren schönen neuen digitalen Bilderrahmen.
Hi!Ich hab‘ das ganze nachgebaut, allerdings den Samba-Client für den Zugriff aufs Netzwerk benutzt.Funktioniert wunderbar bis auf eine Kleinigkeit:Auch bei mir startet die Slideshow nicht automatisch.Du schreibst:“Legt nun eine Datei im einem beliebigen Verzeichnis an, wo ihr die
Startoptionen für pqiv eintragen könnt. Ich habe die Datei im
Verzeichnis /home/pi/.config/autostart angelegt.“Das Verzeichnis „autostart“ hat bei mir nicht existiert. Da Du schreibst, man könne die Datei in einem beliebigen Verzeichnis anlegen, habe ich das Verzeichnis autostart erzeugt und darin die Dateien angelegt.Was mich wundert:Da ist jetzt ein neu angelegtes Verzeichnis, in dem stehen zwei ausführbare Skripte, die irgendwie pqiv starten sollen – aber woher soll der Pi jetzt wissen, daß er diese Skripte ausführen soll??? Das erschließt sich mir aus Deiner Anleitung nicht so ganz…Danke für jede Hilfe, Thomas
Hallo – ich versuche alles gemäss anleitung nachzubauen (ich beherrsche nicht mehr) und komme recht gut voran bis zum Start: pqiv [-option] [file or folder]
Danach erscheint aber die Meldung: Failed to load any of the images
Kann mir jemand sagen, was ich falsch mache? Wo müssen die Bilder abgelegt sein?
Hallo Stefan,wirklich eine tolle Anleitung auch für Anfänger gut nachvollziehbar. Ich habe inzwischen einen digitalen online Bilderrahmen auf Google-Foto-Basis gefunden. Läuft bei mir prima und zeigt in einstellbarer oder zufälliger Folge meine gesamten Bilder aus der Google-Foto-Cloud an:https://github.com/mrworf/photoframe/wikiVielleicht auch noch eine Idee, Dein System zu erweitern.