C'est très simple avec ffmpeg, et il peut produire une image toutes les N secondes sans script supplémentaire. Pour exporter sous forme de séquence d'images, il suffit d'utiliser `myimage%04d.pngou similaire comme sortie. Le bit
%0xdest converti en un nombre entier à zéro chiffres
x` - l'exemple que j'ai donné donne comme résultat
myimage_0000.png
,
myimage_0001.png
,
myimage_0002.png
Vous pouvez utiliser de nombreux formats d'images fixes, png, jpeg, tga, etc (voir ffmpeg -formats
pour une liste complète).
Ok donc maintenant nous savons comment exporter le film en tant que séquence d'images, mais disons que nous ne voulons pas exporter chaque image individuelle
L'astuce est de changer simplement la fréquence d'images de la sortie à ce que nous voulons en utilisant l'option -r n
où n
est le nombre d'images par seconde. Une image par seconde serait -r 1
, une image toutes les quatre secondes serait -r 0.25
, une image toutes les dix secondes serait -r 0.1
et ainsi de suite.
Donc, pour mettre tout cela ensemble, voici à quoi ressemblerait la sauvegarde d'une image de input.mov
toutes les quatre secondes en output_0000.png
, output_0001.png
etc. :
ffmpeg -i input.mov -r 0.25 output_%04d.png
Notez que l'option -r 0.25
va après la partie -i input.mov
, car elle contrôle la fréquence d'images de la sortie. Si vous la mettez avant l'entrée, elle traitera le fichier d'entrée comme s'il avait la fréquence d'images spécifiée.
Changez le %xd en autant de chiffres que vous voulez, 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 des séquences d'images. Pour en savoir plus ici .
Utilisateurs Windows : En ligne de commande, utilisez %
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, doublez %%
dans les scripts, et utilisez simplement %
sur la ligne de commande interactive. Si vous vous trompez dans l'une ou l'autre de ces situations, une erreur sera générée.