Animated Gif

Animated Gifs are not just a popular medium but hey also work nicely with Federated Wiki.

How to Create Animated Gifs

If you haven't already:

brew install ffmpeg gifsicle imagemagick

Given a movie file (recording.mov), we can convert that to a set of numbered PNGs (in the same folder as the original move file), like this:

ffmpeg -i recording.mov -r 24 recording-%03d.png

The result is a whole lot of PNGs named recording-01.png, recording-02.png etc. Next we need to convert these PNGs into GIFs.

convert recording-001.png palette.gif

The line above creates a GIF from a single PNG as a starting point. Note: you may need to pick a different frame for better results!

convert -dither none -remap palette.gif recording-*.png recording-uncompressed.gif

The result is a single GIF made up from all those PNGs. This step can take quite a while and creates a large uncompressed file.

gifsicle --optimize=3 --delay=4 < recording-uncompressed.gif > recording.gif

Create Animated Gif with Node

Here is a nice write up of creating a service on Digital Ocean to turn MMS videos into animated gifs - twilio.com

This was achieved using the following combination of technologies:

  • Ubuntu 14.04 on a Digital Ocean VPS
  • Libav ‚Äì to process the videos and retrieve the frames
  • Imagemagick ‚Äì to stitch together the animated GIF
  • Node.js ‚Äì to orchestrate and serve the generated animated GIFs
  • Twilio ‚Äì to send and receive MMS messages

Gifshot

JavaScript library that can create animated GIFs from media streams, videos, or images How gifshot uses the following technologies - github.com

Gifmaker

You can alos make animated gifs online at a service like memecenter.com