En caso de no disponer de una webcam podemos utilizar una cámara IP o un móvil instalando una app que sirva el vídeo de la cámara a través de RSTP. Vamos a ver que en Linux es muy sencillo.
Paso 1.- Posibilitando webcams virtuales
Lo primero que tenemos que hacer es crear unas «webcam virtuales» en nuestro equipo. En nuestro caso vamos a crear tres «webcams virtuales» que serán /dev/video10, /dev/video11 y /dev/video12. Aprovechamos también para instalar ya la aplicación ffmpeg para poder inyectar el vídeo de la cámara IP en una de las fake webcams:
sudo apt update sudo apt-get install v4l2loopback-dkms ffmpeg
Paso 2.- Creando las webcams virtuales.
Vamos a crear los tres dispositivos virtuales. Para ello, añadimos a las tres cámaras al fichero de configuración en /etc/modprobe.d/virtualcams.conf
. Nos creará los dispositivos /dev/video10, /dev/video11
y /dev/video12
. Le asignaremos también un nombre a cada cámara que serán virtual10, virtual11 y virtual12: (copia y pega en la línea de comandos las 4 líneas siguientes a la vez)
echo options v4l2loopback devices=3 video_nr=10,11,12 \ card_label="Virtual10","Virtual11","Virtual12" exclusive_caps=1,1,1 | sudo tee -a \ /etc/modprobe.d/virtualcams.conf
Hacemos que se creen al iniciar el ordenador:
echo v4l2loopback | sudo tee -a /etc/modules-load.d/virtualcams.conf
Recargamos el módulo del kernel que hace funcinar las cámaras virtuales:
sudo modprobe -r v4l2loopback sudo modprobe v4l2loopback
Paso 3.- Probándolo todo.
Inyectamos el vídeo mediante el siguiente comando. Tenemos que saber la dirección IP del servidor RTSP ya sea la cámara IP o la de nuestro dispositivo móvil, el puerto por el que escucha el servidor (normalmente el 554 en las cámaras IP) y el usuario y contraseña si lo hubiera.
ffmpeg -i rtsp://usuario:contraseña@DIR_IP:PUERTO -vf format=yuv420p -f v4l2 /dev/video10
Lo probamos con algún servicio online de videochat. Por ejemplo Jitsi meet.
Nota:
Para probar si podemos acceder al servidor rtsp podemos hacerlo con el mismo vlc mediante la orden:
vlc rtsp://usuario:contraseña@DIR_IP:PUERTO
Hola
No muestra imagen ni en skype ni el teams.
Sí lo hace en vlc y en jitsi meet.
¿Alguna idea?
Muchas gracias por el aporte.
Nacho