Tengo muchas imágenes gif similares y quiero hacer una película de esa manera:
ffmpeg -i img%06d.gif -c:v libx264 mymovie.mp4
Si todas las imágenes son JPEG, todo funciona bien. Pero los GIF están atascados con el mensaje:
img%06d.gif: No such file or directory
Conversion failed!
¿Es posible procesar gifs con ffmpeg
?
Hay alrededor de 30 GB de gifs, por lo que la conversión a JPEG no es una opción.
Sí. Otro caso está resuelto.
ffmpeg
trata los GIF como películas, no como una sola imagen. Siempre. Por lo tanto, tenemos que hacer concat
videostreams en lugar de agrupar los marcos. Aquí está la solución:
ffmpeg -f concat -i filelist.txt -c:v libx264 mymovie.mp4
filelist.txt de acuerdo con el manual de ffmpeg debe ser el siguiente formato:
# some comment
file '/path/img000001.gif'
file '/path/img000002.gif'
file '/path/img000003.gif'
. . . . .
ffmpeg -f image2 -i img%06d.gif -c:v libx264 mymovie.mp4
, ¿eso funciona?Respuestas:
ffmpeg trata los GIF como películas, no como una sola imagen. Siempre. Por lo tanto, tenemos que concatar videostreams en lugar de agrupar los marcos. Aquí está la solución:
filelist.txt de acuerdo con el manual de ffmpeg debe ser el siguiente formato:
fuente
ffmpeg -f concat -i <(for f in /path/*.gif; do echo "file '$f'"; done) -c:v libx264 output.mp4