[OBS] Plugin para una cámara virtual en Linux

Sacado de… Using your OBS output as input for your webcam in Debian

Comenzamos instalando v4l2loopback-dkms:

# aptitude install v4l2loopback-dkms

Necesitamos configurar el dispositivo de cámara virtual. Utilizaremos por ejemplo /dev/video10 para no colisionar con ningún dispositivo existente:

# modprobe v4l2loopback devices=1 video_nr=10 card_label="OBS Cam" exclusive_caps=1

A continuación instalaremos obs-v4l2sink plugin, pero primero:

# aptitude install git cmake libobs-dev

Después de experimentar con ffmpeg y altas latencias, cambiamos a este complemento OBS para escribir directamente en el dispositivo de video v4l2. Necesita algo de compilación, así que compilemos e instalemos el complemento:

# aptitude install qtbase5-dev
# git clone --recursive https://github.com/obsproject/obs-studio.git
# git clone https://github.com/CatxFish/obs-v4l2sink.git
# cd obs-v4l2sink
# mkdir build && cd build
# cmake -DLIBOBS_INCLUDE_DIR="../../obs-studio/libobs" -DCMAKE_INSTALL_PREFIX=/usr ..
# make -j4
# make install

Lamentablemente, parece que el archivo del complemento termina en una carpeta incorrecta /usr/lib/obs-plugins/, y se debe copiar en la correcta:

# cp /usr/lib/obs-plugins/v4l2sink.so /usr/lib/x86_64-linux-gnu/obs-plugins/

Ahora, si ejecutamos OBS, en Herramientas habrá una nueva opción: Salida de video V4L2. Debemos elegir la ruta al dispositivo V4L2, recordemos el parámetro nr cuando se activó el módulo v4l2loopback.

Uso normal

Este proceso tiene una pega que esperemos que, tal como sugiere Jorge Gómez, se resuelva pronto.

Al encender el equipo necesitamos hacer en una consola como administrador:

# modprobe v4l2loopback devices=1 video_nr=10 card_label="OBS Cam" exclusive_caps=1

Luego desde el OBS seleccionamos en Herramientas → V4L2 video output → /dev/video10 → Start

Y ya tenemos una cámara virtual llamada OBS Cam para usar por ejemplo en Webex.