C'est très simple avec ffmpeg, et il peut sortir une image toutes les N secondes sans script supplémentaire. Pour exporter en tant que séquence d'images, utilisez simplement myimage_%04d.png
ou similaire en tant que sortie. Le %0xd
bit est converti en un nombre entier avec zéro-padded x
- l’exemple que j’ai donné est obtenu sous forme de
myimage_0000.png
,
myimage_0001.png
,
myimage_0002.png
etc..
Vous pouvez utiliser de nombreux formats d'images fixes, png, jpeg, tga, peu importe (voir la ffmpeg -formats
liste complète).
Ok, nous savons maintenant comment exporter le film sous la forme d'une séquence d'images, mais ne voulons-nous pas exporter chaque image?
L'astuce consiste simplement à changer la cadence de la sortie en tout ce que nous voulons en utilisant l' -r n
option où n
est le nombre d'images par seconde. Une image par seconde serait -r 1
, une image toutes les quatre secondes -r 0.25
, une image toutes les dix secondes -r 0.1
et ainsi de suite.
Donc pour résumer, voici comment il serait possible d’économiser une image input.mov
toutes les quatre secondes output_0000.png
, output_0001.png
etc.:
ffmpeg -i input.mov -r 0.25 output_%04d.png
Notez que l' -r 0.25
option va après la -i input.mov
partie, car elle contrôle le taux de trame de la sortie . Si vous le mettez avant l'entrée, le fichier d'entrée sera traité comme s'il avait la fréquence d'images spécifiée.
Remplacez le% xd par le nombre de chiffres requis, par exemple si la commande crée plus de 10 000 images, changez le %04d
en %05d
. Cela fonctionne également pour les fichiers d'entrée qui sont une séquence d'images. Lire la suite ici .
Utilisateurs Windows : utilisation en ligne de commande%
exemple: ffmpeg -i inputFile.mp4 -r 1 outputFile_%02d.png
Dans les scripts CMD et BAT, utilisez %%
exemple: ffmpeg -i inputFile.mp4 -r 1 outputFile %%02d.png
Donc, double %%
dans les scripts, et simple %
sur la ligne de commande interactive. Se tromper dans les deux cas générera une erreur.