Remove dev env var requirement and update docs for latest config (#10483)

* Update docs for alerts and event review

* Add docs for camera groups

* Update reference config with new config values

* Remove env variable requirement

* Add to sidebar

* Update snapshot docs

* add zones example to detection docs too

* Generalize the zone docs
This commit is contained in:
Nicolas Mowen 2024-04-28 08:35:50 -06:00 committed by GitHub
parent 3348af1e6d
commit 8c610bea49
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
7 changed files with 120 additions and 23 deletions

View File

@ -94,3 +94,23 @@ This list of working and non-working PTZ cameras is based on user feedback.
| Tapo C210 | ❌ | ❌ | Incomplete ONVIF support |
| Uniview IPC672LR-AX4DUPK | ✅ | ❌ | Firmware says FOV relative movement is supported, but camera doesn't actually move when sending ONVIF commands |
| Vikylin PTZ-2804X-I2 | ❌ | ❌ | Incomplete ONVIF support |
## Setting up camera groups
:::tip
It is recommended to set up camera groups using the UI.
:::
Cameras can be grouped together and assigned a name and icon, this allows them to be reviewed and filtered together. There will always be the default group for all cameras.
```yaml
camera_groups:
front:
cameras:
- driveway_cam
- garage_cam
icon: car
order: 0
```

View File

@ -653,4 +653,19 @@ telemetry:
# Optional: Enable the latest version outbound check (default: shown below)
# NOTE: If you use the HomeAssistant integration, disabling this will prevent it from reporting new versions
version_check: True
# Optional: Camera groups (default: no groups are setup)
# NOTE: It is recommended to use the UI to setup camera groups
camera_groups:
# Required: Name of camera group
front:
# Required: list of cameras in the group
cameras:
- front_cam
- side_cam
- front_doorbell_cam
# Required: icon used for group
icon: car
# Required: index of this group
order: 0
```

View File

@ -0,0 +1,47 @@
---
id: review
title: Review
---
Review items are saved as periods of time where frigate detected events. After watching the preview of a review item it is marked as reviewed.
## Restricting alerts to specific labels
By default a review item will only be marked as an alert if a person or car is detected. This can be configured to include any object or audio label using the following config:
```yaml
# can be overridden at the camera level
review:
alerts:
labels:
- car
- cat
- dog
- person
- speech
```
## Restricting detections to specific labels
By default all detections that do not qualify as an alert qualify as a detection. However, detections can further be filtered to only include certain labels or certain zones.
By default a review item will only be marked as an alert if a person or car is detected. This can be configured to include any object or audio label using the following config:
```yaml
# can be overridden at the camera level
review:
detections:
labels:
- bark
- dog
```
## Restricting review items to specific zones
By default a review item will be created if any `review -> alerts -> labels` and `review -> detections -> labels` are detected anywhere in the camera frame. You will likely want to configure review items to only be created when the object enters an area of interest, [see the zone docs for more information](./zones.md#restricting-alerts-and-detections-to-specific-zones)
:::info
Because zones don't apply to audio, audio labels will always be marked as an alert.
:::

View File

@ -3,6 +3,8 @@ id: snapshots
title: Snapshots
---
Frigate can save a snapshot image to `/media/frigate/clips` for each event named as `<camera>-<id>.jpg`.
Frigate can save a snapshot image to `/media/frigate/clips` for each object that is detected named as `<camera>-<id>.jpg`. They are also accessible [via the api](../integrations/api.md#get-apieventsidsnapshotjpg)
To only save snapshots for objects that enter a specific zone, [see the zone docs](./zones.md#restricting-snapshots-to-specific-zones)
Snapshots sent via MQTT are configured in the [config file](https://docs.frigate.video/configuration/) under `cameras -> your_camera -> mqtt`

View File

@ -14,17 +14,47 @@ During testing, enable the Zones option for the debug feed so you can adjust as
To create a zone, follow [the steps for a "Motion mask"](masks.md), but use the section of the web UI for creating a zone instead.
### Restricting events to specific zones
### Restricting alerts and detections to specific zones
Often you will only want events to be created when an object enters areas of interest. This is done using zones along with setting required_zones. Let's say you only want to be notified when an object enters your entire_yard zone, the config would be:
Often you will only want alerts to be created when an object enters areas of interest. This is done using zones along with setting required_zones. Let's say you only want to have an alert created when an object enters your entire_yard zone, the config would be:
```yaml
cameras:
name_of_your_camera:
record:
events:
review:
alerts:
required_zones:
- entire_yard
zones:
entire_yard:
coordinates: ...
```
You may also want to filter detections to only be created when an object enters a secondary area of interest. This is done using zones along with setting required_zones. Let's say you want alerts when an object enters the inner area of the yard but detections when an object enters the edge of the yard, the config would be
```yaml
cameras:
name_of_your_camera:
review:
alerts:
required_zones:
- inner_yard
detections:
required_zones:
- edge_yard
zones:
edge_yard:
coordinates: ...
inner_yard:
coordinates: ...
```
### Restricting snapshots to specific zones
```yaml
cameras:
name_of_your_camera:
snapshots:
required_zones:
- entire_yard

View File

@ -32,6 +32,7 @@ module.exports = {
],
Cameras: [
"configuration/cameras",
"configuration/review",
"configuration/record",
"configuration/snapshots",
"configuration/motion_detection",

View File

@ -597,24 +597,6 @@ class FrigateApp:
self.init_logger()
logger.info(f"Starting Frigate ({VERSION})")
if not os.environ.get("I_PROMISE_I_WONT_MAKE_AN_ISSUE_ON_GITHUB"):
print(
"**********************************************************************************"
)
print(
"**********************************************************************************"
)
print("Frigate 0.14 UNSTABLE")
print("This build is not for public use. Please use Frigate stable.")
print("Unstable/experimental builds are not enabled, Frigate is exiting.")
print(
"**********************************************************************************"
)
print(
"**********************************************************************************"
)
sys.exit(1)
try:
self.ensure_dirs()
try: