YOLO Object Detection
Run ultralytics YOLO over any live stream and POST bounding boxes for any of the 80 COCO classes to a signed callback — a general-purpose detection engine to build your own alerts on. CPU-viable, GPU optional.
Studio turns StreamHub from a media server into a platform. Every app you enable — CCTV vision, an advanced player, privacy overlays, automation — drops into the same core, spawns its own managed worker where it needs one, and speaks the same signed events. The core and every plugin are open source. We do not license plugins per camera; we help you deploy, integrate and operate them.
The media core is AGPL, and so is every Studio app and plugin. A full catalog of Apps and Plugins ships in the box as reference implementations; the framework auto-discovers your own the same way, with no central registry to edit.
An App opens as a full page inside the dashboard, keeps its own database, and exports as a self-contained bundle — worker, Dockerfile, compose and env template — so you can run it standalone on your own infra and talk back to the media server over its REST API and signed webhooks.
No per-camera or per-plugin analytics licensing, ever: you own the code, the models, the events and the data. What we sell is deployment, integration and managed operation — getting the right apps live on your cameras and kept running.
Two shelves — full Apps and lightweight Plugins. Every card ships in the box today, whether it is one of the 5 in-tree built-in Apps or one of the 12 that live in their own versioned repos and compose into the build pinned by content sha256 — indistinguishable from the built-ins at runtime. The nine vision apps each have a full page with use cases, how it works, honest limits and requirements. Apps tagged Edge can run co-located or distributed per-stream across edge nodes.
Each app opens as a full page inside the dashboard, keeps its own database, and exports as a self-contained bundle you can run on your own infra — talking back to the media server over its REST API and signed webhooks. The nine vision apps have a full landing below; any Edge-tagged app can also run distributed per-stream across edge nodes.
Track how many people or vehicles are inside each zone, how long they stay, and alert when a zone stays over its limit.
ExploreCount people across one or more lines drawn on the live video — realtime IN/OUT crossings and a live inside count against a capacity.
ExploreCount heads per zone from sampled frames and alert only when a crowd truly persists past your threshold.
ExploreEstimate age, gender and emotion per face — locally with InsightFace, or via an opt-in vision API with a monthly budget cap.
ExploreKnow when a workstation or post is left unattended — or manned outside the schedule.
ExploreCount people across a line drawn on the live video — IN/OUT totals, live occupancy and capacity alerts.
ExploreAlert on anyone entering a restricted zone while the perimeter is armed — with snapshot and clip evidence.
ExploreRead license plates off any live camera, match a whitelist/blacklist and act in real time.
ExploreAdvisory flags when a person in a work zone is missing a required helmet or hi-viz vest — for a human to review.
ExploreRun ultralytics YOLO over any live stream and POST bounding boxes for any of the 80 COCO classes to a signed callback — a general-purpose detection engine to build your own alerts on. CPU-viable, GPU optional.
Detect faces in the live stream (CenterFace, server-side) and obfuscate them in the player — blur, mosaic or a solid mask over each face.
A CCTV-style board: a paginated, drag-and-drop grid of every live stream in the app, for an operator watching many cameras at once.
Transcribe recorded VODs to text + SRT subtitles, uploaded next to the recording in your S3. Local open-source Whisper by default; OpenAI API optional.
Manage the StreamHub Agents in an app over MQTT: live health (CPU, RAM, temperature, uptime, cameras, disk), online/offline status and remote control — restart, OTA update, config push and ping.
An n8n-style visual automation engine triggered by any core, plugin or cluster event. Encrypted per-app secrets, a full event catalogue, JSON export/import, and gated code/SSH/shell/SQL execution nodes (default OFF). Runs in-core, no worker to manage.
Take over an already-live stream: pause behind a configurable cover with audio muted, resume, or finish with a closing card — from the dashboard or the API, per app or per stream.
Samples every live stream's HLS output and turns stalls, dropped segments, A/V desync, audio silence and bitrate drops into signed webhook + MQTT + Streamflow events, with a worst-first status grid in the dashboard.
Players, overlays and panels that drop into the core in-process — no worker, no separate database. Enable them per app; the player and dashboard pick them up live. Seven ship in the box.
Swap the built-in video.js HLS + VOD player for a modern, skinned Vidstack player (hls.js). Sub-second WebRTC live is unaffected.
Measure the client↔server connection: a download/upload bandwidth test plus latency and jitter, distilled into a green/amber/red light against your thresholds.
Go live with your webcam and mic and forward the composed room to an external RTMP destination — YouTube, Twitch or a custom target — via server egress.
An audio-only WebRTC radio inside the app: go on air from the mic, watch the live listener count and hand out subscribe-only listen tokens.
Schedule live premieres: viewers see a countdown until the start time, then the stream is revealed.
Overlay a text watermark on the player to mark ownership and provenance on the footage.
A live CCTV-style date/time stamp (with the camera name) on the player. Configure format, corner, colour and whether to show the name.
Tell us what you are monitoring and we will scope the right apps, wire them into your systems and run them with you. The software is open source — the deployment and operation is what we do.