Je développe un escape game pour une médiathèque, qui se déroule dans un ancien fort. J’ai besoin d’un système simple :
Une image d’accueil s’affiche par défaut à l’écran,
Quand un joueur appuie sur une touche du clavier (ex : A ou B), une vidéo se lance en plein écran,
Si une autre touche est pressée, la vidéo en cours doit s’arrêter et être remplacée par une autre.
J’ai tenté de le faire en Python avec Pygame et VLC, mais je rencontre un souci :
quand VLC est en plein écran, il prend le contrôle de l’écran et empêche de détecter les nouvelles touches. Du coup, je ne peux pas changer de vidéo en cours de lecture comme prévu.
Auriez-vous une solution ou une autre méthode pour que le clavier reste actif même pendant la lecture en plein écran ?
Merci d’avance pour votre aide !
Bonjour,
si VLC n’est pas intégré dans la fenêtre Pygame cela semble très compromis car il ne semble pas possible par programmation que le fenêtre Pygame reprenne le focus.
Peut être quand Intégrant VLC dans une fenêtre Pygame cela est possible, mais cela demande de combiner Pygame (pour l’affichage et les événements) avec python-vlc (le binding Python de la VLC Media Player API). VLC peut afficher la vidéo dans une surface native, et on peut rediriger cette sortie vers une fenêtre créée par Pygame.
Je dispose bien d’une solution qui permettrait de réaliser facilement ton projet mais elle n’est pas en python et ne nécessite pas VLC. Ma solution permettrait également de t’affranchir d’un clavier, pour le pilotage des vidéos.
Si cela peut aider plus d’infos ici:Affichage dynamique
A+
Je vous remercie pour votre solution. J’aurais une question concernant la connexion Internet.
Le projet se déroule dans un fort où l’électricité fonctionne grâce à un générateur, mais où il n’y a ni réseau mobile, ni accès à Internet.
Est-ce que votre solution peut tout de même fonctionner dans ces conditions ?
Prépare ton projet avec un accès internet, alors si il te manque un package, tu pourras l’installer, une fois l’appareil prêt, et testé, tu peux l’apporter en lieu ou il travailleras. L’accès internet ne sera pas requis, sauf que…
… si tu veux avoir une date et heure à jour, il faudra ajouter un module RTC (Real Time Clock), pour permet au RPi de le garder en mémoire, mais sinon, la date/heure s’actualisera à la prochaine connexion à internet. (et techniquement, pour juste un lecteur, tu n’a pas besoin de le garder précise)
Hello @Lionel_M
Et juste un Rpi avec 2 boutons sur des GPIO ?
Il démarre et affiche une image (qui peut même être aléatoire)
Si bouton X = vidéo X
Si bouton Y = vidéo Y
Un simple script python permet de le faire et comme le dit @levelKro l’ajout d’un module RTC est aisé (je viens d’en ajouter un pour refaire ma DashCam perso sur RpiZero avec horodatage).
++