J'ai une courte vidéo de 60 fps que j'aimerais transformer en fichier GIF. J'exécute
ffmpeg -i foo.flv foo.gif
et cela produit un fichier GIF. Génial !
Le seul problème est que le mouvement dans la vidéo GIF produite est bizarre et irrégulier. Si j'utilise un autre outil, je peux voir que FFmpeg a créé une vidéo où la première image dure 10 ms, la deuxième 20 ms, la troisième 20 ms, puis ça se répète comme ça : 10 ms, 20 ms, 20 ms. Si j'utilise un autre outil pour lisser la vidéo à 16 ms pour chaque image (sans modifier le contenu des images), le résultat est magnifique.
Pourquoi FFmpeg fait-il cela ? Comment puis-je lui demander d'écrire un fichier GIF qui demande une fréquence égale de 16 ms par image, de sorte que je n'aie pas besoin d'utiliser un deuxième outil ?
J'ai maintenant vu ceci Question connexe demandant si les vidéos GIF à 60 images par seconde existent, mais il ne répond pas à la question de savoir comment demander à FFmpeg de changer son comportement. De plus, cela soulève une nouvelle question : si 16ms n'est pas un temps que le GIF peut représenter, que fait l'autre outil que j'utilise, et pourquoi fonctionne-t-il bien ?