RaspFR :: Forum

Forum de la communauté francophone de Raspberry PI.

Vous n'êtes pas identifié(e).

Annonce

Canal irc: #raspfr sur zeolia.net

#1 20-06-2016 23:50:13

aguirab
Membre
Lieu : NICE
Inscription : 26-03-2016
Messages : 131

[résolu] cherche un logiciel assemblage d'images pour vidéo

bonjour,

j'utilise ma camera rpi pour capturer des images
je cherche un logiciel pour les assembler et créer une video

j'ai essayé mencoder :
---------
sudo apt-get install mencoder
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances
Lecture des informations d'état... Fait
Package mencoder is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
--------

?
merci

Dernière modification par aguirab (14-02-2017 17:21:31)

Hors ligne

#2 21-06-2016 00:21:56

CrazyCat
Chat
Inscription : 14-01-2016
Messages : 415

Re : [résolu] cherche un logiciel assemblage d'images pour vidéo

Si je ne me trompe pas, mencoder n'est plus directement accessible, il faut installer libav-tools :

sudo apt-get update
sudo apt-get install mpv libav-tools

Hors ligne

#3 21-06-2016 13:47:29

aguirab
Membre
Lieu : NICE
Inscription : 26-03-2016
Messages : 131

Re : [résolu] cherche un logiciel assemblage d'images pour vidéo

bonjour,
bon ben ça change rien
------
j'ai ensuite tenté suivant ce que dit la page https://www.raspberrypi.org/forums/view … 6&t=123442
mais je bute sur;
[email protected]:/home/xx/mplayer-export-2016-06-21# sudo apt-get install ffmpeg
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances
Lecture des informations d'état... Fait
Package ffmpeg is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source

E: Package 'ffmpeg' has no installation candidate
------
j'ai encore essayé suivant la page http://superuser.com/questions/286675/h … -on-debian
[email protected] ~ $ sudo apt-get install deb-multimedia-keyring
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances
Lecture des informations d'état... Fait
E: Impossible de trouver le paquet deb-multimedia-keyring
-----
je cale
merci

Hors ligne

#4 21-06-2016 14:04:05

CrazyCat
Chat
Inscription : 14-01-2016
Messages : 415

Re : [résolu] cherche un logiciel assemblage d'images pour vidéo

deb-multimedia-keyring n'est pas dans le repository normal de rasbian, il faut ajouter le repository deb http://www.deb-multimedia.org jessie main non-free dans /etc/apt/sources.list

Hors ligne

#5 21-06-2016 19:24:03

Re : [résolu] cherche un logiciel assemblage d'images pour vidéo

Comme dit crazy, il te faut libav-tools .
Puis a la place de ffmpeg, tu prends avconv .
En exemple, un petit truc que j'ai fait pour, a partir de photos, realiser une video .:


[== Indéfini ==]
#!/bin/bash
# timelapse.sh

# utilisation:
#./timelapse.sh 5 1000 fera une photo toutes les 5 secondes et fera 1000 photos en tout.
# nombre de photo de 0001 à 9999
# calcul du temps de prise de vues et de la video résultante
echo ça fait 
echo "(($2*$1)/60) " | bc
echo minutes de prise de vue
echo et
echo "($2/25)" | bc
echo secondes de video ! appuyez sur entrée ... 
read

# prise des photos en image1.jpg, image2.jpg ...avec barre de progression
for i in $(seq 1 $2)
do
   echo $i
  # cam dlink photo rangées dans  /home/pi/video/
  # curl -# "admin:[email protected]:8080/image/jpeg.cgi" > /home/pi/video/image$i.jpg
  
  # cam Edimax photo rangées dans  /home/pi/video/
     curl -# "admin:[email protected]:8081/jpg/image.jpg" > /home/pi/video/image$i.jpg
    sleep $1
done

# photos -> video en mpeg video et photo rangée dans /home/pi/video/
avconv  -f image2 -i /home/pi/video/image%d.jpg /home/pi/video/video.mpg 
#effacement des photos 
rm /home/pi/video/*.jpg

Dernière modification par [email protected] (19-07-2016 18:01:37)

Hors ligne

#6 25-06-2016 13:08:38

aguirab
Membre
Lieu : NICE
Inscription : 26-03-2016
Messages : 131

Re : [résolu] cherche un logiciel assemblage d'images pour vidéo

bonjour,
j'ai essayé ce "script?"
mais je bute sur : bc commande introuvable
et je l'ai "bricolé" car je n'ai pour le moment qu'une seule caméra
ce qui m'étonne est que je ne vois pas de ligne pour commander la capture d'image
curl -# "admin:[email protected]_ip_locale_du raspi:8080/image.jpeg.cgi" > /home/pi/video/image$i.jpg
?
où trouver le manuel des commandes linux ?
je ne connais que la programmation en basic ou en html
(vu mon âge)
merci

Dernière modification par aguirab (25-06-2016 15:20:44)

Hors ligne

#7 25-06-2016 15:21:11

aguirab
Membre
Lieu : NICE
Inscription : 26-03-2016
Messages : 131

Re : [résolu] cherche un logiciel assemblage d'images pour vidéo

bc résolu
apt-get install bc

Hors ligne

#8 25-06-2016 18:46:15

Re : [résolu] cherche un logiciel assemblage d'images pour vidéo

J'ai 2 cam ip .. Dans ce script, j'ai juste une cam de validée

# cam Edimax photo rangées dans  /home/pi/video/
     curl -# "admin:[email protected]:8081/jpg/image.jpg" > /home/pi/video/image$i.jpg

la commande curl me permet de l'adresser en direct

ma cam est sur l'ip: 192.168.1.127
son port: 8081
le login: admin
le Mdp: 1234
le registre pour l’accès a l'image: /jpg/image.jpg
le rep pour ranger l'image rapatriée: > /home/pi/video/image$i.jpg

ce qui donne :
curl -# "admin:[email protected]:8081/jpg/image.jpg" > /home/pi/video/image$i.jpg

avec curl -# je vais chercher l'image a l'ip:port selon le login et Mdp donnés et je la range dans le rep désiré !

Dernière modification par [email protected] (25-06-2016 18:49:12)

Hors ligne

#10 25-06-2016 22:30:33

aguirab
Membre
Lieu : NICE
Inscription : 26-03-2016
Messages : 131

Re : [résolu] cherche un logiciel assemblage d'images pour vidéo

bonjour,
oui c'est pas mal ça

dans ton script je ne vois pas ce que sont les variables $1 et$2
-----

j'ai essayé mais "coud not find codec parameters"

# photos -> video en mpeg video et photo rangée dans /home/pi/video/
avconv  -f image2 -i /$repertoire_de_stockage/$nom_de_fichier_image /home/pi/video/video.mpg


avconv version 11.7-6:11.7-1~deb8u1+rpi1, Copyright (c) 2000-2016 the Libav developers
  built on Jun 17 2016 02:13:49 with gcc 4.9.2 (Raspbian 4.9.2-10)
[image2 @ 0x16c8200] Could not find codec parameters (Video: [0][0][0][0] / 0x0000)
//home/pi/timelapse//: could not find codec parameters
-----------
avconv -codecs
j'y trouve mpeg4 et mjpeg

------------
j'ai essayé de modifier .jpg en .jpeg et .mpg en .mpeg4 et aussi en .mjpeg
mais c'est pareil

en fait j'ai bricolé un script :
#!/bin/bash

read -p 'entrer intervalle en millisecondes: ' tl
echo "intervalle est $tl msec"

read -p 'entrer durée en millisecondes: ' t
echo "la durée totale de prise d'images est $t msec"

# calcul du nombre de photos
echo "le nombre total d'images est de"
let "nb=(($t/$tl)+1)"
echo $nb "images"

# definir le dossier de stockage
repertoire_de_stockage='/home/pi/timelapse/'
echo "le repertoire de stockage est" $repertoire_de_stockage

# definir le nom du fichier image
nom_fichier_image=image%04d.jpeg

# prendre les photos et les  placer dans le repertoire choisi
/opt/vc/bin/raspistill -q 50 -o $repertoire_de_stockage/$nom_fichier_image -t $t -tl $tl

# photos -> video en mpeg video et photo rangée dans /home/pi/video/
avconv  -f image2 -i /$repertoire_de_stockage/$nom_de_fichier_image /home/pi/video/video.mpeg4

echo " appuyer sur entrée pour continuer (ou faire ctrl+C) ..."
read a

------

Dernière modification par aguirab (26-06-2016 19:35:21)

Hors ligne

#11 28-06-2016 21:55:32

aguirab
Membre
Lieu : NICE
Inscription : 26-03-2016
Messages : 131

Re : [résolu] cherche un logiciel assemblage d'images pour vidéo

bonjour,
(suite)
aujourd'hui avconv semble marcher ?
mais j'ai ce message d'erreur
/home/pi/video/video.mpeg: No such file or directory
or le répertoire /home/pi/video existe bien
non il n'existe pas
ce qui existe est /home/pi/Video
(la casse !)
donc tout marche

Dernière modification par aguirab (29-06-2016 13:40:07)

Hors ligne

#12 28-06-2016 22:37:59

Re : [résolu] cherche un logiciel assemblage d'images pour vidéo

# utilisation:
#./timelapse.sh 5 1000 fera une photo toutes les 5 secondes et fera 1000 photos en tout

$1 et $2 sont là ... ce sont les paramètres que tu passes dans la commande ./timelapse.sh
Dans mon exemple $1=5 $2=1000

Dernière modification par [email protected] (28-06-2016 22:38:48)

Hors ligne

#13 15-07-2016 21:11:01

aguirab
Membre
Lieu : NICE
Inscription : 26-03-2016
Messages : 131

Re : [résolu] cherche un logiciel assemblage d'images pour vidéo

bonjour,
ok pour $1 et $2
mais les images sont numérotées image1.jpg image2.jpg etc image(n).jpg
comment faire pour créer des fichiers image$i.jpg avec 4 digits ? par timelapse
merci

Dernière modification par aguirab (15-07-2016 21:49:04)

Hors ligne

#14 18-07-2016 12:18:10

Re : [résolu] cherche un logiciel assemblage d'images pour vidéo

ah ah ... je l'ai pas inventé :

For creating a video from many images:

                   avconv -f image2 -i foo-%03d.jpeg -r 12 -s WxH foo.avi
avconv  -f image2 -i /home/pi/video/image%d.jpg /home/pi/video/video.mpg ma ligne de code
           The syntax "foo-%03d.jpeg" specifies to use a decimal number
           composed of three digits padded with zeroes to express the sequence
           number. It is the same syntax supported by the C printf function,
           but only formats accepting a normal integer are suitable.

si tu préfères, il prend dans l'ordre image1,2,3... puis leur donne 2 digit 0 devant 001,002,003 ... et le transforme en avi ! une seul passe ! pas mal linux hein !

Hors ligne

#15 18-07-2016 22:08:39

aguirab
Membre
Lieu : NICE
Inscription : 26-03-2016
Messages : 131

Re : [résolu] cherche un logiciel assemblage d'images pour vidéo

bonjour et merci

eh bien je n'ai pas expliqué ce que je fais
j'ai créée timelapse.sh  sans les lignes de la fin : sans la ligne de commande avconv
donc timelapse ne fait que prendre des images numérotées image$i.jpg
image1.jpg image2.jpg etc

ensuite j'ai créé un script "avconv.sh"
avconv  -f image2 -i /home/pi/Video/image%d.jpg /home/pi/Video/video.mpg

pour créer une video à partir des images image1.jpg image2.jpg etc
je lance mon avconv.sh et ça marche bien

avconv  -f image2 -i /home/pi/Video/image%03d.jpg /home/pi/Video/video.mpg
ça marche pas
/home/pi/Video/image%03d.jpg: No such file or directory

et simplement je me demande comment faire pour que timelapse numérote les images avec 3 digits par exemple
c'est juste une question que je me pose
et je ne comprends pas pourquoi faire numéroter les images par avconv

Dernière modification par aguirab (18-07-2016 22:22:23)

Hors ligne

#16 19-07-2016 08:21:40

Re : [résolu] cherche un logiciel assemblage d'images pour vidéo

Attends, entre le moment ou j'ai fait le script, et le moment ou je l'ai posé, il y a eu des modif que je n'ai pas reportées !
Excuse moi !

# prise des photos en image0001.jpg, image0002.jpg ...avec barre de progression
# prise des photos en image1.jpg, image2.jpg ...avec barre de progression

converti les images en video a partir de l'ordre exact des digit image1, image2, image3 ..
avconv  -f image2 -i /home/pi/video/image%d.jpg /home/pi/video/video.mpg

Hors ligne

#17 19-07-2016 13:31:59

aguirab
Membre
Lieu : NICE
Inscription : 26-03-2016
Messages : 131

Re : [résolu] cherche un logiciel assemblage d'images pour vidéo

bonjour,
ok c'est bon pour avconv
je n'ai pas compris aussi
echo "(($2*$1)/60) " | bc
pourquoi | bc ?
quelle différence avec
echo "(($2*$1)/60) "

par ailleurs si je prends des images avec un autre script comment les renommer en masse
image%03d.jpg ?
je cherche un script pour renommer en masse
merci

Hors ligne

#19 19-07-2016 14:02:18

Re : [résolu] cherche un logiciel assemblage d'images pour vidéo

aguirab a écrit :

par ailleurs si je prends des images avec un autre script comment les renommer en masse
image%03d.jpg ?

merci

ca dépend ce que tu veux renommer en masse .
J'ai bien fait un script qui fait ca, mais pour des photo apn .
Il ouvre les exif de la photo, la renomme en fonction de date / h /m / s des exif
Mais je sais pas si c'est ce que tu veux !

Hors ligne

#20 19-07-2016 15:38:22

CrazyCat
Chat
Inscription : 14-01-2016
Messages : 415

Re : [résolu] cherche un logiciel assemblage d'images pour vidéo

Cette discussion me semble partir dans tous les sens, on ne sait plus ce qu'aguirab réussit à faire ou pas.

Je vais essayer de reprendre les choses dans l'ordre.
Prendre des images nommées correctement
Je donne tout d'abord un exemple pour prendre des images à la demande, c'est à dire sans l'utilisation de l'option timelapse de raspistill. Ce script va juste compter le nombre de fichiers présents dans le répertoire de destination, et nommer l'image suivante (et la prendre). Lancé avec un crontab, il prendra automatiquement une nouvelle image automatiquement en fonction de ce qui est défini. Bien entendu, on ne pourra pas descendre en dessous de la minute.

# Repertoire des photos
PICDIR='/home/pi/timelapse/'
# Format des nom d'images
PICMASK='image%04d.jpeg'

#Nommage de l'image
NB=$(ls -l ${PICDIR} | wc -l)
NB=$((NB+1))

PICNAME=$(printf ${PICMASK} $NB)
/opt/vc/bin/raspistill -q 50 -o ${PICDIR}${PICNAME}

Pour des prises de timelapse à la demande, ce serait plutôt:

# Repertoire des photos
PICDIR='/home/pi/timelapse/'
# Format des nom d'images
PICMASK='image%04d.jpeg'

read -p 'Durée de prise de vue (en s): ' delay
DELAY=$((delay*1000))

read -p 'Vitesse de prise de vue: ' speed

NB=$(ls -l ${PICDIR} | wc -l)
NB=$((NB+1))

/opt/vc/bin/raspistill -q 50 -o ${PICDIR}${PICMASK} -tl $speed -t $DELAY -fs $NB

Avec ce script, tant que tu n'as pas vidé le répertoire des images, raspistill "ajoutera" des fichiers.

Renommer les fichiers
Tu as des fichiers image1.jpg, image54.jpg, image164.jpg et tu veux image001.jpg, image054.jpg, image164.jpg?

PICMASK='image%03d.jpg'
for f in image*.jpg; do
  i=$(echo $f | sed -e 's/image\(.*\)\.jpg/\1/')
  PICNAME=$(printf ${PICMASK} $i)
  mv $f $PICNAME
done

Hors ligne

#21 25-07-2016 22:07:47

aguirab
Membre
Lieu : NICE
Inscription : 26-03-2016
Messages : 131

Re : [résolu] cherche un logiciel assemblage d'images pour vidéo

bonjour,
c'est vrai j'ai perdu le fil de mes projets
je cherchais un script sous linux qui fasse comme le logiciel sous windows "RenommeFichiers"
qui permet à partir d'une liste de fichiers classés avec une numérotation arbitraire

par exemple les fichiers pris par un apn

de les renommer nom_de_fichier&numéro.xxx
en choisissant le nom_de_fichier la numérotation et l'extension xxx


je suis aussi intéressé à ouvrir les exif et les utiliser pour renommer mes photos
comme tu le proposes

en tous cas je vais me servir de tous ces scripts
je vais commencer par essayer de les comprendre et me documenter sur le langage de programmation
car j'ai uniquement pratiqué le basic
c'est vieux comme moi
merci

Hors ligne

#23 26-07-2016 11:30:32

CrazyCat
Chat
Inscription : 14-01-2016
Messages : 415

Re : [résolu] cherche un logiciel assemblage d'images pour vidéo

aguirab a écrit :

de les renommer nom_de_fichier&numéro.xxx
en choisissant le nom_de_fichier la numérotation et l'extension xxx

C'est donc ce que fait le dernier bout de script que j'ai mis. Je vais le commenter:

# Définition du nommage générique: ici, "image" suivi de 3 chiffres (complétés par des 0) puis ".jpg"
PICMASK='image%03d.jpg'

# On démarre une boucle qui va chercher tous les fichiers nommés image*.jpg
# Cela veut dire que les images renommées sont aussi traitées dans ce cas
for f in image*.jpg; do
  # On extrait le numéro présent dans le nom du fichier
  i=$(echo $f | sed -e 's/image\(.*\)\.jpg/\1/')
  # On recrée le nom en appliquant le numéro au nommage générique
  PICNAME=$(printf ${PICMASK} $i)
  # On renomme l'image originale
  mv $f $PICNAME
done
[email protected]:~ $ ls image*
image164.jpg  image1.jpg  image37.jpg
[email protected]:~ $ sh test.sh
mv: « image164.jpg » et « image164.jpg » identifient le même fichier
[email protected]:~ $ ls image*
image001.jpg  image037.jpg  image164.jpg

Bien sûr, j'aurais pu mettre un test pour vérifier qu'on ne renommait pas un fichier qui n'en a pas besoin smile

Hors ligne

#24 30-07-2016 09:40:02

aguirab
Membre
Lieu : NICE
Inscription : 26-03-2016
Messages : 131

Re : [résolu] cherche un logiciel assemblage d'images pour vidéo

bonjour,
je suis débordé là
je vais étudier ce script
en peu de lignes il y a beaucoup de codes à intégrer
merci et à +

Dernière modification par aguirab (30-07-2016 09:40:23)

Hors ligne

#25 01-02-2017 22:20:54

aguirab
Membre
Lieu : NICE
Inscription : 26-03-2016
Messages : 131

Re : [résolu] cherche un logiciel assemblage d'images pour vidéo

bonjour,
voici "mon" timelapse

ce script prend un nombre de photos déterminé
j'ai mis beaucoup de points d'arrêts au cours de l'écriture du script
je les enlèverai par la suite

#!/bin/bash
# timelapse2a.sh

# utilisation:
# timelapse2.sh 5 1000 fera une photo toutes les 5 secondes et fera 1000 photos$
# nombre de photo de 0001 à 9999
# calcul du temps de prise de vues et de la video résultante
if [ ! -d /home/pi/Video ]
then
mkdir /home/pi/Video/
fi

if pgrep raspistill > /dev/null
then
echo "raspistill déjà running"
else

read -p 'entrer intervalle en millisecondes: ' tl
fi
let "nb1=(tl/1000)"
let "nb1a=(tl-nb1*1000)"
echo "intervalle est de :" $nb1 "secondes &" $nb1a "millis"
echo "############"

read -p 'entrer nombre total des images: ' nb_images
echo "le nombre total est" "$nb_images" " images"
let "t=($nb_images*$tl)"
echo "la durée totale de prise des images est" $t "millisec"
let "nbtot_sec=$t/1000"
let "nb_mn=($nbtot_sec/60)"
let "nb_sec=($nbtot_sec-($nb_mn*60))"
echo "nbtot_sec" $nbtot_sec
echo "nb_mn" $nb_mn
echo "nb_sec" $nb_sec

if [ $nb_mn -lt 60 ]; then
let "nb_h=0"

echo "la durée de prise d'images est:" $nb_mn "mn &" $nb_sec "sec"
echo "###############################"

else
let "(nb_h=(nb_mn/60))"
let "(nb_mn=nb_mn-(nb_h*60))"
echo "la durée de prise d'images est:" $nb_h "h & "$nb_mn "mn &" $nb_sec "sec"
echo "###############################"
fi

let "t_video=($nb_images/25)"
# echo "=> la durée totale de prise des images est = " $t_video "mn"
echo "la durée de video est = " $t_video "sec"
echo "#####################################################"

echo " appuyer sur entrée pour prendre les photos (ou faire ctrl+C pour sortir)$
read a

# prise des photos en image1.jpg, image2.jpg ...avec barre de progression
echo "les photos sont dans /home/pi/Video"
echo "de image1 à image"$nb_images
for i in $(seq 1 $nb_images)
do
echo "image"$i

ensuite je renomme les photos en 4 digits (%04d)

#!/bin/bash
# renommer images timelapse2a.sh

echo "les photos sont dans /home/pi/Video"
echo "renommer les images en %04d (ou faire ctrl+C pour sortir)"
read a
cd /home/pi/Video
# Définition du nommage générique: ici, "image" suivi de 3 chiffres (complétés par des 0$
PICMASK='image%04d.jpg'

# On démarre une boucle qui va chercher tous les fichiers nommés image*.jpg
# Cela veut dire que les images renommées sont aussi traitées dans ce cas
for f in image*.jpg; do
  # On extrait le numéro présent dans le nom du fichier
  i=$(echo $f | sed -e 's/image\(.*\)\.jpg/\1/')
  # On recrée le nom en appliquant le numéro au nommage générique
  PICNAME=$(printf ${PICMASK} $i)
  # On renomme l'image originale
  mv $f $PICNAME

                                [ Lecture de 28 lignes ]

Dernière modification par aguirab (05-02-2017 21:22:18)

Hors ligne

Pied de page des forums