m (→Gif) |
m (→Gif) |
||
Line 38: | Line 38: | ||
== Gif == | == Gif == | ||
+ | |||
+ | [https://ezgif.com/ ezgif.com] is a great online resource to optimize, resize, crop and overall edit gif (with some limitations on size, though). | ||
Gif files can be animated using ''gifsicle'' [http://www.lcdf.org/gifsicle/] | Gif files can be animated using ''gifsicle'' [http://www.lcdf.org/gifsicle/] | ||
Line 45: | Line 47: | ||
The listing is such that it [[normal-orders]] the files, which is usually what one wants to do. | The listing is such that it [[normal-orders]] the files, which is usually what one wants to do. | ||
− | + | To convert from a move to an animated gif: | |
+ | |||
+ | <pre> | ||
+ | ffmpeg -i input.mp4 -r 15 -vf scale=512:-1 output.gif | ||
+ | </pre> | ||
== PNG == | == PNG == |
Contents |
Animation is a magical process whereby seemingly unending efforts eventually combine to make a movie.
Of course we focus on Linux softwares:
There are also some proprietary software, such as Harmony
The basic idea of animation is very simple, though: alternate images. If it's fast enough, the brain will interpolate a continuous evolution from one to the other. So the simplest possible animation is just to generate frames and assemble them together.
For autocropping:
for i in `ls *jpg`; do convert -trim $i out_$i; done
But if the size is not the same for all images, the encoding could fail, in this case, force the cropping:
for i in `ls *jpg`; do convert $i -crop '990x870+5+35' out_$i; mv -f out_$i $i; done
ezgif.com is a great online resource to optimize, resize, crop and overall edit gif (with some limitations on size, though).
Gif files can be animated using gifsicle [1]
gifsicle --delay=10 --loop *.gif > anim.gif
The listing is such that it normal-orders the files, which is usually what one wants to do.
To convert from a move to an animated gif:
ffmpeg -i input.mp4 -r 15 -vf scale=512:-1 output.gif
If there are few images, convert from ImageMagick can do the trick:
convert -delay 10 -loop 0 $(ls -1 *.png | sort -V) animated.gif
For more ambitious exports, use ffmpeg: (-r 20 is the repetition rate)
ffmpeg -f image2 -r 20 -i 0%05d.png -vcodec h264 -crf 0 -y output.mp4
mpeg can be generated with a command like:
mencoder "mf://*.jpg" -mf fps=10 -ovc lavc -o ./dest.avi
with 10 frames per second.
avconv is also popular. To do lossless compression, you may try:
avconv -f image2 -r 30 -i %03d.png -vcodec qtrle -pix_fmt rgb24 -t 15 qtrle-30fps-rgb.mov