ffmpeg -f alsa -ac 2 -i pulse -f x11grab -r 15 -s 1600x900 -i :0.0 -acodec libvorbis -aq 0 -vcodec libtheora -qscale 4 -f ogg captura.ogg
ONDE:
"-f alsa -ac 2 -i pulse" --> fonte do áudio, para distribuições que usem o PulseAudio (Ubuntu, Fedora, Mandriva, openSUSE, ...); "-ac 2" define o número de canais.
"-f x11grab -r 15 -s 1600x900 -i :0.0" --> fonte do vídeo; a resolução precisa ser especificada. Caso seja menor que a resolução da tela, o ffmpeg capturará a resolução especificada a partir do canto superior esquerdo. "-r 15" define o frame rate a ser usado. Quando maior, melhor a fluidez do vídeo maior o tamanho do arquvo.
Se quiser capturar o áudio do sistema, ao invés do microfone/entrada de linha, em "Preferências de som" -> "Hardware" -> "Perfil", troque "Analog Stereo Duplex" por "Analog Stereo Output". Assim, qualquer som sendo tocado pelo sistema será gravado.
configurar_pulseaudio.ogg (300KB)
Por fim, é possível definir o deslocamento para capturar resoluções menores dentro da tela.
":0.0" pode ser expandido para ":0.0+X,Y", substituindo X e Y pelos deslocamentos horizontal e vertical, respectivamente, a partir do canto superior esquerdo da tela. O comando xwininfo é útil para obter dados (tamanho/posição) de janelas.
As demais opções do ffmpeg, "-acodec", "-vcodec" e "-f", você pode customizar a gosto.
Exemplo: Monitor do Sistema
ex_monitor_do_sistema.ogg (1MB)