Cuando se trata de screencasting (grabar video de su escritorio), la mayoría de la gente pensará en un software de escritorio con una interfaz de usuario adecuada. Para Linux, hemos cubierto varias herramientas como Kazam, Screenr y Screentoaster. Lo que mucha gente no sabe es que también puede hacer screencast desde la línea de comandos, a través de FFMPEG. Es un comando configurable simple (y muy largo) que le permite grabar video de su escritorio.
Instalación de FFMPEG
FFMPEG están disponibles en la mayoría de los repositorios de distribución. Instálalo con el siguiente comando:
ubuntu
sudo apt-get install ffmpeg
Fedora
abrirSUSE
sudo zypper install ffmpeg
arco linux
¿No puede encontrarlo en los repositorios de sus distribuciones? Es posible que deba descargarlo directamente desde ffmpeg.org e instalarlo de esa manera.
Personalizando el comando
Antes de que pueda ocurrir la transmisión de pantalla, el comando debe personalizarse para satisfacer sus necesidades. El siguiente comando no tiene una resolución especificada, se proyectará en pantalla a 30 FPS y generará el archivo en 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
Encuentre la resolución nativa de su pantalla y reemplace la YxZ
con él (por ejemplo: 1920×1080). ¿No estás contento con solo 30 fotogramas por segundo? Cambio -r 30
a su FPS deseado.
Proyección de pantalla
Screencasting es tan simple como pegar el comando anterior (uno que hayas modificado para que se adapte a ti) en una terminal. Mientras se ejecuta el comando, podrá saber exactamente qué está haciendo FFMPEG. Notarás algo similar a la imagen de abajo.
Eso es básicamente todo. Con ese comando largo, estás haciendo screencasting. ¿Quieres detener la captura? Presiona la tecla «q» o cierra la ventana del terminal por completo. Imprimirá información sobre la grabación que acaba de terminar. Esta información es excelente ya que puede decirle todo lo que sucedió durante el proceso.
video:3245kB audio:6451kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 1.933424% [libx264 @ 0xc35d40] frame I:4 Avg QP: 0.00 size:311776 [libx264 @ 0xc35d40] frame P:985 Avg QP: 0.00 size: 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% skip:69.5% [libx264 @ 0xc35d40] coded 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
Cambio de entradas de audio FFMPEG
Como todas las aplicaciones, FFMPEG aprovecha Pulse Audio. Esto significa que puede ser manipulado. De forma predeterminada, todas las aplicaciones de grabación toman la entrada de sonido a través del dispositivo de sonido predeterminado. Si su computadora tiene un micrófono (o uno conectado), FFMPEG grabará automáticamente el sonido y lo agregará a su screencast. Si esto es algo que no desea, puede cambiarlo.
Instale el control de volumen de audio Pulse. Es una herramienta muy popular y, por lo tanto, se encuentra en los repositorios de distribución más populares. En Ubuntu (o distribuciones basadas en Ubuntu), puede instalarlo con el siguiente comando:
sudo apt-get install pavucontrol
Para otra distribución, solo tiene que buscar «pavucontrol» en su paquete, administrarlo e instalarlo. Una vez instalado, inicie un screencast FFMPEG y abra «Pulse Audio Volume Control». Dentro de la herramienta, haga clic en la pestaña de grabación.
En la pestaña de grabación, haga clic en el botón Estéreo analógico de audio integrado. Aparecerá un menú de selección.
En el menú, seleccione Monitor de audio estéreo analógico incorporado. Esto hará que FFMPEG grabe el sonido de su sistema en lugar del micrófono de su computadora. Este truco es genial si buscas grabar juegos o cualquier cosa que requiera audio.
Conclusión
FFMPEG es una herramienta asombrosa que puede hacer muchas, muchas cosas. Screencasting es solo una de sus habilidades. Pocas alternativas pueden incluso capturar imágenes de alta calidad y ofrecer un gran rendimiento. La línea de comandos es increíble porque con ella puedes ser tan preciso como quieras. Puede especificar lo que desea lograr y verlo aparecer ante sus ojos.