- 1) Install Kazam and Record Screencast
- 2) Install gifsicle
- 3) Install Gifify
- 4) Install ffmpeg
- 5) Install ImageMagick
- 6) Convert the mp4 video into a GIF file using Gifify
Last tested on Ubuntu 20.04
TL;DR: 1) Record mp4 video with Kazam 2) Convert video to gif using Gifify
In order to make gif animations on Ubuntu, you need to first record a screencast (using Kazam) and then using Gifify to convert the video into a gif.
There as the steps:
1) Install Kazam and Record Screencast
Use a small frame-rate to keep file size small (10 is enough)
$ sudo apt install kazam
2) Set frame-rate for screencassts in Kazam
smaller the gif file.
10 is enough.
2) Start recording a screencastClick to start recording a screencast
3) When finished, click the camcorder icon2 on the task bar:Click the camcorder icon
when you're done recording
4 Click again on Kazam to save if needed.Open up the dialog and save
the video you just recorded.
2) Install gifsicle
Gifsicle is needed by gifify
$ git clone email@example.com:kohler/gifsicle.git $ cd gifsicle $ autoreconf -i $ ./configure $ make && sudo make install
3) Install Gifify
Install Gifify using npm1
$ sudo npm i gifify -g
I'm using version 2.4.3:
$ gifify --version 2.4.3
4) Install ffmpeg
$ sudo apt install ffmpeg
5) Install ImageMagick
$ sudo apt install imagemagick
6) Convert the mp4 video into a GIF file using Gifify
This uses a lot of RAM, even for smallish video files.
Example: convert a file called video.mp4 to video.gif
There's all sorts of options to control the frame-rate and other things too.
$ gifify video.mp4 -o video.gif
convert-im6.q16: cache resources exhausted
This strategy is quite resource-intensive and the default memory limit is quite small (256MB)
As per this Github Issue, open up file
/etc/ImageMagick-6/policy.xml and change the line where it says
256MiB (should be around line 60) and set it to something higher depending on your system resources, for example,
4GiB as below.
<policy domain="resource" name="memory" value="4GiB"/>
Maximum call stack size exceeded
You forgot to install
1: NPM stands for Node Package Manager. It's used to manage dependencies for NodeJS. You can install it on Ubuntu with
$ sudo apt install npm
2: You can also stop the recording typing
Super is the Windows logo key.