Bonjour, je me prénomme Mallory, et je n’ai jamais utilisé de raspberry de ma VIE. Donc j’explique brièvement.
Je vais bientôt avoir une salle de cinéma, en sous sol donc pas de connexion internet et je ne possède pas de film en DVD. Donc, vu que j’ai un disque dur en SATA III, en rab. Et que je vais certainement m’acheter un raspberry pour ce projet, j’aimerais faire un logiciel qui serait tout le temps allumer sur le raspberry.
Un logiciel qui ressemblerait à Netflix, qui analyserais une base de donné, avec :
Nom du film
Image de couverture du film
Chemin d’accès du fichier du Film
Synopsis du film
Date de création du film
Acteur1 + Photo (jusqu’à 12 acteurs en tout)
Âge minimum requis pour le film.
Le problème, c’est que je ne sais que faire du design, donc j’ai designer le logiciel, mais je en sais pas le coder.
Avant de me lancer dans ce projet de programmation. J’aimerais savoir si il est possible de faire un logiciel comme ceci sur un raspberry et en quel language de programmation.
Bonjour,
je vais être un peu rabat joie, et vous poser quelques questions triviales:
a) Savez vous qu’un Rapsberry Pi fonctionne … comme un PC? (il suffit de lui rajouter un clavier et une souris USB -ça peut servir pour un utilisateur qui veut selectionner un film…- , un ecran HDMI -on peut voir des menus, des films- … ce fonctionnement est moins tordu, pour demarrer, qu’avec une connection distincte genre ssh).
Notez qu’un adapatateur SATA-USB (moins de 40E$) peut servir aussi bien pour un PC que pour un RPi…(utilisé par les dépanneurs pour récupérer un disque)
b) Votre découpe en tâches n’est pas du tout choquante. Ce qui me chagrine, c’est que vous voulez « faire un logiciel ». Qui le fera? (vous, un copain, le ouaibe paresseux?).
c) du fait de ma question un peu rhétorique en a), et du fait que tous les langages de programmation libres sont portables, on peut installer tous les logiciels disponibles sur RPi … sur un PC. Je vous conseillerais Python -ce n’est pas mon langage de programmation favori-, du fait qu’il est populaire sur RPi et assez facile pour démarrer. Comme il est très populaire, « vous » pouvez (avec opencv -j’en suis sûr- ou plus simple) trouver un fichier video sur le disque, l’afficher, faire un arrêt sur image …
vous pouvez aussi gérer une base de données , des menus (OCV a son propre système de menus, mais il y a sans doute mieux -pyqt?-).
Donc, il est possible de coder un logiciel sur un PC OU un RPi faisant ce que vous voulez,
vous serez sûr d’avoir de l’aide si vous codez en
Python;
ceci prendra quelque temps (avec risques de découragement) et ce qui me semble le plus gênant (et je ne sais pas du tout y répondre) c’est (dans le cas où vous codez) comment apprendre ce langage de programmation… (avec un copain?
en lisant Ressources Python ?
en naviguant dans https://www.learnopencv.com/ -et en le filtrant- ou dans OpenCV: OpenCV Tutorials (mais il y a certainement plus simple qu’opencv?)).
Ces deux logiciels sont portables partout (PC et RPi): l’avantage enorme, c’est qu’on peut les comparer, choisir le meilleur et se concentrer sur le matériel du RPi… (et … on gagne ainsi du temps pour apprendre Python ou tout autre langage)
L’idée d’utiliser un disque dur en SATA, m’ai passé car il suffit d’un disque dur externe… Donc si je comprends bien, un Raspberry fonctionne comme un ordinateur ce qui me permet de coder en n’importe quel language de programmation… Je sais un minimum coder et internet est mon ami.
Pour répondre à @Gpapig, pour mon idée, kodi pourrait être bien mais voulant à tout prix, avoir mon UI, cela me demanderait plus de travail pour faire un skin kodi que de faire moi même un petit logiciel qui scannerait une Database sur un disque dur.
Suivant l’age de votre PC, un RPi peut fonctionner … mieux (n’a pas besoin d’antivirus, par ex). (l’avantage est que, si vous avez un RPi et un PC, vous pouvez, au prix d’un portage, avoir un ensemble très fiable, les deux ne tombant pas en panne en même temps).
Vous ne savez pas si l’auteur cache (modestie? humour tordu ?) ses talents.(il y a une contradiction entre le post initial
et le post 4
Avec les bases saines que vous lui avez fournies, l’auteur aura quelque chose qui marche à moitié et le temps pour lire la doc, voir des films et coder l’autre moitié.
Parmi de grands amis que l’on peut trouver sur internet: stackoverflow (si une erreur de programmation débouche sur un massage d’horreur, copier ledit massage d’erreur, le précéder de stackoverflow et laisser google trouver la réponse) et wikipedia…
@dbrion06n, ce projet est à titre personnel pour mon utilisation.
Quand je dis que je sais un minimum coder c’est vrai, mais dans un langage assez simple (le vb.net).
J’aurais une dernière question. Sur le raspberry, je peux mettre n’importe quel programme codé en n’importe quel langage ? Et si oui comment faire pour mettre le programme sur le raspberry et qu’il se lance automatiquement à son démarrage.
vb net n’est pas un langage simple (par exemple, je vois mal la difference entre affectation et égalité dans wikipedia). Il a tout d’un grand, mais n’est pas libre, en « open source » . Il supporte les mêmes structures que C++ ou Python -structures de contrôle if then else; while; switch/case- et n’a pas d’équivalent sous linux (ou alors, il y a des problèmes voir mono - How to compile VB.net in linux in monodevel? - Stack Overflow ou son portage est décrit as « experimental and incomplete »).
Je préférerais, dans l’état, utiliser le livre de Swimmen que je vous ai lié en premier lien au post 2 -je l’ai lu il ya 10 ans; selon la table des matières, vous aurez presque tout ce dont vous avez besoin (menus, liens avec une base de données)-
Concernant le fait de mettre au démarrage le programme que vous aurez écrit:
a) je ne le fais jamais, parce que je veux être là quand je lance un programme (Fortran -je vous avais dit que ni C++, ni Python n’étaient mes langages favoris-, R Python -pour mon très vieux PC et mes RPi- ou C/C++ pour mes Arduini) .
b) ceci est fait en toute dernière étape, quand vous serez raisonnablement sûr que « ça marche » sans horreurs. Donc, vous avez quelques mois pour y réfléchir.
c) le Rpi a deux modes de démarrage, sélectionnables par raspi-config (activé la première fois, quand vous étrennez votre carte SD, et ensuite, à la demande, que vous soyez en mode console ou pas )https://www.raspberrypi-france.fr/guide/configurer-raspbian/ : c’est le menu « boot option »
vous pouvez choisr un mode de démarrage graphique ou un mode de démarrage en mode texte. Je choisis toujours le mode texte (mange un peu moins de ressources pour des tâches gourmandes en mémoire et je lance le mode graphique par « startx »
C’est cette option que je vous conseille: en cas de problème, si, au démarrage, votre programme est fou (et un arret marche ne changera rien); s’il est lancé sans que vous ayez la possibilité de le dépanner simplement, vous serez très ennuyé.
c) JE vais supposer que vous avez un script python, (c’est vrai pour tout langage, aussi bien bash que des executables compilés (c/C++ Fortran)) et que vous en êtes très content. Un tutoriel récent vous donne une solution (compatible avec ce que j’ai lu sur les fora) par édition du fichier de démarrage du système graphique:
Et donne ensuite la solution pour lancer le script au démarrage du RPi…(ne le faire que si vous êtes vraiment sûr: s’il y a un problème, vous devrez mettre la carte dans un lecteur de cartes, retirer le programme incriminé ou le simplifier; pour lire et modifier une carte SD de RPi -système de fichiers ext4- avec Windows -car vous êtes sous Windows, dans votre PC-, je vous souhaite bien du plaisir). Mais vous avez du temps pour vous familiariser avec ce que vous voulez…
Petite contribution rapide pour le lancement automatique au démarrage.
Avant, j’utilisais l’édition du système de démarrage de l’interface graphique avec sudo nano /etc/xdg/lxsession/LXDE-pi/autostart puis j’ajoutais la ligne pour lancer le script du genre
Mais pour les 2 bornes à Selphies que je viens de réaliser (pour demain, je retourne faire mes derniers tests/vérifications), j’utilise une astuce complémentaire.
J’insère la ligne:
@lxterminal --command="/home/pi/Borne_Photos.py
Pourquoi ?
Parce que le Rpi démarre (je sous sous Raspbian Buster) puis lance la session graphique puis lance le terminal qui lance lui-même le script python.
Avantage ?
Je me connecte en ssh et lance juste un pkill lxterminal pour flinguer le processus (et donc le script) et ainsi revenir à l’interface graphique normale.
(sinon, « ctrl »+« alt »+« F2 » puis on se connecte et on tape un pkill lxterminal puis « ctrl »+« alt »+« F7 » pour revenir à l’interface graphique mais il faut un clavier)
oui c’est possible et ça doit pouvoir se faire avec à peu près tous les langage disponible sur cette plateforme… ( c, c++,java, python, php, etc.)
A mon humble avis le plus « simple » et le plus portable pourrait être :
. une base de données Mariadb ( anciennement Mysql ) pour y coller les infos des films
. un serveur web nginx
. avec du PHP pour sa simplicité, sa doc avec de nombreux exemples (PHP: Référence du langage - Manual ) et ses addons graphiques, pour lire/Maj la base, lancer les films et faire de la mise en page dynamique.
. du html et un peu de CSS pour la mise en forme de l’interface ( CSS Tutorial)
avec ça tu pilotes ton système avec un navigateur web ( un PC, un phone, une tablette ou le Rpi lui-même )
bon ok c’est plus rapide d’installer xbmc ( kodi) mais bon ! ur choice