donna parks and recreation animated gif
EXCITE!!!1

Next time you’re looking for an easy way to create a GIF from video on Linux give the following app a try.

It’s called Gifcurry and it is a video to gif creator with a great user-interface and some very useful features.

Think of it like Gif Brewery for Linux, but open-source software, free and — here’s something you don’t read everyday — Haskell based!

From Video to GIF on Linux: Why?

Animated GIFs are everywhere: on blogs, social media, and forums. They regularly serve as the go-to riposte of choice because if pictures can tell a thousand words, a kitten gif can tell a million!

But they’re not just for humour. Animated GIFs are a great alternative to short video clips and screencasts. Many app websites now use them to demo features or highlight options, and blogs (such as this one) regularly use them to illustrate posts.

Every modern web browser can play animated GIFs, and since you can host them on your own server or on a free image sharing site like Imgur, they provide a faster experience than uploading to YouTube or fiddling around with an HTML5 video embed.

But how do you make an animated GIF from video on Linux? My app of choice is Gifcurry.

Free App to Create Video Gifs on Linux

Gif curry is an open-source, easy-to-use app GIF maker app.

It uses ffmpeg and imagemagic to convert video to GIF. It has both a command-line interface (CLI) and a graphical user interface (GUI), though in this post we are only covering the GUI.

gifcurry software annotated
It’s not as complicated as it looks

Using it is easy: just run the app, choose a video to convert to a GIF, set the start time and the duration you want, and then hit the create button. An animated image pops out at the other end in the location you choose, with the file name you choose.

As well as letting you make an animated GIF from video you also have the option to add text to your gif using any font you have installed on your system — perfect if you like making memes or want to subtitle a clip.

You can also set the width of the image in pixels, the exact duration in seconds, and select a quality size.

The app (helpfully) shows a preview of the first and last frames. This lets you check that you’re converting the right part of the video, and lets you cut on the exact frame(s) you want.

Naturally the animated GIF you make will not be as fluid as the source video you put in, but depending on the settings you choose it can look decent.

Gifcurry Features

  • Convert video to gif
  • Add text to gif
  • Choose start time
  • Set duration
  • Set gif width 
  • Adjust Quality
  • Upload to Imgur or Giphy

There are no advanced options to control frame rate, looping behaviour, dithering, or color palette — all options that similar apps for macOS have.

Without these variable you’ll need to be brutal when tweaking the quality settings. The higher the quality the larger the GIF size.

I took a 720p video and create a 4 second gif from it at a width of 750px and a quality setting of 80%. The resulting GIF was well over 10MB!

Since Gifs are only useful when they load quickly, a 10MB download size isn’t optimal — don’t be afraid to play around with the quality and size options.

Here’s a 1080p MP4 video file exported as a 750px GIF at 10% quality. The result still looks decent and, mercifully, is touch more tweet-friendly at 1.7MB:

animated gif example
An example of video to GIF

The only missing feature that I think would bump this app from useful to essential is the option to crop. I appreciate that with the current UI that’s not an easy ask.

GifCurry Guide

To create an animated GIF, first you choose a video using the input video button. As the app is powered by ffmpeg it works pretty much any video format you can throw at it.

Next choose the size (in px) you want for your animated image, and the quality level (in %). The higher the quality the larger the image file size.

Chances are you won’t want to use the entire video so enter the time (in seconds) for where you want the animation to start, and enter a duration (in seconds) to decide how long it lasts. Use the  frame previews the app shows to check that you’re cutting where you want. You can move the first and last frames back/forward by adjusting the start time and duration.

Bonus Tips

There are other ways to make an animated gif from video on Linux, such as exporting to gif from Kdenlive, or using ffmpeg at the command line.

My workaround method is to queue up the bit of a video I want as a gif in a video player like VLC and then use the (awesome) Peek animated GIF screen recorder to screen record the media player — simple!

Download Gifcurry

GifCurry is available to download for free as an AppImage. An Appimage is a self-contained bundle that contains all the components the app needs to function (which in this case is ffmpeg and image magic):

  1. Download the latest Gifcurry release from Github
  2. Give the .appimage file permission to launch
  3. Double-click on the .appimage to use it

That’s it!

If you want to perform all of the steps above using the Terminal:

wget https://github.com/lettier/gifcurry/releases/download/6.0.0.0/gifcurry-6.0.0.0-x86_64.AppImage
chmod a+x gifcurry-6.0.0.0-x86_64.AppImage
./gifcurry-6.0.0.0-x86_64.AppImage

If you’re using Arch you can skip the kerfuffle above by installing the app from AUR.

Give this app a try next time you want to turn a video to a GIF on Linux – and share your results in the comments!

h/t omghaskell

appimages Gif gifcurry haskell