Lecture automatique de vidéos en boucle au démarrage – Suite

Bonjour,

Petit article de fin d’année suite à des essais et recherches en lien avec l’article précédent « Lecture automatique de vidéos en boucle au démarrage« .

L’idée est globalement la même :

  • Que le Raspberry Pi (ou le PC) lance automatiquement des vidéos dès le démarrage
  • En plein écran et en boucle.
  • En récupérant les vidéos dans un dossier distant.

Mais j’ai ajouté des paramètres :

  1. Utilisation de Raspbian Lite (ou un Système d’exploitation sans interface graphique)
  2. Pas d’erreur de montage du disque distant (source des vidéos) possible (sinon, on avait un écran noir)

Il faudra débuter par l’installation du système d’exploitation.

Dans le cas présent, j’ai utilisé Raspbian Stretch Lite du 13-11-2018, mais vous pouvez le faire avec une Debian sur un PC.
Je ne vais pas détailler l’installation, mais n’oubliez pas de lancer sudo raspi-config pour changer diverses choses comme passer en clavier Fr, modifier le mot de passe, activer le ssh, …

Création d’un dossier spécifique nommé « Partage » avec sudo mkdir /home/pi/Partage

Puis modification du programme de démarrage avec sudo nano /etc/rc.local pour ajouter la ligne sudo bash /home/pi/script-lecture-automatique.sh de cette façon :

#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.

# Print the IP address
_IP=$(hostname -I) || true
if [ "$_IP" ]; then
  printf "My IP address is %s\n" "$_IP"
fi

sudo bash /home/pi/script-lecture-automatique.sh

exit 0

Il faut alors créer ce script avec sudo nano /home/pi/script-lecture-automatique.sh

Et on y insère

#!/bin/bash

sudo mount -t cifs -o username=XXXX,password=XXXX //192.168.0.14/partage/videos /home/pi/Partage; then

# On efface le curseur de la souris de l'écran
setterm -cursor off

# On définit le chemin de stockage des vidéos
VIDEOPATH="/home/pi/Partage"

# On définit le service à utiliser, ici OMXPLAYER
SERVICE="omxplayer"

# On scanne en boucle le dossier
while true; do
        if ps ax | grep -v grep | grep $SERVICE > /dev/null
        then
        # le script plante parfois si la pause n'est pas assez longue
        sleep 100; 
else
        for entry in $VIDEOPATH/*
        do
                clear
                omxplayer -b $entry > /dev/null
        done
fi
done

(Évidemment, vous adapterez username=XXXX,password=XXXX ainsi que //192.168.0.14/partage/videos à vos besoins personnels ; par exemple, pour une FreeBox Revolution, ça sera sudo mount -t cifs -o guest //mafreebox.freebox.fr/'Disque dur' /home/pi/Partage -o vers=1.0 si vous avez laissé votre connexion smb à la FreeBox possible en mode invité)

sudo chmod +x /home/pi/script-lecture-automatique.sh

Après avoir installé une version Lite, nous sommes avec une version minimaliste donc pensez bien à installer OmxPlayer :
sudo apt-get install omxplayer
Sinon, ça ne va pas fonctionner 🙂

Par sécurité, vérifiez aussi que le réseau sera fonctionnel avec un sudo raspi-config pour dire au Rpi d’attendre le réseau pour finir le démarrage.
3 Boot Options
B2 Wait for Network at Boot
Would you like boot to wait until a network connection is established? <Oui>
Waiting for network on boot is enabled <Ok>
<Finish>

Et on redémarre avec sudo reboot

Nous sommes donc dorénavant en présence d’un appareil à démarrage rapide (là, je suis sur Rpi3B+) avec les vidéos en plein écran dès le démarrage.
En outre, il n’apparait qu’un écran noir complet entre les vidéos (durant à peine une seconde).

Bref, ça fonctionne et ça pourrait vous aider pour des séquence automatiques dans des magasins pour ne rien avoir à faire.

Bien évidemment, les vidéos pourraient être stockée dans le Raspberry Pi (ou ordi), mais dans le cas présent, l’idée de base était pour aider une personne qui a 7 couples écrans/Raspberry Pi donc autant gagner de l’espace en mettant les vidéos sur le réseau.

A vous !

Édit de 12h30 :
Je viens de faire l’installation faite sur un RpiZero V1.3 (pas besoin de wifi chez moi, j’ai donc la version sans wifi).
J’ai juste le RpiZero, une carte SD, un adaptateur USB vers RJ45 et c’est bon.
Au début, connexion d’un calvier pour la config puis retrait du clavier pour mettre le réseau via l’adaptateur et prise en main par SSH.
J’ai donc un lecteur vidéo autonome fonctionnel avec un Rpi à 5,22 euros.

Si vous cherchez une solution à bas coût, c’est c’est doute le meilleur résultat possible.
De plus, là, ça ne prend vraiment aucune place.
A noter que le Rpi Zéro avec Wifi est à 10,44 euros chez Kubii ; c’est encore très accessible.

A propos de Alban

Papa de 4 enfants étant lui-même resté un enfant. Diététicien-Nutritionniste tombé par obligation dans l'informatique à 22 ans pour le boulot et s'étant "un peu" pris au jeu ... Pas un génie de l'informatique (loin de là), mais intéressé et carrément orienté Linux et entraide. Lassé de l'évolution du Monde de la Santé dans lequel les patients sont de plus en plus à traiter comme des clients (je suis un soignant !!!), j'ai opté pour une reconversion en repartant en Alternance. D'abord dans le cadre d'un BTS SIO option SISR (Solutions d’Infrastructure, Systèmes et Réseaux) en Septembre 2019. Après l’obtention du BTS (16,57/20 ;-) ), j'ai décidé de poursuivre (toujours en alternance) en Bac+3 avec un Bachelor Concepteur de Systèmes d'Information. Citation personnelle : « Si la réussite facile flatte l’égo, C’est de la persévérance que nait le plaisir de la réussite. »

27 commentaires à propos de “Lecture automatique de vidéos en boucle au démarrage – Suite”

  1. Bonjour Alban
    J’ai trouvé votre site en faisant des recherches sur le net. Je souhaite réaliser avec un raspberry un effaroucheurs pour éloigner des oiseaux sur mes cultures. J’avais comme idée de programmer un raspberry avec un démarrage automatique sur VLC avec des sons définis qui se trouve dans home/pi/music
    J’ai essayé d’adapter votre tuto mais mes connaissances sont assez limitées .
    Pourriez vous me guider ?
    Cordialement

    • Salut,

      Entre les cours, les devoirs, le travail perso pour les études, le travail et la vie de famille, mon temps libre est inexistant, mais on peut regarder ça 😉

      Le plus simple, je pense (je suis en pause de 5 minutes entre 2 cours donc je réfléchis vite), sera d’utiliser mplayer pour lire les sons (moins lourd).
      Sinon, un Rpi en mode non graphique avec une crontab qui lance la lecture d’un fichier son toutes x minutes

      Dans tous les cas, attention toutefois : la sortie son devra être suffisante (c’est à dire : il faudra un ampli)

      ++

  2. Bonjour Alban,

    Merci pour ce site que je viens de découvrir et pour toutes les informations et astuces.
    Je vais me lancer pour produire un affichage dynamique sur RPI3B+ afin d’avoir une station autonome. Elle tournera sur des salons, donc sans connexion réseau, le RPI alimenté par l’écran via USB. Les fichiers seront chargés en amont. Je vais tenter le script précédent.
    Croisons les doigts. Etant débutant, je reviendrais vers vous si vraiment je me plante.

    À bientôt,
    Christophe

    • Salut Christophe,
      Merci pour ton message.
      Tu vas y arriver, les tutos de ce site sont parfaits … en toute modestie 😀
      Idée :
      Tu concatènes l’idée du Rpi en affichage dynamique avec FTP ET l’idée du point d’accès dont je parle dans le tuto Borne Photos Autonome.
      Comme ça, avec un Rpi qui génère son WiFi, tu pourras te connecter avec ton PC et y injecter des vidéos via FTP même loin de tout réseau 😉
      ++

    • Bonjour Laurent,

      Tu es en version Lite ou Desktop ?
      As-tu vérifié le paramétrage du son par défaut (HDMI ou Jack) ?
      D’ailleurs, ta sortie son est laquelle ?
      Tu peux aller dans les paramètres avancés de son en tapant « alsamixer » dans le Terminal (ça permet de choisir le niveau sonore par exemple).

      @+

      • Bonjour Alban,
        Merci pour ta réponse. Oui j’ai vérifié. Par ailleurs j’ai bien du son avec VLC
        Je suis en version desktop sur un Raspberry pi4 et ma sortie son doit se faire sur le HDMI.
        Je vais essayer la sortie casque pour voir si il y a quelque chose.
        @+

        • Hello,
          Bon … Ben … Je vais suivre mon tuto sur un RpiZero (je n’ai plus que ça sous le coude) pour essayer.
          J’installe la version Desktop puis suis ce tuto et reviens vers toi.
          ++
          PS : Parfois le Rpi4 m’a rendu fou avec la sortie son !!!

          • Super merci,
            Pour info je n’ai également rien sur la sortie casque.
            J’aurais bien tenté le coup avec VLC mais je n’arrive pas à faire un script pour un lancement automatique d’un dossier et j’ai un bug d’affichage en plein écran (pas de vidéo mais du son), par contre vlc fonctionne en papier peint.

            • Bonjour Laurent,

              J’ai installé RaspiOS Desktop sur un RpiZero v1.3 et suivi mon tuto (j’ai du passer mon mem_gpu à 128 sinon omxplayer ne fonctionnait pas).
              Je lis bien les vidéos de manière automatique au démarrage (en local comme en réseau) avec le son.

              Je n’ai pas réussi à reproduire ton souci.

              ++

              • Hello Laurent,
                Petit ajout du samedi matin.
                Sur mon vieux Mac Mini, j’ai créé un dossier TEST-RPI dans mon dossier téléchargement.
                J’ai partagé ce dossier.
                Je le monde de la sorte :
                sudo mount -t cifs -o username=XXXX,password=XXXX //192.168.0.55/TEST-RPI /home/pi/Partage
                (oui, il faut noter 192.168.0.55/TEST-RPI alors que la logique voudrait que je note 192.168.0.55/Users/alban/Downloads/TEST-RPI)
                Résultat ?
                Mon Rpi zéro tourne sous RaspiOS Lite avec attente du réseau pour démarrer et affiche bien les 4 vidéos du dossier placé sur le Mac.

                ++

              • Hello Alban, bon, j’ai essayé plein de truc, au final je préfère la solution omxplayer à VLC. Cependant, je n’arrive toujours pas à sortir le son. ni via le HDMI ni en mini-jack. Là! je suis perdu.

  3. Rétroliens : Affichage dynamique avec un Raspberry – TREVILLY.COM

  4. Rétroliens : Installation de Raspbian Buster Lite – TREVILLY.COM

  5. Bonjour à vous.

    Alors tout d’abord merci infiniment pour toutes ces astuces ! J’essaye de mettre en place de l’affichage dynamique dans mon entreprise et votre tuto est parfait par rapport à mes connaissances de Linux 🙂

    Je me sers de FileZilla pour transmettre et enlever des vidéos du Raspberry, et ça communique très bien, j’ai dû supprimer la ligne du début de votre script-lecture-automatique.sh

    Cependant j’ai un souci: Au début, tout fonctionnait très bien, j’arrivais à faire tourner des vidéos issues de powerpoint au format MP4. J’ai ensuite ajouté une autre vidéo MP4 en rapport avec nos productions, et la lecture vidéo bouclait plus que sur cette dernière vidéo. J’ai tenté de reconfigurer ma Raspi en refaisant ce que j’avais fait, sans mettre la dernière vidéo sur laquelle il bouclait à l’infini, et en mettant des vidéos test en format MP4 trouvées sur le net, mais il ne les lit pas toutes, et il ne lit même plus les vidéos en MP4 issues du Powerpoint.

    Savez-vous d’où cela peut-il venir ? Faudrait-il que je change de lecteur vidéo ? Je tourne en rond depuis un moment et je n’arrive plus à avancer 🙁

    Je vous remercie d’avance

      • Re,
        J’ai pris le temps de ressortir un RpiZero, de retrouver une carte SD et d’y installer Raspbian Lite tout neuf.
        Ensuite, j’ai mis un clavier pour faire une config minimaliste puis j’ai activé le SSH et j’ai connecté un adaptateur USB vers RJ45 afin de piloter le tout en SSH.
        Mise à jour complète.
        Installation de OMXPLAYER
        Création d’un dossier mp4 sur ma Freebox.
        Création du script et modification du rc.local évidemment.
        J’ai mis 3 vidéos dans le dossier de la Freebox :
        https://pixabay.com/fr/videos/r%C3%A9flexion-lentille-lumi%C3%A8re-parasite-27594/
        https://pixabay.com/fr/videos/plexus-r%C3%A9seau-rougeoyant-27669/
        https://pixabay.com/fr/videos/automne-arbres-jaune-grand-mesa-28746/
        (prise en version basse résolution)
        Là, le Rpi Zéro fonctionne sans clavier ni souris et les vidéos tournent en boucle (depuis 5 minutes).
        Bref, ça fonctionne !
        Dans ton cas,
        Vérifier que :
        VIDEOPATH= »/home/pi/Partage » soit sans erreur
        la commande était bien mkdir /home/pi/Partage (erreur de majuscukle ?)
        Les vidéos sont lisibles

        Je fais partie de celles et ceux qui travaillent en cette période de confinement donc je vais arrêter pour ce soir.
        Redis-moi,

        • Bon,
          Comme je suis dingue, j’ai testé 😀
          (à presque 45 ans, je sais que je suis dingue, mais ne lui dites pas « à l’autre », car lui ne sais pas que je sais et je préfère qu’il ne sache pas que je sais. Sinon, nous serons 2 à savoir : lui, et moi ; il ne resterait donc plus que nous à pouvoir sauver la mise)
          (oui, cela fait référence à « Lui, Moi, Nous » ; Private Jok à moi tout seul)
          Je viens d’injecter une nouvelle vidéo en MP4 :
          https://pixabay.com/fr/videos/nuages-drone-air-paysage-photo-27197/
          Cette injection dans le dossier de la Freebox a été réalisé sans coupure du Rpi.
          Et tu sais quoi ?
          La séquence des 3 vidéos a continué puis l’image a sauté même pas 1 seconde (au moment de l’écran noir entre les vidéo) avec des lignes de code je pense … puis … la lecture a repris toute seule et enchaîne maintenant les 4 vidéos MP4 sans problème.
          @+

    • bonjour martin j’ai un problème similaire pour le dossier est stockés tes vidéos tu ne doit pas avoir d’espace dans les titres cordialement exemple: le nuage.mp4 => lenuage.mp4

      • Salut Ruineo,

        C’est exactement ça.
        J’avais donné la réponse à Martin le 20/03/2020 par courriel suite à des échanges de fichiers (pour essayer avec son dossier et ses vidéos).
        Il y avait bien une vidéo « Ma Video.mp4 » que j’avais modifié en « Ma_Video.mp4 » et hop, tout était rentré dans l’ordre.

        Je te remercie vivement pour ton commentaire puisque j’avais omis de noter cette réponse pour tout le monde !

        @+

        • Bonjour Ruineo,

          C’était exactement ça 🙂

          Depuis ce temps, tous mes fichiers sont renommés sans espace, même sur Windows. Au moins je garde de bonnes habitudes 🙂

          Bonne continuation à tous.

    • Bonjour Mr Alban,
      Merci pour l’article, très intéressant. Je voudrais solliciter votre aide : y a-t-il une possibilité que le raspberry mette moins de temps avant de demarrer la vidéo?
      La vidéo à lire en boucle est stockée en locale dans le dossier /home/pi/Vidéos et je remarque que le raspberry met en moyenne 50sec avant de commencer à lire la vidéo au démarrage.
      Aussi je voudrais savoir si c’est possible d’avoir une option pour arrêter la lecture en boucle sans avoir à réinstaller le système d’exploitation.
      Merci pour votre temps

      Prince

      • Hello,

        Quelques questions avant de répondre 😉
        – Quel est le modèle du Raspberry en question ?
        – Les 50 secondes, c’est le délai à partir du moment du branchement du Rpi sur le courant ?
        – Le Raspberry est installé avec « Raspberry Pi OS » en version « lite » ou en version « Desktop » ?
        Il faudrait que je réinstalle sur un Rpi Zero pour voir (c’est le modèle le plus lent)
        A bientôt,

  6. Bonjour,

    Merci beaucoup pour votre tuto, très utile pour moi. J’ai juste remplacé le dossier dans le script pour demander à OMXPlayer de lire directement dans un dossier du Raspi. Les nouvelles vidéos étant ajoutées ou supprimées via FileZilla.

    Il y a bien la coupure d’une seconde entre chaque vidéo, mais pour ma part, c’est un affichage du bureau et non du noir. Donc j’aimerais pouvoir exploiter ce retour bureau pour afficher des infos via une page web qui se charge en arrière plan. Cette page web affichera une horloge et des infos en direct comme la météo ou l’horoscope. Comment faire pour avoir une coupure entre 2 vidéos qui dure plus qu’une seconde ? Le top serait une coupure d’environ 30 secondes.

    Merci d’avance.

    • Salut,
      Merci pour ton retour.
      Je ne suis pas du tout « aware » car je fais tout autre chose, mais une idée à tester :
      Tu pourrais tenter un « sleep » de 30 secondes avec « sleep 30 »

      Je pense que l’insertion, se fera dans
      for entry in $VIDEOPATH/*
      do
      clear
      omxplayer -b $entry > /dev/null
      done

      avec
      for entry in $VIDEOPATH/*
      do
      clear
      omxplayer -b $entry > /dev/null
      sleep 30;
      done

      ou
      for entry in $VIDEOPATH/*
      do
      clear
      omxplayer -b $entry > /dev/null
      done
      sleep 30;

      A tester !
      On en recause 😉

  7. Rétroliens : Lecture automatique de vidéos en boucle au démarrage – TREVILLY.COM

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.

*

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.