Skip to content

Commit

Permalink
more docs updates
Browse files Browse the repository at this point in the history
  • Loading branch information
blakeblackshear committed Sep 14, 2021
1 parent f83d4a5 commit 86a5b46
Show file tree
Hide file tree
Showing 6 changed files with 81 additions and 4 deletions.
21 changes: 18 additions & 3 deletions docs/docs/configuration/record.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,23 @@ id: record
title: Recording
---

Recordings can be enabled and are stored at `/media/frigate/recordings`. The folder structure for the recordings is `YYYY-MM/DD/HH/<camera_name>/MM.SS.mp4`. These recordings are written directly from your camera stream without re-encoding. Each camera supports a configurable retention policy in the config.

Exported clips are also created off of these recordings. Frigate chooses the largest matching retention value between the recording retention and the event retention when determining if a recording should be removed.
Recordings can be enabled and are stored at `/media/frigate/recordings`. The folder structure for the recordings is `YYYY-MM/DD/HH/<camera_name>/MM.SS.mp4`. These recordings are written directly from your camera stream without re-encoding. Each camera supports a configurable retention policy in the config. Frigate chooses the largest matching retention value between the recording retention and the event retention when determining if a recording should be removed.

H265 recordings can be viewed in Edge and Safari only. All other browsers require recordings to be encoded with H264.

## What if I don't want 24/7 recordings?

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
record:
enabled: True
retain_days: 0
events:
retain:
default: 10
```
This configuration will retain recording segments that overlap with events 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.
When `retain_days` is set to `0`, events will have up to `max_seconds` (defaults to 5 minutes) of recordings retained. Increasing `retain_days` to `1` will allow events to exceed the `max_seconds` limitation of up to 1 day.
24 changes: 24 additions & 0 deletions docs/docs/configuration/zones.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,3 +8,27 @@ Zones allow you to define a specific area of the frame and apply additional filt
During testing, enable the Zones option for the debug feed so you can adjust as needed. The zone line will increase in thickness when any object enters the zone.

To create a zone, follow [the steps for a "Motion mask"](/configuration/masks), but use the section of the web UI for creating a zone instead.

### Restricting zones to specific objects

Sometimes you want to limit a zone to specific object types to have more granular control of when events/snapshots are saved. The following example will limit one zone to person objects and the other to cars.

```yaml
camera:
record:
events:
required_zones:
- entire_yard
- front_yard_street
zones:
entire_yard:
coordinates: ... (everywhere you want a person)
objects:
- person
front_yard_street:
coordinates: ... (just the street)
objects:
- car
```
Only car objects can trigger the `front_yard_street` zone and only person can trigger the `entire_yard`. You will get clips for person objects that enter anywhere in the yard, and clips for cars only if they enter the street.
2 changes: 1 addition & 1 deletion docs/docs/guides/ha_notifications.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
id: ha_notifications
title: Home Assistant Notifications
title: Home Assistant notifications
---

The best way to get started with notifications for Frigate is to use the [Blueprint](https://community.home-assistant.io/t/frigate-mobile-app-notifications/311091). You can use the yaml generated from the Blueprint as a starting point and customize from there.
Expand Down
37 changes: 37 additions & 0 deletions docs/docs/guides/stationary_objects.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
---
id: stationary_objects
title: Avoiding stationary objects
---

Many people use Frigate to detect cars entering their driveway, and they often run into an issue with repeated events of a parked car being repeatedly detected. This is because object tracking stops when motion ends and the event ends. Motion detection works by determining if a sufficient number of pixels have changed between frames. Shadows or other lighting changes will be detected as motion. This will often cause a new event for a parked car.

You can use zones to restrict events and notifications to objects that have entered specific areas.

:::caution

It is not recommended to use masks to try and eliminate parked cars in your driveway. Masks are designed to prevent motion from triggering object detection and/or to indicate areas that are guaranteed false positives.

Frigate is designed to track objects as they move and over-masking can prevent it from knowing that an object in the current frame is the same as the previous frame. You want Frigate to detect objects everywhere and configure your events and alerts to be based on the location of the object with zones.

:::

For example, you could create multiple zones that cover your driveway. For cars, you would only notify if entered_zones has more than 1 zone. For person, you would notify regardless of the number of entered_zones.

See [this example](/configuration/zones#restricting-zones-to-specific-objects) from the Zones documentation.

You can also create a zone for the entrance of your driveway and only save an event if that zone is in the list of entered_zones when the object is a car.

![Driveway Zones](/img/driveway_zones.png)

```yaml
camera:
record:
events:
required_zones:
- zone_2
zones:
zone_1:
coordinates: ... (parking area)
zone_2:
coordinates: ... (entrance to driveway)
```
1 change: 1 addition & 0 deletions docs/sidebars.js
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ module.exports = {
'guides/getting_started',
'guides/false_positives',
'guides/ha_notifications',
'guides/stationary_objects',
],
Configuration: [
'configuration/index',
Expand Down
Binary file added docs/static/img/driveway_zones.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit 86a5b46

Please sign in to comment.