You start OBS Studio, click Start Virtual Camera, then open Zoom expecting to see your scene as a webcam. Instead, Zoom only lists your real camera. This is a very common OBS problem on Ubuntu 24.04, and it usually comes down to a missing video loopback driver or a permission problem with how Zoom was installed.
Quick Answer
Install the v4l2loopback driver with sudo apt install v4l2loopback-dkms, load it with sudo modprobe v4l2loopback devices=1 video_nr=10 card_label="OBS Cam" exclusive_caps=1, then start the virtual camera in OBS before you open Zoom. If Zoom is a Snap or Flatpak, reinstall it from the official .deb package, because sandboxed versions often cannot see the virtual device.
Why OBS Needs a Special Driver on Linux
On Windows and macOS, OBS can create a virtual webcam with built-in support. On Linux, OBS relies on a kernel module called v4l2loopback. Think of it as a fake webcam inside the system. OBS sends your scene into it, and Zoom, Teams, and Discord read from it like a real USB camera.
If that module is not installed, or installed but not loaded, OBS may show an error when you click Start Virtual Camera, or the button seems to work but no new camera appears anywhere. Ubuntu 24.04 does not always load this module after a reboot, which is why the problem can return even if it worked last week.
The other common cause is Zoom itself. Snap and Flatpak versions run in a sandbox for safety. That sandbox can block access to the virtual camera, even when OBS is working perfectly. If you are also setting up audio, our guide to fixing microphone not working on Ubuntu covers the matching checks for a clean call.
Step 1: Install the v4l2loopback Driver
Open the Terminal with Ctrl + Alt + T and work through these steps:
- Run
sudo apt updateand enter your password when asked. The password will not show as you type, which is normal. - Run
sudo apt install v4l2loopback-dkms v4l2loopback-utilsto install the driver and helper tools. - Wait for the install to finish. If you see a message about Secure Boot, note it, because Secure Boot can block unsigned modules on some machines.
The DKMS part is important. It rebuilds the module automatically when Ubuntu updates the kernel. Without DKMS, the virtual camera often breaks after a normal system update and you must reinstall it by hand.
Step 2: Load the Module With the Right Settings
Installing the driver is not enough. You also need to load it and give it a clear name so Zoom can find it.
- Run
sudo modprobe v4l2loopback devices=1 video_nr=10 card_label="OBS Cam" exclusive_caps=1 - Check it loaded with
ls /dev/video*. You should see a new device such as/dev/video10. - Run
v4l2-ctl --list-devicesif the utils package is installed. You should see OBS Cam listed.
The exclusive_caps=1 option matters for Zoom and browsers. Without it, some apps see the device but refuse to use it because they do not think it behaves like a real camera. The card_label gives it a friendly name so you are not guessing which entry is which in Zoom.
Make It Load Automatically on Every Boot
If you use the virtual camera often, make Ubuntu load it for you:
- Run
echo "v4l2loopback" | sudo tee /etc/modules-load.d/v4l2loopback.conf - Run
echo 'options v4l2loopback devices=1 video_nr=10 card_label="OBS Cam" exclusive_caps=1' | sudo tee /etc/modprobe.d/v4l2loopback.conf - Reboot once and check
ls /dev/video*again to confirm the device appears with no manual command.
Many users fix the problem once, reboot for an update, and then think OBS is broken again when the real issue is just that the module did not load.
Step 3: Test the Virtual Camera in OBS First
Before you blame Zoom, confirm OBS itself can start the virtual camera without errors.
- Open OBS and build a simple scene. Add your webcam, a window capture, or just a color source with text so you can recognize the image.
- Click Start Virtual Camera in the Controls panel. In newer OBS versions it sits near Start Streaming and Start Recording.
- Leave OBS open. The virtual camera only exists while OBS is running and the virtual camera is active.
- If OBS shows an error saying the output failed to start, go back to Steps 1 and 2. That error almost always means the module is missing or blocked.
A useful test is to open Cheese or a browser webcam test and select OBS Cam. If it works there but not in Zoom, the problem is with Zoom, not OBS. That distinction tells you where to focus next.
Step 4: Fix Zoom So It Can See the Virtual Camera
Order matters here. OBS must be running and the virtual camera already started before Zoom scans for cameras.
- Fully quit Zoom if it was open. Close the window and quit it from the top bar or system tray.
- Start OBS, click Start Virtual Camera, and confirm your scene looks right in the preview.
- Open Zoom, go to Settings, then Video, and open the Camera dropdown.
- Select OBS Cam or the label you set earlier. You should see your OBS scene instead of your raw webcam.
- If the preview is black, turn off HD temporarily and test again.
If Zoom Was Installed as a Snap or Flatpak
This is the hidden trap for many Ubuntu users. Snap and Flatpak Zoom builds run with limited device access. Even with camera permission granted, the virtual device may never appear.
The reliable fix is to remove the sandboxed version and install the official .deb package, following the official Zoom installation guide for Linux. In most cases the camera appears immediately after switching. If you must keep Flatpak, check its permissions in system settings and allow camera access, then restart both apps, but results vary.
Step 5: Check Secure Boot and Kernel Headers
On some laptops, Secure Boot stops v4l2loopback from loading because it is not signed by Ubuntu. The install succeeds but modprobe fails with an operation not permitted error.
The simpler home-user option is to turn off Secure Boot in your BIOS or UEFI settings, reboot, and load the module again. The advanced option is to sign the module during DKMS setup. If you are not comfortable with BIOS settings, ask someone you trust to help with that one reboot step.
Also make sure kernel headers are present with sudo apt install linux-headers-$(uname -r). Without matching headers, DKMS cannot build the module for your current kernel. Download OBS itself only from the official OBS Studio download page or the Ubuntu repository, because old builds from unofficial sources can have a broken virtual camera on Ubuntu 24.04.
Common Mistakes to Avoid
- Opening Zoom before OBS: Zoom scans for cameras at launch. If the virtual camera does not exist yet, it may not appear later. Always start OBS first.
- Installing but never loading the driver: The package alone does nothing until modprobe runs or you set up auto-load files.
- Forgetting exclusive_caps: Without it, Zoom, Chrome, and other apps ignore the device or show a black feed.
- Testing while another app holds the camera: Close Cheese, browsers, and other video apps so only OBS and Zoom compete for devices.
- Expecting it to survive a reboot without auto-load: If you skipped the config files in Step 2, load the module again after every restart.
Conclusion
When the OBS virtual camera does not appear in Zoom on Ubuntu 24.04, the fix is straightforward once you know the order. Install v4l2loopback, load it with a clear label and exclusive_caps enabled, start the virtual camera in OBS before opening Zoom, and use the official Zoom .deb instead of a sandboxed build. Add the auto-load files once, and the camera will be ready every time you boot. Test OBS on its own first, and you will quickly see whether the remaining problem is the driver or Zoom itself.
Frequently Asked Questions
Why does OBS show Start Virtual Camera but Zoom shows no new camera?
This usually means v4l2loopback is not loaded, or Zoom is a Snap or Flatpak build that cannot see the device. Load the module, restart OBS, start the virtual camera, then reopen Zoom. If it still fails, switch Zoom to the official .deb package.
Do I need to run modprobe after every reboot?
Only if you have not set up auto-loading. Create the files in /etc/modules-load.d and /etc/modprobe.d as shown in Step 2, and Ubuntu will load the module with your settings on every boot.
What should the virtual camera be called in Zoom settings?
It depends on the label you set. If you used card_label=”OBS Cam”, look for OBS Cam in the Camera dropdown. Without a label, it may appear as Dummy Video Device or a generic v4l2loopback name.
The virtual camera works in browsers but not in Zoom. What is different?
Zoom is stricter about the exclusive_caps setting than browsers. Reload the module with exclusive_caps=1, make sure OBS is running first, and check that Zoom is not a sandboxed install.
Can I use the virtual camera and record at the same time?
Yes. OBS can send the same scene to the virtual camera while you record or stream, as long as your computer is fast enough. Keep the scene simple for meetings and check CPU usage so audio stays in sync.


Leave a Reply