Files
frigate/docs/docs/configuration/cameras.md
T
ce3a544ecd Feature: automatic camera resolution configuration (#6810)
* Add auto configuration for height, width and fps in detect role

* Add auto-configuration for detect width, height, and fps for input roles with detect in the CameraConfig class in config.py

* Refactor code to retrieve video properties from input stream in CameraConfig class and add optional parameter to retrieve video duration in get_video_properties function

* format

* Set default detect dimensions to 1280x720 and update DetectConfig to use the defaults

* Revert "Set default detect dimensions to 1280x720 and update DetectConfig to use the defaults"

This reverts commit a1aed0414d75a6db0a826c08359740764c4861e5.

* Add default detect dimensions if autoconfiguration failed and log a warning message

* fix warn message spelling on frigate/config.py

Co-authored-by: Nicolas Mowen <nickmowen213@gmail.com>

* Ensure detect height and width are not None before using them in camera configuration

* docs: initial commit

* rename streamInfo to stream_info

Co-authored-by: Blake Blackshear <blakeb@blakeshome.com>

* Apply suggestions from code review

Co-authored-by: Nicolas Mowen <nickmowen213@gmail.com>

* Update docs

* handle case then get_video_properties returns 0x0 dimension

* Set detect resolution based on stream properties if available, else apply default values

* Update FrigateConfig to set default values for stream_info if resolution detection fails

* Update camera detection dimensions based on stream information if available

---------

Co-authored-by: Nicolas Mowen <nickmowen213@gmail.com>
Co-authored-by: Blake Blackshear <blakeb@blakeshome.com>
2023-07-14 06:56:03 -05:00

2.5 KiB

id, title
id title
cameras Cameras

Setting Up Camera Inputs

Several inputs can be configured for each camera and the role of each input can be mixed and matched based on your needs. This allows you to use a lower resolution stream for object detection, but create recordings from a higher resolution stream, or vice versa.

A camera is enabled by default but can be temporarily disabled by using enabled: False. Existing events and recordings can still be accessed. Live streams, recording and detecting are not working. Camera specific configurations will be used.

Each role can only be assigned to one input per camera. The options for roles are as follows:

Role Description
detect Main feed for object detection
record Saves segments of the video feed based on configuration settings. docs
rtmp Deprecated: Broadcast as an RTMP feed for other services to consume. docs
mqtt:
  host: mqtt.server.com
cameras:
  back:
    enabled: True
    ffmpeg:
      inputs:
        - path: rtsp://viewer:{FRIGATE_RTSP_PASSWORD}@10.0.10.10:554/cam/realmonitor?channel=1&subtype=2
          roles:
            - detect
            - rtmp # <- deprecated, recommend using restream instead
        - path: rtsp://viewer:{FRIGATE_RTSP_PASSWORD}@10.0.10.10:554/live
          roles:
            - record
    detect:
      width: 1280 # <- optional, by default Frigate tries to automatically detect resolution 
      height: 720 # <- optional, by default Frigate tries to automatically detect resolution 

Additional cameras are simply added to the config under the cameras entry.

mqtt: ...
cameras:
  back: ...
  front: ...
  side: ...

For camera model specific settings check the camera specific infos.

Setting up camera PTZ controls

Add onvif config to camera

cameras:
  back:
    ffmpeg:
      ...
    onvif:
      host: 10.0.10.10
      port: 8000
      user: admin
      password: password

then PTZ controls will be available in the cameras WebUI.

An ONVIF-capable camera that supports relative movement within the field of view (FOV) can also be configured to automatically track moving objects and keep them in the center of the frame. For autotracking setup, see the autotracking docs.