Como gravar sua tela em gifs animados no Linux

Todo mundo que me conhece sabe que sou fã incondicional de gifs animados (a louca dos gifs). Ultimamente fui surpreendida pela popularização da utilização de gifs em tutoriais e documentações técnicas, algo que eu ainda não havia pensado sobre mas que achei genial pela simplicidade e eficiência dessa prática. Além de tornar documentações e tutoriais muito mais envolvente. Veja um exemplo que estamos usando na Escola Mupi (aqui tem uns legais também):

Exemplo de gif animado em guias de usabilidade

Existem várias formas de se fazer isso. Você pode, por exemplo, gravar sua tela em video e depois editar exportando para gif (o Adobe Premiere faz isso, Camtasia também, e existem alguns programas só para este fim). Mas como uso Linux, precisei aprender como fazer isso sem esses programas que só rodam no Windows ou Mac OS, e encontrei o Byzanz, que você pode ver seu código aqui.
O Byzanz permite gravar a tela diretamente em um gif animado. Como não encontrei muitas informações sobre ele (parece que seu site está fora do ar), resolvi criar esse tutorial para ensinar como utilizá-lo, já que o achei super simples e soluciona muito bem essa necessidade.
Spoiler: é tudo pela linha de comando então se você, assim como eu, tem muito apego visual, recomendo um pouquinho de paciência que no fim das contas é simples de usar e é possível que você vicie e queira gravar tudo! 🙂

1 – Instalar o Byzanz Abra o seu terminal e execute os passos abaixo para instalar o Byzanz.
Se você usa Fedora e Gnome, o byzanz já está no repositório do Fedora então basta instalar:
$ sudo yum install byzanz

No Ubuntu 14.04:
$ sudo add-apt-repository ppa:fossfreedom/byzanz
$ sudo apt-get update
$ sudo apt-get install byzanz

2 – [Opcional] Instalar o Wmctrl
Esse passo é mais uma dica, ele não é necessário. Mas através do Wmctrl (um comando que permite você gerenciar suas janelas) a gente consegue experimentar tamanhos e posicionamentos de janelas para definir a área a ser gravada antes de usar o Byzanz.
Para instalar é igual ao passo 1:
– Para Fedora:
$ sudo yum install wmctrl

– Para Ubuntu:
$ sudo apt-get install wmctrl

Se não achar o Wmctrl, leia este tutorial.

3 – Definindo o tamanho da janela que você quer gravar.
Com o Wmctrl fica bem mais fácil essa etapa, por isso o passo dois. A linha abaixo está dizendo para posicionar a janela atual (no caso sua janela do terminal) se posicionar 500 pixels à direita (eixo x), 100 pixels abaixo (eixo y), com a largura (width) de 800 pixels e altura de 600 (altura) pixels. A opção -e significa que ele vai redimensionar a janela com os parâmetros definidos.
$ wmctrl -r :ACTIVE: -e 0,500,100,800,600
E é só isso que precisamos do Wmctrl, se quiser ver mais opções é só ver o help do Wmctrl com o comando $ wmctrl --help. Agora você pode ficar experimentando os valores até achar o que quer:
terminal

4 – Gravando a tela com o byzanz
Com os valores de tela definido, você posiciona a janela que vai ser gravada, seu navegador por exemplo, no local que ficou sua janela do terminal do passo três.
O uso do byzanz usa os seguintes parâmetros: byzanz-record [opções] nomedoarquivo.gif. No caso do meu exemplo usei o comando abaixo, onde -d 10 se refere à duração da gravação e -c que vai gravar o cursor:
$ byzanz-record -d 10 -c --x=500 --y=100 --width=800 --height=600 terminal.gif
Para conferir o resultado é só ir na pasta onde você salvou e abrir o gif no seu navegador 🙂
Para mais opções do byzanz basta acessar seu manual: byzanz-record --help

E seu gif está pronto :] Simples, não? Eu particularmente achei muito melhor do que depender de editores de videos pesados que demoram pra renderizar e são difíceis de mexer.
Agora é experimentar, boas gravações!
Ah, e se for gravar pra web só cuidado com o tamanho final dos gifs, afinal cada frame é uma imagem que podem custar caro pra sua performance.

  • Muito show essa dica, não sabia que dava pra fazer isso no linux! vlw!

    • sim, muito bom e simples né? 🙂 que bom que foi útil!

  • Palmer 

    Parabéns muito legal 😉

  • Gilson José da Silva

    Boa tarde Ana Rute, será que dá pra instalar esse programa no Ubuntu 14.04, gostei da sua dica, eu estava na mesma situação, ou seja, procurando um programa para fazer isso no Linux, criar gifs animados, vou testar. Essa é a primeira vez que visito seu site, parabéns pelo trabalho, até mais!!!

    • Oi Gilson, muito provavelmente funciona sim 😀 testa e volta aqui pra falar se deu certo que adiciono o 14.04 na lista 🙂 que bom que gostou!

      • Gilson José da Silva

        Oi Ana Rute tudo bem, estou aqui outra vez para te avisar que deu tudo certo, consegui instalar o Byzanz no Ubuntu 14.04 sem erros, pode adicionar o Ubuntu 14.04 na lista, agora vou seguir seu tutorial que está muito bem detalhado para aprender a usar o programa. Minha primeira impressão com o programa foi muito boa, obrigado pela dica e pelo tutorial muito bem detalhado. Grande Abraço e fique na Paz!

        • que legal Gilson! qualquer dúvida só perguntar por aqui que tento ajudar 🙂 abraços

  • Gilson José da Silva

    Oi Ana Rute tudo bem, estou aqui outra vez para te avisar que deu tudo certo, consegui instalar o Byzanz no Ubuntu 14.04 sem erros, pode adicionar na lista o Ubuntu 14.04, agora vou seguir seu tutorial que está muito bem detalhado para aprender a usar o programa. Minha primeira impressão com o programa foi muito boa, obrigado pela dica e pelo tutorial muito bem detalhado. Grande Abraço e fique na Paz!

  • aristoteles

    Extremamente útil pra mim! Obrigado por compartilhar!

  • Eliakim Feliciano Morais

    Muito boa essa dica, meus parabéns pelo artigo e compartilhar o conhecimento.

    • Muito obrigada 🙂 se tiver algum pedido de dica é só falar que tento ajudar.