Après avoir essayé les instructions ici pour utiliser netcat et mplayer pour diffuser du module de caméra Raspberry Pi vers Windows, j’ai constaté que bien que le cache soit rempli sur la machine Windows, indiquant que des données étaient reçues, mplayer ne s’était jamais lancé. J’ai cherché un peu et suis arrivé à la conclusion que c’était quelque chose à voir avec Windows 7 ou avec une machine 64 bits. J’ai opté pour le problème 64 bits car il n’est pas rare que l’architecture 64 bits crée des problèmes.
J’ai finalement trouvé une combinaison de netcat et mplayer qui fonctionnait! Voici un tutoriel sur la façon de procéder.
Comment faire
Téléchargez netcat 1.12 à partir d’ici.
Téléchargez la version AMD64 de mplayer r36169 à partir d’ici.
Décompressez-les sur une machine Windows dans un dossier pour avoir, entre autres fichiers:
MPlayer-x86_64-r36169+g2844ea8mplayer.exe netcat-win32-1.12nc64.exe
Créé un fichier de commandes (appelé Wait-for-stream.bat) avec la commande suivante:
netcat-win32-1.12/nc64.exe -L -p 5001 | "MPlayer-x86_64-r36169+g2844ea8mplayer.exe" -vo direct3d -fps 31 -cache 1024 -
Remarque: j’ai dû spécifier l’option -vo direct3d, sinon tout ce que j’ai obtenu était un écran noir. Je ne sais pas pourquoi cela était nécessaire, mais je suppose que c’est quelque chose à voir avec mon ordinateur portable en particulier, donc vous pouvez constater que vous n’en avez pas besoin.
Sur le Raspberry Pi, créez un script (stream-to-netcat.sh) et ajoutez-y la ligne suivante:
raspivid -t 999999 --hflip -o - | nc 192.168.1.64 5001
Une explication:
- -t 999999 signifie que la caméra continuera à capturer pendant ce nombre de millisecondes. Augmentez si nécessaire.
- -hflip Actuellement, la caméra retourne sa sortie horizontalement. C’est quelque chose à voir avec la caméra « face à l’avant ». Ceci est en cours de révision pour voir s’il peut être modifié (ce que je sais que c’est possible car il fonctionnait dans le bon sens)
- -o – Cela signifie «sortir les données vers la sortie standard» – effectivement vider la sortie vers la console.
- | nc – Cela signifie envoyer la sortie de la caméra via un « tuyau » dans netcat (qui fait la diffusion réelle)
- L’adresse IP est l’adresse de mon ordinateur portable Windows 7 64 bits.
Sous Windows, exécutez le script batch Wait-for-stream.bat pour démarrer le « listener ». Tu devrais obtenir:
MPlayer sherpya-r36169+g2844ea8-4.6 (C) 2000-2013 MPlayer Team
Playing -.
Reading from stdin...
Cache fill: 0.00% (0 bytes)
Sur le Pi, exécutez le script stream-to-netcat.sh. Rien ne devrait apparaître sur le Pi.
Sur la machine Windows, le cache commencera à se remplir, un peu de débogage du codec apparaîtra et la vidéo devrait s’afficher à l’écran.
Et c’est tout! Beaucoup de tripotages, mais ça vaut le coup pour que je puisse exécuter Windows samedi au Cambridge Jam! (Et juste pour prouver que je pouvais!)
-
Microsoft usb Windows 11 Home 64 Bit
