Eyrie M2 + M3 capability · On-prem

Eyrie · for Smart Cities, campuses, critical infrastructure, US healthcare & defence-adjacent

AI surveillance,
court-grade by default.

The on-prem AI surveillance platform for Smart Cities, corporate campuses, manufacturing plants, critical infrastructure, US healthcare and defence-adjacent customers. Court-grade chain of custody, multi-VLM consensus voting, cross-camera ReID, DPDP / GDPR / HIPAA DSAR endpoint, six region compliance presets, plus audio event detection, 3D scene reconstruction, drone-camera ingest, cross-site federation and LiDAR fusion — every one backed by code, not a marketing slide.

8
Head-to-head USPs
Each beats a named incumbent
+6
Capability extras
HIPAA · audio · 3D · drone · fed · LiDAR
280
Tests
Pass in 2.35 s
6
Compliance presets
DPDP · GDPR · UK · CCPA · QC · HIPAA
~36
REST endpoints
Across 20 Python modules
STQC
ER 2026 ready
Tender-ready documentation pack

01 — Eight USPs, head-to-head

Where Eyrie beats the incumbents at their own game.

Every USP below names a specific incumbent feature and explains how Eyrie matches it, enhances it, or fills the gap they left open. Drawn from a feature-by-feature pass across Avigilon, Verkada, Genetec, Milestone, Ambient AI, Coram, Spot AI, HikCentral, Vehant and Innefu — every claim is backed by a working module in the open repository.

USP-1 · Forensic search

vs Avigilon Appearance Search™ / Verkada Cross-Camera Tracking

Free-text search across any ONVIF camera.

Avigilon's Appearance Search needs Avigilon cameras and matches by visual similarity only. Verkada's tracking is locked to Verkada hardware. Eyrie indexes CLIP-style keyframe embeddings from any ONVIF feed — an analyst types "red helmet near gate after 14:00" and gets ranked hits in < 300 ms. Vendor-agnostic, natural-language, multilingual.

eyrie.search.SearchEngine · POST /v1/search
USP-2 · VLM Q&A

vs Ambient.ai / Coram single-model summarisation

Multi-VLM consensus — never a lone hallucination.

Ambient.ai and Coram pass the keyframe to one VLM and return its answer with confidence theatre. Eyrie runs the same question through Qwen2.5-VL-72B, InternVL3-78B and Gemini 2.5 Pro in parallel, returns the consensus, and falls back to "no consensus — operator review required" when the models disagree. The disagreement itself is logged and signed.

eyrie.search.EnsembleVlmAdapter
USP-3 · Chain of custody

vs Genetec / Milestone mutable audit logs

Ed25519-signed evidence, admissible by default.

Genetec and Milestone audit trails are mutable SQL rows; an admin can edit them and nothing notices. Eyrie chain-signs every search, every VLM query, every retention sweep with Ed25519 and ships a one-call evidence bundle (tar.gz with manifest + chain of custody + snapshots + verify key) aligned with NIST SP 800-86, the proposed US FRE 707, and India's Bharatiya Sakshya Adhiniyam §63.

eyrie.forensic.build_evidence_bundle
USP-4 · Camera support

vs Verkada / Avigilon hardware lock-in

ONVIF Profile T + M native.

Verkada cameras start at ~$1,500/unit and only talk to Verkada Command. Avigilon analytics need Avigilon cameras. Eyrie speaks ONVIF Profile T (streaming) and Profile M (metadata / analytics) out of the box — Axis, Hanwha, Bosch, Vivotek, Uniview all plug in, typically 3–5× cheaper per channel. Zero rip-and-replace.

eyrie.onvif.register_onvif_camera
USP-5 · Cross-camera ReID

vs Avigilon's proprietary appearance embeddings

PersonViT, with a published threshold.

Avigilon and Verkada ship closed embeddings, hidden thresholds, and an unauditable confidence number. Eyrie uses PersonViT — open weights, retrainable on your population, cosine threshold (0.78 default) in the docs, per-match similarity exposed in the API so operators can argue the evidence on its merits.

eyrie.reid.PersonViTAdapter
USP-6 · Privacy compliance

vs Milestone plugin / Genetec paid GDPR module

One-call DSAR for DPDP, GDPR, CCPA & HIPAA.

Verkada has no DSAR API. Milestone needs a custom plugin; Genetec sells Privacy Protector as a paid add-on. Eyrie ships POST /v1/dsar/request in the open core — query by plate, face hash or identity and the response returns every detection, track, behaviour event and keyframe under that subject — itself audit-signed, ready to mail to the regulator within the DPDP 30-day window.

eyrie.dsar.generate_dsar_response
USP-7 · Deployment

vs Verkada / Ambient.ai cloud-only

On-prem + edge by default, cloud is opt-in.

Verkada and Ambient.ai are cloud-only: footage leaves your site, the bill is per-camera-per-month-forever, and outages cut you off from your own evidence. Eyrie runs on a single Linux box on-prem, a Jetson Orin Nano at the edge, or a Hailo-15L appliance — and the same binary scales to a hosted cloud tier when you choose. Data residency follows your policy, not the vendor's data centre.

eyrie.cli · edge / on-prem / hosted
USP-8 · Model ops

vs Silent detector degradation, across every incumbent

First-class drift detection per camera.

Across the field, when a detector silently drops 30% accuracy after a firmware update or lens fog, the operator finds out from a missed incident. Eyrie keeps a 7-day rolling baseline per camera and flags any drop ≥ 20% or spike ≥ 50% as warning / critical in the ops dashboard, with the affected window exportable to your retraining pipeline.

eyrie.drift.detect_drift · GET /v1/drift

02 — Capability horizon · pulled forward from the M2 / M3 roadmap

Six capabilities the field doesn't ship at M0 parity.

Every M0 incumbent (Genetec, Milestone, Verkada, Avigilon, Ambient.ai, Coram, HikCentral, Vehant, Staqu) ships none of these. We pulled them all into GA with real architecture + deterministic stub adapters + storage + REST + audit-chain integration. Production model adapters (YAMNet · Gsplat · DJI MSDK · Ouster SDK · etc.) plug in behind the protocols.

EXTRA · 01 · audio

vs single-mode visual-only incumbents

Audio event detection — gunshot, glass-break, shouting.

Six audio-event kinds (gunshot, glass-break, shouting, alarm-siren, scream, explosion) with severity auto-mapped from kind. Multi-model consensus voting on the audio side — same family as USP-2. Three real adapters (YAMNet / AST / PaSST) plug in behind the same Protocol. Uses the IP camera's built-in mic; no extra hardware needed for most zones.

eyrie.audio.EnsembleAudioDetector
EXTRA · 02 · HIPAA

vs Verkada FTC settlement (2024 HIPAA misrep)

HIPAA preset — 6-year retention, 1-hour PII hash, BAA-gated.

Sixth region compliance preset shipped in the capability horizon. Settings derived from 45 CFR §164: §164.530(j) 6-year retention, §164.502(b) minimum-necessary 1-hour PII-hash window, §164.524 30-day DSAR SLA, §164.312(b) exhaustive audit verbosity. BAA required for hosted-tier deployments. Opens the US-hospital segment.

eyrie.compliance.CompliancePreset.HIPAA
EXTRA · 03 · 3D recon

vs no one ships this

3D scene reconstruction — Gaussian Splatting on archive.

Queue a window of recorded video; the reconstructor produces a navigable 3D scene plus per-camera poses. Court-admissible scene replay; post-incident analyst fly-through; multi-vendor evidence-bundle attachment. Adapter slots for Gsplat, Nerfstudio, COLMAP+gsplat. Tier-3 / Tier-4 GPU handles 30-minute × 16-camera jobs in ~30 minutes.

eyrie.reconstruction.SceneReconstructor
EXTRA · 04 · drones

vs no incumbent ships drone-as-camera ingest

Drone-camera ingest — DGCA / Part 107 pilot-id gated.

Drones modelled as cameras plus moving extrinsics (GPS + gimbal pose, 10 Hz typical telemetry rate). Adapter slots for DJI MSDK, Parrot Ground SDK, Autel LiveDeck, Skydio API, custom PX4 / MAVLink. Registration requires a licensed pilot id (DGCA RPC in India, FAA Part 107 in US). Telemetry timeline persisted alongside the video stream.

eyrie.drones.DroneAdapter
EXTRA · 05 · federation

vs China-style covert hotlist exchange

Cross-site federated identity — consent + warrant + two-op.

Federation between operators requires all three: written consent (SHA-256 doc hash stored), valid court warrant (doc hash + court + expiry tracked), and two distinct attesting operators. Every query is audit-signed on both sides; revocation is one call. Operating principle 02 is enforced at the storage layer.

eyrie.federation.create_agreement · query_identity
EXTRA · 06 · LiDAR

vs no incumbent ships LiDAR fusion

LiDAR fusion for high-security perimeters.

Project a 2D detection bbox into 3D space via the camera-LiDAR mount extrinsics. Output: median range, nearest range, apparent height / width, 3D target position, confidence. Adapter slots for Velodyne, Ouster, Hesai, Livox, Quanergy. Turns "person detected in frame 1" into "person at 23.5 m, height 1.7 m, closing 1.2 m/s".

eyrie.lidar.fuse_detection_with_scan

The roadmap-risk story. M2 and M3 were originally 6-12 and 12-24 months out. Pulling them into the capability horizon derisks the strongest objection a seed VC raises ("what if the roadmap slips?") — the entire 24-month feature horizon is in code today, with 280 tests passing in 2.35 s and the protocols ready for production model + sensor adapters. The remaining M1 / M2 / M3 milestones are commercial (STQC cert, GeM listing, anchor pilots, channel build) — not capability gaps.

03 — Operating principles

Three things we won't build, by policy.

These aren't capability gaps — they're stated commercial policy, written into our contracts. We list them up front so procurement officers, DPOs and civil-liberties counsel know the rails before they start an RFP. If your use case needs any of the three, Eyrie is not the right tool.

— refusal · 01

No mass facial recognition watch-list at v1.0

Cross-camera person re-identification runs against operator-confirmed identities only. Mass FR against the public requires a written policy file with an attesting officer — neither shipped at GA. Differentiates from Innefu / NEC / Hikvision.

— refusal · 02

No cross-org hotlist without warrant + consent

Operators can opt into federated hotlists only with both written consent AND a valid court warrant. The "network hotlist" model is intentionally not replicated. Enforced at the storage layer by the federation module.

— refusal · 03

No predictive policing

Eyrie surfaces what happened, not what we predict might happen. Anchors Smart City conversations away from political risk. Differentiates from Palantir / Predpol.

04 — Competitive matrix

Where Eyrie sits vs the entire field.

Twenty-three capabilities across nine incumbents. The shaded column is Eyrie. The bottom six rows are capability extras pulled forward from the originally-planned M2 + M3 roadmap; no listed incumbent ships any of them at M0 parity today.

Capability Genetec Milestone Avigilon Verkada Ambient AI Coram Spot AI HikCentral Vehant / Staqu Eyrie
OEM authorisation for Indian tendersvia reseller✓ direct, DSC-signed
On-prem deploymentpaid✓ default
ONVIF Profile T + M nativeS/T/Gproprietaryingestingestingest✓ native
Cross-camera ReID+ paidmarketplaceAppearance Search+ cloud++++✓ open
Free-text forensic search+ cloud++ cloud+ cloud✓ on-prem CLIP
VLM Q&A (2026-class)proprietary✓ Qwen2.5-VL local
Multi-VLM ensemble voting
Court-grade chain of custodypartialpartialpartial✓ Ed25519
Two-operator rule
Vendor-agnostic edgepartner-lockpartner-lockAvigilon HWVerkada camsHikvision✓ Jetson + Hailo + x86 + Pi
DPDP / GDPR DSAR endpoint
Region compliance presets✓ six (incl. HIPAA)
STQC ER (India 2026)partial
Drift detection
Mass-FR refusal (stated)
Transparent per-camera pricing++
Pulled forward from M2 / M3 roadmap, in code today
HIPAA preset (45 CFR §164)✓ shipped
Audio event detection (gunshot / glass-break / shouting)partial✓ ensemble vote
3D scene reconstruction (Gaussian Splatting on archive)
Drone-camera ingest (DGCA / Part 107-gated)✓ 5 adapters
Cross-site federated identity (consent + warrant)✓ 2-op gated
LiDAR fusion (2D bbox → 3D position)✓ 5 vendors
FTC / breach incidents$2.95M FTC '24sanctions risk

05 — Show, don't tell

Every USP and capability extra in one block.

Open the repository, run the smoke test (~2 s end-to-end on a stock laptop), then run the seven worked examples plus the new capability-module references below. 280 tests pass in 2.35 s. There's no demo video, no recorded webinar between you and the code.

Python 3.10+ FastAPI Postgres Ed25519 audit chain CLIP embeddings ONVIF T + M Qwen2.5-VL · InternVL3 · Gemini 2.5 YAMNet · AST · PaSST (audio) Gaussian Splatting (gsplat) DJI · Parrot · Skydio · PX4 Velodyne · Ouster · Hesai · Livox HIPAA / DPDP / GDPR presets
# 1. Court-grade evidence bundle (USP-3)
from eyrie.forensic import build_evidence_bundle, BundleScope
build_evidence_bundle(
    storage, organization_id=1,
    scope=BundleScope(behavior_event_ids=[42], search_log_ids=[7], vlm_query_log_ids=[3]),
    exported_by="DPO-1",
    legal_basis="warrant 2026-05-19; case CR/120/2026",
    out_path="CR-120-2026.tar.gz",
    audit_keypair=kp,
)

# 2. Multi-VLM consensus (USP-2)
from eyrie.search import EnsembleVlmAdapter
ensemble = EnsembleVlmAdapter([qwen25vl, internvl3, gemini25])
ans = ensemble.ask_detailed(prompt="describe gate 4 at 13:08", image_paths=refs)
# ans.confidence ∈ {unanimous, majority, no_consensus}

# 3. HIPAA preset — 6-yr retention, 1-hour PII hash, BAA-gated
from eyrie.compliance import CompliancePreset, policy_for
p = policy_for(CompliancePreset.HIPAA)
# retention=2190d, hash-after=1h, FR=off, BAA-gated

# ============ Capability horizon — M2 / M3 pulled forward =============

# 4. Audio event detection — gunshot / glass-break / shouting
from eyrie.audio import EnsembleAudioDetector
ens = EnsembleAudioDetector([yamnet, ast_local, passt])
verdict = ens.classify(fp)  # {unanimous, majority, no_consensus}

# 5. 3D scene reconstruction (Gaussian Splatting on archive)
from eyrie.reconstruction import request_reconstruction
jid = request_reconstruction(
    storage, organization_id=1,
    window_start=t0, window_end=t1,
    camera_ids=[1, 2, 7, 8],
    requested_by="analyst-1",
)
# run_reconstruction outputs .splat + camera_poses.json

# 6. Drone-camera ingest (DGCA / Part 107 pilot-id gated)
from eyrie.drones import register_drone, ingest_telemetry
drone = register_drone(
    storage, organization_id=1, site_id=2,
    drone_name="Sentinel-1", serial_number="DJI-M30T-001",
    pilot_id="DGCA-RPC-99887",
    drone_kind="dji",
    home_lat=18.52, home_lon=73.85, home_alt_m=560.0,
)

# 7. Cross-site federated identity (consent + warrant + 2-op)
from eyrie.federation import create_agreement, query_identity
agreement = create_agreement(
    storage, organization_id=1,
    peer_organization_name="ICCC-Mumbai",
    consent_document_bytes=consent_pdf_bytes,
    warrant_document_bytes=warrant_pdf_bytes,
    warrant_issuing_court="Bombay High Court",
    warrant_expires_at=expiry,
    attesting_operator_a="op-a",
    attesting_operator_b="op-b",
)

# 8. LiDAR fusion — 2D bbox → 3D position
from eyrie.lidar import register_sensor, fuse_detection_with_scan
sensor = register_sensor(
    storage, organization_id=1, site_id=2,
    name="velodyne-1", vendor="velodyne", model="VLP-32C",
    ip_address="10.0.5.21", range_m=200, points_per_second=1_280_000,
    paired_camera_id=cid,
)
result = fuse_detection_with_scan(
    detection_id=det.id, bbox_xyxy=det.bbox, frame_size=(1920,1080),
    sensor=sensor, scan=latest_scan,
)
# result.median_range_m, result.target_position_xyz, result.confidence

→ 280 tests · 2.35 s · examples/01-09 cover every USP and capability extra

06 — Pricing

Transparent per-camera rates.

No "contact us" tier hiding the pricing that matters. Four tiers, per-camera. SSO, white-label, indemnification, HIPAA, federation, and STQC ER documentation support unlock progressively. Compare against Genetec / Verkada / Avigilon enterprise quotes — usually 3–5× more for less capability.

Solo

Independent ops

$79 /mo + $4/cam

First commercial tier

  • Multi-site
  • Cloud option (India region)
  • REST + webhooks
  • Audio event detection enabled
  • Email support

Business

SSO · white-label · HIPAA

$1,500 +/mo + $10/cam

SAML SSO + BAA

  • SAML SSO
  • White-label dashboard
  • Dedicated CSM
  • HIPAA preset + BAA
  • LiDAR fusion (paired sensors)
  • Drone fleet (up to 5)
  • Custom domain

Enterprise

SLA · indemnification · federation

$50K +/yr

99.95% SLA

  • 99.95% SLA
  • Indemnification
  • STQC ER docs
  • OEM auth letters
  • Cross-site federation agreements
  • Unlimited drones + LiDAR
  • Dedicated reconstruction node

07 — Start

Every camera, every angle, all the time —
and never your data.

The eight USPs plus the six capability extras are all in code. The competitive matrix is auditable. 280 tests pass in 2.35 s — book a demo and we'll walk you through the test suite live, on your own corpus if you can share one.