{
  "version": "2026-09-08",
  "description": "Frigate NVR facts for the Frigate Hardware & Detector Fit engine: Frigate's own sizing rules (recommended detect fps, the capacity rule of 1000 / the inference milliseconds), the detector types with their supported hardware, default and supported models, the inference-speed rows Frigate publishes per hardware, the EdgeAIStack platform → detector / inference row / image tag / ffmpeg preset mapping, and the hardware-acceleration presets — every value with the Frigate documentation page it comes from. Detector types, presets and defaults are class A software documentation; the inference speeds are class C measurements published by the Frigate project. A value the documentation does not state is null and the engine reports UNKNOWN.",
  "last_updated": "2026-09-08",
  "confidence": "high",
  "evidence_class": "A",
  "schema": {
    "sizing.<id>": "{ id, value, sources[] } — Frigate's recommended detect fps and the published capacity / status statements",
    "detectors.<id>": "{ id, label, platforms_note, default_model, models[], notes, sources[] }",
    "inference.<id>": "{ id, detector, model, ms, ms_max, alt, note, sources[] } — inference milliseconds per frame Frigate publishes for the hardware (class C)",
    "platforms.<id>": "{ id, label, family, detector, inference (inference row id), decode_preset, image_tag, note, mapping_class A|D }",
    "decode_presets.<id>": "{ id, platform, sources[] } — ffmpeg hwaccel presets Frigate documents",
    "gaps[]": "facts the research pass could not confirm from the Frigate documentation"
  },
  "sizing": {
    "detect_fps_recommended": {
      "id": "detect_fps_recommended",
      "value": 5,
      "sources": [
        {
          "publisher": "Frigate",
          "document": "Full Reference Config — Frigate documentation",
          "doc_id": "docs.frigate.video/configuration/reference",
          "url": "https://docs.frigate.video/configuration/reference",
          "retrieved": "2026-09-08",
          "verified": "2026-09-08",
          "class": "A",
          "quote": "Optional: desired fps for your camera for the input with the detect role (default: shown below). NOTE: Recommended value of 5."
        }
      ]
    },
    "capacity_rule": {
      "id": "capacity_rule",
      "value": null,
      "sources": [
        {
          "publisher": "Frigate",
          "document": "Recommended hardware — Frigate documentation",
          "doc_id": "docs.frigate.video/frigate/hardware",
          "url": "https://docs.frigate.video/frigate/hardware",
          "retrieved": "2026-09-08",
          "verified": "2026-09-08",
          "class": "A",
          "quote": "With an inference speed of 10, your Coral will top out at 1000/10=100, or 100 frames per second."
        }
      ]
    },
    "capacity_rule_2": {
      "id": "capacity_rule_2",
      "value": null,
      "sources": [
        {
          "publisher": "Frigate",
          "document": "Recommended hardware — Frigate documentation",
          "doc_id": "docs.frigate.video/frigate/hardware",
          "url": "https://docs.frigate.video/frigate/hardware",
          "retrieved": "2026-09-08",
          "verified": "2026-09-08",
          "class": "A",
          "quote": "You can calculate the maximum performance of your Coral based on the inference speed reported by Frigate."
        }
      ]
    },
    "coral_status": {
      "id": "coral_status",
      "value": null,
      "sources": [
        {
          "publisher": "Frigate",
          "document": "Recommended hardware — Frigate documentation",
          "doc_id": "docs.frigate.video/frigate/hardware",
          "url": "https://docs.frigate.video/frigate/hardware",
          "retrieved": "2026-09-08",
          "verified": "2026-09-08",
          "class": "A",
          "quote": "The Coral is no longer recommended for new Frigate installations, except in deployments with particularly low power requirements."
        }
      ]
    },
    "cpu_status": {
      "id": "cpu_status",
      "value": null,
      "sources": [
        {
          "publisher": "Frigate",
          "document": "Object Detectors — Frigate documentation",
          "doc_id": "docs.frigate.video/configuration/object_detectors",
          "url": "https://docs.frigate.video/configuration/object_detectors",
          "retrieved": "2026-09-08",
          "verified": "2026-09-08",
          "class": "A",
          "quote": "The CPU detector is not recommended for general use."
        }
      ]
    },
    "hwaccel_default": {
      "id": "hwaccel_default",
      "value": null,
      "sources": [
        {
          "publisher": "Frigate",
          "document": "Full Reference Config — Frigate documentation",
          "doc_id": "docs.frigate.video/configuration/reference",
          "url": "https://docs.frigate.video/configuration/reference",
          "retrieved": "2026-09-08",
          "verified": "2026-09-08",
          "class": "A",
          "quote": "Optional: global hwaccel args (default: auto detect)"
        }
      ]
    },
    "camera_guidance": {
      "id": "camera_guidance",
      "value": null,
      "sources": [
        {
          "publisher": "Frigate",
          "document": "Recommended hardware — Frigate documentation",
          "doc_id": "docs.frigate.video/frigate/hardware",
          "url": "https://docs.frigate.video/frigate/hardware",
          "retrieved": "2026-09-08",
          "verified": "2026-09-08",
          "class": "A",
          "quote": "WiFi cameras are not recommended."
        }
      ]
    }
  },
  "detectors": {
    "edgetpu": {
      "id": "edgetpu",
      "label": "Coral Edge TPU (edgetpu)",
      "platforms_note": "Most Hardware (USB, PCIe, M.2)",
      "default_model": "MobileDet",
      "models": [
        "MobileDet",
        "YOLOv9"
      ],
      "notes": "Due to hardware limitations of the Coral, the labelmap is a subset of the COCO labels and includes only 17 object classes.",
      "sources": [
        {
          "publisher": "Frigate",
          "document": "Object Detectors — Frigate documentation",
          "doc_id": "docs.frigate.video/configuration/object_detectors",
          "url": "https://docs.frigate.video/configuration/object_detectors",
          "retrieved": "2026-09-08",
          "verified": "2026-09-08",
          "class": "A",
          "quote": "Due to hardware limitations of the Coral, the labelmap is a subset of the COCO labels and includes only 17 object classes."
        }
      ]
    },
    "hailo8l": {
      "id": "hailo8l",
      "label": "Hailo (hailo8l)",
      "platforms_note": "M.2 format + RPi HAT",
      "default_model": "YOLOv6n",
      "models": [
        "YOLOv6n",
        "SSD",
        "Custom YOLO"
      ],
      "notes": "The integration automatically detects your hardware architecture via the Hailo CLI and selects the appropriate default model.",
      "sources": [
        {
          "publisher": "Frigate",
          "document": "Object Detectors — Frigate documentation",
          "doc_id": "docs.frigate.video/configuration/object_detectors",
          "url": "https://docs.frigate.video/configuration/object_detectors",
          "retrieved": "2026-09-08",
          "verified": "2026-09-08",
          "class": "A",
          "quote": "The integration automatically detects your hardware architecture via the Hailo CLI and selects the appropriate default model."
        }
      ]
    },
    "openvino": {
      "id": "openvino",
      "label": "OpenVINO (openvino)",
      "platforms_note": "Intel/AMD CPUs, Intel Arc/iGPU/NPU",
      "default_model": "SSDLite MobileNet v2",
      "models": [
        "YOLOv9",
        "RF-DETR",
        "YOLO-NAS",
        "MobileNet v2",
        "YOLOX",
        "D-FINE",
        "DEIMv2"
      ],
      "notes": "NPU + GPU Systems: use NPU for object detection and GPU for enrichments for best performance.",
      "sources": [
        {
          "publisher": "Frigate",
          "document": "Object Detectors — Frigate documentation",
          "doc_id": "docs.frigate.video/configuration/object_detectors",
          "url": "https://docs.frigate.video/configuration/object_detectors",
          "retrieved": "2026-09-08",
          "verified": "2026-09-08",
          "class": "A",
          "quote": "NPU + GPU Systems: use NPU for object detection and GPU for enrichments for best performance."
        }
      ]
    },
    "onnx": {
      "id": "onnx",
      "label": "ONNX (onnx)",
      "platforms_note": "Nvidia GPU, AMD GPU, Intel, Jetson",
      "default_model": null,
      "models": [
        "YOLOv9",
        "RF-DETR",
        "YOLO-NAS",
        "YOLOX",
        "D-FINE",
        "DEIMv2"
      ],
      "notes": "On startup Frigate will automatically try to use a GPU if one is available.",
      "sources": [
        {
          "publisher": "Frigate",
          "document": "Object Detectors — Frigate documentation",
          "doc_id": "docs.frigate.video/configuration/object_detectors",
          "url": "https://docs.frigate.video/configuration/object_detectors",
          "retrieved": "2026-09-08",
          "verified": "2026-09-08",
          "class": "A",
          "quote": "On startup Frigate will automatically try to use a GPU if one is available."
        }
      ]
    },
    "tensorrt": {
      "id": "tensorrt",
      "label": "TensorRT (tensorrt, Jetson)",
      "platforms_note": "Nvidia Jetson (TensorRT-enabled)",
      "default_model": null,
      "models": [
        "YOLOv3",
        "YOLOv4",
        "YOLOv7"
      ],
      "notes": "This detector is only provided in images with the -tensorrt-jp6 tag suffix.",
      "sources": [
        {
          "publisher": "Frigate",
          "document": "Object Detectors — Frigate documentation",
          "doc_id": "docs.frigate.video/configuration/object_detectors",
          "url": "https://docs.frigate.video/configuration/object_detectors",
          "retrieved": "2026-09-08",
          "verified": "2026-09-08",
          "class": "A",
          "quote": "This detector is only provided in images with the -tensorrt-jp6 tag suffix."
        }
      ]
    },
    "rknn": {
      "id": "rknn",
      "label": "Rockchip RKNN (rknn)",
      "platforms_note": "Rockchip (RK3562, RK3566, RK3568, RK3576, RK3588)",
      "default_model": "YOLO-NAS",
      "models": [
        "YOLO-NAS",
        "YOLOv9",
        "YOLOx"
      ],
      "notes": "Uses Rockchip's RKNN-Toolkit2, version v2.3.2.",
      "sources": [
        {
          "publisher": "Frigate",
          "document": "Object Detectors — Frigate documentation",
          "doc_id": "docs.frigate.video/configuration/object_detectors",
          "url": "https://docs.frigate.video/configuration/object_detectors",
          "retrieved": "2026-09-08",
          "verified": "2026-09-08",
          "class": "A",
          "quote": "Uses Rockchip's RKNN-Toolkit2, version v2.3.2."
        }
      ]
    },
    "cpu": {
      "id": "cpu",
      "label": "CPU (cpu)",
      "platforms_note": "Any (not recommended)",
      "default_model": "TensorFlow Lite model",
      "models": [
        "Custom TensorFlow Lite"
      ],
      "notes": "The CPU detector is not recommended for general use.",
      "sources": [
        {
          "publisher": "Frigate",
          "document": "Object Detectors — Frigate documentation",
          "doc_id": "docs.frigate.video/configuration/object_detectors",
          "url": "https://docs.frigate.video/configuration/object_detectors",
          "retrieved": "2026-09-08",
          "verified": "2026-09-08",
          "class": "A",
          "quote": "The CPU detector is not recommended for general use."
        }
      ]
    },
    "memryx": {
      "id": "memryx",
      "label": "MemryX MX3 (memryx)",
      "platforms_note": "MemryX MX3 M.2 module",
      "default_model": "YOLO-NAS 320x320",
      "models": [
        "YOLO-NAS",
        "YOLOv9",
        "YOLOX",
        "SSDLite MobileNet v2"
      ],
      "notes": "320x320 optimized for lower CPU usage and faster inference times.",
      "sources": [
        {
          "publisher": "Frigate",
          "document": "Object Detectors — Frigate documentation",
          "doc_id": "docs.frigate.video/configuration/object_detectors",
          "url": "https://docs.frigate.video/configuration/object_detectors",
          "retrieved": "2026-09-08",
          "verified": "2026-09-08",
          "class": "A",
          "quote": "320x320 optimized for lower CPU usage and faster inference times."
        }
      ]
    }
  },
  "inference": {
    "coral_tpu": {
      "id": "coral_tpu",
      "detector": "edgetpu",
      "model": "MobileDet",
      "ms": 10,
      "ms_max": null,
      "alt": null,
      "note": "The documentation's worked example; the Coral is no longer recommended for new installations.",
      "sources": [
        {
          "publisher": "Frigate",
          "document": "Recommended hardware — Frigate documentation",
          "doc_id": "docs.frigate.video/frigate/hardware",
          "url": "https://docs.frigate.video/frigate/hardware",
          "retrieved": "2026-09-08",
          "verified": "2026-09-08",
          "class": "C",
          "quote": "With an inference speed of 10, your Coral will top out at 1000/10=100, or 100 frames per second."
        }
      ]
    },
    "hailo_8": {
      "id": "hailo_8",
      "detector": "hailo8l",
      "model": "YOLOv6n",
      "ms": 7,
      "ms_max": null,
      "alt": {
        "model": "SSD MobileNet v1",
        "ms": 6
      },
      "note": null,
      "sources": [
        {
          "publisher": "Frigate",
          "document": "Recommended hardware — Frigate documentation",
          "doc_id": "docs.frigate.video/frigate/hardware",
          "url": "https://docs.frigate.video/frigate/hardware",
          "retrieved": "2026-09-08",
          "verified": "2026-09-08",
          "class": "C",
          "quote": "ssd mobilenet v1: ~ 6 ms / ~ 10 ms; yolov6n: ~ 7 ms / ~ 11 ms"
        }
      ]
    },
    "hailo_8l": {
      "id": "hailo_8l",
      "detector": "hailo8l",
      "model": "YOLOv6n",
      "ms": 11,
      "ms_max": null,
      "alt": {
        "model": "SSD MobileNet v1",
        "ms": 10
      },
      "note": null,
      "sources": [
        {
          "publisher": "Frigate",
          "document": "Recommended hardware — Frigate documentation",
          "doc_id": "docs.frigate.video/frigate/hardware",
          "url": "https://docs.frigate.video/frigate/hardware",
          "retrieved": "2026-09-08",
          "verified": "2026-09-08",
          "class": "C",
          "quote": "ssd mobilenet v1: ~ 6 ms / ~ 10 ms; yolov6n: ~ 7 ms / ~ 11 ms"
        }
      ]
    },
    "jetson": {
      "id": "jetson",
      "detector": "tensorrt",
      "model": "YOLO (v3 / v4 / v7)",
      "ms": 20,
      "ms_max": 40,
      "alt": null,
      "note": "Applies to every Jetson module; the documentation gives no per-module figure.",
      "sources": [
        {
          "publisher": "Frigate",
          "document": "Recommended hardware — Frigate documentation",
          "doc_id": "docs.frigate.video/frigate/hardware",
          "url": "https://docs.frigate.video/frigate/hardware",
          "retrieved": "2026-09-08",
          "verified": "2026-09-08",
          "class": "C",
          "quote": "Inference speed will vary depending on the YOLO model, jetson platform and jetson nvpmodel (GPU/DLA/EMC clock speed). It is typically 20-40 ms for most models."
        }
      ]
    },
    "rk3588_npu": {
      "id": "rk3588_npu",
      "detector": "rknn",
      "model": "YOLOv9 small",
      "ms": 20,
      "ms_max": null,
      "alt": null,
      "note": null,
      "sources": [
        {
          "publisher": "Frigate",
          "document": "Recommended hardware — Frigate documentation",
          "doc_id": "docs.frigate.video/frigate/hardware",
          "url": "https://docs.frigate.video/frigate/hardware",
          "retrieved": "2026-09-08",
          "verified": "2026-09-08",
          "class": "C",
          "quote": "rk3588 3 cores tiny: ~ 35 ms small: ~ 20 ms; rk3566 1 core small: ~ 96 ms"
        }
      ]
    },
    "rk3566_npu": {
      "id": "rk3566_npu",
      "detector": "rknn",
      "model": "YOLOv9 small",
      "ms": 96,
      "ms_max": null,
      "alt": null,
      "note": null,
      "sources": [
        {
          "publisher": "Frigate",
          "document": "Recommended hardware — Frigate documentation",
          "doc_id": "docs.frigate.video/frigate/hardware",
          "url": "https://docs.frigate.video/frigate/hardware",
          "retrieved": "2026-09-08",
          "verified": "2026-09-08",
          "class": "C",
          "quote": "rk3588 3 cores tiny: ~ 35 ms small: ~ 20 ms; rk3566 1 core small: ~ 96 ms"
        }
      ]
    },
    "intel_n100": {
      "id": "intel_n100",
      "detector": "openvino",
      "model": "MobileNet v2 / YOLOv9",
      "ms": 15,
      "ms_max": null,
      "alt": null,
      "note": null,
      "sources": [
        {
          "publisher": "Frigate",
          "document": "Recommended hardware — Frigate documentation",
          "doc_id": "docs.frigate.video/frigate/hardware",
          "url": "https://docs.frigate.video/frigate/hardware",
          "retrieved": "2026-09-08",
          "verified": "2026-09-08",
          "class": "C",
          "quote": "Intel N100: ~ 15 ms; Intel UHD 770: ~ 15 ms; Intel Arc A750: ~ 4 ms"
        }
      ]
    },
    "intel_uhd_770": {
      "id": "intel_uhd_770",
      "detector": "openvino",
      "model": "MobileNet v2 / YOLOv9",
      "ms": 15,
      "ms_max": null,
      "alt": null,
      "note": null,
      "sources": [
        {
          "publisher": "Frigate",
          "document": "Recommended hardware — Frigate documentation",
          "doc_id": "docs.frigate.video/frigate/hardware",
          "url": "https://docs.frigate.video/frigate/hardware",
          "retrieved": "2026-09-08",
          "verified": "2026-09-08",
          "class": "C",
          "quote": "Intel N100: ~ 15 ms; Intel UHD 770: ~ 15 ms; Intel Arc A750: ~ 4 ms"
        }
      ]
    },
    "intel_arc_a750": {
      "id": "intel_arc_a750",
      "detector": "openvino",
      "model": "MobileNet v2",
      "ms": 4,
      "ms_max": null,
      "alt": null,
      "note": null,
      "sources": [
        {
          "publisher": "Frigate",
          "document": "Recommended hardware — Frigate documentation",
          "doc_id": "docs.frigate.video/frigate/hardware",
          "url": "https://docs.frigate.video/frigate/hardware",
          "retrieved": "2026-09-08",
          "verified": "2026-09-08",
          "class": "C",
          "quote": "Intel N100: ~ 15 ms; Intel UHD 770: ~ 15 ms; Intel Arc A750: ~ 4 ms"
        }
      ]
    },
    "intel_npu": {
      "id": "intel_npu",
      "detector": "openvino",
      "model": "MobileNet v2",
      "ms": 6,
      "ms_max": null,
      "alt": null,
      "note": null,
      "sources": [
        {
          "publisher": "Frigate",
          "document": "Recommended hardware — Frigate documentation",
          "doc_id": "docs.frigate.video/frigate/hardware",
          "url": "https://docs.frigate.video/frigate/hardware",
          "retrieved": "2026-09-08",
          "verified": "2026-09-08",
          "class": "C",
          "quote": "Intel NPU: ~ 6 ms"
        }
      ]
    },
    "amd_780m": {
      "id": "amd_780m",
      "detector": "onnx",
      "model": "YOLOv9 t-320",
      "ms": 14,
      "ms_max": 20,
      "alt": null,
      "note": null,
      "sources": [
        {
          "publisher": "Frigate",
          "document": "Recommended hardware — Frigate documentation",
          "doc_id": "docs.frigate.video/frigate/hardware",
          "url": "https://docs.frigate.video/frigate/hardware",
          "retrieved": "2026-09-08",
          "verified": "2026-09-08",
          "class": "C",
          "quote": "AMD 780M: t-320: ~ 14 ms s-320: 20 ms"
        }
      ]
    },
    "nvidia_gtx_1070": {
      "id": "nvidia_gtx_1070",
      "detector": "onnx",
      "model": "YOLOv9 s-320",
      "ms": 16,
      "ms_max": null,
      "alt": null,
      "note": null,
      "sources": [
        {
          "publisher": "Frigate",
          "document": "Recommended hardware — Frigate documentation",
          "doc_id": "docs.frigate.video/frigate/hardware",
          "url": "https://docs.frigate.video/frigate/hardware",
          "retrieved": "2026-09-08",
          "verified": "2026-09-08",
          "class": "C",
          "quote": "GTX 1070: s-320: 16 ms; RTX 3050: t-320: 8 ms s-320: 10 ms; RTX 3070: t-320: 6 ms s-320: 8 ms"
        }
      ]
    },
    "nvidia_rtx_3050": {
      "id": "nvidia_rtx_3050",
      "detector": "onnx",
      "model": "YOLOv9 t-320",
      "ms": 8,
      "ms_max": 10,
      "alt": null,
      "note": null,
      "sources": [
        {
          "publisher": "Frigate",
          "document": "Recommended hardware — Frigate documentation",
          "doc_id": "docs.frigate.video/frigate/hardware",
          "url": "https://docs.frigate.video/frigate/hardware",
          "retrieved": "2026-09-08",
          "verified": "2026-09-08",
          "class": "C",
          "quote": "GTX 1070: s-320: 16 ms; RTX 3050: t-320: 8 ms s-320: 10 ms; RTX 3070: t-320: 6 ms s-320: 8 ms"
        }
      ]
    },
    "nvidia_rtx_3070": {
      "id": "nvidia_rtx_3070",
      "detector": "onnx",
      "model": "YOLOv9 t-320",
      "ms": 6,
      "ms_max": 8,
      "alt": null,
      "note": null,
      "sources": [
        {
          "publisher": "Frigate",
          "document": "Recommended hardware — Frigate documentation",
          "doc_id": "docs.frigate.video/frigate/hardware",
          "url": "https://docs.frigate.video/frigate/hardware",
          "retrieved": "2026-09-08",
          "verified": "2026-09-08",
          "class": "C",
          "quote": "GTX 1070: s-320: 16 ms; RTX 3050: t-320: 8 ms s-320: 10 ms; RTX 3070: t-320: 6 ms s-320: 8 ms"
        }
      ]
    },
    "memryx_mx3": {
      "id": "memryx_mx3",
      "detector": "memryx",
      "model": "YOLO-NAS Small 320",
      "ms": 9,
      "ms_max": null,
      "alt": null,
      "note": null,
      "sources": [
        {
          "publisher": "Frigate",
          "document": "Recommended hardware — Frigate documentation",
          "doc_id": "docs.frigate.video/frigate/hardware",
          "url": "https://docs.frigate.video/frigate/hardware",
          "retrieved": "2026-09-08",
          "verified": "2026-09-08",
          "class": "C",
          "quote": "YOLO-NAS-Small 320: ~ 9 ms (~378 FPS max)"
        }
      ]
    }
  },
  "platforms": {
    "jetson_orin_nano": {
      "id": "jetson_orin_nano",
      "label": "Jetson Orin Nano 8GB",
      "family": "jetson",
      "detector": "tensorrt",
      "inference": "jetson",
      "decode_preset": "preset-jetson-h264 / preset-jetson-h265",
      "image_tag": "-tensorrt-jp6",
      "note": null,
      "mapping_class": "A"
    },
    "jetson_orin_nano_super": {
      "id": "jetson_orin_nano_super",
      "label": "Jetson Orin Nano Super",
      "family": "jetson",
      "detector": "tensorrt",
      "inference": "jetson",
      "decode_preset": "preset-jetson-h264 / preset-jetson-h265",
      "image_tag": "-tensorrt-jp6",
      "note": null,
      "mapping_class": "A"
    },
    "jetson_orin_nx_8gb": {
      "id": "jetson_orin_nx_8gb",
      "label": "Jetson Orin NX 8GB",
      "family": "jetson",
      "detector": "tensorrt",
      "inference": "jetson",
      "decode_preset": "preset-jetson-h264 / preset-jetson-h265",
      "image_tag": "-tensorrt-jp6",
      "note": null,
      "mapping_class": "A"
    },
    "jetson_orin_nx": {
      "id": "jetson_orin_nx",
      "label": "Jetson Orin NX 16GB",
      "family": "jetson",
      "detector": "tensorrt",
      "inference": "jetson",
      "decode_preset": "preset-jetson-h264 / preset-jetson-h265",
      "image_tag": "-tensorrt-jp6",
      "note": null,
      "mapping_class": "A"
    },
    "jetson_agx_orin_32gb": {
      "id": "jetson_agx_orin_32gb",
      "label": "Jetson AGX Orin 32GB",
      "family": "jetson",
      "detector": "tensorrt",
      "inference": "jetson",
      "decode_preset": "preset-jetson-h264 / preset-jetson-h265",
      "image_tag": "-tensorrt-jp6",
      "note": null,
      "mapping_class": "A"
    },
    "jetson_agx_orin": {
      "id": "jetson_agx_orin",
      "label": "Jetson AGX Orin 64GB",
      "family": "jetson",
      "detector": "tensorrt",
      "inference": "jetson",
      "decode_preset": "preset-jetson-h264 / preset-jetson-h265",
      "image_tag": "-tensorrt-jp6",
      "note": null,
      "mapping_class": "A"
    },
    "jetson_thor_t5000": {
      "id": "jetson_thor_t5000",
      "label": "Jetson Thor T5000",
      "family": "jetson",
      "detector": "tensorrt",
      "inference": "jetson",
      "decode_preset": "preset-jetson-h264 / preset-jetson-h265",
      "image_tag": "-tensorrt-jp6",
      "note": "Thor runs JetPack 7; the documentation names only the -tensorrt-jp6 image — treat as needing validation.",
      "mapping_class": "A"
    },
    "jetson_thor_t4000": {
      "id": "jetson_thor_t4000",
      "label": "Jetson Thor T4000",
      "family": "jetson",
      "detector": "tensorrt",
      "inference": "jetson",
      "decode_preset": "preset-jetson-h264 / preset-jetson-h265",
      "image_tag": "-tensorrt-jp6",
      "note": "Thor runs JetPack 7; the documentation names only the -tensorrt-jp6 image — treat as needing validation.",
      "mapping_class": "A"
    },
    "hailo_8": {
      "id": "hailo_8",
      "label": "Hailo-8 (M.2 / HAT)",
      "family": "hailo",
      "detector": "hailo8l",
      "inference": "hailo_8",
      "decode_preset": "host-dependent (preset-rpi-64-h265 on a Raspberry Pi 5, preset-vaapi / qsv on Intel)",
      "image_tag": null,
      "note": null,
      "mapping_class": "A"
    },
    "hailo_8l": {
      "id": "hailo_8l",
      "label": "Hailo-8L (M.2 / AI Kit)",
      "family": "hailo",
      "detector": "hailo8l",
      "inference": "hailo_8l",
      "decode_preset": "host-dependent (preset-rpi-64-h265 on a Raspberry Pi 5, preset-vaapi / qsv on Intel)",
      "image_tag": null,
      "note": null,
      "mapping_class": "A"
    },
    "coral_tpu": {
      "id": "coral_tpu",
      "label": "Google Coral Edge TPU",
      "family": "coral",
      "detector": "edgetpu",
      "inference": "coral_tpu",
      "decode_preset": "host-dependent",
      "image_tag": null,
      "note": null,
      "mapping_class": "A"
    },
    "rk3588_npu": {
      "id": "rk3588_npu",
      "label": "Rockchip RK3588",
      "family": "rockchip",
      "detector": "rknn",
      "inference": "rk3588_npu",
      "decode_preset": "preset-rkmpp",
      "image_tag": null,
      "note": null,
      "mapping_class": "A"
    },
    "neousys_nuvo9531": {
      "id": "neousys_nuvo9531",
      "label": "Neousys Nuvo-9531 (Intel 12th/13th gen)",
      "family": "intel",
      "detector": "openvino",
      "inference": "intel_uhd_770",
      "decode_preset": "preset-intel-qsv-h264 / preset-intel-qsv-h265",
      "image_tag": null,
      "note": null,
      "mapping_class": "A"
    },
    "intel_n100": {
      "id": "intel_n100",
      "label": "Intel N100 mini PC",
      "family": "intel",
      "detector": "openvino",
      "inference": "intel_n100",
      "decode_preset": "preset-intel-qsv-h264 / preset-intel-qsv-h265",
      "image_tag": null,
      "note": null,
      "mapping_class": "A"
    },
    "nvidia_a2_server": {
      "id": "nvidia_a2_server",
      "label": "NVIDIA A2 server",
      "family": "nvidia_gpu",
      "detector": "onnx",
      "inference": "nvidia_rtx_3050",
      "decode_preset": "preset-nvidia",
      "image_tag": null,
      "note": "No Frigate figure for the A2; the RTX 3050 row is the nearest published class (Ampere, similar TDP) — class D mapping.",
      "mapping_class": "D"
    },
    "nvidia_l4_server": {
      "id": "nvidia_l4_server",
      "label": "NVIDIA L4 server",
      "family": "nvidia_gpu",
      "detector": "onnx",
      "inference": "nvidia_rtx_3070",
      "decode_preset": "preset-nvidia",
      "image_tag": null,
      "note": "No Frigate figure for the L4; the RTX 3070 row is the nearest published class — class D mapping.",
      "mapping_class": "D"
    },
    "nvidia_a10_server": {
      "id": "nvidia_a10_server",
      "label": "NVIDIA A10 server",
      "family": "nvidia_gpu",
      "detector": "onnx",
      "inference": "nvidia_rtx_3070",
      "decode_preset": "preset-nvidia",
      "image_tag": null,
      "note": "No Frigate figure for the A10; the RTX 3070 row is the nearest published class — class D mapping.",
      "mapping_class": "D"
    },
    "nvidia_l40s_server": {
      "id": "nvidia_l40s_server",
      "label": "NVIDIA L40S server",
      "family": "nvidia_gpu",
      "detector": "onnx",
      "inference": "nvidia_rtx_3070",
      "decode_preset": "preset-nvidia",
      "image_tag": null,
      "note": "No Frigate figure for the L40S; the RTX 3070 row is the nearest published class — class D mapping.",
      "mapping_class": "D"
    }
  },
  "decode_presets": {
    "preset-vaapi": {
      "id": "preset-vaapi",
      "platform": "Intel (gen1-gen7), AMD",
      "sources": [
        {
          "publisher": "Frigate",
          "document": "Video Decoding — Frigate documentation",
          "doc_id": "docs.frigate.video/configuration/hardware_acceleration_video",
          "url": "https://docs.frigate.video/configuration/hardware_acceleration_video",
          "retrieved": "2026-09-08",
          "verified": "2026-09-08",
          "class": "A",
          "quote": "VAAPI supports automatic profile selection so it will work automatically with both H.264 and H.265 streams."
        }
      ]
    },
    "preset-intel-qsv-h264": {
      "id": "preset-intel-qsv-h264",
      "platform": "Intel (gen8+)",
      "sources": [
        {
          "publisher": "Frigate",
          "document": "Video Decoding — Frigate documentation",
          "doc_id": "docs.frigate.video/configuration/hardware_acceleration_video",
          "url": "https://docs.frigate.video/configuration/hardware_acceleration_video",
          "retrieved": "2026-09-08",
          "verified": "2026-09-08",
          "class": "A",
          "quote": "preset-intel-qsv-h264"
        }
      ]
    },
    "preset-intel-qsv-h265": {
      "id": "preset-intel-qsv-h265",
      "platform": "Intel (gen8+)",
      "sources": [
        {
          "publisher": "Frigate",
          "document": "Video Decoding — Frigate documentation",
          "doc_id": "docs.frigate.video/configuration/hardware_acceleration_video",
          "url": "https://docs.frigate.video/configuration/hardware_acceleration_video",
          "retrieved": "2026-09-08",
          "verified": "2026-09-08",
          "class": "A",
          "quote": "preset-intel-qsv-h265"
        }
      ]
    },
    "preset-nvidia": {
      "id": "preset-nvidia",
      "platform": "NVIDIA GPU",
      "sources": [
        {
          "publisher": "Frigate",
          "document": "Video Decoding — Frigate documentation",
          "doc_id": "docs.frigate.video/configuration/hardware_acceleration_video",
          "url": "https://docs.frigate.video/configuration/hardware_acceleration_video",
          "retrieved": "2026-09-08",
          "verified": "2026-09-08",
          "class": "A",
          "quote": "ffmpeg will automatically select the necessary profile for the incoming video."
        }
      ]
    },
    "preset-rpi-64-h264": {
      "id": "preset-rpi-64-h264",
      "platform": "Raspberry Pi 3/4",
      "sources": [
        {
          "publisher": "Frigate",
          "document": "Video Decoding — Frigate documentation",
          "doc_id": "docs.frigate.video/configuration/hardware_acceleration_video",
          "url": "https://docs.frigate.video/configuration/hardware_acceleration_video",
          "retrieved": "2026-09-08",
          "verified": "2026-09-08",
          "class": "A",
          "quote": "preset-rpi-64-h264"
        }
      ]
    },
    "preset-rpi-64-h265": {
      "id": "preset-rpi-64-h265",
      "platform": "Raspberry Pi 3/4",
      "sources": [
        {
          "publisher": "Frigate",
          "document": "Video Decoding — Frigate documentation",
          "doc_id": "docs.frigate.video/configuration/hardware_acceleration_video",
          "url": "https://docs.frigate.video/configuration/hardware_acceleration_video",
          "retrieved": "2026-09-08",
          "verified": "2026-09-08",
          "class": "A",
          "quote": "preset-rpi-64-h265"
        }
      ]
    },
    "preset-jetson-h264": {
      "id": "preset-jetson-h264",
      "platform": "NVIDIA Jetson",
      "sources": [
        {
          "publisher": "Frigate",
          "document": "Video Decoding — Frigate documentation",
          "doc_id": "docs.frigate.video/configuration/hardware_acceleration_video",
          "url": "https://docs.frigate.video/configuration/hardware_acceleration_video",
          "retrieved": "2026-09-08",
          "verified": "2026-09-08",
          "class": "A",
          "quote": "preset-jetson-h264"
        }
      ]
    },
    "preset-jetson-h265": {
      "id": "preset-jetson-h265",
      "platform": "NVIDIA Jetson",
      "sources": [
        {
          "publisher": "Frigate",
          "document": "Video Decoding — Frigate documentation",
          "doc_id": "docs.frigate.video/configuration/hardware_acceleration_video",
          "url": "https://docs.frigate.video/configuration/hardware_acceleration_video",
          "retrieved": "2026-09-08",
          "verified": "2026-09-08",
          "class": "A",
          "quote": "preset-jetson-h265"
        }
      ]
    },
    "preset-rkmpp": {
      "id": "preset-rkmpp",
      "platform": "Rockchip SoC",
      "sources": [
        {
          "publisher": "Frigate",
          "document": "Video Decoding — Frigate documentation",
          "doc_id": "docs.frigate.video/configuration/hardware_acceleration_video",
          "url": "https://docs.frigate.video/configuration/hardware_acceleration_video",
          "retrieved": "2026-09-08",
          "verified": "2026-09-08",
          "class": "A",
          "quote": "preset-rkmpp"
        }
      ]
    }
  },
  "gaps": [
    "Frigate publishes one inference band for every Jetson module (20–40 ms); no per-module or per-power-mode figure.",
    "The Coral figure is the documentation's worked example (10 ms), not a benchmark table row.",
    "Server GPUs in the EdgeAIStack catalog (A2, L4, A10, L40S) have no Frigate figure; the nearest published consumer GPU row is used and marked class D.",
    "Raspberry Pi 5 decode: the Video Decoding page lists Raspberry Pi 3/4 presets; Pi 5 (no H.264 hardware decode) relies on software decode for H.264 — not stated by Frigate.",
    "Detection load scales with motion, not with camera count; the capacity check assumes every camera is detecting at the detect fps (worst case)."
  ]
}
