我需要使用imagemagick从具有以下结构的图像列表中生成一个gif文件:
image [00-15].jpg
image [00-45].jpg
image [01-15].jpg
image [01-45].jpg
image [02-15].jpg
image [02-45].jpg
image [03-15].jpg
image [03-45].jpg
但我只需要使用10张最新的图片。如何使用bash脚本解决此问题?
发布于 2017-03-20 11:35:30
看起来你可以使用ffmpeg。
For creating a video from many images:
ffmpeg -f image2 -framerate 12 -i foo-%03d.jpeg -s WxH foo.avi
The syntax "foo-%03d.jpeg" specifies to use a decimal number composed of three digits padded with zeroes to express the sequence number. It is the same syntax supported
by the C printf function, but only formats accepting a normal integer are suitable.
When importing an image sequence, -i also supports expanding shell-like wildcard patterns (globbing) internally, by selecting the image2-specific "-pattern_type glob"
option.
For example, for creating a video from filenames matching the glob pattern "foo-*.jpeg":
ffmpeg -f image2 -pattern_type glob -framerate 12 -i 'foo-*.jpeg' -s WxH foo.avi
我使用这个工具将视频片段组合成完整的剧集。
在本地,我可以通过运行ffmpeg -i %02d.png output.gif
获得gif,其中我有01.png、02.png、03.png和04.png。你将不得不玩弄时间和东西的选项,但这是完全可行的。
发布于 2017-03-25 14:03:11
我不确定我是否理解[]的用法。文件名中的括号是真的吗?如果不是,那么
convert -delay 50 image*.jpg[-1--10] -loop 0 animation.gif
不幸的是,它会加载你所有的图像并且只使用最后的10个,但是它会占用大量的内存来加载所有的jpgs。
https://stackoverflow.com/questions/42865530
复制相似问题