Première partie de ma question:
J'ai lu sur la documentation ffmpeg ( section 3.2 How do I encode single pictures into movies?
) ce qui suit:
Pour encoder des images uniques en films, exécutez la commande:
ffmpeg -f image2 -i img%d.jpg movie.mpg
Notez que `% d 'est remplacé par le numéro de l'image: img% 03d.jpg signifie la séquence img001.jpg, img002.jpg, etc ...
Ma question est: qui fait la traduction entre img%03d.jpg
et img001.jpg, img002.jpg, etc
? Est-ce le shell ou ffmpeg?
Deuxième partie:
Je voudrais demander à ffmpeg d'encoder une séquence d'images dans une vidéo. Cependant, mes séquences commencent souvent par un index différent de 1 (par exemple, nous pouvons l'appeler start_index
) et se terminent sur un index que nous pouvons appeler end_index
. De plus, la séquence utilise des incréments de valeur increment
, par exemple:
img_0025.png, img_0030.png, img_0035.png, ... img_0100.png
où start_index
était 25, end_index
100 et increment
5.
Je voudrais alimenter une séquence d'images comme ci-dessus pour ffmpeg sans avoir à renommer la séquence en premier. La documentation explique comment faire cela avec des liens symboliques, mais je me demandais s'il y avait un moyen de les éviter complètement, peut-être en utilisant une globalisation avancée sur zsh.
while IFS= read -d $'\0' -r file ;do pnmcomp -align=center -valign=middle <(anytopnm "$file" 2>/devnull) done
le script cesse de fonctionner (c'est-à-dire que j'obtienspipe: could not find codec parameters
). Est-ce que tu sais pourquoi? Ai-je nécessairement besoinpnmscale
ouppmmake
pour me nourrirffmpeg
d'pnm
images?avisynth
(un environnement de script vidéo puissant - avisynth est Windows uniquement :( La principale raison pour laquelle j'ai utilisé unnetpbm
format est que je continuais à voir des messages sur les problèmes d'alimentation des fichiers JPEG au tuyau, donc j'ai juste choisi le chemin de moindre résistance. L'encodage vidéo sera l'étape qui cause la perte de qualité, mais l'augmentation de la taille de l'image aide ... Je suppose que vous avez vos raisons spécifiques d'utiliser une vidéo, mais un simple diaporama peut fonctionner pour vous.Pour la première partie seulement: c'est ffmpeg qui fait le boulot. Le shell ne comprend pas la
%d
chaîne comme un modèle spécial dans les noms de fichiers.la source