Repolode
suzuran0y

suzuran0y/CCTV-Smartphone-AI-Monitoring

Turns spare Android phones into LAN network cameras, with a PC-side Flask dashboard for live MJPEG preview, recording, and optional AI-triggered analysis.

Open-source alternative to:Nest CamArlo

Stars
822
Forks
62
Open issues
3
Last commit
12 days ago

What is it?

Sentinel is a LAN-based real-time vision system that repurposes an unused Android phone as a network camera. The companion Android app, CamFlow, captures the phone camera and uploads single JPEG frames over HTTP POST to a Python Flask server running on a PC. All image data stays on the local network, and the server exposes a browser dashboard for live MJPEG preview, segmented MP4 or AVI recording, and snapshots.

The PC side uses a shared FrameBuffer that holds the latest frame, so the preview, recorder and AI modules read from it without interfering with each other. An optional AI monitor runs a two-stage pipeline: a low-cost motion detector triggers a state machine (SLEEP to OBSERVE), and only then is a pluggable vision model called. Results are returned as structured JSON with fields such as has_person, risk_level and confidence, and are written to an event log.

The project requires Python 3.9 or later, Android 8.0 or later, and both devices on the same Wi-Fi network. Settings such as stream FPS, JPEG quality, recording codec, segment length and retention limits are adjustable from the dashboard.

Key features

  • 01Uses an Android phone as a camera via the CamFlow app, without extra hardware.
  • 02Browser-based live MJPEG preview that needs no plugins.
  • 03Segmented MP4/AVI recording and snapshot saving to local disk.
  • 04Optional motion-triggered AI analysis with structured JSON output.
  • 05Pluggable vision model interface and configurable prompt templates.
  • 06Recording retention limits and disk-space protection.

Use cases

  • Home or studio monitoring that keeps all footage on a local PC.
  • Repurposing an old phone as a spare camera for a lab or workshop.
  • Prototyping visual data collection or multimodal model experiments.
  • Teaching distributed vision system architecture.

Things to know

  • Requires Python 3.9+ on the PC and Android 8.0+ on the phone.
  • Multimodal AI analysis is recommended to run through an online model inference service, so it may need an API key and incur costs.
  • The README describes the project as ongoing and actively changing, so expect updates that may affect existing setups.

Topics

FAQ

What is CCTV-Smartphone-AI-Monitoring?
Turns spare Android phones into LAN network cameras, with a PC-side Flask dashboard for live MJPEG preview, recording, and optional AI-triggered analysis. Sentinel is a LAN-based real-time vision system that repurposes an unused Android phone as a network camera. The companion Android app, CamFlow, captures the phone camera and uploads single JPEG frames over HTTP POST to a Python Flask server running on a PC. All image data stays on the local network, and the server exposes a browser dashboard for live MJPEG preview, segmented MP4 or AVI recording, and snapshots.
Is CCTV-Smartphone-AI-Monitoring free to use? What license does it have?
CCTV-Smartphone-AI-Monitoring is open source under the MIT license. Check the license terms before using it in commercial products.
Is CCTV-Smartphone-AI-Monitoring still maintained?
Actively maintained. The last commit to CCTV-Smartphone-AI-Monitoring was on Oct 8, 2026.
What can I use CCTV-Smartphone-AI-Monitoring for?
Home or studio monitoring that keeps all footage on a local PC. Repurposing an old phone as a spare camera for a lab or workshop. Prototyping visual data collection or multimodal model experiments. Teaching distributed vision system architecture.
Where can I get CCTV-Smartphone-AI-Monitoring?
The source code and installation instructions are on GitHub: https://github.com/suzuran0y/CCTV-Smartphone-AI-Monitoring

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects