Features

Everything below ships in the same package and works on the free tier. Licensing only changes how many cameras you can run.

Cameras & live video

Camera onboarding
ONVIF WS-Discovery, vendor-native discovery, and active subnet scanning for cameras on routed networks. Credentials live in an encrypted vault; organize with groups, tags, and profiles.
Native vendor drivers
Cameras run native integrations per capability (Hikvision, Dahua, Axis, Hanwha, Uniview, Vivotek) and fall back to generic ONVIF/RTSP everywhere else. The UI badges each camera Native or Generic.
Sub-second live view
WebRTC live video with LL-HLS fallback, a multi-camera grid, and on-demand H.264 transcode for HEVC/MPEG-4 sources.
PTZ control
Continuous pan/tilt/zoom and preset recall for cameras that support it, native or ONVIF.
Health watchdog
Every camera is probed continuously; offline cameras are flagged in under 30 seconds, with a health dashboard covering cameras, storage, and services.
Device settings
Read and change camera time/NTP, image, encoding, and OSD settings from inside vemos. No more visiting each camera’s own web page.

Recording & playback

Recording modes
Continuous, scheduled, or motion-triggered with pre/post-roll, configured per camera and recorded as crash-safe fMP4 segments.
Storage pools
Local disks and SMB/NFS/iSCSI network storage, with balancing across pools, optional mirrored redundancy, and retention by age, size, or capacity. Legal hold exempts footage from cleanup.
Timeline playback
A day timeline per camera with recording coverage at a glance, synchronized multi-camera playback, 0.5–8× speed, and frame stepping.
Export & evidence
Cut clips straight from the timeline, or build evidence bundles across cameras and time ranges for handover.

AI analytics

Object detection & tracking
YOLO-based detection with object tracking, line-cross and zone counting, and activity heat maps. All computed on your own hardware.
Face recognition
Detect faces, match against your identity list, and search by person.
License plate recognition
ALPR with Arabic-to-Latin normalization, feeding search and access-control rules.
Fire & smoke detection
Early-warning detection running on the same pipeline.
Smart search
Search detections by class, camera, and time, then jump straight into the recording at that moment.
GPU acceleration
CUDA, TensorRT, and OpenVINO execution providers with automatic CPU fallback.

Events, alarms & integrations

Alarm lifecycle
Motion and analytics events coalesce into alarms with acknowledge, assign, and clear workflows plus a full history.
Escalation & notifications
Escalation policies notify the right people via webhook, email, or per-device web push.
Search & export
Query events and alarms, export CSV, and bundle related clips.
Access control
Identity and plate allowlists can drive HTTP door controllers, default-deny.
Maps
Upload floor plans and pin cameras with live status and alarm pulses.

Security & administration

Role-based access
Three built-in roles plus custom roles over a fine-grained permission catalog, scopable down to individual cameras.
Tamper-evident audit
A hash-chained, append-only audit log records every consequential action and verifies its own integrity from the UI.
Hardened deployment
Non-root systemd services with syscall filtering, default-deny firewall, automatic security updates, and a backend that only listens on loopback behind nginx TLS.
In-app updates
One button checks the release feed, verifies checksums, and applies the update. Air-gapped boxes update from an offline bundle.
Offline licensing
Perpetual per-camera licenses verified with public-key cryptography: no phone-home, and the free tier (4 cameras) always works.

Want the operational detail? The guide book covers every feature step by step.