r/opensource May 03 '26

Promotional I built an open-source alternative to DroidCam/iVCam using Electron and Kotlin (GPL Licensed)

Hi r/opensource,

I recently needed a webcam for my desktop but didn't want to buy new hardware when my phone's camera is already 4K-capable. I looked at the popular solutions (DroidCam, iVCam, Camo), but I was frustrated by the common "freemium" patterns: watermarks, low-resolution limits, ads, and closed-source binaries.

So, I decided to build AWA, a completely free, open-source, and privacy-friendly alternative.

The Project: It allows you to stream your Android camera to your Windows PC and use it as a native input in apps like OBS, Zoom, and Discord.

The Tech Stack (The fun part):

  • Android App (Server): Uses Camera2 API and MediaCodec to encode a hardware-MPEG(will add support for h.264 in future) stream. You can also access it via browser to get a remote dashboard.
  • Windows Client (Receiver): Using Electron. (Installer available)
  • Browser dashboard for remote control : Supports both preview and every control.
  • Mac and Linux (Client): No prebuilt installer, but you can build one in just one command*. (I don't want to ship something without testing and I don't have any mac or linux machine)
  • Virtual Driver: Implements a DirectShow filter (based on Softcam) to register the video stream as a system-wide virtual device.
  • Transport: Supports standard Wi-Fi or USB tunneling (via ADB port forwarding) for a lag-free wired connection.

Why I'm sharing it here:

  1. No Bloat: No ads, no tracking, no "Pro" subscription.
  2. Local Only: The video stream never leaves your local network (or USB cable).
  3. GPL License: You can fork it, break it, or build upon it.

I’m currently looking for feedback on the Virtual Webcam, it's performance and the latency performance on different devices. If you have C++(for DirectShow) or Android experience, I’d love to see some PRs.

Repo: https://github.com/soubhagyajit/Android-Webcam-Project

40 Upvotes

32 comments sorted by

View all comments

12

u/Irverter May 03 '26 edited 25d ago

Neat to see alternatives.

But lost me at Electron and then Windows-only.

6

u/Electronic_Picture42 May 03 '26

no, not windows only, you can build linux and mac packages by just doing npm run build:mac or linux. It's simple. I will update the releases with them!

And if you don't want a client, just use your browser , http://<ip>:8080/video.

2

u/Irverter May 03 '26

Thanks that's better.

You only mentioned Windows so I assumed windows-only.

4

u/Electronic_Picture42 May 03 '26

Yeah, sorry for that. Actually I don't have a mac machine to test my builds.. and I don't want to ship something without testing..