Есть ли инструмент для создания gif
анимации из набора png
файлов?
Я попробовал convert
команду из набора ImageMagick , но это не всегда удается. Кроме того, у меня есть несколько проблем с этим:
- Я не могу сказать, каков прогресс.
- Независимо от того, что я пытаюсь,
-delay
флаг не меняет частоту кадров анимации GIF. convert
определяет порядок кадров на основе алфавитного порядка имен файлов. Это означает, чтоname500.png
будет размещено сразу после,name50.png
а не после того, какname450.png
я смогу это исправить, добавив 0, но это раздражает.
convert
после сортировки файлов. Возможно, что-то вроде этого работаетfiles=$(ls name*png | sort -n -tname -k1); convert $files animation.gif
-monitor
параметр, который отслеживает процессconvert -delay 200 -loop 0 *.jpg output.gif
.Ответы:
Вы также можете попробовать
ffmpeg
создать фильм из последовательности изображений, а затем преобразовать фильм в GIF-анимацию (снова используяffmpeg
).источник
sameq
Вариант не доступен. Кроме того, для меня это переписывает исходные файлы изображений и не создает действительный файл фильма.-sameq
код? Почему вы хотите использовать формат видео с потерями (output.mp4
) как временный? И если да, то почему "то же качество", что и вход, а не очень высокий битрейт? Артефакты от этого только ухудшат GIF-кодировщик. Если вам нужно было использовать видео в качестве временного, вы бы хотели использовать что-то без потерь, как huffyuv. Или MJPEG без транскодирования, просто перепутайте входные JPEG в MJPEG. (-codec:video copy
).convert
это удобный инструмент командной строки для этогоcd
в папку, содержащую ваши png- файлы и запустите эту команду:Источник: http://ubuntuforums.org/showthread.php?t=1132058
источник
convert
и некоторые проблемы с его использованием. Ваш ответ не касается ни одного из них.6.8.7-4 2013-11-02 Q16
это работало для меня.10
означает 10 * 10 мс, так что довольно быстро. Задержка100
составляет 1 секунду.-dispose previous
или-dispose 2
если вы работаете с прозрачными PNGpic_{0..20..2}.png
расширенияpic_0.png
,pic_2.png
вплоть доpic_20.png
Опция
convert
's--delay
применяется только к следующему изображению в командной строке. Такconvert -delay 10 *
будет только установить задержку первого кадра на 0,1 секунды. Опцию нужно повторить:Если вам нужна сортировка, конвертирование не сортирует фреймы, это происходит с помощью оболочки
*
. Если вы знаете, что ваши кадры пронумерованы от 0 до 700, вы можете просто вычислить числа самостоятельно:источник
convert
, для меняconvert -delay 1000 -loop 0 *.png animation.gif
действительно добавляет задержку 10 с между каждым изображением.ls
команде. То есть:convert -delay 1000 $(ls -v name*png) output.gif
Обновить:
Используйте
convert
для png-to-gif, затем используйте gifsicle для анимации. Это не решение One App To Do It All, но, безусловно, с возможностью написания сценариев.GIMP может создавать анимированные GIF-изображения и обеспечивает контроль времени / задержки и повтора и т. Д.
источник
ImageMagick может генерировать анимацию хорошего качества. Проверьте это видео - http://www.youtube.com/watch?v=OFusYizJ-bA
источник
convert -delay 200 -loop 0 *.jpg output.gif
ffmeg важные параметры GIF + данные испытаний
Чтобы дополнить этот ответ :
Тестовые данные были созданы с помощью: https://stackoverflow.com/questions/3191978/how-to-use-glut-opengl-to-render-to-a-file/14324292#14324292
Важные
ffmpeg
параметры, которые я хотел бы выделить:-patter_type glob
: удобный способ выбора изображений-framerate 60
и-r 15
: предположим, что 60 кадров в секунду на входных изображениях (ffmpeg
иначе не может быть, так как в изображениях нет данных FPS, как в видеоформатах), выбирайте одно каждые 4 изображения, чтобы уменьшить размер (4 == 60 / 15
)-vf scale=512:-1
: установите ширину, пропорционально высоту шкалы, обычно для уменьшения размера и экономии местаСмотрите также:
Протестировано в Ubuntu 18.10, ffmpeg 4.0.2.
источник
Что касается пункта 2
Версия ImageMagick «display», которую я имею (ImageMagick 6.7.2-7 2017-01-12), игнорирует частоту кадров, установленную с помощью команды convert, для создания анимированного GIF. Попробуйте другую программу для просмотра анимированного GIF, как Firefox.
источник