Essa é uma revisão anterior do documento!
Tabela de conteúdos
No Windows
Existem muitas opções de softwares para gravação de vídeos da tela e que servem para a criação de um tutorial.
O CamStudio é um conhecido software livre destinado a este propósito.
No Linux
Usando ffmpeg para gravar a tela
ffmpeg -f x11grab -s 1920x1080 -r 30 -i :0.0 -q:v 2 meuVideo.avi
Você pode mudar algumas coisas aí. A resolução (1920×1080) a qualidade do vídeo (2 a 31, sendo 2 a melhor) ou o formato do vídeo, bastando alterar a extensão. Aqui não funcionou bem com mp4, que eu preferiria. Há também inúmeras outras opções do ffmpeg que podem ser usadas. Esse comando não grava o áudio, pra isso em geral eu uso o Audacity separadamente, mas também é possível gravar o áudio direto.
Usando audacity ou o próprio ffmpeg para o áudio
Legendas direto na tela
Usando esses scripts é possível já colocar legenda na tela pra gravação ao vivo.
É necessário configurar um atalho de teclado que ainda não esteja sendo usado pelo seu gerenciador de janelas (Window Manager). No meu caso, por exemplo, usei o XFCE e configurei o atalho Ctrl+Shift+U para chamar o primeiro script. Ele vai passar a informação ao segundo script para que seja mostrada a próxima legenda.
É necessário instalar a ferramenta “osd_cat”. No meu linux aqui ela vem com o pacote xosd-bin.
Primeiro script (a ser associado ao atalho de teclado do WM):
#!/bin/sh # Script que atua junto com o "mostra_legendas.sh" # Deve ser mapeado junto a um atalho de teclado do gerenciador de janelas. # Por exemplo, no XFCE va na configuracao de teclado e associe um atalho # a este comando. Toda vez que o atalho for acionado a proxima legenda aparece. echo > /tmp/mostra_legenda_pipe
Segundo script, a ser executado chamando o arquivo txt com as legendas em até 2 idiomas:
#!/bin/bash
# Script pra apresentar legendas na tela durante gravacao de video
# Pega um arquivo texto, opcionalmente com 2 idiomas, e mostra cada um
# num canto da tela.
# todo:
# - testar mais idiomas: pt, en, fr, es
# - tratar tamanho para passar pra proxima linha
# - mapear atalho de teclado pra passar pra proxima
# Configuracoes
# separador de idiomas
s="xxx"
# tempo que as legendas ficam na tela (em segundos)
d=4
# tamanho da fonte a ser usada (achei 80 bom para fullHD)
t=80
# tamanho da borda da legenda
b=3
# cor da legenda (em ingles, teste ao mudar)
c="yellow"
# cor da borda da legenda (em ingles, teste ao mudar)
cb="black"
trap "rm -f /tmp/mostra_legenda_pipe ; exit" 0 1 2 3 15
if [ "$1" = "" ]; then
echo
echo "Uso: $0 <arquivo_legendas>"
echo
echo "Separacao de idiomas com $s"
echo "Uma legenda (varios idiomas) por linha"
echo
exit
fi
readarray arq < $1
tam=$(wc -l $1 | cut -d\ -f 1)
# calculando posicao da linha de baixo
offset=$(expr 5 \* $t)
i=0
rm -f /tmp/mostra_legenda_pipe
mkfifo /tmp/mostra_legenda_pipe
while [ $i -lt $tam ]; do
# pega texto(s)
t1="$(echo ${arq[$i]} | awk -F"$s" '{printf"%s",$1}')"
t2="$(echo ${arq[$i]} | awk -F"$s" '{printf"%s",$2}')"
# coloca na tela
(echo "$t2" | osd_cat -A center -d $d -o 10 -f -bitstream-*-*-*-*-*-$t-*-*-*-*-*-iso8859-* -c $c -O $b -u $cb) &
echo "$t1" | osd_cat -A center -p bottom -d $d -o -$offset -f -bitstream-*-*-*-*-*-$t-*-*-*-*-*-iso8859-* -c $c -O $b -u $cb
(( i++ ))
# o "if" eh para pular a ultima espera depois de mostrar a ultima linha
if [ $i -lt $tam ]; then
cat /tmp/mostra_legenda_pipe > /dev/null
fi
done
rm -f /tmp/mostra_legenda_pipe
Instruções completas tomando como exemplo um Linux com XFCE:
- Instale o aplicativo xosd-bin
- Pode ser pela linha de comandos
- Ou via instalador gráfico
- Salve o primeiro script num arquivo texto
- Use seu editor preferido
- Torne o arquivo executável
- Abra as configurações de teclado do XFCE
- Associe o script à sua sequência de teclas
- Nota: use uma sequência ainda não utilizada
- Salve o segundo script em outro arquivo
- Note que várias coisas podem ser configuradas
- Torne o arquivo executável
- Pronto, está tudo certo
- É só criar um arquivo com legendas
- Separe com “|” se quiser 2 legendas
- Aqui fiz uma em PT_BR outra em EN
- Se quiser apenas uma, não use separador
- Pra usar “|” na legenda reconfigure o separador
- Pode ser mais de um caracter, por exemplo “XXX”
- É isso aí, bons tutoriais!
Veja o tutorial de uso dos scripts em vídeo feito usando ele e os passos descritos acima!
