Como criar um screencast no Linux

Uma webcam colocada em um teclado na frente de uma tela de computador.
Proxima Studio / Shutterstock.com

Quer fazer um screencast no Linux, mas se sente oprimido pela escolha de ferramentas e programas? Descrevemos três maneiras de criar um screencast. A maneira rápida e fácil, a maneira mais rígida e granular e a maneira que pensamos ser a melhor versátil.

Como filmar um bom screencast

Para criar um screencast, você deve registrar o que está acontecendo em sua área de trabalho, junto com os comentários que você está adicionando a ele. Isso requer a capacidade de gravar vídeo de sua área de trabalho e áudio do subsistema de som do Linux e, possivelmente, de outras fontes também.

Ao assistir a um bom screencast, você notará que o comentário ou a narrativa estão no ponto certo. É polido. A entrega tem confiança e clareza. Não há espaço para “hum’s e ah’s” quando você está produzindo um screencast. Eles são dolorosos de ouvir e fazem seu screencast parecer amador. Isso é exatamente o oposto do efeito que você está tentando criar. Você quer que o seu público sinta que você é uma autoridade naquilo que está falando. Soar como se você estivesse se atrapalhando não é a melhor maneira de fazer isso.

Por causa disso, muitos dos screencasts mais sofisticados têm sua trilha de áudio gravada e editada separadamente e depois mixada de volta no vídeo da tela. Esse é um tópico muito grande para cobrir em um pequeno artigo, então vamos ver maneiras de gravar o áudio e o vídeo da área de trabalho ao mesmo tempo. Isso não significa que você está fadado a parecer amador. Existem técnicas simples que você pode usar para aumentar a qualidade de sua apresentação verbal.

O mais elementar – mas o mais impactante – é um script e prática. Execute o seu screencast várias vezes antes de tentar gravá-lo. Faça anotações para saber o que quer dizer e para quais pontos deseja dar atenção especial. Não se desanime com a palavra “script”. Não precisa ser um documento sofisticado. Uma ou duas páginas de tópicos fáceis de ler ajudarão enormemente. Paradoxalmente, você não quer se distrair tentando ler o roteiro quando deveria estar falando.

Coloque o tempo com simulações. Há uma razão pela qual os profissionais têm ensaios. É muito difícil percorrer o tópico que você deseja descrever, controlar o software que está usando para fazer o screencast e ainda fornecer um bom desempenho verbal.

Escolha um bom microfone (e câmera, se quiser)

Você vai precisar de algo para gravar sua voz. Isso significa comprar um microfone, caso ainda não tenha um. Seria um pequeno milagre se o integrado no seu laptop fosse bom o suficiente. Não precisa custar uma fortuna, mas um microfone externo razoável que permite que você fale naturalmente e seja gravado em um bom volume é absolutamente indispensável. E uma posição a seu favor renderá dividendos.

Se você quiser se filmar para aparecer no screencast, precisará de uma câmera. Se tudo o que vai gravar é sua cabeça e ombros para que você possa ser visto em uma pequena janela em um canto do seu screencast, você não precisa de uma câmera de cinema. Mas você precisará de algo um pouco além da webcam embutida básica que acompanha o seu laptop. Uma câmera separada significa que você pode colocá-la onde precisar.

Foco automático, ajuste automático de luz e um sensor de boa resolução são fatores importantes. Não está fora de questão que uma câmera de boa qualidade possa ter um microfone suficiente para suas necessidades. Portanto, se você está procurando uma câmera e um microfone, pegue a câmera primeiro e veja se o microfone está à altura da tarefa.

Clipes curtos e silenciosos: use o gravador integrado do GNOME

Vale a pena mencionar de passagem que, se você usar o ambiente de área de trabalho GNOME  (DE), terá acesso a um gravador de tela simples embutido em seu DE – mas sem nenhum áudio. Se você precisar de um videoclipe curto e silencioso, será o suficiente. Por exemplo, seria perfeito criar um pequeno clipe para enviar a alguém para mostrar as etapas necessárias para reproduzir um bug.

Recomendado:  Raspberry Pi tem novas placas de áudio Hi-Fi para seu projeto DIY

Para começar a registrar a atividade em sua área de trabalho, basta pressionar:

Ctrl + Shift + Alt + R

A gravação da tela começará imediatamente. Um indicador circular vermelho aparecerá na área de notificação da ferramenta, próximo aos ícones de rede, som e energia.

Indicador vermelho 2 de gravação "na área de notificação

Para interromper a gravação, use a mesma combinação de teclas:

Ctrl + Shift + Alt + R

O indicador de gravação é removido da área de notificação quando a gravação é interrompida.

O indicador de gravação é removido da área de notificação. Sua gravação é armazenada em seu ~/Videosdiretório com um nome de arquivo com carimbo de data / hora. O arquivo terá a extensão “.webm”, indicando que foi gravado no formato de vídeo WebM .

Screencast com nome de arquivo com carimbo de data / hora no diretório Vídeos

Se quiser enviar sua gravação para o YouTube , você precisará convertê-la para o formato MPEG-4 (MP4) . Veremos como fazer isso em breve, usando outra ferramenta chamada  ffmpeg.

Observe que, por padrão, a duração máxima de gravação é de 30 segundos. Você pode ajustar isso usando o editor dconf . A configuração está localizada em org > gnome > settings-daemon > plugins > media-keys. A configuração a ajustar é chamada max-screencast-length.

dconf-editor com max-screencast-length destacado

Rápido e fácil: Grave com recordMyDesktop

recordMydesktop é uma ferramenta simples e direta de gravação de tela e áudio . Ele permite que você grave sua área de trabalho, uma seção da área de trabalho ou uma janela de aplicativo específica.

Para instalar recordMyDesktop no Ubuntu, use este comando:

sudo apt-get install recordmydesktop gtk-recordmydesktop

sudo apt-get install recordmydesktop gtk-recordmydesktop em uma janela de terminal

Para instalar recordMyDesktop no Fedora, use este comando:

sudo dnf install recordmydesktop gtk-recordmydesktop

sudo dnf instalar recordmydesktop gtk-recordmydesktop em uma janela de terminal

Para instalar recordMyDesktop em Manjaro, use este comando:

sudo pacman -Syrecordmydesktop gtk-recordmydesktop

/home/dave/Documents/Development/how-to-geek/screencast/images/borders/40.png em uma janela de terminal

A interface do usuário é muito simples.

Por padrão, recordMyDesktop gravará toda a área de trabalho. Para gravar uma parte da área de trabalho, clique com o botão esquerdo e arraste na miniatura da visualização. Isso definirá uma parte da tela que será usada para gravação. Para gravar uma única janela do aplicativo, clique no botão “Selecionar janela” e, a seguir, clique na janela do aplicativo em sua área de trabalho.

interface do usuário recordMydesktop

Quando estiver pronto para gravar, clique no botão “Gravar”. Um indicador vermelho aparecerá na área de notificação próximo aos ícones de rede, som e energia.

Indicador recordMydesktop na área de notificação

Clique com o botão esquerdo no indicador e selecione “Parar” no menu para interromper a gravação. A gravação é processada por recordMyDesktop para que possa ser salva. Se você cancelar este processo, perderá sua gravação.

caixa de diálogo recordMydesktop processando a gravação

Quando a gravação for processada, clique no botão “Salvar como” para salvar seu screencast. Uma caixa de diálogo “Salvar arquivo” permite que você escolha onde salvar a gravação.

caixa de diálogo para salvar o arquivo recordMydesktop

A gravação está no formato de vídeo “.ogv” Ogg . É o único formato fornecido. Para converter o arquivo em um formato de vídeo diferente, você pode usar a próxima ferramenta que discutiremos, que é  ffmpeg.

Na linha de comando: ffmpeg

O projeto FFmpeg lançou sua primeira versão do ffmpegutilitário no ano 2000. Sua visão original para gráficos úteis e programa de conversão de vídeo foi superada em muito. ffmpegé agora um conjunto de ferramentas e codecs tremendamente capaz , e é usado em várias outras aplicações conhecidas, como  VLC , Plex e Blender .

Se você alguma vez precisar fazer alguma gravação de áudio ou vídeo ou conversão de formato e estiver se perguntando se ffmpegpode fazer isso, pode parar de se perguntar. Basicamente, a resposta é “sim”.

ffmpegtem muitas opções. Aqui está uma lista de ffmpegopções com mais de 4000 linhas . Essa riqueza de funcionalidades ricas representa uma grande curva de aprendizado se você quiser fazer algo além de simples conversões de formato. Não há um front-end bonito ffmpeg , mas o que falta em termos de interface, ele compensa em potência, velocidade e flexibilidade. E como é orientado por linha de comando, você pode chamá-lo a partir de scripts. Você pode gravar a saída temporária de comandos autônomos ou gravar a atividade da tela da GUI que não pode ser redirecionada para um arquivo.

Durante nossos testes,  ffmpegteve que ser instalado no Fedora 31 e Ubuntu 18.04. Já estava presente no Manjaro 18.1.0. Para instalar ffmpegno Ubuntu, use este comando:

sudo apt-get install ffmpeg

sudo apt-get install ffmpeg em uma janela de terminal

Para instalá-lo no Fedora, foi necessário adicionar dois repositórios. Este comando registrará o primeiro:

sudo dnf -y install https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E% fedora) .noarch.rpm

sudo dnf -y instale https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E% fedora) .noarch.rpm em uma janela de terminal

Este comando registrará o segundo:

sudo dnf -y install https://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E% fedora) .noarch.rpm

sudo dnf -y install https://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E% fedora) .noarch.rpm

O ffmpegaplicativo agora pode ser instalado com este comando:

sudo dnf -y install ffmpeg

sudo dnf -y instala o ffmpeg em uma janela de terminal

Como gravar vídeo e áudio com ffmpeg

Para manter as coisas (relativamente) simples, faremos uma gravação direta de toda a área de trabalho com áudio. Existem alguns parâmetros que devemos fornecer ffmpegpara fazer isso. Podemos usar alguns utilitários para nos ajudar a encontrar os valores de alguns deles.

Recomendado:  Como criar fórmulas condicionais no Adobe Acrobat

Para identificar as resoluções de tela disponíveis, podemos usar xrandr. Não precisamos fornecer nenhum parâmetro para este comando :

xrandr

xrandr em uma janela de terminal

A saída lista todas as resoluções de tela disponíveis.

Saída do utilitário xrandr screen em uma janela de terminal

A resolução atual – e a mais alta disponível nesta máquina de teste – é 1920 × 1080. Vamos usar isso.

Agora vamos descobrir quais fontes de som PulseAudio existem nesta máquina de teste. Usaremos o pactlutilitário e pediremos para listar as fontes. A sintaxe é muito simples:

fontes da lista pactl

pactl listar fontes em uma janela de terminal

Percorrendo a saída detalhada, podemos ver que existe um source #0, que é uma fonte de saída . Isso significa que produz saída de som.

Saída pactl mostrando que há uma fonte # 0 que é uma fonte de saída

Verificar o resto da saída revela outra fonte chamada  source #1. Esta é uma fonte de entrada .

saída do pactl em uma janela de terminal mostrando que há uma fonte # 1 que é uma fonte de entrada

Isso significa que a fonte # 1 aceita entrada de som. Isso viria de um microfone, por exemplo. Portanto, usaremos a fonte nº 1 ffmpege gravaremos nossa voz por meio do microfone.

Aqui está o ffmpegcomando completo .

ffmpeg -video_size 1920x1080 -framerate 25 -f x11grab -i: 0.0 -f pulso -ac 2 -i 1 output.mkv -async 1 -vsync 1

ffmpeg -video_size 1920x1080 -framerate 25 -f x11grab -i: 0.0 -f pulse -ac 2 -i 1 output.mkv -async 1 -vsync 1 em uma janela de terminal

Vamos decompô-lo:

  • -video_size 1920 × 1080 : Define o tamanho da captura de vídeo. Este é o valor que costumávamos xrandrencontrar.
  • -framerate 25 : Define o valor de frames por segundo.
  • -f x11grab : Força o formato de vídeo para um tipo específico. Aqui, estamos configurando o formato de entrada para a saída de seu servidor X.
  • -i: 0,0 : especifica que a entrada de vídeo virá da tela principal.
  • -f pulse : Define o formato esperado como PulseAudio.
  • -ac 2 : define dois canais de áudio
  • -i 1 : Obtém a entrada de áudio da fonte # 1 do PulseAudio. Esse é o valor que costumávamos pactldescobrir.
  • output.mkv : O nome do arquivo que desejamos criar.
  • -async 1 : define o método de sincronização de áudio. Este é um parâmetro obsoleto, mas o estamos usando aqui para evitar mensagens de erro que podem ser ignoradas.
  • -vsync 1 : define o método de sincronização de vídeo. Este é um parâmetro obsoleto, mas o estamos usando aqui para evitar mensagens de erro que podem ser ignoradas.

Você pode ver muitas informações rolando na janela do terminal enquanto a gravação ocorre. Minimize esta janela de terminal ou coloque a janela principal do aplicativo de que você está falando sobre ela para que não apareça em seu screencast.

Mensagem de confirmação em uma janela de terminal que o ffmpeg fechou normalmente

Para parar a gravação, digite Ctrl + C na janela do terminal. Se tudo correr bem, você verá uma mensagem de confirmação ffmpeginformando que está saindo normalmente.

Não colocamos um caminho para o nome do arquivo de saída no ffmpeg comando, então ele será criado no diretório de onde ffmpegfoi iniciado. Neste exemplo, esse era nosso diretório inicial.

arquivo output.mkv criado no diretório inicial

Convertendo arquivos de vídeo com ffmpeg

Observamos anteriormente que o formato de vídeo preferido para upload para o YouTube é MPEG-4. Podemos converter facilmente o arquivo “.mkv” em um arquivo “.mp4” usando ffmpeg. Dizemos “converter”, mas, na verdade, estamos criando um novo arquivo. Seu arquivo original não foi alterado.

O comando é simples. Dizemos ffmpegpara usar o arquivo original como entrada, usando a -iopção (entrada). A extensão do arquivo de saída informa ffmpego tipo de arquivo a ser criado.

saída ffmpeg -i, saída mkv.mp4

saída ffmpeg -i, saída mkv.mp4 em uma janela de terminal

Um novo arquivo é criado com uma extensão de arquivo “.mp4”.

Um arquivo mp4 criado por ffmpeg, no diretório inicial

Para converter nosso screencast que foi gravado com o Ctrl+Shift+Alt+Rmétodo para o formato de vídeo MPEG-4, use este comando:

ffmpwg -i "Screencast de 11-02-19 10: 47: 05.webm" output.mp4

Capaz, mas amigável: use OBS Studio

Se você estiver procurando por algo que tenha mais recursos do que recordMyDesktop e seja mais fácil de dirigir ffmpeg, o Open Broadcaster Software Studio (OBS Studio) preenche todas as caixas.

Instale o OBS Studio no Ubuntu com este comando:

sudo apt-get install obs-studio

sudo apt-get install obs-studio em uma janela de terminal

Instale o OBS Studio no Fedora com este comando:

sudo dnf install obs-studio

sudo dnf instalar obs-studio em uma janela de terminal

Instale o OBS Studio no Manjaro com este comando:

sudo pacman -Sy obs-studio

sudo pacman -Sy obs-studio em uma janela de terminal

Como usar fontes e cenas no OBS Studio

OBS Studio possui uma grande área de trabalho e uma coleção de painéis ao longo da parte inferior do aplicativo.

Recomendado:  O que é um cabo Ethernet?

Janela principal do OBS studio

Por onde você começa?

Para colocar o software à prova, eu precisava de uma meta, algum ponto final que pudesse tentar atingir. Pareceu sensato assistir a um bom screencast e depois tentar replicar sua produção. O screencast que usei como modelo mostrou uma área de trabalho com vários aplicativos abertos. Havia uma pequena janela mostrando a visão do apresentador. Ocasionalmente, a exibição foi alterada para mostrar uma visão ampliada de uma única janela. Isso permitiu que um determinado detalhe fosse discutido. Uma narração forneceu a narrativa.

Tudo isso foi surpreendentemente fácil de replicar no OBS Studio, devido ao seu conceito de cenas e fontes . Uma fonte em OBS é algo que produz som ou vídeo. Sua área de trabalho, uma janela na área de trabalho, uma webcam, uma fonte de áudio de saída e uma fonte de áudio de entrada, como um microfone, são todas fontes válidas.

Uma coleção de fontes pode ser combinada em uma cena. Várias cenas podem ser criadas contendo diferentes combinações de fontes. O salto entre as cenas é realizado com um único clique do mouse.

Para criar uma cena, clique com o botão direito no painel “Cenas” e clique em “Adicionar” no menu de contexto. Digite um nome para a cena na caixa de diálogo “Adicionar cena” e clique no botão “OK”.

OBS Adicionar janela de diálogo de cenas

As cenas que você cria são listadas no painel “Cenas”.

Painel de cenas OBS

Criamos duas cenas, uma para a visualização composta da área de trabalho e da webcam e outra para a visualização ampliada da janela do terminal. Precisamos adicionar algumas fontes a essas cenas. Usaremos a cena “Zoom na janela do terminal”. Para adicionar fontes a uma cena, selecione-a no painel “Cenas” e clique com o botão direito no painel “Fontes”. Clique em “Adicionar” no menu de contexto.

OBS adicionar menu de fontes

O menu permite adicionar imagens, entradas e saídas de áudio, janelas de aplicativos, fontes de vídeo e outros elementos que você deseja incluir no screencast. Vamos capturar uma janela. Clique na opção de menu “Captura de janela (Xcomposite)”.

Na caixa de diálogo “Criar / Selecionar fonte”, crie um nome para a fonte e clique no botão “OK”.

OBS criar e selecionar caixa de diálogo de origem para uma janela

Na caixa de diálogo “Propriedades para captura de janela”, use o menu suspenso “Janela” para selecionar a janela que deseja adicionar à cena e clique no botão “OK”.

Caixa de diálogo de propriedades de origem do OBS para uma janela

Vamos repetir isso e adicionar uma fonte para o microfone. Clique com o botão direito no painel “Fontes” e clique em “Adicionar” no menu de contexto. A máquina de teste usada para pesquisar este artigo usou o PulseAudio . Se você estivesse usando um esquema diferente, como Advanced Linux Sound Architecture (ALSA), você selecionaria opções diferentes. Escolhemos “Audio Input Capture (PulseAudio)” no menu.

Na caixa de diálogo “Criar / Selecionar fonte”, dê um nome à fonte e clique no botão “OK”.

OBS cria e seleciona o diálogo de origem para um microfone

Na caixa de diálogo “Propriedades para ‘Captura de entrada de áudio (Áudio de pulso)’”, use o menu suspenso “Dispositivo” para escolher o dispositivo de som ao qual seu microfone está conectado. Clique no botão “OK”.

Caixa de diálogo de seleção de hardware OBS para fonte de som

Seu painel “Fontes” agora deve ter duas fontes nele, para a cena atual.

Painel de fontes de OBS com duas fontes configuradas

Há muitos ajustes finos que você pode aplicar às suas fontes. Por exemplo, no painel “Audio Mixer”, clicar com o botão direito no ícone de configurações do microfone abre um menu de contexto.

Painel de mixagem de áudio OBS

Selecionar “Filtros” exibe a caixa de diálogo “Filtros para ‘Microfone’”.

Filtros OBS para diálogo de microfone

Para adicionar um filtro, clique com o botão direito no painel esquerdo e selecione “Adicionar” no menu de contexto. Cada filtro possui propriedades que podem ser ajustadas.

Filtros OBS para caixa de diálogo de microfone adicionando um filtro

Por tentativa e erro, decidimos por uma seleção de filtros e configurações que funcionaram bem com o microfone de teste. Conseguimos um bom equilíbrio entre clareza e volume e uma redução no ruído de fundo.

Criar uma segunda cena foi tão fácil. O desktop que estávamos gravando estava rodando em uma máquina virtual. Isso foi facilmente adicionado à sua cena adicionando na janela que toda a máquina virtual estava sendo executada. A webcam foi adicionada como uma fonte de vídeo e arrastada e dimensionada para ficar no canto da tela. Esta é a visão que o público receberia:

Visualização composta de screencast da OBS mostrando desktop com janela embutida mostrando feed de webcam

Mover-se entre as duas cenas é tão simples quanto clicar no nome da cena no painel “Cenas”. A cena do terminal ampliada deu uma visão em tela cheia do comando Top em uma janela de terminal.

Embora possa fazer isso, OBS Studio desaconselha a gravação no formato MPEG-4. Se algo der errado, você poderá perder seu arquivo. Em vez disso, eles aconselham você a gravar em FLV ou MKV .

Se você precisar entregar seu screencast em um formato de vídeo diferente, o OBS Studio pode fazer as conversões para você ou, claro, você pode usar ffmpeg.

Luzes, câmera, ação

Você pode nunca chegar a Hollywood, mas se precisar entregar um screencast bem produzido, o Linux tem todas as ferramentas de que você precisa.