Turn your phone into a PC webcam — over USB or WiFi.
🇬🇧 English · 🇹🇷 Türkçe · 🇩🇪 Deutsch · 🇫🇷 Français · 🇵🇹 Português · 🇪🇸 Español · 🇦🇿 Azərbaycan · 🇨🇳 中文 · 🇯🇵 日本語 · 🇮🇳 हिन्दी
FlexCam streams your Android phone's camera to your PC and exposes it as a virtual webcam, so any app (Zoom, Teams, Discord, your browser, OBS) can pick it as a camera. It works over USB (via ADB) and WiFi, and switches between them automatically if one drops.
- Hybrid USB + WiFi with automatic failover
- Auto-connects when your phone is ready — no manual steps
- Live preview on both phone and PC
- Front / back camera switch, auto portrait/landscape
- Keeps streaming with the screen off
- WiFi access code — strangers on your network can't view the stream
- 10 languages, dark UI, tray support
- Runs fully on your device — no data ever leaves your computer
FlexCam needs a virtual camera on the PC. You have two options:
- Bundled driver (no OBS needed): on first run, if no virtual camera is found, click "Install virtual camera" in the app. It registers a small open-source driver (Unity Capture, MIT) once, with a one-time admin prompt.
- OBS Studio: if you already have OBS, FlexCam uses its Virtual Camera automatically.
- Phone: install
FlexCam.apkand open the app. - PC: unzip FlexCam-Windows.zip and run
FlexCam.exe.- First run: if prompted, click "Install virtual camera" (one-time).
- It auto-connects over USB. For WiFi, type the phone's IP and the access code shown in the app.
- In your video app, pick the camera "OBS Virtual Camera" (or "Unity Video Capture" if you used the bundled driver).
USB needs USB debugging enabled (Developer Options). WiFi needs no cable.
Android (APK):
cd android
gradlew assembleDebug
Requires JDK 17.
PC (desktop app):
cd pc
python -m venv .venv
.venv\Scripts\python -m pip install -r requirements.txt
.venv\Scripts\python webgui.py
Package a standalone .exe with PyInstaller (onedir):
.venv\Scripts\python -m PyInstaller --noconfirm --onedir --windowed --name FlexCam ^
--add-data "web;web" --add-data "flexcam-logo.png;." --add-data "FlexCam.apk;." ^
--add-data "adb;adb" --add-data "virtualcam;virtualcam" ^
--collect-all pyvirtualcam --collect-all pystray --collect-all webview ^
--collect-all pythonnet --collect-all clr_loader --collect-all pypresence webgui.py
- Android: Kotlin, CameraX, an MJPEG server on port
8474. - PC: Python, pywebview UI,
pyvirtualcam→ OBS or Unity Capture. - Transport: raw TCP over
adb forward(USB) or the phone's IP (WiFi).
MIT — see LICENSE.