[RESOLU] Camera Pi et streaming

Les applications du Raspberry Pi en contrôle d'accès, alarme et vidéosurveillance

Modérateur : Francois

yves273
Messages : 35
Enregistré le : mar. 21 oct. 2014 17:11

[RESOLU] Camera Pi et streaming

Message par yves273 » mar. 21 oct. 2014 17:45

Bonjour,

J'ai appliqué la méthode framboise314 "Une caméra de surveillance vidéo avec le Raspberry Pi"
Le nombre de commentaires et le temps qui passe rendent son utilisation illisible.
Comme j'ai des soucis je lance ce sujet.
Ne me répondez pas qu'il y a telle ou telle solution meilleure cela me brouille l'esprit et alourdit mon logiciel.
Par souci de clarté je vais séparé les problèmes potentiels.

1- La visualisation du streaming au 192.168.0.24:8080 a marché partiellement sur vlc (quelques images mais je ne sais pas trop l'utiliser)
ou en est-on avec la compatibilité avec les autres navigateurs, j'utilise IE et chrome avec le petit fichier cam.html

2- Motion est lancé au démarrage, le voyant de la caméra est allumé et cela clignote bien à chaque mouvement mais je n'ai rien dans le répertoire de mnt/camshare/Cam1 où cela est-il stocké? là il y a un truc que je n'ai pas pigé.

3- J'ai regardé le log /tmp/motion log comme indiqué parfois, je suis incapable de décrypter les messages répétitifs réguliers
mmalcam_start: MMA Camera starting ... for camera (vc.ril.camera) of 1280x720 at 2 fps
mmalcam_start: MMA Camera starting using video capture
MMAL camera cleanup

Je sens que je ne suis pas loin mais j'ai besoin d'un nouveau souffle.
Merci

Yves273
Modifié en dernier par yves273 le mer. 12 nov. 2014 07:17, modifié 1 fois.

yves273
Messages : 35
Enregistré le : mar. 21 oct. 2014 17:11

Re: Camera Pi, motion et streaming

Message par yves273 » mer. 22 oct. 2014 08:07

Bonjour,
point 1:
Ce matin j'ai refait le test au démarrage (motion démarre automatiquement), sur vlc j'ai eu un petit streaming de quelques images puis de temps en temps quelques images fixes puis plus rien. Avec Chrome j'ai pu obtenir ma première image fixe et furtive.
J'ai diminué la taille des images, le streaming atteint parfois 2 images sur vlc et chrome.
Je suis passé en framerate 1 au lieu de 2 et j'ai une image toute les 3 secondes sur chrome et vlc mais image noire (en principe framerate doit être > 1).

Donc tout cela ressemble à un problème de débit et je ne me suis pas occupé de ce problème jusqu'à présent.
Dans le même temps les messages dans le motion.log ont disparus ce qui tendrait à dire que motion s'arrête si ça ne peut pas suivre.
Cela répondrait au point 3

Pour le point 2
faut-il activer dans motion.conf la ligne "mmal_row_capture file /home/pi/motion-mmal.capture"?

je continue mes essais en attendant un retour.

domi
Administrateur
Messages : 3233
Enregistré le : mer. 17 sept. 2014 18:12
Localisation : Seine et Marne

Re: Camera Pi, motion et streaming

Message par domi » mer. 22 oct. 2014 10:39

Bonjour,

Je vois que tu es bien seul dans ce sujet :cry:
Si cela peut te consoler, je te lis, mais je n'ai malheureusement pas de solution à te proposer.

Bon courage.
Passionné de Raspberry, Arduino, ESP8266, ESP32, et objets connectés :
Spécial débutant, concevez vous-même votre domotique DIY : https://www.youtube.com/c/DomoticDIY
Conception d'une station météo DIY, et envoi des infos à votre Domotique.

Avatar du membre
vague nerd
Modérateur
Messages : 1473
Enregistré le : mar. 14 oct. 2014 11:42
Localisation : France !

Re: Camera Pi, motion et streaming

Message par vague nerd » mer. 22 oct. 2014 12:56

Bonjour.

Je vous avais fait une réponse que j'ai finalement supprimée car presque hors sujet.
J'ai eu moi aussi ce genre de symptômes lors de mes tests de streaming. Typiquement, il faut consommer le flux plus vite qu'il n'est émis.

Sur quoi essayez-vous de décoder le flux ?
Un pc sur le même réseau local équipé de vlc ?

Pour essayer de qualifier le problème, je vous propose d'essayer ma configuration

Streaming VLC

Côté serveur (le pi), on démarre le streaming 1280x720 pixel, 30 frames par second, débit 4.5 Mbps:

Code : Tout sélectionner

 $ raspivid -n -w 1280 -h 720 -b 4500000 -fps 30 -vf -hf -t 0 -o - | \
     cvlc -vvv stream:///dev/stdin --sout '#rtp{sdp=rtsp://:9000/}' :demux=h264
Côté client (par exemple un pc sur le réseau local) :

Code : Tout sélectionner

 $ cvlc rtsp://[ip du serveur]:9000/
Si vous utilisez vlc une machine windows (et pas en ligne de commande), ouvrez vlc et entrez l'adresse

Code : Tout sélectionner

rtsp://[ip du serveur]:9000/
Cette solution de Streaming ne m'a pas convenu, car la grosse latence constatée (de l'ordre de 4/5 secondes) ne correspondait pas à mes besoins.
J'en suis revenu à du plus basique, avec une connexion point à point entre client et serveur (nc.traditional).

nc.traditional/mplayer

Côté client, démarrer la consommation avant le début de l’émission (testé sur debian desktop virtualisé par VMWare, sur machine window$) :

Code : Tout sélectionner

nc.traditional -l -p 5000 | mplayer -fps 60 -cache 1024 -
(En fait, on ne démarre pas une consommation, mais on lance un serveur qui attend un flux qu'il redirigera vers mplayer)

Côté serveur (Pi) :

Code : Tout sélectionner

raspivid -o - -t 0 -b 2000000 | nc.traditional  [ip du client] 5000
J'obtiens ainsi une image HD avec très peu de latence (de l'ordre de 200/300ms, malgré la virtualisation).

Je vous propose d'essayer la solution vlc. Elle doit fonctionner telle-quelle.
Si ce n'est pas la cas, c'est que des étapes préliminaires n'ont pas été respectées.
Je pense entre autre à :

Code : Tout sélectionner

sudo raspi-config
puis "enable camera". Je pense que vous l'avez fait, je pense que vous n'auriez jamais vu d'images sinon...
Votre pi est à jour ?

Code : Tout sélectionner

apt-get update && upgrade
rpi-update
Ce sont les préliminaires à l'utilisation de raspivid et raspistill... et donc surement de motion.

Bon courage !
Cordialement,

Vague Nerd

yves273
Messages : 35
Enregistré le : mar. 21 oct. 2014 17:11

Re: Camera Pi, motion et streaming

Message par yves273 » mer. 22 oct. 2014 17:55

Bonsoir et merci pour la réponse.
Petite précision préalable: Raspivid en local fonctionne correctement et je veux contrôlé le streaming en Windows 7 home et android
Je pense donc que faire tout en vlc me convient et j'ai installé vlc dans le raspberry

La réponse à la commande proposée est assez longue
des lignes main libvlsc debug:
des main demux, main xml, playlist demux, ... main interface debug:
et message d'erreur:
Failed to connect to the DBus session daemon Unable to autolaunch a dbus-daemon without a $display for X11
puis d'autres message d'erreurs peut-être consécutifs au premier.

Je précise mon besoin qui est le même que pour mes caméras utilisées en ip.
Contrôle de la maison live quand je le souhaite surtout en dehors de la maison.
Détecter les mouvements suspects.
Le tout avec une bonne définition pour un coût optimisé.
C'est le pourquoi de l'utilisation de motion comme objectif.

Avatar du membre
vague nerd
Modérateur
Messages : 1473
Enregistré le : mar. 14 oct. 2014 11:42
Localisation : France !

Re: Camera Pi, motion et streaming

Message par vague nerd » mer. 22 oct. 2014 18:50

Lancez la commande

Code : Tout sélectionner

echo $DISPLAY
Que cela retourne-t-elle ?
Vous pouvez tenter :

Code : Tout sélectionner

export DISPLAY=:0
et

Code : Tout sélectionner

cvlc --x11-display :0
Cdt.
Cordialement,

Vague Nerd

yves273
Messages : 35
Enregistré le : mar. 21 oct. 2014 17:11

Re: Camera Pi, motion et streaming

Message par yves273 » mer. 22 oct. 2014 20:26

voilà

Code : Tout sélectionner

pi@raspberrypi ~ $ echo $DISPLAY

pi@raspberrypi ~ $ export DISPLAY=:0
pi@raspberrypi ~ $ cvlc --x11-display :0
VLC media player 2.0.3 Twoflower (revision 2.0.2-93-g77aa89e)
[0xa9e108] inhibit interface error: Failed to connect to the D-Bus session daemon: /usr/bin/dbus-launch terminated abnormally with the following error: Autolaunch error: X11 initialization failed.

[0xa9e108] main interface error: no suitable interface module
[0xa9e108] main interface error: no suitable interface module
[0xa7d8f0] main libvlc error: interface "globalhotkeys,none" initialization failed
[0xa9e108] dummy interface: using the dummy interface module...

Avatar du membre
vague nerd
Modérateur
Messages : 1473
Enregistré le : mar. 14 oct. 2014 11:42
Localisation : France !

Re: Camera Pi, motion et streaming

Message par vague nerd » mer. 22 oct. 2014 20:58

Attendez !
Vous cherchez à décoder le flux d'un pi sur un autre pi, ou sur le même ?
Le pi ne serra pas assez puissant pour faire les deux en même temps...

La commande

Code : Tout sélectionner

echo $DISPLAY
ne retourne rien. Cela signifie que la variable d'environnement n'est pas positionnée.
Après un

Code : Tout sélectionner

export DISPLAY=:0
, relancer la commande. Cette fois, on voit la valeur ?

Vous avez bien une interface graphique installée sur le pi (le fameux x11) ?
Cordialement,

Vague Nerd

yves273
Messages : 35
Enregistré le : mar. 21 oct. 2014 17:11

Re: Camera Pi, motion et streaming

Message par yves273 » mer. 22 oct. 2014 23:01

Code : Tout sélectionner

pi@raspberrypi ~ $ echo $DISPLAY

pi@raspberrypi ~ $ export DISPLAY=:0
pi@raspberrypi ~ $ cvlc --x11-display :0
VLC media player 2.0.3 Twoflower (revision 2.0.2-93-g77aa89e)
[0x18df108] inhibit interface error: Failed to connect to the D-Bus session daemon: /usr/bin/dbus-launch terminated abnormally with the following error: Autolaunch error: X11 initialization failed.

[0x18df108] main interface error: no suitable interface module
[0x18df108] main interface error: no suitable interface module
[0x18be8f0] main libvlc error: interface "globalhotkeys,none" initialization failed
[0x18df108] dummy interface: using the dummy interface module...

je ne cherche qu'à regarder un flux généré par le pi à partir d'un PC windows7.
X11 je ne connais pas à priori mais on essaie beaucoup de chose...

Bonsoir

yves273
Messages : 35
Enregistré le : mar. 21 oct. 2014 17:11

Re: Camera Pi, motion et streaming

Message par yves273 » mer. 22 oct. 2014 23:11

Je vois sur un forum que x11 c'est startx, je l'ai essayé mais je ne l'ai jamais utilisé.

Re bonsoir.

Répondre

Retourner vers « Accès, alarme et vidéosurveillance »