Releases: blakeblackshear/frigate
0.13.0 Beta 4
Beta docs for this release: https://deploy-preview-6262--frigate-docs.netlify.app
Major Changes For 0.13.0
Security Advisories
The Github Security Lab team reached out to report the following security vulnerabilities.
- Cross-site request forgery in
config_save
andconfig_set
request handlers (GHSL-2023-198) - Reflected XSS through
/<camera_name>
API endpoints (GHSL-2023-195) - Unsafe deserialization in
load_config_with_no_duplicates
offrigate/util/builtin.py
(GHSL-2023-190)
Exploiting these vulnerabilities requires the attacker to both know very specific information about a user's Frigate server and requires an authenticated user to be tricked into clicking a specially crafted link to their Frigate instance.
This vulnerability could exploited by an attacker under the following circumstances:
- Frigate publicly exposed to the internet (even with some authentication methods implemented)
- Attacker knows the public address of a user's Frigate instance
- Attacker crafts a specialized page which links to the user's Frigate instance
- Attacker finds a way to get an authenticated user to visit their specialized page and click the button/link
If you haven't click any links to your Frigate server from unknown sources, there is no reason to believe that you have been compromised.
I have enabled the private vulnerability disclosure features inside Github for the project as well as the automated CodeQL scanning features to identify future issues.
Changes since Beta 3
- Nginx caching to better handle rapid fire API requests from third party requests
- Fix daylight savings time issue with recordings validation
- More improvements to birdseye logic
- Devices with RockChip SoC are now supported as a community build. See docs for more info.
Breaking Changes
- If no detect resolution is defined then frigate will now run detect at the native camera resolution. This means if you did not explicitly set the detect width / height AND your sub stream is not 1280x720, then your masks and zones will be configured incorrectly.
- Default values have been changed for motion detection. If you have specific values set in your config, it is recommended to remove them and re-calibrate as necessary.
- Stationary object validation is now required, anyone who manually set
interval: 0
will need to delete this field from the config or increase the value - Changes have been made to the DB schema, downgrading to 0.12 will require restoring from a backup or deleting the DB and existing recordings / snapshots.
NOTE: Some users have reported migrations taking a while and frigate frontend is not available until the migrations are complete. - New location for
frigate.db
: Due to the support for network shares in HA OS and the popularity of storing recordings on a NAS in general, the database has a new default location of/config/frigate.db
. This change is going to be done for existing users too, so frigate will automatically move the db for you.-
For Frigate Addon Users:
The migration is handled automatically and no action is required from the user. -
For Docker Container Users:
The migration is handled for you, but you must make sure that the docker CLI or docker-compose binds the entire/config
directory and not just the/config/config.yml
file.For example, if your current volume mapping is
- /host/path/config_folder/config.yml:/config/config.yml
it should now be- /host/path/config_folder/:/config/
-
- The previously deprecated
record -> retain_days
config has been removed, this should be migrated torecord -> retain -> days
if you have not already. - HomeAssistant Integration 5.0 beta is required for the new features introduced in this release.
- TensorRT has been updated and the model generation has been refactored. New models will need to be generated for 0.13 and have a new path, check the detector docs for more info.
- TensorRT now requires Nvidia Driver Version 530+
- The cameras in
/stats
have been moved to their owncameras
block. This only affects users that were directly reading from the/stats
data via the API or MQTT.
Frigate+
Frigate+ Model Launch
Frigate+ models are now rolling out by invitation. If you would like to be invited for early access to purchase a subscription, please send an email to blake@frigate.video from the email address on your Frigate+ account. For more information, see this discussion.
False positive submissions
You can now submit false positive detections to Frigate+ for training feedback. Note that you will still need to login to your Frigate+ account and verify the images to ensure all relevant objects are labeled before the image will be used during training. Confirming the object is a true positive will also upload the image.
Models
Frigate+ models are almost ready for launch, and this release has support for automatically downloading from Frigate+. The model and related information are stored at /config/model_cache
. Once Frigate+ models are launched, you will be able to use the model id in your config.
model:
path: plus://e63b7345cc83a84ed79dedfc99c16616
Community Supported Boards
In version 0.12 Frigate gained support for Intel iGPUs via OpenVINO and for Nvidia GPUs, this was a great step forward for compatibility and for more users being able to use Frigate effectively. There are many other devices, including dedicated SBCs (Small Board Computers), that Frigate could support but the maintainers do not have the time or hardware to support.
The community supported boards framework will allow community members who want to contribute to create and manage support for a particular board. This will allow Frigate to support more devices while allowing the maintainers to focus on improving the core of Frigate.
Nvidia Jetson Support
@madsciencetist has contributed a community supported board build by adding support for Jetson 4.6 and Jetson 5 devices!
More information can be found in the detector docs on how to set this up.
@MarcA711 has contributed a community supported board build by adding support for devices with RockChip SoCs:
RK3566/RK3568
RK3588/RK3588S
RV1103/RV1106
RK3562
Object Tracking & Motion Detection
There have been many improvements to object tracking and motion detection which make Frigate more efficient and can reduce false positives.
New Object Tracker
Frigate now uses Norfair for object tracking, this means that object attributes like size, width/height ratio, and position are used to intelligently track objects. ID swapping between tracked objects is greatly reduced in situations where a car in the driveway was confused with a car passing in the street.
Improved Motion Detection
Frigate's motion detection is now more efficient. Motion detection will also re-calibrate for flashes like lightning or when the camera switches from color to IR mode or it is moved via PTZ. This reduces CPU usage during these changes and reduces false positives caused by excessive motion.
Historical Data
Frigate now uses the recordings timeline data to generate an 8x8 grid for each camera. This grid holds the range of expected regions (portions of the image sent to detection) for that area of the camera frame. This helps to improve accuracy of detection after motion has occurred and can reduce false positives in some cases.
The grid is updated on each startup and every day at 2 AM for each camera that is enabled.
Minimum Time For Zone Presence
Frigate now has a configurable field for the minimum amount of time an object needs to be in a zone before it is considered in a zone. For example, currently in Frigate if you have a front_yard zone and someone is walking by and briefly steps into the front yard Frigate would create an event for this. However, you may prefer for events to only be created if a person is in the front yard for multiple frames before creating an event.
zones:
my_zone:
inertia: 3 # <- 3 consecutive frames needed to consider object in zone
coordinates: ...
Recordings Improvements
There have been a number of improvements to the management of recordings
Recordings Exporting
Frigate now supports exporting recordings in standard format or as a time-lapse. Exported recordings are stored in /media/frigate/exports
and are downloadable from the UI.
Recordings Timeline Metadata
Frigate now saves metadata for key moments in an event such as when the tracked object is detected, enters or exits zone, becomes active / stationary, and leaves. This metadata is used to overlay on top of the recordings so it is easy to see what was detected and where. Note that the timing of the bounding boxes will likely be slightly off because it is based on the detect stream, but overlayed on the record stream. The annotation_offset
value in the config can be used to adjust for an...
0.13.0 Beta 3
Beta docs for this release: https://deploy-preview-6262--frigate-docs.netlify.app
Major Changes For 0.13.0
Security Advisories
The Github Security Lab team reached out to report the following security vulnerabilities.
- Cross-site request forgery in
config_save
andconfig_set
request handlers (GHSL-2023-198) - Reflected XSS through
/<camera_name>
API endpoints (GHSL-2023-195) - Unsafe deserialization in
load_config_with_no_duplicates
offrigate/util/builtin.py
(GHSL-2023-190)
Exploiting these vulnerabilities requires the attacker to both know very specific information about a user's Frigate server and requires an authenticated user to be tricked into clicking a specially crafted link to their Frigate instance.
This vulnerability could exploited by an attacker under the following circumstances:
- Frigate publicly exposed to the internet (even with some authentication methods implemented)
- Attacker knows the public address of a user's Frigate instance
- Attacker crafts a specialized page which links to the user's Frigate instance
- Attacker finds a way to get an authenticated user to visit their specialized page and click the button/link
If you haven't click any links to your Frigate server from unknown sources, there is no reason to believe that you have been compromised.
I have enabled the private vulnerability disclosure features inside Github for the project as well as the automated CodeQL scanning features to identify future issues.
Changes since Beta 2
- A breaking change to the integration was introduced. You will need to update to the beta version of the integration.
- Frigate will now use the historical entries in the recordings timeline to create a grid of the expected size of objects, this will improve the accuracy of detection when motion is first detected. Motion is also optimized to reduce cases where a persons legs or arms were detected separately which led to multiple events for the same object.
- Many optimizations around stationary objects to optimize frequency and improve accuracy of checks for stationary objects.
- Motion detection calibration has been revamped to be dynamic, this is important for cases where motion was occurring after a large change; for example when someone is walking in the frame after moving a ptz camera.
- New recording timeline entries for Frigate+ attributes that show the moment an attribute (amazon, face, fedex, license_plate, ups) were first detected.
- Many camera auto tracking improvements including optimizations to movement, zoom, and camera calibration.
- Ongoing and past events are now separated in the events list
- Many UI fixes and optimizations
Breaking Changes
- Default values have been changed for motion detection. If you have specific values set in your config, it is recommended to remove them and re-calibrate as necessary.
- Stationary object validation is now required, anyone who manually set
interval: 0
will need to delete this field from the config or increase the value - Changes have been made to the DB schema, downgrading to 0.12 will require restoring from a backup or deleting the DB and existing recordings / snapshots.
NOTE: Some users have reported migrations taking a while and frigate frontend is not available until the migrations are complete. - New location for
frigate.db
: Due to the support for network shares in HA OS and the popularity of storing recordings on a NAS in general, the database has a new default location of/config/frigate.db
. This change is going to be done for existing users too, so frigate will automatically move the db for you.-
For Frigate Addon Users:
The migration is handled automatically and no action is required from the user. -
For Docker Container Users:
The migration is handled for you, but you must make sure that the docker CLI or docker-compose binds the entire/config
directory and not just the/config/config.yml
file.For example, if your current volume mapping is
- /host/path/config_folder/config.yml:/config/config.yml
it should now be- /host/path/config_folder/:/config/
-
- The previously deprecated
record -> retain_days
config has been removed, this should be migrated torecord -> retain -> days
if you have not already. - HomeAssistant Integration 5.0 beta is required for the new features introduced in this release.
- TensorRT has been updated and the model generation has been refactored. New models will need to be generated for 0.13 and have a new path, check the detector docs for more info.
- TensorRT now requires Nvidia Driver Version 530+
- The cameras in
/stats
have been moved to their owncameras
block. This only affects users that were directly reading from the/stats
data via the API or MQTT.
Frigate+
Frigate+ Model Launch
Frigate+ models are now rolling out by invitation. If you would like to be invited for early access to purchase a subscription, please send an email to blake@frigate.video from the email address on your Frigate+ account. For more information, see this discussion.
False positive submissions
You can now submit false positive detections to Frigate+ for training feedback. Note that you will still need to login to your Frigate+ account and verify the images to ensure all relevant objects are labeled before the image will be used during training. Confirming the object is a true positive will also upload the image.
Models
Frigate+ models are almost ready for launch, and this release has support for automatically downloading from Frigate+. The model and related information are stored at /config/model_cache
. Once Frigate+ models are launched, you will be able to use the model id in your config.
model:
path: plus://e63b7345cc83a84ed79dedfc99c16616
Community Supported Boards
In version 0.12 Frigate gained support for Intel iGPUs via OpenVINO and for Nvidia GPUs, this was a great step forward for compatibility and for more users being able to use Frigate effectively. There are many other devices, including dedicated SBCs (Small Board Computers), that Frigate could support but the maintainers do not have the time or hardware to support.
The community supported boards framework will allow community members who want to contribute to create and manage support for a particular board. This will allow Frigate to support more devices while allowing the maintainers to focus on improving the core of Frigate.
Nvidia Jetson Support
@madsciencetist is the first to contribute a community supported board build by adding support for Jetson 4.6 and Jetson 5 devices!
More information can be found in the detector docs on how to set this up.
Object Tracking & Motion Detection
There have been many improvements to object tracking and motion detection which make Frigate more efficient and can reduce false positives.
New Object Tracker
Frigate now uses Norfair for object tracking, this means that object attributes like size, width/height ratio, and position are used to intelligently track objects. ID swapping between tracked objects is greatly reduced in situations where a car in the driveway was confused with a car passing in the street.
Improved Motion Detection
Frigate's motion detection is now more efficient. Motion detection will also re-calibrate for flashes like lightning or when the camera switches from color to IR mode or it is moved via PTZ. This reduces CPU usage during these changes and reduces false positives caused by excessive motion.
Historical Data
Frigate now uses the recordings timeline data to generate an 8x8 grid for each camera. This grid holds the range of expected regions (portions of the image sent to detection) for that area of the camera frame. This helps to improve accuracy of detection after motion has occurred and can reduce false positives in some cases.
The grid is updated on each startup and every day at 2 AM for each camera that is enabled.
Minimum Time For Zone Presence
Frigate now has a configurable field for the minimum amount of time an object needs to be in a zone before it is considered in a zone. For example, currently in Frigate if you have a front_yard zone and someone is walking by and briefly steps into the front yard Frigate would create an event for this. However, you may prefer for events to only be created if a person is in the front yard for multiple frames before creating an event.
zones:
my_zone:
inertia: 3 # <- 3 consecutive frames needed to consider object in zone
coordinates: ...
Recordings Improvements
There have been a number of improvements to the management of recordings
Recordings Exporting
Frigate now supports exporting recordings in standard format or as a time-lapse. Exported recordings are stored in /media/frigate/exports
and are downloadable from the UI.
Recordings Timeline Metadata
Frigate now saves metadata for key moments in an event such as when the tracked object is detected, enters or exits zone, becomes active / stationary,...
0.13.0 Beta 2
Beta docs for this release: https://deploy-preview-6262--frigate-docs.netlify.app
Major Changes For 0.13.0
Changes since Beta 1
- Revert min_region_size that resulted in new false positives for some users
- Improve object tracking behavior to fix disjointed events in some cases
- Exports page now supports playback and deleting exports
- Reduce CPU usage for exports and add configuration option for time-lapse video filter output args
- Support selecting which Nvidia GPU is used to build TensorRT model in case multiple are present
- Update go2rtc to 1.7.1
Breaking Changes
- Default values have been changed for motion detection. If you have specific values set in your config, it is recommended to remove them and re-calibrate as necessary.
- Stationary object validation is now required, anyone who manually set
interval: 0
will need to delete this field from the config or increase the value - Changes have been made to the DB schema, downgrading to 0.12 will require restoring from a backup or deleting the DB and existing recordings / snapshots.
NOTE: Some users have reported migrations taking a while and frigate frontend is not available until the migrations are complete. - New location for
frigate.db
: Due to the support for network shares in HA OS and the popularity of storing recordings on a NAS in general, the database has a new default location of/config/frigate.db
. This change is going to be done for existing users too, so frigate will automatically move the db for you.-
For Frigate Addon Users:
The migration is handled automatically and no action is required from the user. -
For Docker Container Users:
The migration is handled for you, but you must make sure that the docker CLI or docker-compose binds the entire/config
directory and not just the/config/config.yml
file.For example, if your current volume mapping is
- /host/path/config_folder/config.yml:/config/config.yml
it should now be- /host/path/config_folder/:/config/
-
- The previously deprecated
record -> retain_days
config has been removed, this should be migrated torecord -> retain -> days
if you have not already. - HomeAssistant Integration 5.0 beta is required for the new features introduced in this release.
- TensorRT has been updated and the model generation has been refactored. New models will need to be generated for 0.13 and have a new path, check the detector docs for more info.
- TensorRT now requires Nvidia Driver Version 530+
Frigate+
Frigate+ Model Launch
Frigate+ models are now rolling out by invitation. If you would like to be invited for early access to purchase a subscription, please send an email to blake@frigate.video from the email address on your Frigate+ account. For more information, see this discussion.
False positive submissions
You can now submit false positive detections to Frigate+ for training feedback. Note that you will still need to login to your Frigate+ account and verify the images to ensure all relevant objects are labeled before the image will be used during training. Confirming the object is a true positive will also upload the image.
Models
Frigate+ models are almost ready for launch, and this release has support for automatically downloading from Frigate+. The model and related information are stored at /config/model_cache
. Once Frigate+ models are launched, you will be able to use the model id in your config.
model:
path: plus://e63b7345cc83a84ed79dedfc99c16616
Community Supported Boards
In version 0.12 Frigate gained support for Intel iGPUs via OpenVINO and for Nvidia GPUs, this was a great step forward for compatibility and for more users being able to use Frigate effectively. There are many other devices, including dedicated SBCs (Small Board Computers), that Frigate could support but the maintainers do not have the time or hardware to support.
The community supported boards framework will allow community members who want to contribute to create and manage support for a particular board. This will allow Frigate to support more devices while allowing the maintainers to focus on improving the core of Frigate.
Nvidia Jetson Support
@madsciencetist is the first to contribute a community supported board build by adding support for Jetson 4.6 and Jetson 5 devices!
More information can be found in the detector docs on how to set this up.
Object Tracking & Motion Detection
There have been many improvements to object tracking and motion detection which make Frigate more efficient and can reduce false positives.
New Object Tracker
Frigate now uses Norfair for object tracking, this means that object attributes like size, width/height ratio, and position are used to intelligently track objects. ID swapping between tracked objects is greatly reduced in situations where a car in the driveway was confused with a car passing in the street.
Improved Motion Detection
Frigate's motion detection is now more efficient. Motion detection will also re-calibrate for flashes like lightning or when the camera switches from color to IR mode or it is moved via PTZ. This reduces CPU usage during these changes and reduces false positives caused by excessive motion.
Minimum Time For Zone Presence
Frigate now has a configurable field for the minimum amount of time an object needs to be in a zone before it is considered in a zone. For example, currently in Frigate if you have a front_yard zone and someone is walking by and briefly steps into the front yard Frigate would create an event for this. However, you may prefer for events to only be created if a person is in the front yard for multiple frames before creating an event.
zones:
my_zone:
inertia: 3 # <- 3 consecutive frames needed to consider object in zone
coordinates: ...
Recordings Improvements
There have been a number of improvements to the management of recordings
Recordings Exporting
Frigate now supports exporting recordings in standard format or as a time-lapse. Exported recordings are stored in /media/frigate/exports
and are downloadable from the UI.
Recordings Timeline Metadata
Frigate now saves metadata for key moments in an event such as when the tracked object is detected, enters or exits zone, becomes active / stationary, and leaves. This metadata is used to overlay on top of the recordings so it is easy to see what was detected and where. Note that the timing of the bounding boxes will likely be slightly off because it is based on the detect stream, but overlayed on the record stream. The annotation_offset
value in the config can be used to adjust for any differences.
Internal Processing Improvements
There have been many improvements to the recordings management process to make it faster and more efficient:
- Recordings maintainer now lives in a dedicated process
- Recordings maintenance is now fully asynchronous
- Database writes are now much more efficient
- Record config can now have
sync_on_startup
enabled which will check for recordings in the db that are not on the disk and delete them
Audio Events
Frigate now supports audio events via YamNet. Over 600 labels are included so there are too many to list here, but Frigate can listen to a cameras audio feed to create events and update MQTT when speech, yell, fire alarm, dog bark, etc. are heard. Version 5.0 of the HomeAssistant integration also supports sensors for these audio detections so automations can be fired when certain types of audio are detected.
Manual Events API
Frigate now supports creating events manually via the API. This means that custom events can be created, for example an event when the doorbell is pressed or a sensor is tripped. The API allows full control of event length, if recordings should be saved, and much more. The request and response can be seen in the documentation.
Curl Example:
curl -X POST "http://<frigate_ip>:5000/api/events/front_doorbell_cam/doorbell/create" -H Content-Type:\ application/json
PTZ Control
Frigate now supports PTZ cameras.
Basic PTZ Autotracking
https://deploy-preview-6262--frigate-docs.netlify.app/configuration/autotracking
Along with Frigate's improved tracking algorithm, basic autotracking is now supported. Not all PTZ cameras will support this as relative movement is required (see the docs for more details).
PTZ Controls In The WebUI
Frigate also supports controlling PTZ cameras in the WebUI and via the Home Assistant Integration.
![Screen Shot 2023-02-08 at 07 06 21 AM](https://user...
0.13.0 Beta 1
Beta docs for this release: https://deploy-preview-6262--frigate-docs.netlify.app
Major Changes For 0.13.0
Breaking Changes
- Default values have been changed for motion detection. If you have specific values set in your config, it is recommended to remove them and re-calibrate as necessary.
- Changes have been made to the DB schema, downgrading to 0.12 will require restoring from a backup or deleting the DB and existing recordings / snapshots.
NOTE: Some users have reported migrations taking a while and frigate frontend is not available until the migrations are complete. - New location for
frigate.db
: Due to the support for network shares in HA OS and the popularity of storing recordings on a NAS in general, the database has a new default location of/config/frigate.db
. This change is going to be done for existing users too, so frigate will automatically move the db for you.-
For Frigate Addon Users:
The migration is handled automatically and no action is required from the user. -
For Docker Container Users:
The migration is handled for you, but you must make sure that the docker CLI or docker-compose binds the entire/config
directory and not just the/config/config.yml
file.For example, if your current volume mapping is
- /host/path/config_folder/config.yml:/config/config.yml
it should now be- /host/path/config_folder/:/config/
-
- The previously deprecated
record -> retain_days
config has been removed, this should be migrated torecord -> retain -> days
if you have not already. - HomeAssistant Integration 5.0 beta is required for the new features introduced in this release.
- TensorRT has been updated and the model generation has been refactored. New models will need to be generated for 0.13 and have a new path, check the detector docs for more info.
- TensorRT now requires Nvidia Driver Version 530+
Frigate+
False positive submissions
You can now submit false positive detections to Frigate+ for training feedback. Note that you will still need to login to your Frigate+ account and verify the images to ensure all relevant objects are labeled before the image will be used during training. Confirming the object is a true positive will also upload the image.
Models
Frigate+ models are almost ready for launch, and this release has support for automatically downloading from Frigate+. The model and related information are stored at /config/model_cache
. Once Frigate+ models are launched, you will be able to use the model id in your config.
model:
path: plus://e63b7345cc83a84ed79dedfc99c16616
Community Supported Boards
In version 0.12 Frigate gained support for Intel iGPUs via OpenVINO and for Nvidia GPUs, this was a great step forward for compatibility and for more users being able to use Frigate effectively. There are many other devices, including dedicated SBCs (Small Board Computers), that Frigate could support but the maintainers do not have the time or hardware to support.
The community supported boards framework will allow community members who want to contribute to create and manage support for a particular board. This will allow Frigate to support more devices while allowing the maintainers to focus on improving the core of Frigate.
Nvidia Jetson Support
@madsciencetist is the first to contribute a community supported board build by adding support for Jetson 4.6 and Jetson 5 devices!
More information can be found in the detector docs on how to set this up.
Object Tracking & Motion Detection
There have been many improvements to object tracking and motion detection which make Frigate more efficient and can reduce false positives.
New Object Tracker
Frigate now uses Norfair for object tracking, this means that object attributes like size, width/height ratio, and position are used to intelligently track objects. ID swapping between tracked objects is greatly reduced in situations where a car in the driveway was confused with a car passing in the street.
Improved Motion Detection
Frigate's motion detection is now more efficient. Motion detection will also re-calibrate for flashes like lightning or when the camera switches from color to IR mode or it is moved via PTZ. This reduces CPU usage during these changes and reduces false positives caused by excessive motion.
Minimum Time For Zone Presence
Frigate now has a configurable field for the minimum amount of time an object needs to be in a zone before it is considered in a zone. For example, currently in Frigate if you have a front_yard zone and someone is walking by and briefly steps into the front yard Frigate would create an event for this. However, you may prefer for events to only be created if a person is in the front yard for multiple frames before creating an event.
zones:
my_zone:
inertia: 3 # <- 3 consecutive frames needed to consider object in zone
coordinates: ...
Recordings Improvements
There have been a number of improvements to the management of recordings
Recordings Exporting
Frigate now supports exporting recordings in standard format or as a time-lapse. Exported recordings are stored in /media/frigate/exports
and are downloadable from the UI.
Recordings Timeline Metadata
Frigate now saves metadata for key moments in an event such as when the tracked object is detected, enters or exits zone, becomes active / stationary, and leaves. This metadata is used to overlay on top of the recordings so it is easy to see what was detected and where. Note that the timing of the bounding boxes will likely be slightly off because it is based on the detect stream, but overlayed on the record stream. The annotation_offset
value in the config can be used to adjust for any differences.
Internal Processing Improvements
There have been many improvements to the recordings management process to make it faster and more efficient:
- Recordings maintainer now lives in a dedicated process
- Recordings maintenance is now fully asynchronous
- Database writes are now much more efficient
- Record config can now have
sync_on_startup
enabled which will check for recordings in the db that are not on the disk and delete them
Audio Events
Frigate now supports audio events via YamNet. Over 600 labels are included so there are too many to list here, but Frigate can listen to a cameras audio feed to create events and update MQTT when speech, yell, fire alarm, dog bark, etc. are heard. Version 5.0 of the HomeAssistant integration also supports sensors for these audio detections so automations can be fired when certain types of audio are detected.
Manual Events API
Frigate now supports creating events manually via the API. This means that custom events can be created, for example an event when the doorbell is pressed or a sensor is tripped. The API allows full control of event length, if recordings should be saved, and much more. The request and response can be seen in the documentation.
Curl Example:
curl -X POST "http://<frigate_ip>:5000/api/events/front_doorbell_cam/doorbell/create" -H Content-Type:\ application/json
PTZ Control
Frigate now supports PTZ cameras.
Basic PTZ Autotracking
https://deploy-preview-6262--frigate-docs.netlify.app/configuration/autotracking
Along with Frigate's improved tracking algorithm, basic autotracking is now supported. Not all PTZ cameras will support this as relative movement is required (see the docs for more details).
PTZ Controls In The WebUI
Frigate also supports controlling PTZ cameras in the WebUI and via the Home Assistant Integration.
Other Notable Changes:
- The ordering of birdseye cameras is now supported
- Birdseye now supports autolayout meaning that a grid system is no longer used. Panoramic and portrait cameras now take up a proportional amount of space to better use the canvas to show these cameras.
- Camera zone & mask editor now supports saving directly without the need to copy / paste
- Deepstack/CodeProjectAI is now supported as a detector.
Images
ghcr.io/blakeblackshear/frigate:0.13.0-beta1
ghcr.io/blakeblackshear/frigate:0.13.0-beta1-standard-arm64
ghcr.io/blakeblackshear/frigate:0.13.0-beta1-tensorrt
ghcr.io/blakeblackshear/frigate:0.13.0-beta1-tensorrt-jp4
ghcr.io/blakeblackshear/frigate:0.13.0-beta1-tensorrt-jp5
What's Changed
- Remove arm32 by @blakeblackshear in #5935
- Remove deprecated retain_days config by @NickM-27 in #5952
- docker-compose.yml: remove
:ro
forconfig.yml
by @kevin-david in #6086 - update deps by @blakeblackshear in htt...
Release 0.12.1
What's Changed
- Reduce CPU usage for RPi users using hwaccel by @NickM-27 in #6385
- Prevent recordings from being turned on if disabled in config by @NickM-27 in #6444
- Fix filter dropdowns when list is too long by @sinamics in #6000
Documentation Updates
- Update npm command by @NickM-27 in #5938
- Fix tensorrt script url by @NickM-27 in #6015
- Improve documentation on web rtc by @Juliafin in #6005
- Change blueprint url to newest version. by @SgtBatten in #6091
- Check frigate validators when saving config by @NickM-27 in #6069
- Correct bridge network explanation by @NickM-27 in #6102
- update api key for search by @blakeblackshear in #6119
- Update installation.md by @imne in #6128
- live.md: Add a note for Tailscale usage by @felikcat in #6121
- Make camera naming more clear by @NickM-27 in #6164
- Add docs for getting intel_gpu_top to work without privileged mode by @mew1033 in #6166
- Added instruction to install Frigate on QNAP NAS. by @my-umd in #6196
- adding instructions for Nginix reverse proxy by @vajonam in #6159
- Docs: access go2rtc stream externally while using add-on #6208 by @dbuezas in #6209
- contributing.md: add note about extra coral device by @kevin-david in #6071
- Update configuring_go2rtc.md by @dbuezas in #6232
- Fix http-jpeg template insertion by @NickM-27 in #6291
- Clarify stationary object behavior by @NickM-27 in #6273
- Add instructions for custom go2rtc build by @NickM-27 in #6333
- Update version to 0.12.1 by @NickM-27 in #6386
- Make note of mapping rpi device by @NickM-27 in #6511
- [Docs] Snapshot config explanation. by @Nornode in #6439
- Update ESXi documentation to point to latest instructions by @lamw in #6576
- fix build by @blakeblackshear in #6668
- Docs: replace Double Take integration to maintained fork by @skrashevich in #6746
New Contributors
- @Juliafin made their first contribution in #6005
- @SgtBatten made their first contribution in #6091
- @imne made their first contribution in #6128
- @felikcat made their first contribution in #6121
- @mew1033 made their first contribution in #6166
- @my-umd made their first contribution in #6196
- @vajonam made their first contribution in #6159
- @dbuezas made their first contribution in #6209
- @Nornode made their first contribution in #6439
- @lamw made their first contribution in #6576
Full Changelog: v0.12.0...v0.12.1
0.12.0 Release
Major Changes for 0.12.0
❗❗Notice❗❗
I want to recognize @NickM-27 for all the contributions he made on this release and all the support he helps provide in the issues. If you have been considering sponsoring this project with either a one time contribution or a recurring contribution, I would request that you do so at his sponsors page.
Announcement: 0.12.0 will be the last release with support for 32bit ARM. The overhead of maintaining the dependencies is significant, and we are seeing <1% of docker pulls for that architecture.
BREAKING CHANGES
- We are no longer pushing images to Dockerhub. All docker builds will be published to github container registry instead. The new image location for stable is
ghcr.io/blakeblackshear/frigate:stable
- If using the Frigate-HomeAssistant Integration it will need to be updated to 4.0.0 to avoid breaking changes with Frigate 0.12
- Changes have been made to the database, a backup of the database will need to be made before updating if you want to roll-back.
- Some deployment approaches are overwriting the PATH environment value to an old value. If you see errors like
./run: line 7: exec: nginx: not found
, then you need to stop overriding your PATH. This happens with both Proxmox LXC and Portainer (#3223 the database will need to be deleted to roll-back successfully. - Some deployment approaches are overwriting the command docker value giving errors like
[Errno 98] Address already in us
which need to be set back to default to work #5444 - The shm storage requirements have changed for 0.12, they will likely need to be recalculated and adjusted in the config, see the docs for how to calculate this new value. NOTE: This does not apply to addon users which are unable to configure this value.
- More config validation checks have been added, it is possible that Frigate will fail to start due to an error that has been caught, the error will need to be fixed before frigate can start.
- RTMP is now disabled by default and the role is not automatically added. It is highly recommend to move to the new RTSP streams via the bundled go2rtc.
- Changes have been made to the way recordings segments are stored, external scripts which access the recordings file structure directly may be broken.
Retention limited by available storage
Frigate now limits its recordings to available storage, if the storage for recordings gets below 1 hour left then Frigate will delete the oldest recording segments to make room for newer ones. Frigate will also not fail if there is no space to save recordings.
go2rtc
go2rtc 1.2.0 has been bundled inside Frigate. The configuration can be set directly inside Frigate's config file nested under the go2rtc
section. You can follow the guide to setup go2rtc.
Due to many issues with RTMP, it is now deprecated in favor of using the bundled go2rtc to provide an RTSP stream. Streams configured in go2rtc can also be used by Frigate to reduce connections to the camera, see the restream docs for more info.
Birdseye restreaming is also now supported at rtsp://frigate_ip:8554/birdseye
NOTE: Port 8554
will need to be mapped in the docker run or docker compose file for the restream to be accessed outside the container.
New live stream options
The bundled go2rtc also enables new MSE
and WebRTC
live view options in the frontend which enable low-latency full-framerate live views that support audio.
NOTES:
- MSE is not supported on iPhones but is supported on all other devices.
- WebRTC will likely require additional setup, see the live view docs for more info
The live view options are set in the Frigate WebUI for each camera individually.
New detector types
Frigate now supports new detector types along with the Google Coral TPU.
OpenVINO
The OpenVINO detector type runs an OpenVINO IR model on Intel CPU, GPU and VPU hardware. OpenVINO is supported on 6th Gen Intel platforms (Skylake) and newer. A supported Intel platform is required to use the GPU device with OpenVINO. The MYRIAD device may be run on any platform, including Arm devices. For detailed system requirements, see OpenVINO System Requirements
TensorRT
NVidia GPUs may be used for object detection using the TensorRT libraries. Due to the size of the additional libraries, this detector is only provided in images with the -tensorrt tag suffix. The TensortRT detector is able to run on x86 hosts that have an Nvidia GPU which supports the 11.x series of CUDA libraries. The minimum driver version on the host system must be >=450.80.02. Also the GPU must support a Compute Capability of 5.0 or greater. This generally correlates to a Maxwell-era GPU or newer, check the TensorRT docs for more info.
NOTE: The link in the docs is for the final release location, for the beta the script is located at https://raw.githubusercontent.com/blakeblackshear/frigate/dev/docker/tensorrt_models.sh
New system page
The Debug
page has been renamed to System
. It now includes much more information and links to easily get vainfo
and ffprobe
data.
The GPUs section will show each GPU based on the hwaccel args, depending on the type of GPU different information is supported. For example Nvidia GPUs will have the name while others will be generic, also intel does not support memory usage. There is also a VAINFO
button which will make it easier to diagnose hwaccel issues and verify that the hwaccel driver is being used correctly. Note that this button does not work on all setups, and it doesn't necessarily indicate a problem.
Each camera will have their own process CPU & memory usage so it will be easier to see which process is using those resources. There is also an FFPROBE
button which will be helpful to understand what each stream is presenting and make it easier to include that in support issues.
The debug config has also been removed, the config can be copied using the config page in the WebUI.
New storage page
Frigate WebUI now has a built in storage page which shows the general usage for both storage and memory. It also shows a per-camera storage usage and stream bandwidth. This should make it a lot easier to have a general idea how much storage is being used by each camera.
New logs page
Frigate WebUI now has built in logs, this will make copying and viewing logs much easier. Currently the logs are static meaning the page must be refreshed to view new logs.
New config editor
Frigate WebUI now has a built in config editor with syntax highlighting and schema validation. This means that the config will be validated before it can be saved which will make yaml config much easier to manage.
NOTE: The previous docker-compose or docker CLI may have had the /config.yml set to :ro
or read-only. That will need to be removed for the config editor to be able to save the new file.
MQTT is now optional
Frigate no longer requires MQTT to function, MQTT is also setup asynchronously so errors will be more clear and frigate won't stop when mqtt is enabled but not setup correctly.
NOTE: MQTT is still required for the Frigate-HomeAssistant Integration
No changes are needed for existing users.
FFMpeg presets
FFMPEG presets for common configurations are now added, making the config cleaner and allowing the underlying args to be changed between releases without being a breaking change. It is highly recommended to update the configuration to use these presets.
See https://deploy-preview-4055--frigate-docs.netlify.app/configuration/ffmpeg_presets for more info on how these should be used.
Example: Enabling Audio In Recordings
before:
output_args:
record: -f segment -segment_time 10 -segment_format mp4 -reset_timestamps 1 -strftime 1 -c:v copy -c:a aac
after:
output_args:
record: preset-record-generic-audio-aac
This also enables presets for hardware acceleration which will be used to further reduce CPU usage by using the GPU to optimize scaling and other workloads.
Improved events filters
- **Multi Select Filters:...
0.12.0 Release Candidate 2
Major Changes for 0.12.0
❗❗Notice❗❗
I want to recognize @NickM-27 for all the contributions he made on this release and all the support he helps provide in the issues. If you have been considering sponsoring this project with either a one time contribution or a recurring contribution, I would request that you do so at his sponsors page.
Link to updated docs: https://deploy-preview-4055--frigate-docs.netlify.app/
Announcement: 0.12.0 will be the last release with support for 32bit ARM. The overhead of maintaining the dependencies is significant, and we are seeing <1% of docker pulls for that architecture.
Changes Since RC1
- Cleanup displayed value when calculating storage usage
- Make it simpler to inject a custom go2rtc build as needed
BREAKING CHANGES
- If using the Frigate-HomeAssistant Integration it will need to be updated to 4.0.0 to avoid breaking changes with Frigate 0.12
- Changes have been made to the database, a backup of the database will need to be made before updating if you want to roll-back.
- Some deployment approaches are overwriting the PATH environment value to an old value. If you see errors like
./run: line 7: exec: nginx: not found
, then you need to stop overriding your PATH. This happens with both Proxmox LXC and Portainer (#3223 the database will need to be deleted to roll-back successfully. - Some deployment approaches are overwriting the command docker value giving errors like
[Errno 98] Address already in us
which need to be set back to default to work #5444 - The shm storage requirements have changed for 0.12, they will likely need to be recalculated and adjusted in the config, see the docs for how to calculate this new value. NOTE: This does not apply to addon users which are unable to configure this value.
- More config validation checks have been added, it is possible that Frigate will fail to start due to an error that has been caught, the error will need to be fixed before frigate can start.
- RTMP is now disabled by default and the role is not automatically added. It is highly recommend to move to the new RTSP streams via the bundled go2rtc.
- Changes have been made to the way recordings segments are stored, external scripts which access the recordings file structure directly may be broken.
Retention limited by available storage
Frigate now limits its recordings to available storage, if the storage for recordings gets below 1 hour left then Frigate will delete the oldest recording segments to make room for newer ones. Frigate will also not fail if there is no space to save recordings.
go2rtc
go2rtc 1.2.0 has been bundled inside Frigate. The configuration can be set directly inside Frigate's config file nested under the go2rtc
section. You can follow the guide to setup go2rtc.
Due to many issues with RTMP, it is now deprecated in favor of using the bundled go2rtc to provide an RTSP stream. Streams configured in go2rtc can also be used by Frigate to reduce connections to the camera, see the restream docs for more info.
Birdseye restreaming is also now supported at rtsp://frigate_ip:8554/birdseye
NOTE: Port 8554
will need to be mapped in the docker run or docker compose file for the restream to be accessed outside the container.
New live stream options
The bundled go2rtc also enables new MSE
and WebRTC
live view options in the frontend which enable low-latency full-framerate live views that support audio.
NOTES:
- MSE is not supported on iPhones but is supported on all other devices.
- WebRTC will likely require additional setup, see the live view docs for more info
The live view options are set in the Frigate WebUI for each camera individually.
New detector types
Frigate now supports new detector types along with the Google Coral TPU.
OpenVINO
The OpenVINO detector type runs an OpenVINO IR model on Intel CPU, GPU and VPU hardware. OpenVINO is supported on 6th Gen Intel platforms (Skylake) and newer. A supported Intel platform is required to use the GPU device with OpenVINO. The MYRIAD device may be run on any platform, including Arm devices. For detailed system requirements, see OpenVINO System Requirements
TensorRT
NVidia GPUs may be used for object detection using the TensorRT libraries. Due to the size of the additional libraries, this detector is only provided in images with the -tensorrt tag suffix. The TensortRT detector is able to run on x86 hosts that have an Nvidia GPU which supports the 11.x series of CUDA libraries. The minimum driver version on the host system must be >=450.80.02. Also the GPU must support a Compute Capability of 5.0 or greater. This generally correlates to a Maxwell-era GPU or newer, check the TensorRT docs for more info.
NOTE: The link in the docs is for the final release location, for the beta the script is located at https://raw.githubusercontent.com/blakeblackshear/frigate/dev/docker/tensorrt_models.sh
New system page
The Debug
page has been renamed to System
. It now includes much more information and links to easily get vainfo
and ffprobe
data.
The GPUs section will show each GPU based on the hwaccel args, depending on the type of GPU different information is supported. For example Nvidia GPUs will have the name while others will be generic, also intel does not support memory usage. There is also a VAINFO
button which will make it easier to diagnose hwaccel issues and verify that the hwaccel driver is being used correctly. Note that this button does not work on all setups, and it doesn't necessarily indicate a problem.
Each camera will have their own process CPU & memory usage so it will be easier to see which process is using those resources. There is also an FFPROBE
button which will be helpful to understand what each stream is presenting and make it easier to include that in support issues.
The debug config has also been removed, the config can be copied using the config page in the WebUI.
New storage page
Frigate WebUI now has a built in storage page which shows the general usage for both storage and memory. It also shows a per-camera storage usage and stream bandwidth. This should make it a lot easier to have a general idea how much storage is being used by each camera.
New logs page
Frigate WebUI now has built in logs, this will make copying and viewing logs much easier. Currently the logs are static meaning the page must be refreshed to view new logs.
New config editor
Frigate WebUI now has a built in config editor with syntax highlighting and schema validation. This means that the config will be validated before it can be saved which will make yaml config much easier to manage.
NOTE: The previous docker-compose or docker CLI may have had the /config.yml set to :ro
or read-only. That will need to be removed for the config editor to be able to save the new file.
MQTT is now optional
Frigate no longer requires MQTT to function, MQTT is also setup asynchronously so errors will be more clear and frigate won't stop when mqtt is enabled but not setup correctly.
NOTE: MQTT is still required for the Frigate-HomeAssistant Integration
No changes are needed for existing users.
FFMpeg presets
FFMPEG presets for common configurations are now added, making the config cleaner and allowing the underlying args to be changed between releases without being a breaking change. It is highly recommended to update the configuration to use these presets.
See https://deploy-preview-4055--frigate-docs.netlify.app/configuration/ffmpeg_presets for more info on how these should be used.
Example: Enabling Audio In Recordings
before:
output_args:
record: -f segment -segment_time 10 -segment_format mp4 -reset_timestamps 1 -strftime 1 -c:v copy -c:a aac
after:
output_args:
record: preset-record-generic-audio-aac
This also enables presets for hardware acceleration which will be used to further reduce CPU usage by using the GPU to optimize scaling and other workloads.
Improved events filters
- ...
0.12.0 Release Candidate 1
Major Changes for 0.12.0
❗❗Notice❗❗
I want to recognize @NickM-27 for all the contributions he made on this release and all the support he helps provide in the issues. If you have been considering sponsoring this project with either a one time contribution or a recurring contribution, I would request that you do so at his sponsors page.
Link to updated docs: https://deploy-preview-4055--frigate-docs.netlify.app/
Announcement: 0.12.0 will be the last release with support for 32bit ARM. The overhead of maintaining the dependencies is significant, and we are seeing <1% of docker pulls for that architecture.
BREAKING CHANGES
- If using the Frigate-HomeAssistant Integration it will need to be updated to 4.0.0 to avoid breaking changes with Frigate 0.12
- Changes have been made to the database, a backup of the database will need to be made before updating if you want to roll-back.
- Some deployment approaches are overwriting the PATH environment value to an old value. If you see errors like
./run: line 7: exec: nginx: not found
, then you need to stop overriding your PATH. This happens with both Proxmox LXC and Portainer (#3223 the database will need to be deleted to roll-back successfully. - Some deployment approaches are overwriting the command docker value giving errors like
[Errno 98] Address already in us
which need to be set back to default to work #5444 - The shm storage requirements have changed for 0.12, they will likely need to be recalculated and adjusted in the config, see the docs for how to calculate this new value. NOTE: This does not apply to addon users which are unable to configure this value.
- More config validation checks have been added, it is possible that Frigate will fail to start due to an error that has been caught, the error will need to be fixed before frigate can start.
- RTMP is now disabled by default and the role is not automatically added. It is highly recommend to move to the new RTSP streams via the bundled go2rtc.
- Changes have been made to the way recordings segments are stored, external scripts which access the recordings file structure directly may be broken.
Retention limited by available storage
Frigate now limits its recordings to available storage, if the storage for recordings gets below 1 hour left then Frigate will delete the oldest recording segments to make room for newer ones. Frigate will also not fail if there is no space to save recordings.
go2rtc
go2rtc 1.2.0 has been bundled inside Frigate. The configuration can be set directly inside Frigate's config file nested under the go2rtc
section. You can follow the guide to setup go2rtc.
Due to many issues with RTMP, it is now deprecated in favor of using the bundled go2rtc to provide an RTSP stream. Streams configured in go2rtc can also be used by Frigate to reduce connections to the camera, see the restream docs for more info.
Birdseye restreaming is also now supported at rtsp://frigate_ip:8554/birdseye
NOTE: Port 8554
will need to be mapped in the docker run or docker compose file for the restream to be accessed outside the container.
New live stream options
The bundled go2rtc also enables new MSE
and WebRTC
live view options in the frontend which enable low-latency full-framerate live views that support audio.
NOTES:
- MSE is not supported on iPhones but is supported on all other devices.
- WebRTC will likely require additional setup, see the live view docs for more info
The live view options are set in the Frigate WebUI for each camera individually.
New detector types
Frigate now supports new detector types along with the Google Coral TPU.
OpenVINO
The OpenVINO detector type runs an OpenVINO IR model on Intel CPU, GPU and VPU hardware. OpenVINO is supported on 6th Gen Intel platforms (Skylake) and newer. A supported Intel platform is required to use the GPU device with OpenVINO. The MYRIAD device may be run on any platform, including Arm devices. For detailed system requirements, see OpenVINO System Requirements
TensorRT
NVidia GPUs may be used for object detection using the TensorRT libraries. Due to the size of the additional libraries, this detector is only provided in images with the -tensorrt tag suffix. The TensortRT detector is able to run on x86 hosts that have an Nvidia GPU which supports the 11.x series of CUDA libraries. The minimum driver version on the host system must be >=450.80.02. Also the GPU must support a Compute Capability of 5.0 or greater. This generally correlates to a Maxwell-era GPU or newer, check the TensorRT docs for more info.
NOTE: The link in the docs is for the final release location, for the beta the script is located at https://raw.githubusercontent.com/blakeblackshear/frigate/dev/docker/tensorrt_models.sh
New system page
The Debug
page has been renamed to System
. It now includes much more information and links to easily get vainfo
and ffprobe
data.
The GPUs section will show each GPU based on the hwaccel args, depending on the type of GPU different information is supported. For example Nvidia GPUs will have the name while others will be generic, also intel does not support memory usage. There is also a VAINFO
button which will make it easier to diagnose hwaccel issues and verify that the hwaccel driver is being used correctly. Note that this button does not work on all setups, and it doesn't necessarily indicate a problem.
Each camera will have their own process CPU & memory usage so it will be easier to see which process is using those resources. There is also an FFPROBE
button which will be helpful to understand what each stream is presenting and make it easier to include that in support issues.
The debug config has also been removed, the config can be copied using the config page in the WebUI.
New storage page
Frigate WebUI now has a built in storage page which shows the general usage for both storage and memory. It also shows a per-camera storage usage and stream bandwidth. This should make it a lot easier to have a general idea how much storage is being used by each camera.
New logs page
Frigate WebUI now has built in logs, this will make copying and viewing logs much easier. Currently the logs are static meaning the page must be refreshed to view new logs.
New config editor
Frigate WebUI now has a built in config editor with syntax highlighting and schema validation. This means that the config will be validated before it can be saved which will make yaml config much easier to manage.
NOTE: The previous docker-compose or docker CLI may have had the /config.yml set to :ro
or read-only. That will need to be removed for the config editor to be able to save the new file.
MQTT is now optional
Frigate no longer requires MQTT to function, MQTT is also setup asynchronously so errors will be more clear and frigate won't stop when mqtt is enabled but not setup correctly.
NOTE: MQTT is still required for the Frigate-HomeAssistant Integration
No changes are needed for existing users.
FFMpeg presets
FFMPEG presets for common configurations are now added, making the config cleaner and allowing the underlying args to be changed between releases without being a breaking change. It is highly recommended to update the configuration to use these presets.
See https://deploy-preview-4055--frigate-docs.netlify.app/configuration/ffmpeg_presets for more info on how these should be used.
Example: Enabling Audio In Recordings
before:
output_args:
record: -f segment -segment_time 10 -segment_format mp4 -reset_timestamps 1 -strftime 1 -c:v copy -c:a aac
after:
output_args:
record: preset-record-generic-audio-aac
This also enables presets for hardware acceleration which will be used to further reduce CPU usage by using the GPU to optimize scaling and other workloads.
Improved events filters
- Multi Select Filters: Each filter now supports multi select so multiple cameras, labels, etc. can be viewed at the same time.
- **Favorited...
0.12.0 Beta 10
Major Changes for 0.12.0
❗❗Notice❗❗
I want to recognize @NickM-27 for all the contributions he made on this release and all the support he helps provide in the issues. If you have been considering sponsoring this project with either a one time contribution or a recurring contribution, I would request that you do so at his sponsors page.
Link to updated docs: https://deploy-preview-4055--frigate-docs.netlify.app/
Changes Since Beta 9
- Set ffmpeg threads default to 2 in order to fix recordings for some users
- Fix timezone option for strftime UI configuration
BREAKING CHANGES
- If using the Frigate-HomeAssistant Integration it will need to be updated to 4.0.0 beta to avoid breaking changes with Frigate 0.12
- Changes have been made to the database, a backup of the database will need to be made before updating if you want to roll-back.
- Some deployment approaches are overwriting the PATH environment value to an old value. If you see errors like
./run: line 7: exec: nginx: not found
, then you need to stop overriding your PATH. This happens with both Proxmox LXC and Portainer (#3223 the database will need to be deleted to roll-back successfully. - Some deployment approaches are overwriting the command docker value giving errors like
[Errno 98] Address already in us
which need to be set back to default to work #5444 - The shm storage requirements have changed for 0.12, they will likely need to be recalculated and adjusted in the config, see the docs for how to calculate this new value. NOTE: This does not apply to addon users which are unable to configure this value.
- More config validation checks have been added, it is possible that Frigate will fail to start due to an error that has been caught, the error will need to be fixed before frigate can start.
- RTMP is now disabled by default and the role is not automatically added. It is highly recommend to move to the new RTSP streams via the bundled go2rtc.
- Changes have been made to the way recordings segments are stored, external scripts which access the recordings file structure directly may be broken.
Retention limited by available storage
Frigate now limits its recordings to available storage, if the storage for recordings gets below 1 hour left then Frigate will delete the oldest recording segments to make room for newer ones. Frigate will also not fail if there is no space to save recordings.
go2rtc
go2rtc has been bundled inside Frigate. The configuration can be set directly inside Frigate's config file nested under the go2rtc
section. You can follow the guide to setup go2rtc.
Due to many issues with RTMP, it is now deprecated in favor of using the bundled go2rtc to provide an RTSP stream. Streams configured in go2rtc can also be used by Frigate to reduce connections to the camera, see the restream docs for more info.
Birdseye restreaming is also now supported at rtsp://frigate_ip:8554/birdseye
NOTE: Port 8554
will need to be mapped in the docker run or docker compose file for the restream to be accessed outside the container.
New live stream options
The bundled go2rtc also enables new MSE
and WebRTC
live view options in the frontend which enable low-latency full-framerate live views that support audio.
NOTES:
- MSE is not supported on iPhones but is supported on all other devices.
- WebRTC will likely require additional setup, see the live view docs for more info
The live view options are set in the Frigate WebUI for each camera individually.
New detector types
Frigate now supports new detector types along with the Google Coral TPU.
OpenVINO
The OpenVINO detector type runs an OpenVINO IR model on Intel CPU, GPU and VPU hardware. OpenVINO is supported on 6th Gen Intel platforms (Skylake) and newer. A supported Intel platform is required to use the GPU device with OpenVINO. The MYRIAD device may be run on any platform, including Arm devices. For detailed system requirements, see OpenVINO System Requirements
TensorRT
NVidia GPUs may be used for object detection using the TensorRT libraries. Due to the size of the additional libraries, this detector is only provided in images with the -tensorrt tag suffix. The TensortRT detector is able to run on x86 hosts that have an Nvidia GPU which supports the 11.x series of CUDA libraries. The minimum driver version on the host system must be >=450.80.02. Also the GPU must support a Compute Capability of 5.0 or greater. This generally correlates to a Maxwell-era GPU or newer, check the TensorRT docs for more info.
NOTE: The link in the docs is for the final release location, for the beta the script is located at https://raw.githubusercontent.com/blakeblackshear/frigate/dev/docker/tensorrt_models.sh
New system page
The Debug
page has been renamed to System
. It now includes much more information and links to easily get vainfo
and ffprobe
data.
The GPUs section will show each GPU based on the hwaccel args, depending on the type of GPU different information is supported. For example Nvidia GPUs will have the name while others will be generic, also intel does not support memory usage. There is also a VAINFO
button which will make it easier to diagnose hwaccel issues and verify that the hwaccel driver is being used correctly.
Each camera will have their own process CPU & memory usage so it will be easier to see which process is using those resources. There is also an FFPROBE
button which will be helpful to understand what each stream is presenting and make it easier to include that in support issues.
The debug config has also been removed, the config can be copied using the config page in the WebUI.
New storage page
Frigate WebUI now has a built in storage page which shows the general usage for both storage and memory. It also shows a per-camera storage usage and stream bandwidth. This should make it a lot easier to have a general idea how much storage is being used by each camera.
New logs page
Frigate WebUI now has built in logs, this will make copying and viewing logs much easier. Currently the logs are static meaning the page must be refreshed to view new logs.
New config editor
Frigate WebUI now has a built in config editor with syntax highlighting and schema validation. This means that the config will be validated before it can be saved which will make yaml config much easier to manage.
NOTE: The previous docker-compose or docker CLI may have had the /config.yml set to :ro
or read-only. That will need to be removed for the config editor to be able to save the new file.
MQTT is now optional
Frigate no longer requires MQTT to function, MQTT is also setup asynchronously so errors will be more clear and frigate won't stop when mqtt is enabled but not setup correctly.
NOTE: MQTT is still required for the Frigate-HomeAssistant Integration
No changes are needed for existing users.
FFMpeg presets
FFMPEG presets for common configurations are now added, making the config cleaner and allowing the underlying args to be changed between releases without being a breaking change. It is highly recommended to update the configuration to use these presets.
See https://deploy-preview-4055--frigate-docs.netlify.app/configuration/ffmpeg_presets for more info on how these should be used.
Example: Enabling Audio In Recordings
before:
output_args:
record: -f segment -segment_time 10 -segment_format mp4 -reset_timestamps 1 -strftime 1 -c:v copy -c:a aac
after:
output_args:
record: preset-record-generic-audio-aac
This also enables presets for hardware acceleration which will be used to further reduce CPU usage by using the GPU to optimize scaling and other workloads.
Improved events filters
- Multi Select Filters: Each filter now supports multi select so multiple cameras, labels, etc. can be viewed at the same time.
- Favorited Event Filter: Events can now be filtered to only show favorited events along with the existing filters.
Recordings updates
Recording segments ...
0.12.0 Beta 9
Major Changes for 0.12.0
❗❗Notice❗❗
I want to recognize @NickM-27 for all the contributions he made on this release and all the support he helps provide in the issues. If you have been considering sponsoring this project with either a one time contribution or a recurring contribution, I would request that you do so at his sponsors page.
Link to updated docs: https://deploy-preview-4055--frigate-docs.netlify.app/
Changes Since Beta 8
- Update go2rtc to 1.2.0
- Implement healthcheck for go2rtc to restart it if it stalls / crashes
- Support for yolov5 & yolov8 models with OpenVINO
- Add link to go2rtc in system page
- Optimize ffmpeg to use fewer threads
- Fix birdseye restream for rpi hwaccel
- More options for configuring webUI date / time style & format
- Web UI fixes
BREAKING CHANGES
- If using the Frigate-HomeAssistant Integration it will need to be updated to 4.0.0 beta to avoid breaking changes with Frigate 0.12
- Changes have been made to the database, a backup of the database will need to be made before updating if you want to roll-back.
- Some deployment approaches are overwriting the PATH environment value to an old value. If you see errors like
./run: line 7: exec: nginx: not found
, then you need to stop overriding your PATH. This happens with both Proxmox LXC and Portainer (#3223 the database will need to be deleted to roll-back successfully. - Some deployment approaches are overwriting the command docker value giving errors like
[Errno 98] Address already in us
which need to be set back to default to work #5444 - The shm storage requirements have changed for 0.12, they will likely need to be recalculated and adjusted in the config, see the docs for how to calculate this new value. NOTE: This does not apply to addon users which are unable to configure this value.
- More config validation checks have been added, it is possible that Frigate will fail to start due to an error that has been caught, the error will need to be fixed before frigate can start.
- RTMP is now disabled by default and the role is not automatically added. It is highly recommend to move to the new RTSP streams via the bundled go2rtc.
- Changes have been made to the way recordings segments are stored, external scripts which access the recordings file structure directly may be broken.
Retention limited by available storage
Frigate now limits its recordings to available storage, if the storage for recordings gets below 1 hour left then Frigate will delete the oldest recording segments to make room for newer ones. Frigate will also not fail if there is no space to save recordings.
go2rtc
go2rtc has been bundled inside Frigate. The configuration can be set directly inside Frigate's config file nested under the go2rtc
section. You can follow the guide to setup go2rtc.
Due to many issues with RTMP, it is now deprecated in favor of using the bundled go2rtc to provide an RTSP stream. Streams configured in go2rtc can also be used by Frigate to reduce connections to the camera, see the restream docs for more info.
Birdseye restreaming is also now supported at rtsp://frigate_ip:8554/birdseye
NOTE: Port 8554
will need to be mapped in the docker run or docker compose file for the restream to be accessed outside the container.
New live stream options
The bundled go2rtc also enables new MSE
and WebRTC
live view options in the frontend which enable low-latency full-framerate live views that support audio.
NOTES:
- MSE is not supported on iPhones but is supported on all other devices.
- WebRTC will likely require additional setup, see the live view docs for more info
The live view options are set in the Frigate WebUI for each camera individually.
New detector types
Frigate now supports new detector types along with the Google Coral TPU.
OpenVINO
The OpenVINO detector type runs an OpenVINO IR model on Intel CPU, GPU and VPU hardware. OpenVINO is supported on 6th Gen Intel platforms (Skylake) and newer. A supported Intel platform is required to use the GPU device with OpenVINO. The MYRIAD device may be run on any platform, including Arm devices. For detailed system requirements, see OpenVINO System Requirements
TensorRT
NVidia GPUs may be used for object detection using the TensorRT libraries. Due to the size of the additional libraries, this detector is only provided in images with the -tensorrt tag suffix. The TensortRT detector is able to run on x86 hosts that have an Nvidia GPU which supports the 11.x series of CUDA libraries. The minimum driver version on the host system must be >=450.80.02. Also the GPU must support a Compute Capability of 5.0 or greater. This generally correlates to a Maxwell-era GPU or newer, check the TensorRT docs for more info.
NOTE: The link in the docs is for the final release location, for the beta the script is located at https://raw.githubusercontent.com/blakeblackshear/frigate/dev/docker/tensorrt_models.sh
New system page
The Debug
page has been renamed to System
. It now includes much more information and links to easily get vainfo
and ffprobe
data.
The GPUs section will show each GPU based on the hwaccel args, depending on the type of GPU different information is supported. For example Nvidia GPUs will have the name while others will be generic, also intel does not support memory usage. There is also a VAINFO
button which will make it easier to diagnose hwaccel issues and verify that the hwaccel driver is being used correctly.
Each camera will have their own process CPU & memory usage so it will be easier to see which process is using those resources. There is also an FFPROBE
button which will be helpful to understand what each stream is presenting and make it easier to include that in support issues.
The debug config has also been removed, the config can be copied using the config page in the WebUI.
New storage page
Frigate WebUI now has a built in storage page which shows the general usage for both storage and memory. It also shows a per-camera storage usage and stream bandwidth. This should make it a lot easier to have a general idea how much storage is being used by each camera.
New logs page
Frigate WebUI now has built in logs, this will make copying and viewing logs much easier. Currently the logs are static meaning the page must be refreshed to view new logs.
New config editor
Frigate WebUI now has a built in config editor with syntax highlighting and schema validation. This means that the config will be validated before it can be saved which will make yaml config much easier to manage.
NOTE: The previous docker-compose or docker CLI may have had the /config.yml set to :ro
or read-only. That will need to be removed for the config editor to be able to save the new file.
MQTT is now optional
Frigate no longer requires MQTT to function, MQTT is also setup asynchronously so errors will be more clear and frigate won't stop when mqtt is enabled but not setup correctly.
NOTE: MQTT is still required for the Frigate-HomeAssistant Integration
No changes are needed for existing users.
FFMpeg presets
FFMPEG presets for common configurations are now added, making the config cleaner and allowing the underlying args to be changed between releases without being a breaking change. It is highly recommended to update the configuration to use these presets.
See https://deploy-preview-4055--frigate-docs.netlify.app/configuration/ffmpeg_presets for more info on how these should be used.
Example: Enabling Audio In Recordings
before:
output_args:
record: -f segment -segment_time 10 -segment_format mp4 -reset_timestamps 1 -strftime 1 -c:v copy -c:a aac
after:
output_args:
record: preset-record-generic-audio-aac
This also enables presets for hardware acceleration which will be used to further reduce CPU usage by using the GPU to optimize scaling and other workloads.
Improved events filters
- **Multi Select Filter...