Attendance from a camera, no device at the door. The Cams Stream Engine decodes an RTSP/ONVIF or file video stream, runs the same face pipeline as the Face Match Engine on every frame, tracks each person so they are punched once per appearance, and records attendance into the standard Cams pipeline.
Overview
The Stream Engine turns a live video stream (RTSP/ONVIF IP camera, HTTP, RTMP, or file) into biometric attendance. It decodes the stream, runs the shared face pipeline (SCRFD detect, 5-point align, ArcFace embed, 1:N identify over the warm gallery), and uses an IoU tracker so each person produces a single deduped punch per appearance. A multi-camera supervisor reads a configuration table and runs one worker per active camera with hot add, change, and remove, and a developer-portal form self-provisions cameras. Streams stay on the local network โ only attendance events leave the edge box.
# single camera: <port> <stream-url> <device-sn> stream-engine 9030 rtsp://cam.local/stream1 CAM-GATE-01 # or supervisor mode (DB-driven, multi-camera) stream-engine 9030 # face detect -> align -> ArcFace -> 1:N -> one punch / appearance
Capabilities
Recognizes faces in a live RTSP/ONVIF stream and records attendance with no dedicated terminal at the door.
An IoU tracker assigns a track per face so each person is recorded once per appearance, not once per frame.
A supervisor runs every active camera, one worker each, with seconds-level hot add and remove.
Runs on an on-prem or edge box near the cameras; the video stream never leaves the local network, only attendance events do.
The CCTV portal form registers the camera and the supervisor starts it within one poll.
Features
Grab a key, read the docs, and ship. Our team helps with your first integration.
FAQ
RTSP and ONVIF IP cameras, HTTP streams, RTMP, and video files. It also documents bridges for bulb-cameras and Android-as-camera on the developer portal.
No. The engine runs on an edge or on-prem box near the cameras; the stream stays local and only the resulting attendance events are sent to the server.
An IoU tracker assigns a track id per face and emits one attendance event per appearance, with a configurable per-user dedup window (default 60s).
Yes. A supervisor reads a camera configuration table and runs one worker per active camera, polling so cameras can be added, changed, or removed live.
Related
Run the Cams biometric protocol on your own Windows, Linux, or Unix server so devices talk to your application directly โ including fully offline LAN deployments.
ExploreSERVICEAn on-premise Windows hybrid connector that pulls attendance from local devices or databases and syncs it to the Cams cloud โ behind your firewall.
ExploreSERVICEAn MQTT transport engine that ingests attendance events and pushes device commands over an EMQX broker โ built for large connected fleets.
Explore