Captura y graba, hardware dedicado
Buscando en un cajón aparecieron dos capturadoras de video chinas y decidir darlas utilidad. Normalmente la mayoría de la gente las utiliza con OBS como una fuente mas de entrada para grabar o hacer directos. A dia de hoy tengo la necesidad de algún invento, para el rack que estoy montando para mi laboratorio, que me de imagen de los servidores eventualmente sin llegar a tener nada fijo. Algo portable, barato y que no me suponga una gran inversión en un kvm por ejemplo, ni tampoco quería un monitor de 7 pulgadas o algo asi.
Pues bien tengo dos capturadoras de video, voy a utilizar la pequeña por eso de que sea una solución portable, asi me la podre llevar junto con el portátil si fuera necesario. Con la capuradora viene un pequeño manual. Esta es la pagina donde tiene una foto y las especificaciones:
¿ Que necesitamos ?
Hardware
- Puerto USB, en las especificaciones no indica versión.
- Cables varios ( HDMI, Dp, etc)
Software Yo personalmente utilizare Debian, con el siguiente software instalado:
Verificación Lo primero de todo vamos a ver que fuentes de video tenemos disponibles para actuar sobre ellas, desde un terminal:
4l2-ctl --list-devicesC505 HD Webcam (usb-0000:00:1a.0-1.3):
/dev/video0
/dev/video1
/dev/media0
USB3 Video: USB3 Video (usb-0000:06:00.0-2):
/dev/video2
/dev/video3
/dev/media1- Webcam /dev/video0
- Capturadora /dev/video2
Ahora necesitamos saber que parámetros admite nuestro hardware para posteriormente actuar sobre el correctamente. Desde nuestro terminal:
v4l2-ctl --list-formats-ext -d /dev/video0Video
Habitualmente la capturadora de video se utiliza como fuente en programas como OBS, pero esta vez vamos ha ver un caso practico que puede sernos util. Tenemos un Raspberry Pi sin monitor, estamos en un CPD no tenemos monitor para conectar a un servidor o en el rack del laboratorio de casa no tenemos un KVM, etc. Pues bien la solución es simple, desde el terminal:
vlc v4l2:///dev/video2 --v4l2-width=1920 --v4l2-height=1080 --width=800 --height=600"Esto nos da la visualización de la salida de video de la Raspberry Pi conectada a nuestra capturadora, si le conectamos por usb un teclado ya podemos interactuar en la consola. En el siguiente gif animado se ve el proceso completo:
Terminal superior izquierda: Lanzo el comando que abre vlc conectándose a la capturadora la cual tiene conectado un cable HDMI a la salida de video de la Raspberry Pi. Terminal inferior izquierda: Conectada mediante ssh a la Raspberry Pi, la reinicia y se ve el reinicio en le vlc. Ventana de VLC: a la derecha de la pantalla, al pulsar sobre ella Ctrl+q se sale y la consola superior izquierda se libera de nuevo.
🔍 Parámetros del comando
- –v4l2-width=1920 –v4l2-height=1080 → le indica a VLC la resolución desde el dispositivo de captura.
- –width=800 –height=600 → tamaño de la ventana que se abre (no afecta la resolución del video).
🔹 Opciones adicionales:
- –no-embedded-video → abre la ventana como independiente (fuera del interfaz de VLC).
- –qt-fullscreen → abre VLC en pantalla completa.
- –zoom=2 → aumenta el tamaño de la ventana sin cambiar la resolución del video.
El gif esta grabado con Peek, para ver la demostración, pero realizar la grabación directamente desde nuestro tertminal del siguiente modo:
ffmpeg -f v4l2 -framerate 30 -video_size 1280x720 -input_format yuyv422 -i /dev/video2 -c:v libx264 -preset ultrafast -pix_fmt yuv420p captura_$(date +'%Y-%m-%d_%H-%M-%S').mp4🔍 Parámetros del comando
- -f v4l2 → usa el driver de cámaras de Linux.
- -framerate 30 → fuerza 30 FPS (puedes bajarlo si tu capturadora no los soporta).
- -video_size 1280x720 → resolución de captura.
- -input_format yuyv422 → formato más común de señal HDMI cruda.
- /dev/video2 → el dispositivo de tu capturadora (ajusta si es otro).
- -c:v libx264 -preset ultrafast → codifica rápido sin comprimir demasiado.
- -pix_fmt yuv420p → formato estándar compatible con la mayoría de reproductores.
- captura_$(date +’%Y-%m-%d_%H-%M-%S’).mp4 → guarda el archivo con fecha/hora.
👉 Cuando quieras detener la grabación, presiona Ctrl + C.
💡 Tip Te puedes crear un alias en tu ‘.zshrc’ o ‘.bashrc’ con algo como esto:
alias monitor="vlc v4l2:///dev/video2 --v4l2-width=1920 --v4l2-height=1080 --width=800 --height=600"
Foto
Evidentemente a parte de capturar video podemos capturar fotos o fotogramas, es es tambien muy util si por ejemplo queremos sacar una foto con nuestra Webcam o una captura de pantalla que esste en nuestra capturadora, una bios de un sistema para luego utilizarla en un documento.
ffmpeg -f v4l2 -video_size 1280x960 -i /dev/video0 -frames:v 1 "captura_$(date +%d-%m-%Y_%H%M%S).png"🔍 Parámetros del comando
- -f v4l2 → usa el driver de cámaras de Linux.
- -video_size 1280x960 → resolución de captura.
- -i /dev/video0 → la fuente de video.
- -frames:v 1 → Esto captura solo 1 frame (una sola imagen, una foto).
- :v significa que aplicamos la opción solo al stream de video, no al audio.
- “captura_$(date +%d-%m-%Y_%H%M%S).png” → Este es el fichero de salida.
- .png → indica guardar la imagen en formato PNG.
✅ Resumen
Toma una foto, un frame, de la capturadora HDMI a 1280x960 píxeles y la guarda en el directorio actual con un nombre único basado en la fecha y hora.
Te puedes crear un alias en tu ‘.zshrc’ o ‘.bashrc’ con algo como esto:
alias fotoweb="ffmpeg -f v4l2 -video_size 1280x960 -i /dev/video0 -frames:v 1 "captura_$(date +%d-%m-%Y_%H%M%S).png""