Features
Live view for the wall, playback for the investigator
A car park, a stockroom door and a production line want different things from a camera. In Rutba Vision each camera has its own detection, zones, rules and AI, including none at all on the cameras that only need to record.
Viewing
A console and a player of our own
Live video plays in the browser through Media Source Extensions with no plug-in, and the cameras on a live grid share one connection to the server.
Views made on the live page
Start from the grid as it is, drag a tile to move it or a corner to resize it, and undo any change. A tile holds one camera, works through the view’s cameras in turn, or rotates through a group. Shared views need an operator, and changes to them are audited.
The busiest camera first
Any tile can put activity first, scored from motion, tracked objects and event severity, and go back to its own camera when things are quiet. A camera that is always busy shares the wall rather than keeping a tile.
Activity without detection
A camera with detection off still shows activity, estimated from the size of its encoded frames with nothing decoded. The console labels it as estimated, because light, rain and wind move it too.
A timeline that shows where things happened
Playback draws how much happened in each moment and lists the periods worth watching, so an operator steps between them instead of scrubbing. Footage removed by retention shows as pruned, not as a gap.
PTZ and motorised lenses
PTZ cameras over ONVIF or Hikvision ISAPI move while the button is held, and the server stops them if the connection drops. Presets and a home position are kept. So far this is tested against simulated cameras, not yet a real moving one.
Sound with two switches
Each camera has one switch for keeping its sound with the recordings and one for letting people hear it, under a master switch for the site. With listening off, none of that camera’s sound reaches live view, playback, exports or share links.
Analytics per camera
Detection and filtering
Detection is a per-camera switch with its own stream, resolution and frame rate, so a busy entrance can run rich analytics while a corridor camera costs nothing but disk.
Zones
Mark the areas that matter, such as a doorway, a loading bay or a restricted aisle, and alert on what enters them. Zones are drawn relative to the frame, so they survive a change of resolution, and they can be drawn over the picture in the console.
Masks and learned flicker
Leave out the parts of a frame that only make noise: a public pavement, a swaying tree, a neighbour’s property. An on-screen clock or a blinking LED is learned and ignored without a mask.
Object filters
Choose which classes each camera tracks, with minimum size, ratio and confidence. This is the difference between alerts people read and alerts people mute.
One runtime for the hardware you have
Inference runs on a CPU, an Intel GPU or an NVIDIA card. On an Intel or AMD GPU, decoding for detection stays on the card. The default detectors are permissively licensed.
Rules, incidents and idle space
Detections become tracks with a best-frame snapshot, then events and incidents, sent on to the systems your team already watches.
Rules for the way goods go missing
Zones visited in order, line crossings with a direction, dwell times and schedules combine into rules for your real loss paths. The alert reads “goods left the yard through the side gate at 02:14”, not “motion detected”.
Schedules with holidays
The same frame means something different at 14:00 on a weekday and 03:00 on a Sunday. Rules carry their own time zone and holiday dates.
Incidents with their evidence
Events from nearby cameras are drawn into one incident with its clips, zones and reasons, so an overnight exception arrives as a message with evidence.
Motion on its own
Motion is measured cell by cell, so object detection runs only on frames that changed. A store cupboard or a plant room can raise events on movement alone, with no inference cost.
Idle space and occupancy
Zones report occupancy minute by minute: a loading bay empty through a shift, a machine standing unattended, a till with nobody on it. That is utilisation you can report on.
Events of your own
Compose conditions from object class, zone, direction, dwell, count and schedule. Events go out over MQTT and signed webhooks with their snapshot, to open a ticket or drive an automation elsewhere.
Search
Ask for what you saw
Search reads the time, camera, colour and object out of a question, shows how it understood it, and ranks the rest by meaning. Each result opens its playback five seconds before the moment.
Plain language
Type “red car at the north gate after 10pm yesterday”. The same search runs across sites from the hub.
Find similar
Each tracked object’s best frame is embedded as a vector, so “find similar” lists the other sightings that look like this one.
Colours as filters
The main colours of each object are named and tagged, so “white van” is a filter rather than a guess.
Descriptions written on site
For the tracks that matter, a vision model running on site writes a short description, so an operator can read what happened overnight instead of watching it.
Face and plate analysers behind a gate
They plug into the same per-camera interface and run only behind compliance settings agreed with your team.
Local first
A remote model endpoint is refused unless you deliberately allow it. Footage leaving the site is a bandwidth decision and a lawful-basis decision, and it is yours to make.
Cameras and setup
A hundred and fifty cameras, one file
Cameras are declared in one file that the services read directly, with no generated configuration in between, and it can be reviewed and reverted like code. A change reaches the nodes as a new revision, without restarts. Zones, masks and keep rules can also be drawn over a camera’s picture in the console, and are checked against the whole file before they apply.
What the tooling does for you
- Finds ONVIF cameras on the camera VLAN and writes their entries with the stream paths filled in
- Probes each camera for model, firmware, codec, resolution, PTZ support and lens
- Validates the file and shows a diff before anything is applied
- Applies changes across the site’s nodes without restarting them
- Checks each Hikvision camera’s encoder settings daily against its profile, and pushes the profile when an admin asks, with an undo
- Switches day and night at set times on Hikvision cameras whose light sensor is fooled by street lights
- Groups cameras into operator layouts by building, priority or shift
- Manages console users and their roles from the same command line
Clocks kept honest
Checked four times a day
Camera clocks are compared with the server over Hikvision ISAPI or ONVIF. A sync changes only what is wrong. Where the camera VLAN has no time server, Rutba Vision answers NTP itself.
Timestamps that do not depend on the camera
Video is stamped in UTC as it arrives, and the site’s time zone is shown only at the edges. Drift is still corrected, because it is silent until someone needs the tape.
One command for the answer
A single command reports every camera’s clock against the server, so “are we in sync?” has an answer.
Which of these does your site need?
Most sites run detection on a few cameras and record the rest. Tell us what you need to catch and we will say which analytics are worth the hardware.