Quelqu'un connaît l'astuce?
Et comment installer ffmpeg? yum install mpeg
ne renvoie que ceci:
======================================================================================== Matched: mpeg ========================================================================================
libiec61883.i386 : Streaming library for IEEE1394
libiec61883.x86_64 : Streaming library for IEEE1394
qffmpeg-devel.i386 : Development package for qffmpeg
qffmpeg-devel.x86_64 : Development package for qffmpeg
qffmpeg-libs.i386 : Libraries for qffmpeg
qffmpeg-libs.x86_64 : Libraries for qffmpeg
C'est sur la page de manuel:
* Vous pouvez extraire des images d'une vidéo ou créer une vidéo à partir de nombreuses images : Pour extraire des images d'une vidéo: ffmpeg -i foo.avi -r 1 -s LxH -f image2 foo-% 03d.jpeg Ceci extraira une image vidéo par seconde de la vidéo et les afficher dans des fichiers nommés foo-001.jpeg, foo-002.jpeg, etc. Les images seront redimensionnées pour correspondre aux nouvelles valeurs WxH. Si vous souhaitez extraire un nombre limité de trames seulement, vous pouvez utiliser la commande ci-dessus en combinaison avec l'option -vframes ou -t, ou en combinaison avec avec -ss pour commencer l'extraction à partir d'un certain point à l'heure.
Mais bien sûr, vous devez d'abord l'installer. Je suis sur Debian et n'utilise pas miam.
[mise à jour pour l'autre question]
i=1
for avi in *.avi; do
ffmpeg -i $avi -vframes 1 -f image2 /tmp/$i.jpg; i=$((i+1))
done
Testé et fonctionne.
[mise à jour pour encore une autre question ...]
for flv in *.flv; do
ffmpeg -i $flv -vframes 1 -f image2 ${flv%%.flv}.jpg
done
J'ai bricolé cette ligne de commande à partir de diverses réponses qui me convient parfaitement pour extraire la première image d'une vidéo. Je l'utilise pour enregistrer une miniature de capture d'écran pour la vidéo.
ffmpeg -i inputfile.mkv -vf "select=eq(n\,0)" -q:v 3 output_image.jpg
La filtre de sélection-vf "select=eq(n\,0)"
permet de sélectionner uniquement l'image # 0.
-q:v
Vous permet de régler la qualité du jpeg de sortie entre 1 et 31. Baissez le nombre, augmentez la qualité. 2 - 5 fonctionne bien, j'utilise 3.
Remarque : Cela vous donnera une image de la même taille que la vidéo. Pour obtenir une vignette, vous pouvez utiliser le filtre d'échelle pour obtenir une vignette adaptée à la largeur dont vous avez besoin, comme suit:
ffmpeg -i inputfile.mkv -vf "select=eq(n\,0)" -vf scale=320:-2 -q:v 3 output_image.jpg
La commande ci-dessus vous donnera un jpeg miniature qui sera mis à l'échelle à match largeur de 320, et la hauteur sera calculée pour correspondre au rapport d'aspect.
Une solution facile à utiliser qui fonctionne pour moi est
ffmpeg -i <input> -vframes 1 <output>.jpeg
Notez que j'obtiens une erreur "[swscaler @ 0x111652000] format de pixel obsolète utilisé, assurez-vous que vous avez défini la plage correctement" mais selon une petite lecture (voir par exemple https://stackoverflow.com/a/ 43038480/1241736 ) qui peut être ignoré en toute sécurité.