Skip to content

Latest commit

 

History

History
77 lines (58 loc) · 3.59 KB

File metadata and controls

77 lines (58 loc) · 3.59 KB

vcam User Guide

Welcome to vcam! This guide provides comprehensive instructions to set up, configure, and use your Android phone as a high-performance virtual camera on Linux.


System Requirements

On Your Android Phone

  • Android Version: Android 8.0 (API Level 26) or higher.
  • USB Debugging: Required for USB connection mode (lowest latency).
    1. Go to Settings > About Phone.
    2. Tap Build Number 7 times to unlock Developer Options.
    3. Navigate to Settings > System > Developer Options and enable USB Debugging.
  • Permissions: Grant Camera permissions when launching the app.

On Your Linux Computer

  • PipeWire: Running on modern Linux distributions (GNOME, KDE Plasma, Hyprland, etc.).
  • v4l2loopback (Recommended for Chrome / Google Meet / Zoom / Discord):
    • Install the kernel module package for your distribution:
      • Ubuntu / Debian: sudo apt install v4l2loopback-dkms
      • Arch Linux: sudo pacman -S v4l2loopback-dkms
      • Fedora: sudo dnf install kmod-v4l2loopback
    • Load the module with recommended settings:
      sudo modprobe v4l2loopback exclusive_caps=1 card_label=vcam video_nr=10
    • Tip: Make it persistent by adding v4l2loopback to /etc/modules-load.d/vcam.conf and options options v4l2loopback exclusive_caps=1 card_label=vcam video_nr=10 to /etc/modprobe.d/vcam.conf.

Connection Modes

Mode 1: USB Connection (Recommended)

USB mode provides maximum stability and lowest latency (~50–100ms) by utilizing automatic ADB port forwarding.

  1. Connect your phone to your computer using a USB cable.
  2. Open the vcam app on your phone.
  3. Select your desired profile (e.g., Low 720p) and tap Start Stream.
  4. Open the vcam-desktop app on Linux.
  5. Select USB mode and click Connect.
  6. Click Virtual Cam to activate the virtual camera for web applications.

Mode 2: Wi-Fi LAN Connection

Wi-Fi mode allows wireless streaming over your local network.

  1. Ensure both your phone and computer are connected to the same Wi-Fi network.
  2. Open the vcam app on your phone and tap Start Stream.
  3. Note the IP address displayed under the Wi-Fi section (e.g., 192.168.1.50:9077).
  4. Open vcam-desktop on your computer.
  5. Select Wi-Fi mode, enter your phone's IP address and port into the Host field.
  6. Click Connect, then click Virtual Cam.

Features & Settings

  • Streaming Profiles:
    • Low (720p): 1280x720 @ ~2 Mbps — Default setting, optimized for ultra-low latency and minimal resource usage.
    • Balanced (1080p): 1920x1080 @ ~5 Mbps — High-definition video quality.
    • Ultra-low (480p): 640x480 @ ~800 kbps — Lightweight setting for low-spec devices or weak network connections.
  • Camera Flip: Toggle between front and rear cameras seamlessly from the desktop UI.
  • Virtual Camera Activation:
    • Automatically creates a PipeWire source node (vcam) and a V4L2 device node (/dev/video10).
    • In video conferencing apps (Google Meet, Zoom, Teams, Discord), select vcam as your camera input.

Troubleshooting

Issue Solution
Device not recognized in USB mode Ensure USB Debugging is enabled and authorize the computer prompt on your phone screen when plugged in.
Virtual camera not visible in Chrome / Zoom Ensure v4l2loopback is loaded with exclusive_caps=1. Run sudo modprobe v4l2loopback exclusive_caps=1 card_label=vcam video_nr=10.
High latency over Wi-Fi Switch to a 5GHz Wi-Fi band or use USB mode for the best performance.