Elsewhere on this web site, I discuss how to create presentations and embed movies in PDF files; one question that comes up in both contexts is: how do you create animated content? One can classify animations by the same two main categories that apply to images: bitmap versus vector graphics.
The easiest and most platform-independent way of delivering animations is probably still the GIF89 movie. Other formats that are quite common are .mpeg, .mov etc. I'll talk about other formats later. GIF animations are frame based, so the first thing one needs, of course, is a way to produce the individual frames as bitmap images. They should preferrably be of the same dimensions (although that isn't strictly necessary in the method described below). Assuming you have the images, they should be named sequentially so that they appear in your folder listing in the order in which they are to be incorporated into the movie. Then, we have various options to create a movie:
ImageMagick is practically a platform-independent tool, because you can get it for Mac, Windows and UNIX. Use the convert command to create a single GIF image. Input files can be, e.g.: PNG, JPG, GIF, BMP, or any other that the program can import. An example command with PNG input would be
convert -set delay 3 -colorspace GRAY -colors 16 -dispose 1 -loop 0 -scale 50% *.png Output.gif
(delay 3 is the shortest inter-frame delay possible).
On a Mac, you can get ImageMagick for X11 from fink. See also my general installation instructions.
Instead of creating a gif movie, mpeg encoding can also be done by simply calling
convert -quality 100 *.png Outputfile.mpeg
iMovie HD, and dragging a group of images onto the timeline may be the most convenient way of making a move that can then be exported in various formats via the Share menu. One limitation is that the minimum frame duration by default is .03 seconds which may be too slow sometimes. Fortunately, there is a work-around that allows to go down to 0.01 second duration.
There are two simple ways of creating animations with GraphicConverter, the powerful graphics editor that used to be bundled with OS X and is now shareware.
File ⇒ Convert&Modify .... Follow the instructions in Chapter 9 of the GC Help document, to end up with an animated GIF.
File ⇒ Export Slide Show to Movie .... You'll have to navigate to the folder containing the images. After choosing some settings, GraphicConverter will create a file with the extension .mov. This file format is suitable for inclusion in Keynote, for example.
Here are some other alternatives for creating bitmap-based frame animations:
ffmpeg installed from fink, and use it from the command line. Some examples:
ffmpeg -i file.mov -pix_fmt rgb24 -s qcif -loop_output 0 output.gif-s qcif could be omitted, it sets a small output size. A -loop_output 0 parameter causes infinite looping.
ffmpeg -f image2 -i a%d.jpg b.mp4. The numerical part of the files has to start at 1. If you need multiple digits, say 001 and so on, then replace %d by %03d. To maintain the exact quality of the input images, do ffmpeg -sameq -i %03d.jpg output.mp4.
.mov to .mpeg, one can use QT amateur, a free movie player for Mac OS X which can export various movie and image file formats (even in batch mode). It requires Quicktime 7 to be installed on your machine.
Add and Images, and multiply select the desired images. Under Scene ⇒ Anim, activate "Do Sequence", and under Scene ⇒ Format select a movie output format such as QuickTime. Set the start and end frames appropriately and press "Anim". A disadvantage of Blender is that the resulting movie has an inflated file size because it doesn't come with video compression codecs.
Vector formats are especially practical when you're interested in objects that can be described efficiently using strokes, fills, gradients using only a few control points.
The main formats for vector-based movies on the web are SWF (Flash) and SVG (Scalable Vector Graphics).
If you have Adobe Illustrator, both of these file formats can be created quite easily. Here is an example I created by drawing a mere four shapes and telling Illustrator to calculate a blend between them: