uwucam
An open-source DroidCam replacement. Rust on the PC, minimal Kotlin + Rust on Android.
Built because the DroidCam OBS plugin broke against a newer ffmpeg ABI and the Android app hides its resolution setting somewhere nobody could find. So: doing it ourselves, in the open, GPLv3.
Download Source on Forgejo Build instructionsStatus
The v0.1 "walking skeleton" works end-to-end: camera → PC →
v4l2loopback → OBS (or anywhere else). Verified against real
hardware including surviving a USB cable unplug/replug or an app stop/restart
mid-stream — the connection recovers on its own, no relaunching anything.
Still early: see the
roadmap for what's next
(compressed video pipelines, WiFi transport).
What it does
- Turns your Android phone's camera into a Linux webcam via
v4l2loopback - Streams at whatever resolution your phone's camera actually supports — not stuck at 640x480
- Recovers on its own from a dropped cable or connection instead of needing a relaunch
- Linux + Android only for now; other platforms land when work on them actually starts
Get it
Prebuilt releases exist for the impatient, but building from source is still the recommended path at this stage. Full instructions are in the README; the short version:
cd pc && cargo build --release
cd android && ./gradlew assembleDebug
adb install -r android/app/build/outputs/apk/debug/app-debug.apk
./pc/target/release/uwucam-pc --device /dev/videoN --port 4748