Skip to content

0.15.0 Beta 2

Pre-release
Pre-release
Compare
Choose a tag to compare
@blakeblackshear blakeblackshear released this 20 Nov 11:56
· 51 commits to dev since this release
e76f4e9

Beta Documentation: https://deploy-preview-13787--frigate-docs.netlify.app/

Images

  • ghcr.io/blakeblackshear/frigate:0.15.0-beta2
  • ghcr.io/blakeblackshear/frigate:0.15.0-beta2-standard-arm64
  • ghcr.io/blakeblackshear/frigate:0.15.0-beta2-tensorrt
  • ghcr.io/blakeblackshear/frigate:0.15.0-beta2-tensorrt-jp4
  • ghcr.io/blakeblackshear/frigate:0.15.0-beta2-tensorrt-jp5
  • ghcr.io/blakeblackshear/frigate:0.15.0-beta2-rk
  • ghcr.io/blakeblackshear/frigate:0.15.0-beta2-rocm
  • ghcr.io/blakeblackshear/frigate:0.15.0-beta2-h8l

Changes since Beta 1

  • Fix config file bug where Home Assistant Addon would not start
  • Fix environment variable parsing in config file
  • Fix shutdown hang when using audio detection
  • Fix bug that prevented Frigate from starting if the config file was read-only
  • Fix bug where review detections were not being retained correctly with required_zones
  • Improve Semantic Search documentation for GPUs
  • Improve SHM handling, size calculation, and docs
  • Improve Explore database query speed
  • Improve handling of sub labels
  • Don't automatically download tensorrt model
  • Update Hailo driver to 4.19
  • Handle hwaccel args not being set for birdseye restream
  • Add ability to configure model input dtype
  • Add filter for Frigate+ submission status in Explore
  • Enable support for onnxruntime to use Jetson hardware
  • Other UI fixes and tweaks

Major Changes for 0.15.0

Breaking Changes

There are several breaking changes in this release, Frigate will attempt to update the configuration automatically. In some cases manual changes may be required. It is always recommended to back up your current config and database before upgrading:

  1. Simply copy your current config file to a new location
  2. Stop Frigate and make a copy of the frigate.db file
  • Rewritten SHM system
    • The SHM system has been rewritten to be more stable. This means that a large % of shared memory (SHM) will be used by default but the total usage will not fluctuate, and Frigate will not fail from SHM overflowing. However, this also means that having the correct SHM size for your cameras, detector, and hardware is more important to having a smooth experience with Frigate. A new calculation is done on startup, so if your shm_size is too low then a warning will be printed in the log stating that it needs to be increased.
  • Recording configuration changed
    • The record config has been refactored to allow for direct control of how long alerts and detections are retained. These values will be automatically populated from your current config, but you may want to adjust the values that are set after updating. See the updated docs here and ensure your updated config retains the footage you want it to.
  • ffmpeg updates
    • ffmpeg has been updated to version 7. Some Intel users may need to change what hwaccel preset they are using (preset-vaapi may need to now be preset-intel-qsv-h264 or preset-intel-qsv-h265) if camera feeds are not functioning correctly after upgrading. This may need to be adjusted on a per-camera basis. If a qsv preset is not working properly, you may still need to use a preset-vaapi or revert to the previous ffmpeg version as described below.
    • The new version provides many improvements, but the old version can still be run if needed by specifying path: "5.0" in your ffmpeg: config entry. For example:
      ffmpeg:
        path: "5.0"
      
    • ffmpeg presets have been updated. It is always recommended to use ffmpeg presets rather than manual arguments.
    • ffmpeg is no longer part of $PATH. In most cases this is handled automatically.
      • go2rtc exec streams will need to add the full path for ffmpeg which in most cases will be /usr/lib/ffmpeg/7.0/bin/ffmpeg.
      • If the go2rtc config has bin: ffmpeg defined, it needs to be removed.

Explore

The new Explore pane in Frigate 0.15 makes it easy to explore every object tracked by Frigate. It offers a variety of filters and supports keyword and phrase-based text search, searching for similar images, and searching through descriptive text generated by AI models.

The default Explore pane shows a summary of your most recent tracked objects organized by label. Clicking the small arrow icon at the end of the list will bring you to an infinitely scrolling grid view. The grid view can also be set as the default by changing the view type from the Settings button in the top right corner of the pane.

The Explore pane also serves as the new way to submit images to Frigate+. Filters can be applied to only display tracked objects with snapshots that have not been submitted to Frigate+. The left/right arrow keys on the keyboard allow quick navigation between tracked object snapshots when looking at the Tracked Object Details pane from the grid view.

AI/ML Search

Frigate 0.15 introduces two powerful search features: Semantic Search and GenAI Search. Semantic Search can be enabled on its own, while GenAI Search works in addition to Semantic Search.

Semantic Search

Semantic Search uses a CLIP model to generate embeddings (numerical representations of images) for the thumbnails of your tracked objects, enabling searches based on text descriptions or visual similarity. This is all done locally.

For instance, if Frigate detects and tracks a car, you can use similarity search to see other instances where Frigate detected and tracked that same car. You can also quickly search your tracked objects using an "image caption" approach. Searching for "red car driving on a residential street" or "person in a blue shirt walking on the sidewalk at dawn" or even "a person wearing a black t-shirt with the word 'SPORT' on it" will produce some stunning results.

Semantic Search works by running an AI model locally on your system. Small or underpowered systems like a Raspberry Pi will not run Semantic Search reliably or at all. A dedicated GPU and 16GB of RAM is recommended for best performance.

See the Semantic Search docs for system requirements, setup instructions, and usage tips.

Screen Shot 2024-10-15 at 07 38 16 AM

Generative AI

GenAI Search employs generative AI models to create descriptive text for the thumbnails of your tracked objects, which are stored in the Frigate database to enhance future searches. Supported providers include Google Gemini, Ollama, and OpenAI, so you can choose whether you want to send data to the cloud or use a locally hosted provider.

See the GenAI docs for setup instructions and use case suggestions.

Improved Tools for Debugging

Review Item Details Pane

A new Review Item Details pane can be viewed by clicking / tapping on the gray chip on a review item in the Review pane. This shows more information about the review item as well as thumbnails or snapshots for individual objects (if enabled). The pane also provides links to share the review item, download it, submit images to Frigate+, view object lifecycles, and more.

image

Object Lifecycle Pane

The Recordings Timeline from Frigate 0.13 has been improved upon and returns to 0.15 as the Object Lifecycle, viewable in the Review Details pane as well as the new Explore page. The new pane shows the significant moments during the object's lifecycle: when it was first seen, when it entered a zone, became stationary, etc. It also provides information about the object's area and size ratio to assist in configuring Frigate to tune out false positives.

image

Native Notifications

Frigate now supports notifications using the WebPush protocol. This allows Frigate to deliver notifications to devices that have registered to receive notifications in the Frigate settings, delivering them in a timely and secure manner. Currently, notifications will be delivered for all review items marked as alerts. More options for native notifications will be supported in the future.

image

See the notifications docs.

New Object Detectors

ONNX

ONNX is an open model standard which allows for a single model format that can run on different types of GPUs. The default, tensorrt, and rocm Frigate build variants include GPU support for efficient object detection via ONNX models, simplifying configuration and support more models. There are no default included ONNX models for object detection.

AMD MiGraphX

Support has been added for AMD GPUs via ROCm and MiGraphX. Currently there is no default included model for this detector.

Hailo-8

Support has been added for the Hailo8 and Hailo-8L hardware for object detection on both arm64 and amd64 platforms.

Other UI Changes

  • Rework the Storage metrics pane to be more clear how much storage each camera is using
  • Camera stream info button has been added to the camera metrics page allowing easy access to see camera codec information
  • Add button for downloading the full set of logs
  • The timeline handlebar will now automatically scroll while viewing recordings
  • Review items and exports can now be shared via your browser's sharing pane or via direct link url. A secure context is required for the browser/OS sharing pane to function
  • Add the ability to rename camera groups
  • Add middle mouse button support in the Review pane to open full recordings view in a new tab
  • Add Nvidia GPU encode and decode stats to system metrics
  • New desktop keyboard shortcuts. In addition to the numerous keyboard shortcuts available with 0.14, 0.15 adds several more. In Live view, the numeric keys (1-9) will move PTZ cameras to presets. In Review, Page Up and Page Down will scroll through review items
  • Accessibility updates for users with screen readers

Other Backend Changes

  • FFMPEG updated to 7.0
  • OpenVINO updated to 2024.3
  • Use FastAPI instead of Flask for the Frigate API
  • Add service manager infrastructure
  • Install onevpl tools and update drivers for Intel
  • If record is disabled for a camera then that camera will not save frames to the preview during that time
  • Fix stalled connections to certain onvif cameras
  • Fix autotracking absolute zoom interpolation logic
  • TensorRT models are no longer generated by default, the ENV var must be set