Introduction
MotionEye is a web-based frontend for the motion daemon that provides video surveillance with motion detection. It supports local USB cameras and network IP cameras, making it a popular choice for home and small-office security setups.
What MotionEye Does
- Live camera feed viewing through a web browser
- Motion-triggered recording with configurable sensitivity
- Snapshot capture at scheduled intervals
- Email and webhook notifications on motion events
- Multi-camera support with a unified dashboard
Architecture Overview
MotionEye is a Python web application that wraps the motion daemon. The frontend communicates with the motion backend over a local API. Video frames are processed by motion for detection, and the web layer handles configuration, streaming, and media file management.
Self-Hosting & Configuration
- Install via Docker or pip on Linux-based systems
- Add cameras by entering RTSP URLs or selecting local USB devices
- Set motion detection zones and sensitivity thresholds per camera
- Configure storage retention policies to manage disk usage
- Enable HTTPS by placing behind a reverse proxy
Key Features
- Supports MJPEG and RTSP network cameras alongside USB webcams
- Masking zones to ignore areas with constant movement
- Timelapse video generation from captured snapshots
- File upload to Google Drive, Dropbox, or a remote server via FTP/SFTP
- Runs on Raspberry Pi for an inexpensive surveillance solution
Comparison with Similar Tools
- Frigate — AI-powered NVR with Coral TPU support; MotionEye is simpler and lighter
- Scrypted — smart home video bridge; MotionEye focuses purely on surveillance
- ZoneMinder — enterprise-grade NVR with complex setup; MotionEye prioritizes ease of use
- Shinobi — full NVR with API; MotionEye is better suited for small deployments
FAQ
Q: Does MotionEye support AI object detection? A: No. It uses frame-difference motion detection. For AI-based detection, consider Frigate or Scrypted.
Q: Can I run it on a Raspberry Pi? A: Yes. MotionEye is widely used on Raspberry Pi with the official camera module or USB webcams.
Q: How many cameras can it handle? A: It depends on hardware. A Raspberry Pi 4 handles 2-3 cameras; a modern server can manage 10 or more.
Q: Does it record continuously? A: It primarily records on motion events, but continuous recording can be configured via the motion daemon settings.