Will this box run Frigate for this many cameras?
Pick a platform, the camera count and the detect stream. The engine answers with Frigate's own facts: which detector the platform runs and which image tag it needs, whether that detector keeps up with cameras × detect fps (Frigate's capacity rule against the inference speeds Frigate publishes), whether the platform decodes the detect streams from its datasheet, which ffmpeg hardware-acceleration preset applies, and a config snippet you can paste. FIT, FIT WITH RISKS, NEEDS VALIDATION or NO FIT — with the camera ceiling and every other mapped platform ranked beside it.
01 · Define the Frigate deployment
Advanced
03 · How this works
Frigate's own sizing rule
Frigate states a detector's ceiling as 1000 ÷ the inference milliseconds it reports — the documentation's worked example is a Coral at 10 ms topping out at 100 frames per second. The load is cameras × detect fps × the share of frames with motion, and the default detect fps is Frigate's recommended 5. Where Frigate publishes a band rather than a figure (20–40 ms for every Jetson module), the engine sizes on the slow end and shows the fast end beside it.
Four things have to be true
Detector — the platform runs a Frigate detector type, and you have the image tag it needs. Inference — the detector holds the detections per second the camera count demands. Decode — the platform decodes the detect substreams; that check is the Camera Stream Capacity engine on the platform's decode datasheet, and for an accelerator on a Raspberry Pi 5 or mini-PC it also charges the host's CPU, link and pre-processing. Decode preset — the ffmpeg hardware-acceleration preset Frigate documents for the platform (or its host) exists.
Full rules, the detector table, presets and what invalidates a result: methodology. Raw dataset: datasets/frigate-fit.json. Decode per platform: Camera Stream Capacity. Decode tables: decode capacity.