Use an Android smartphone as a camera and a Windows PC as a larger live preview screen using only open-source tools.
This document focuses on:
- scrcpy as a live monitor (USB and Wi-Fi)
- Multiple Android devices
- Windows
cmd.exeone-liners - Using
ANDROID_IDas a stable logical device identifier
There are always two independent screens:
-
Phone screen
Runs the camera app and performs the actual recording. -
PC screen
Shows a real-time mirror of the phone using scrcpy for framing and focus.
The PC never records video. Recording stays on the phone.
- Android phone (Android 5.0+)
- Windows PC (10 or 11)
- USB cable (required at least once)
- Optional: selfie stand or gimbal (example: DJI Osmo Mobile SE)
- scrcpy (includes adb)
- Any camera app (stock, Open Camera, vendor app)
- Optional: DJI Mimo if using a DJI gimbal
winget install scrcpyVerify:
scrcpy --versionOn each phone:
- Enable Developer options
- Enable USB debugging
- Connect to the PC once via USB
- When prompted: “Allow USB debugging?” → Allow (preferably “Always allow”)
This confirmation cannot be automated from the PC.
scrcpy --orientation=flip0flip0 provides a mirrored preview, which is usually desirable for selfie framing.
List devices known to adb:
adb devicesWhen more than one device is present, always specify a target using -s.
For a USB-connected device:
adb -s <USB_SERIAL> shell ip routeIdentify the Wi‑Fi IP from the src field.
Enable TCP/IP:
adb -s <USB_SERIAL> tcpip 5555Connect over Wi‑Fi:
adb connect <PHONE_IP>:5555Verify:
adb devicesscrcpy -s <PHONE_IP>:5555 --orientation=flip0Multiple scrcpy windows may be opened simultaneously, one per device.
adb pair <HOST>:<PAIR_PORT>
adb connect <HOST>:<ADB_PORT>Pairing prompts must be accepted manually on the phone.
ADB serials change between USB and Wi-Fi.
ANDROID_ID can be used as a stable logical identifier.
Notes:
- Usually stable for a given device and user
- May reset after factory reset
- May be unavailable on some devices
for /f "skip=1 tokens=1,2" %A in ('adb devices') do @if "%B"=="device" (@echo %A ^& adb -s %A shell settings get secure android_id 2^>nul || echo [android_id unavailable])set /p AID=Enter ANDROID_ID: & for /f "skip=1 tokens=1,2" %A in ('adb devices') do @if "%B"=="device" @echo %A|find ":" >nul && for /f "delims=" %I in ('adb -s %A shell settings get secure android_id 2^>nul') do @if "%I"=="%AID%" scrcpy -s %A --orientation=flip0- Accepting “Allow USB debugging?”
- Accepting Wireless debugging pairing dialogs
These must always be confirmed on the phone.
flip0 mirrored, no rotation
flip90 mirrored, 90° clockwise
flip180 mirrored, 180°
flip270 mirrored, 270°
- scrcpy provides a dependable live monitor for Android cameras
- USB is simplest; Wi-Fi works well after pairing
- Multiple devices are supported simultaneously
- ANDROID_ID allows transport-independent device identification
- Phone-side security prompts always require manual acceptance