Merge remote-tracking branch 'origin/master' into dev

This commit is contained in:
Blake Blackshear 2023-09-04 10:48:24 -05:00
commit f682203f9d
10 changed files with 73 additions and 44 deletions

View File

@ -108,21 +108,20 @@ According to [this discussion](https://github.com/blakeblackshear/frigate/issues
```yaml
go2rtc:
streams:
reolink:
- http://reolink_ip/flv?port=1935&app=bcs&stream=channel0_main.bcs&user=username&password=password
- "ffmpeg:reolink#audio=opus"
reolink_sub:
- http://reolink_ip/flv?port=1935&app=bcs&stream=channel0_ext.bcs&user=username&password=password
your_reolink_camera:
- "ffmpeg:http://reolink_ip/flv?port=1935&app=bcs&stream=channel0_main.bcs&user=username&password=password#video=copy#audio=copy#audio=opus"
your_reolink_camera_sub:
- "ffmpeg:http://reolink_ip/flv?port=1935&app=bcs&stream=channel0_ext.bcs&user=username&password=password"
cameras:
reolink:
ffmpeg:
inputs:
- path: rtsp://127.0.0.1:8554/reolink?video=copy&audio=aac
- path: rtsp://127.0.0.1:8554/your_reolink_camera?video=copy&audio=aac
input_args: preset-rtsp-restream
roles:
- record
- path: rtsp://127.0.0.1:8554/reolink_sub?video=copy
- path: rtsp://127.0.0.1:8554/your_reolink_camera_sub?video=copy
input_args: preset-rtsp-restream
roles:
- detect

View File

@ -44,8 +44,6 @@ detectors:
coral:
type: edgetpu
device: usb
model:
path: "/custom_model.tflite"
```
### Multiple USB Corals

View File

@ -31,7 +31,7 @@ My current favorite is the Minisforum GK41 because of the dual NICs that allow y
## Detectors
A detector is a device which is optimized for running inferences efficiently to detect objects. Using a recommended detector means there will be less latency between detections and more detections can be run per second. Frigate is designed around the epectation that a detector is used to achieve very low inference speeds. Offloading TensorFlow to a detector is an order of magnitude faster and will reduce your CPU load dramatically. As of 0.12, Frigate supports a handful of different detector types with varying inference speeds and performance.
A detector is a device which is optimized for running inferences efficiently to detect objects. Using a recommended detector means there will be less latency between detections and more detections can be run per second. Frigate is designed around the expectation that a detector is used to achieve very low inference speeds. Offloading TensorFlow to a detector is an order of magnitude faster and will reduce your CPU load dramatically. As of 0.12, Frigate supports a handful of different detector types with varying inference speeds and performance.
### Google Coral TPU

View File

@ -149,12 +149,14 @@ docker run -d \
ghcr.io/blakeblackshear/frigate:stable
```
## Home Assistant Operating System (HassOS)
## Home Assistant Addon
:::caution
As of HomeAssistant OS 10.2 and Core 2023.6 defining separate network storage for media is supported.
There are important limitations in Home Assistant Operating System to be aware of:
- Utilizing external storage for recordings or snapshots requires [modifying udev rules manually](https://community.home-assistant.io/t/solved-mount-usb-drive-in-hassio-to-be-used-on-the-media-folder-with-udev-customization/258406/46).
- Separate local storage for media is not yet supported by Home Assistant
- AMD GPUs are not supported because HA OS does not include the mesa driver.
- Nvidia GPUs are not supported because addons do not support the nvidia runtime.
@ -162,7 +164,7 @@ There are important limitations in Home Assistant Operating System to be aware o
:::tip
If possible, it is recommended to run Frigate standalone in Docker and use [Frigate's Proxy Addon](https://github.com/blakeblackshear/frigate-hass-addons/blob/main/frigate_proxy/README.md).
See [the network storage guide](/guides/ha_network_storage.md) for instructions to setup network storage for frigate.
:::
@ -185,32 +187,6 @@ There are several versions of the addon available:
| Frigate NVR Beta | Beta release with protection mode on |
| Frigate NVR Beta (Full Access) | Beta release with the option to disable protection mode |
## Home Assistant Supervised
:::caution
There are important limitations in Home Assistant Supervised to be aware of:
- Nvidia GPUs are not supported because addons do not support the nvidia runtime.
:::
:::tip
If possible, it is recommended to run Frigate standalone in Docker and use [Frigate's Proxy Addon](https://github.com/blakeblackshear/frigate-hass-addons/blob/main/frigate_proxy/README.md).
:::
When running Home Assistant with the [Supervised install method](https://github.com/home-assistant/supervised-installer), you can get the benefit of running the Addon along with the ability to customize the storage used by Frigate.
In order to customize the storage location for Frigate, simply use `fstab` to mount the drive you want at `/usr/share/hassio/media`. Here is an example fstab entry:
```shell
UUID=1a65fec6-c25f-404a-b3d2-1f2fcf6095c8 /media/data ext4 defaults 0 0
/media/data/homeassistant/media /usr/share/hassio/media none bind 0 0
```
Then follow the instructions listed for [Home Assistant Operating System](#home-assistant-operating-system-hassos).
## Kubernetes
Use the [helm chart](https://github.com/blakeblackshear/blakeshome-charts/tree/master/charts/frigate).
@ -224,9 +200,9 @@ To install make sure you have the [community app plugin here](https://forums.unr
It is recommended to run Frigate in LXC for maximum performance. See [this discussion](https://github.com/blakeblackshear/frigate/discussions/1111) for more information.
## ESX
## ESXi
For details on running Frigate under ESX, see details [here](https://github.com/blakeblackshear/frigate/issues/305).
For details on running Frigate using ESXi, please see the instructions [here](https://williamlam.com/2023/05/frigate-nvr-with-coral-tpu-igpu-passthrough-using-esxi-on-intel-nuc.html).
## Synology NAS on DSM 7

View File

@ -6,7 +6,8 @@ title: Configuring go2rtc
Use of the bundled go2rtc is optional. You can still configure FFmpeg to connect directly to your cameras. However, adding go2rtc to your configuration is required for the following features:
- WebRTC or MSE for live viewing with higher resolutions and frame rates than the jsmpeg stream which is limited to the detect stream
- RTSP (instead of RTMP) relay for use with Home Assistant or other consumers to reduce the number of connections to your camera streams
- Live stream support for cameras in Home Assistant Integration
- RTSP (instead of RTMP) relay for use with other consumers to reduce the number of connections to your camera streams
# Setup a go2rtc stream

View File

@ -21,3 +21,5 @@ For object filters in your configuration, any single detection below `min_score`
| 6 | 0.95 | 0.7, 0.85, 0.95, 0.90, 0.88, 0.95 | 0.89 | Yes |
In frame 2, the score is below the `min_score` value, so Frigate ignores it and it becomes a 0.0. The computed score is the median of the score history (padding to at least 3 values), and only when that computed score crosses the `threshold` is the object marked as a true positive. That happens in frame 4 in the example.
If you're seeing false positives from stationary objects, please see Object Masks here: https://docs.frigate.video/configuration/masks/

View File

@ -0,0 +1,45 @@
---
id: ha_network_storage
title: HA Network Storage
---
As of HomeAsisstant Core 2023.6, Network Mounted Storage is supported for addons.
## Setting Up Remote Storage For Frigate
### Prerequisites
- HA Core 2023.6 or newer is installed
- Running HA OS 10.2 or newer OR Running Supervised with latest os-agent installed (this is required for superivsed install)
### Initial Setup
1. Stop the Frigate addon
2. Update your [config](configuration/index.md) so the DB is stored in the /config directory by adding:
```yaml
database:
path: /config/frigate.db
```
### Move current data
Keeping the current data is optional, but the data will need to be moved regardless so the share can be created successfully.
#### If you want to keep the current data
1. Move the frigate.db, frigate.db-shm, frigate.db-wal files to the /config directory
2. Rename the /media/frigate folder to /media/frigate_tmp
#### If you don't want to keep the current data
1. Delete the /media/frigate folder and all of its contents
### Create the media share
1. Go to **Settings -> System -> Storage -> Add Network Storage**
2. Name the share `frigate` (this is required)
3. Choose type `media`
4. Fill out the additional required info for your particular NAS
5. Connect
6. Move files from `/media/frigate_tmp` to `/media/frigate` if they were kept in previous step
7. Start the Frigate addon

View File

@ -13,7 +13,8 @@ Please use your own knowledge to assess and vet them before you install anything
:::
## [Double Take](https://github.com/jakowenko/double-take)
## [Double Take](https://github.com/skrashevich/double-take)
[Double Take](https://github.com/jakowenko/double-take) provides an unified UI and API for processing and training images for facial recognition.
[Double Take](https://github.com/skrashevich/double-take) provides an unified UI and API for processing and training images for facial recognition.
It supports automatically setting the sub labels in Frigate for person objects that are detected and recognized.
This is a fork (with fixed errors and new features) of [original Double Take](https://github.com/jakowenko/double-take) project which, unfortunately, isn't being maintained by author.

View File

@ -40,3 +40,9 @@ If you see repeated "On connect called" messages in your logs, check for another
### Error: Database Is Locked
SQLite does not work well on a network share, if the `/media` folder is mapped to a network share then [this guide](../configuration/advanced.md#database) should be used to move the database to a location on the internal drive.
### Unable to publish to MQTT: client is not connected
If MQTT isn't working in docker try using the IP of the device hosting the MQTT server instead of `localhost`, `127.0.0.1`, or `mosquitto.ix-mosquitto.svc.cluster.local`.
This is because, by default, Frigate does not run in host mode so localhost points to the Frigate container and not the host device's network.

View File

@ -11,6 +11,7 @@ module.exports = {
"guides/configuring_go2rtc",
"guides/false_positives",
"guides/ha_notifications",
"guides/ha_network_storage",
"guides/stationary_objects",
"guides/reverse_proxy",
],