Hay muchas soluciones de screencasting para los usuarios de Linux para elegir hoy en día y más herramientas surgen cada día para cubrir esta necesidad especial. Aunque muchos sufren de problemas de rendimiento, especialmente cuando se utiliza para capturar la acción en el juego, hay muchas buenas piezas de software como el simple de usar y versátil Simple Screen Recorder (http://www.maartenbaert.be/simplescreenrecorder/)
Las herramientas de la interfaz de usuario son agradables, pero las cosas siempre pueden ser mejores cuando se utiliza el terminal. Esto aumentaría el rendimiento aún más y te llevaría a una comprensión más profunda de lo que le estás pidiendo al sistema. Es fácil y bastante sencillo así que vamos a empezar.
Instalación de FFmpeg
Para capturar tu escritorio necesitarás el popular conjunto de librerías FFmpeg instalado en tu sistema. Para ello abra el gestor de paquetes de su distribución y busque el paquete «ffmpeg». Los usuarios de Ubuntu pueden utilizar los siguientes comandos en un terminal:
sudo apt-get install ffmpeg
y luego
sudo apt-get update
Grabar su primera sesión
Después de eso ya está listo para empezar. Lo que necesitas es determinar algunos parámetros que servirán de guía para ffmpeg. Estos parámetros incluyen el tamaño del vídeo, el tipo de archivo exportado, la calidad, la velocidad de fotogramas y la captura de sonido. El comando va así:
ffmpeg -video_size (desired resolution) -framerate (number) -f x11grab i 0.0 (start from the point 0.0) newfilename.mp4
Así que si quiero capturar un vídeo que representa una caja en el centro de mi pantalla y tomar un archivo avi como salida pondría algo como 500×500 después del -video_size y i: 0.0+300,300 que significa poner la esquina superior izquierda de la caja de captura en x=300 y y=300 en mi pantalla. Para el avi simplemente pondrías filename.avi al final del comando. Tan simple como eso 🙂
Pulsando el botón ‘q’ se detendrá la captura y se guardará el archivo.
¿Ahora qué pasa si quieres que se capture también el sonido? Eso es fácil usando ALSA con FFmpeg. Todo lo que necesitas hacer es simplemente añadir esta línea: ‘-f alsa -ac 2 -i puls’ al comando anterior y antes del newfilename que está al final. Esto añadirá sonido a tu captura y puedes usar los siguientes parámetros para opciones más avanzadas relacionadas con el sonido: -ac: Canales, -ar: Frecuencia de muestreo de audio, -ab: Audio bitrate
Para aquellos que quieran hacer esto para jugar es mejor que primero capturen el video y luego lo codifiquen en lugar de hacer ambas cosas al mismo tiempo, lo cual es más agotador para el sistema. Para mejorar la situación puedes añadir el parámetro -vcodec a tu comando seguido de un códec soportado y luego -preset ultrafast. Aquí hay una lista de los códecs de vídeo y audio soportados (https://www.ffmpeg.org/general.html#Video-Codecs)
Otras opciones de x11grab que es lo que nos permite capturar una región de nuestra pantalla x11 incluyen los argumentos ‘-follow_mouse’ y ‘show_region’. El follow mouse guía el área de captura según los movimientos del ratón y puede ser centrado o con un área de tollerancia de píxeles. Se escribe así en nuestro comando: ‘-follow_mouse centered’ o ‘-follow_mouse 500’ (el cursor del ratón puede moverse dentro de un área de 500 píxeles antes de que se mueva el contexto).
El show_region muestra qué parte de toda la pantalla es realmente capturada por ffmpeg. Esto puede ser útil en algunos casos y se activa añadiendo lo siguiente en nuestro comando: -show_region 1