Esta pagina se ve mejor con JavaScript habilitado

Grabar pantalla en FreeBSD

 ·  🎃 kr0m

En FreeBSD disponemos de distintas herramientas de captura de audio/video con sus pros y sus contras, según nuestras necesidades optaremos por una u otra:


Simple Screen Recorder

La herramienta mas sencilla de utilizar para grabar la pantalla es simplescreenrecorder, esta nos permite grabar la pantalla entera, un área de esta o una ventana de una aplicación en particular.

pkg install simplescreenrecorder

El problema de simplescreenrecorder es que solo permite grabar de dispositivos pulseaudio y jack, yo no he conseguido que funcione por ninguno de los dos sistemas, por lo tanto la utilizo cuando quiero grabar solo el video.


Virtual OSS

Parece ser que OSS por defecto no permite que la salida de audio sea la entrada de otra aplicación, para poder hacer eso tendremos que crear un dispositivo nuevo mediante virtual_oss.

pkg install virtual_oss

Cargamos el módulo cuse:

kldload cuse
sysrc cuse_load=YES

Permitimos que nuestro usuario regular pueda ejecutar virtual_oss como root:

vi /usr/local/etc/sudoers.d/kr0m

kr0m ALL=(ALL) NOPASSWD: /usr/local/sbin/virtual_oss

Duplicamos el dispositivo /dev/dsp4(salida de audio por defecto en mi sistema) en /dev/dsp.virtual_oss.

sudo virtual_oss -S -C 2 -c 2 -r 44100 -b 16 -s 1024 -f /dev/dsp4 -d dsp -w dsp.virtual_oss.wav -l dsp.virtual_oss -t /dev/dsp.virtual_oss.ctl

Ahora las aplicaciones que graben desde /dev/dsp.virtual_oss estarán grabando la salida de audio que escuchamos nosotros.


OBS

OBS: Open Broadcaster Software es uno de los softwares mas completos en cuanto a streaming y grabación de video, este nos permite añadir tanto fuentes de video como de audio, para poder grabar el audio previamente debemos crear el dispositivo mediante virtual_oss y añadirlo como se muestra a continuación.


FFMPEG

La ventaja de ffmpeg es que suele estar instalado en casi todos los equipos de escritorio pudiendo realizar grabaciones sin necesidad de añadir software adicional, para poder grabar el audio previamente debemos crear el dispositivo mediante virtual_oss.

Para iniciar una grabación es tan sencillo como ejecutar el siguiente comando:

sleep 3 && notify-send “Recording” && ffmpeg -f x11grab -thread_queue_size 1024 -s xdpyinfo | grep -i dimensions: | sed 's/[^0-9]*pixels.*(.*).*//' | sed 's/[^0-9x]*//' -r 25 -i :0.0 -f oss -thread_queue_size 1024 -i /dev/dsp.virtual_oss recording.mp4

Si te ha gustado el artículo puedes invitarme a un RedBull aquí