pdf-icon

Frigate

Frigate is an open-source NVR built around real-time AI object detection. All processing is performed locally on your own hardware, and your camera video streams never leave your home.

  1. Manually download the program and upload it to AI Pyramid, or pull the model repository using the following command.
Tip
If git lfs is not installed, first refer to the git lfs installation guide to install it.
git clone -b main https://huggingface.co/AXERA-TECH/frigate-resource

File Description:

root@m5stack-AI-Pyramid:~/rsp/frigate-resource# ls -lh
total 2.0G
-rw-rw-r-- 1 axera axera    0 Dec 23 16:36 config.json
-rw-rw-r-- 1 axera axera  693 Dec 23 16:36 docker-compose.yml
-rw-rw-r-- 1 axera axera 2.0G Dec 23 16:39 frigate-ax650-b8db93b.tar
-rw-rw-r-- 1 axera axera 3.0K Dec 23 16:36 README.md
  1. Import the Docker image
docker load -i frigate-resource/frigate-ax650-b8db93b.tar # The image file may be updated; please refer to the actual filename.
  1. Prepare the working directory
mkdir -p ~/frigate-runtime/{config,storage}
cp frigate-resource/docker-compose.yml ~/frigate-runtime/
  1. Start the container
cd ~/frigate-runtime/
docker compose up -d
  1. Access the Frigate management web interface via https://server_ip:8971
Tip
Default username admin Default password axera123456
  1. Click Settings, configure the parameters, and fill in the following content. Modify the go2rtc section to your own IP Camera address, then save and restart.

Configuration example

# ffmpeg global variables, required
ffmpeg:
  global_args: ["-hide_banner", "-loglevel", "warning", "-threads", "1"]
  output_args:
    detect: ["-threads", "1", "-f", "rawvideo"]

mqtt:
  enabled: false
go2rtc:
  streams:
    # main stream
    road1:
      - rtsp://192.168.20.57:8554/road1.264
    # sub stream
    road1_sub:
      - rtsp://192.168.20.57:8554/road1_sub.264
cameras:
  road1:
    enabled: true
    ffmpeg:
      inputs:
        # Path of the recording stream, using the main stream configured in go2rtc
        # During debugging, local stream files can be used here
        - path: rtsp://127.0.0.1:8554/road1
          roles:
            - record
        # Path of the detection stream, using the sub stream configured in go2rtc
        # During debugging, local stream files can be used here
        - path: rtsp://127.0.0.1:8554/road1_sub
          roles:
            - detect
      # preset-axera-h264 is used to decode H.264 streams
      # preset-axera-h265 is used to decode H.265 streams
      # These two decoding parameters are preferred
      hwaccel_args: preset-axera-h264
      # If the resolution of the detection sub stream is lower than the detection resolution,
      # you can reduce the detection resolution to match the stream
      # or use preset-axera-h264-compat / preset-axera-h265-compat decoding parameters
    
record:
  enabled: true
 
# Enable detection
# If detection width and height are not set, the native resolution of the detection stream is used by default
detect:
  enabled: true
  width: 512
  height: 320
  fps: 5
 
# Configure the detection engine to use axengine
detectors:
  axengine:
    type: axengine
 
# Configure the object detection model for axengine
model:
  path: frigate-yolov9-tiny
  model_type: yolo-generic
  width: 320
  height: 320
  input_pixel_format: bgr
  labelmap_path: /labelmap/coco-80.txt
 
# Object types to track
objects:
  track:
    - person
    - car
    - bicycle
    - motorcycle
 
version: 0.16-0

You can preview the configuration in Settings

On This Page