From e7a35e7d2b47f1c7cb4a41a5d55c9e95e9cae393 Mon Sep 17 00:00:00 2001
From: Florent Gluck <florent.gluck@hesge.ch>
Date: Thu, 12 Nov 2020 20:12:20 +0100
Subject: [PATCH] Added a section on OBS Studio: "HOWTO setup OBS Studio to
 expose its output as a virtual camera"

---
 obs-studio/README.md | 43 +++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 43 insertions(+)
 create mode 100644 obs-studio/README.md

diff --git a/obs-studio/README.md b/obs-studio/README.md
new file mode 100644
index 0000000..adae8ca
--- /dev/null
+++ b/obs-studio/README.md
@@ -0,0 +1,43 @@
+# HOWTO setup OBS Studio to expose its output as a virtual camera 
+
+This setup was successfully conducted on a Linux Xubuntu 20.04.1 system.
+
+Install the `v4l2loopback` Linux kernel module:
+```
+sudo apt-get install v4l2loopback-dkms
+```
+
+Download and install the `obs-v4l2sink` OBS plugin for Debian:
+```
+wget https://github.com/CatxFish/obs-v4l2sink/releases/download/0.1.0/obs-v4l2sink.deb
+sudo dpkg -i obs-v4l2sink.deb
+```
+
+Fix the location of the plugin since the package doesn't install it in the right directory:
+```
+sudo ln -s /usr/lib/obs-plugins/v4l2sink.so /usr/lib/x86_64-linux-gnu/obs-plugins/v4l2sink.so
+```
+
+Load the `v4l2loopback` kernel module which should create a new device `/dev/videoX` (where X is a number identifying the v4l2loopback camera source):
+```
+sudo modprobe v4l2loopback exclusive_caps=1
+```
+
+To identify which of the `/dev/videoX` devices is the v4l2loopback camera, use:
+```
+v4l2-ctl --list-devices
+```
+
+The v4l2loopback camera should be identified as:
+```
+Dummy video device (0x0000) (platform:v4l2loopback-000)
+```
+
+In OBS-Studio, the new obs-v4l2sink allows one to expose the "Program" output as a new virtual camera.
+To activate it:
+
+1. Click on "Tools -> v4l2sink"
+1. Specify the Device Path of the v4l2loopback device as identified in the previous step above
+1. Click on "Start"
+
+You should now be able to use this virtual camera (detected by apps as "Dummy video device") in any application handling video sources (Jitsi, BigBlueButton, Teams, Discord, Zoom, etc.).
\ No newline at end of file
-- 
GitLab