Update docs

This commit is contained in:
Nicolas Mowen 2024-08-26 09:02:58 -06:00
parent 64f9c0e67f
commit 9eb12345c2
2 changed files with 61 additions and 56 deletions

View File

@ -13,7 +13,7 @@ H265 recordings can be viewed in Chrome 108+, Edge and Safari only. All other br
### Most conservative: Ensure all video is saved ### Most conservative: Ensure all video is saved
For users deploying Frigate in environments where it is important to have contiguous video stored even if there was no detectable motion, the following config will store all video for 3 days. After 3 days, only video containing motion and overlapping with events will be retained until 30 days have passed. For users deploying Frigate in environments where it is important to have contiguous video stored even if there was no detectable motion, the following config will store all video for 3 days. After 3 days, only video containing motion and overlapping with alerts or detections will be retained until 30 days have passed.
```yaml ```yaml
record: record:
@ -21,9 +21,13 @@ record:
retain: retain:
days: 3 days: 3
mode: all mode: all
events: alerts:
retain: retain:
default: 30 days: 30
mode: motion
detections:
retain:
days: 30
mode: motion mode: motion
``` ```
@ -37,25 +41,28 @@ record:
retain: retain:
days: 3 days: 3
mode: motion mode: motion
events: alerts:
retain: retain:
default: 30 days: 30
mode: motion
detections:
retain:
days: 30
mode: motion mode: motion
``` ```
### Minimum: Events only ### Minimum: Alerts only
If you only want to retain video that occurs during an event, this config will discard video unless an event is ongoing. If you only want to retain video that occurs during an event, this config will discard video unless an alert is ongoing.
```yaml ```yaml
record: record:
enabled: True enabled: True
retain: retain:
days: 0 days: 0
mode: all alerts:
events:
retain: retain:
default: 30 days: 30
mode: motion mode: motion
``` ```
@ -86,19 +93,22 @@ record:
Continuous recording supports different retention modes [which are described below](#what-do-the-different-retain-modes-mean) Continuous recording supports different retention modes [which are described below](#what-do-the-different-retain-modes-mean)
### Event Recording ### Object Recording
If you only used clips in previous versions with recordings disabled, you can use the following config to get the same behavior. This is also the default behavior when recordings are enabled. If you only used clips in previous versions with recordings disabled, you can use the following config to get the same behavior. This is also the default behavior when recordings are enabled.
```yaml ```yaml
record: record:
enabled: True enabled: True
events: alerts:
retain: retain:
default: 10 # <- number of days to keep event recordings days: 10 # <- number of days to keep alert recordings
detections:
retain:
days: 10 # <- number of days to keep detections recordings
``` ```
This configuration will retain recording segments that overlap with events and have active tracked objects for 10 days. Because multiple events can reference the same recording segments, this avoids storing duplicate footage for overlapping events and reduces overall storage needs. This configuration will retain recording segments that overlap with alerts and detections for 10 days. Because multiple events can reference the same recording segments, this avoids storing duplicate footage for overlapping events and reduces overall storage needs.
**WARNING**: Recordings still must be enabled in the config. If a camera has recordings disabled in the config, enabling via the methods listed above will have no effect. **WARNING**: Recordings still must be enabled in the config. If a camera has recordings disabled in the config, enabling via the methods listed above will have no effect.
@ -112,11 +122,7 @@ Let's say you have Frigate configured so that your doorbell camera would retain
- With the `motion` option the only parts of those 48 hours would be segments that Frigate detected motion. This is the middle ground option that won't keep all 48 hours, but will likely keep all segments of interest along with the potential for some extra segments. - With the `motion` option the only parts of those 48 hours would be segments that Frigate detected motion. This is the middle ground option that won't keep all 48 hours, but will likely keep all segments of interest along with the potential for some extra segments.
- With the `active_objects` option the only segments that would be kept are those where there was a true positive object that was not considered stationary. - With the `active_objects` option the only segments that would be kept are those where there was a true positive object that was not considered stationary.
The same options are available with events. Let's consider a scenario where you drive up and park in your driveway, go inside, then come back out 4 hours later. The same options are available with alerts and detections, except it will only save the recordings when it overlaps with a review item of that type.
- With the `all` option all segments for the duration of the event would be saved for the event. This event would have 4 hours of footage.
- With the `motion` option all segments for the duration of the event with motion would be saved. This means any segment where a car drove by in the street, person walked by, lighting changed, etc. would be saved.
- With the `active_objects` it would only keep segments where the object was active. In this case the only segments that would be saved would be the ones where the car was driving up, you going inside, you coming outside, and the car driving away. Essentially reducing the 4 hours to a minute or two of event footage.
A configuration example of the above retain modes where all `motion` segments are stored for 7 days and `active objects` are stored for 14 days would be as follows: A configuration example of the above retain modes where all `motion` segments are stored for 7 days and `active objects` are stored for 14 days would be as follows:
@ -126,33 +132,18 @@ record:
retain: retain:
days: 7 days: 7
mode: motion mode: motion
events: alerts:
retain: retain:
default: 14 days: 14
mode: active_objects
detections:
retain:
days: 14
mode: active_objects mode: active_objects
``` ```
The above configuration example can be added globally or on a per camera basis. The above configuration example can be added globally or on a per camera basis.
### Object Specific Retention
You can also set specific retention length for an object type. The below configuration example builds on from above but also specifies that recordings of dogs only need to be kept for 2 days and recordings of cars should be kept for 7 days.
```yaml
record:
enabled: True
retain:
days: 7
mode: motion
events:
retain:
default: 14
mode: active_objects
objects:
dog: 2
car: 7
```
## Can I have "continuous" recordings, but only at certain times? ## Can I have "continuous" recordings, but only at certain times?
Using Frigate UI, HomeAssistant, or MQTT, cameras can be automated to only record in certain situations or at certain times. Using Frigate UI, HomeAssistant, or MQTT, cameras can be automated to only record in certain situations or at certain times.

View File

@ -419,32 +419,46 @@ record:
# Optional: Quality of recording preview (default: shown below). # Optional: Quality of recording preview (default: shown below).
# Options are: very_low, low, medium, high, very_high # Options are: very_low, low, medium, high, very_high
quality: medium quality: medium
# Optional: Event recording settings # Optional: alert recording settings
events: alerts:
# Optional: Number of seconds before the event to include (default: shown below) # Optional: Number of seconds before the alert to include (default: shown below)
pre_capture: 5 pre_capture: 5
# Optional: Number of seconds after the event to include (default: shown below) # Optional: Number of seconds after the alert to include (default: shown below)
post_capture: 5 post_capture: 5
# Optional: Objects to save recordings for. (default: all tracked objects) # Optional: Retention settings for recordings of alerts
objects:
- person
# Optional: Retention settings for recordings of events
retain: retain:
# Required: Default retention days (default: shown below) # Required: Retention days (default: shown below)
default: 10 days: 14
# Optional: Mode for retention. (default: shown below) # Optional: Mode for retention. (default: shown below)
# all - save all recording segments for events regardless of activity # all - save all recording segments for alerts regardless of activity
# motion - save all recordings segments for events with any detected motion # motion - save all recordings segments for alerts with any detected motion
# active_objects - save all recording segments for event with active/moving objects # active_objects - save all recording segments for alerts with active/moving objects
#
# NOTE: If the retain mode for the camera is more restrictive than the mode configured
# here, the segments will already be gone by the time this mode is applied.
# For example, if the camera retain mode is "motion", the segments without motion are
# never stored, so setting the mode to "all" here won't bring them back.
mode: motion
# Optional: detection recording settings
detections:
# Optional: Number of seconds before the detection to include (default: shown below)
pre_capture: 5
# Optional: Number of seconds after the detection to include (default: shown below)
post_capture: 5
# Optional: Retention settings for recordings of detections
retain:
# Required: Retention days (default: shown below)
days: 14
# Optional: Mode for retention. (default: shown below)
# all - save all recording segments for detections regardless of activity
# motion - save all recordings segments for detections with any detected motion
# active_objects - save all recording segments for detections with active/moving objects
# #
# NOTE: If the retain mode for the camera is more restrictive than the mode configured # NOTE: If the retain mode for the camera is more restrictive than the mode configured
# here, the segments will already be gone by the time this mode is applied. # here, the segments will already be gone by the time this mode is applied.
# For example, if the camera retain mode is "motion", the segments without motion are # For example, if the camera retain mode is "motion", the segments without motion are
# never stored, so setting the mode to "all" here won't bring them back. # never stored, so setting the mode to "all" here won't bring them back.
mode: motion mode: motion
# Optional: Per object retention days
objects:
person: 15
# Optional: Configuration for the jpg snapshots written to the clips directory for each event # Optional: Configuration for the jpg snapshots written to the clips directory for each event
# NOTE: Can be overridden at the camera level # NOTE: Can be overridden at the camera level