Como Fazer Screencast a Partir da Linha de Comando no Linux
Quando se trata de screencasting (gravar vídeo da sua área de trabalho), a maioria das pessoas pensa em um software de desktop com uma interface de usuário adequada. Para Linux, cobrimos várias ferramentas como Kazam e Screentoaster. O que muitas pessoas não sabem é que você também pode fazer screencast a partir da linha de comando, via FFMPEG. É um comando simples (e muito longo) configurável que permite gravar vídeo da sua área de trabalho.
Instalando o FFMPEG
FFMPEG está disponível nos repositórios da maioria das distribuições. Instale-o com o comando abaixo:
Ubuntu
sudo apt-get install ffmpeg
Fedora
sudo yum install ffmpeg
OpenSUSE
sudo zypper install ffmpeg
Arch Linux
sudo pacman -S ffmpeg
Não consegue encontrá-lo nos repositórios da sua distribuição? Você pode precisar baixá-lo diretamente do ffmpeg.org e instalá-lo dessa forma.
Personalizando o comando
Antes que o screencasting possa acontecer, o comando precisa ser personalizado para atender às suas necessidades. O comando abaixo não tem resolução especificada, fará screencast a 30 FPS e exporta o arquivo no formato .MKV.
ffmpeg -f alsa -ac 2 -i pulse -f x11grab -r 30 -s YxZ -i :0.0 -acodec pcm_s16le -vcodec libx264 -preset ultrafast -crf 0 -threads 0 output.mkv
Encontre a resolução nativa da sua tela e substitua o YxZ por ela (por exemplo: 1920×1080). Não está satisfeito com apenas 30 quadros por segundo? Altere -r 30 para o FPS desejado.
Screencasting
Fazer screencasting é tão simples quanto colar o comando acima (uma vez que você o modificou para se adequar a você) em um terminal. Enquanto o comando estiver em execução, você poderá saber exatamente o que o FFMPEG está fazendo. Você notará algo semelhante à imagem abaixo.

Basicamente é isso. Com esse comando longo, você está fazendo screencasting. Quer parar a captura? Pressione a tecla “q” ou feche a janela do terminal completamente. Ele imprimirá informações sobre a gravação que acabou de terminar. Essas informações são ótimas, pois podem te dizer tudo o que aconteceu durante o processo.
vídeo: 3245kB áudio: 6451kB legenda: 0kB outros streams: 0kB cabeçalhos globais: 0kB sobrecarga de multiplexação: 1.933424% [libx264 @ 0xc35d40] quadro I: 4 QP Médio: 0.00 tamanho: 311776 [libx264 @ 0xc35d40] quadro P: 985 QP Médio: 0.00 tamanho: 2107 [libx264 @ 0xc35d40] mb I I16..4: 100.0% 0.0% 0.0% [libx264 @ 0xc35d40] mb P I16..4: 30.5% 0.0% 0.0% P16..4: 0.0% 0.0% 0.0% 0.0% 0.0% pular: 69.5% [libx264 @ 0xc35d40] codificado y,u,v intra: 0.6% 0.1% 0.1% inter: 0.0% 0.0% 0.0% [libx264 @ 0xc35d40] i16 v,h,dc,p: 99% 1% 0% 0% [libx264 @ 0xc35d40] kb/s: 806.15
Mudando as entradas de áudio do FFMPEG
Como todos os aplicativos, o FFMPEG utiliza o Pulse Audio. Isso significa que pode ser manipulado. Por padrão, todos os aplicativos que gravam captam o som através do dispositivo de som padrão. Se o seu computador tem um microfone (ou um conectado), o FFMPEG gravará automaticamente o som dele e o adicionará ao seu screencast. Se isso é algo que você não deseja, você pode mudar.
Instale o Controle de Volume do Pulse Audio. É uma ferramenta muito popular e, portanto, está na maioria dos repositórios de distribuições populares. No Ubuntu (ou distribuições baseadas em Ubuntu), você pode instalá-lo com o seguinte comando:
sudo apt-get install pavucontrol
Para outras distribuições, você só precisa procurar por “pavucontrol” no seu gerenciador de pacotes e instalá-lo. Uma vez instalado, inicie um screencast do FFMPEG e abra o “Controle de Volume do Pulse Audio.” Dentro da ferramenta, clique na aba de gravação.

Na aba de gravação, clique no botão Áudio Analógico Integrado. Isso abrirá um menu de seleção.

No menu, selecione Monitor do Áudio Analógico Integrado. Isso fará com que o FFMPEG grave o som do seu sistema em vez do microfone do seu computador. Esse truque é ótimo se você está procurando gravar gameplay ou qualquer coisa que requer áudio.
Conclusão
FFMPEG é uma ferramenta incrível que pode fazer muitas, muitas coisas. Screencasting é apenas uma de suas habilidades. Poucas alternativas a ele conseguem capturar imagens de alta qualidade enquanto oferecem um ótimo desempenho. A linha de comando é incrível porque com ela você pode ser tão preciso quanto quiser. Você pode especificar o que deseja realizar e vê-lo aparecer diante dos seus olhos.