Turn a spare Android phone into a private security camera
Install Old Bird on the phone, open its address, and watch from any browser on your Wi-Fi. LAN viewing, recording, motion alerts, RTSP, and ONVIF are free. Pro adds remote browser access without port forwarding.
Put Old Bird on an Android 8.0+ phone and give the camera a name and viewer password.
2 Place
Connect it to Wi-Fi, plug it in, and point the spare phone wherever you need a camera.
3 Watch
Open the address shown in Old Bird from a browser. Stay local for free or add Pro for off-LAN viewing.
At a glance
HTTPS viewer
Embedded browser viewer over TLS. Open the phone's address; the page is served from the device.
MJPEG + audio
Live video at any resolution your camera supports, plus 16 kHz mono PCM audio.
RTSP server
H.264 + AAC over RTP/UDP. Plug into VLC, ffmpeg, Frigate or Scrypted.
On-device recording
MP4 segments saved in the phone's app storage with a configurable ring buffer.
WebDAV upload
Hands finalised segments off to your own WebDAV server — Nextcloud, NAS, or anything compatible.
Motion detection
On-device frame differencing with one sensitivity knob. Fires a webhook and starts a clip.
Webhook providers
ntfy, Slack, Discord, Telegram, Generic JSON, or a fully custom template.
Off-LAN viewing (Pro)
Optional Google sign-in registers the camera with Old Bird's relay. Open the browser portal to view and administer it from anywhere.
LAN-only by default
IP allowlist denies anything outside RFC 1918, link-local, ULA, CGNAT and Tailscale ranges.
Why
Old phones make great stationary cameras. Decent sensors, built-in batteries, always plugged in, already on Wi-Fi. But every IP-camera app insists on a cloud account, an in-app subscription, or a vendor portal. Old Bird does the opposite: the phone is the server, your LAN is the network, and your password lives only on the device.
The whole codebase fits in a single directory. Settings persist in SharedPreferences and are the single source of truth across the in-app UI, the web viewer, and the HTTP API. Everything reconfigures live — no service restarts.
Sony Xperia XZ1 Compact (Android 8.0, arm64-v8a) is the long-running stability device. Release gates also run on a Xiaomi 2409BRN2CA using the Google Play build. Old Bird's minimum is Android 8.0 (API 26) and it requires a Camera2-compatible camera.