Skip to content

Fregata 0.18.0-beta3

Pre-release
Pre-release

Choose a tag to compare

@nulledy nulledy released this 22 Aug 20:13
528a512

Built on Frigate v0.18.0-beta3

What's Changed

Upgrading to Fregata v0.18.0-beta3 (from the v0.17.x line)

Fregata v0.18.0-beta3 is built on Frigate 0.18.0-beta3. This is the largest upstream jump since Fregata launched: a new configuration UI, a new camera wizard, a new ffmpeg, and several breaking config changes. Most of it migrates automatically, but there are a handful of things you should know before you click install.

READ THE FRIGATE v0.18.0 RELEASE NOTES, WE WON'T DUPLICATE THEM HERE:


1. Read this first (same as v0.18.0-beta2)

⚠️ This is a beta

Run it if you're comfortable troubleshooting and reporting bugs. Betas are where the remaining rough edges get found. If something breaks there are rollback instructions below you can use to rollback to v0.17.X

⚠️ Back up two files before you install

We recommend quitting Fregata and then copying config.yaml and frigate.db from your config folder to a safe location before upgrading just in case something goes wrong. Your config file is backed up automatically, but we still recommend you do a manual backup first.

Your recordings and clips are never touched by the upgrade. This is purely about config and database.

⚠️ The beta will not arrive via the in-app updater

Get notified when a new Fregata beta is released
Fregata's update checker deliberately ignores pre-releases, so a v0.17.x install will never prompt you to move to a beta. Download and install the beta manually. GitHub notifications are the best way to learn about new Fregata Beta releases.

Option 1: GitHub notifications (needs a free GitHub account)

Go to https://github.com/3rdBitLabs/Fregata
Click the Watch dropdown at the top right
Choose Custom
Tick Releases, then Apply
You'll be notified for every release, betas included. To get these as email rather than just the GitHub inbox, click your avatar → Settings → Notifications, and enable Email under "Subscriptions".

Option 2 — Announcements

Go to https://github.com/3rdBitLabs/Fregata/discussions/categories/announcements and click Subscribe for release write-ups and beta call-outs.

Additionally: once you're on the beta, you also won't be offered beta4 or any later beta automatically — but you will be offered v0.18.0 final when it ships, since that's a normal release. Sign up for notifications to know when a new beta release drops.


2. Fregata macOS-specific changes and gotchas (same as v0.18.0-beta2)

These are Fregata-only — they won't appear in Frigate's release notes.

⚠️ Custom go2rtc exec: / echo: / expr: streams are now blocked by default

If your config.yml has a go2rtc stream that shells out to a command: a custom ffmpeg restream, a split fisheye, a drawtext timestamp overlay, a GPU rotation pipeline, it will be removed from the generated go2rtc config and that camera will disappear from live view.

This is a security default (those sources run arbitrary commands on your Mac), and it matches upstream Frigate. A line naming the stream is written to the Frigate log, so a camera that vanishes after the upgrade has a matching explanation.

To re-enable, add this in the tray under Settings → Environment Variables, then restart Fregata:

GO2RTC_ALLOW_ARBITRARY_EXEC=true

ffmpeg is now version 8 — and both versions ship

Fregata bundles ffmpeg 8.0 (default) and 7.0 as a fallback, matching upstream Frigate. If one camera's stream hits an ffmpeg-8 regression, pin just that camera back:

cameras:
  my_camera:
    ffmpeg:
      path: "7.0"

Birdseye restreams, timelapses, and preview clips will look better and use more bandwidth

ffmpeg 7 silently capped VideoToolbox hardware encodes at about 200 kb/s when no bitrate was set. ffmpeg 8 removed that cap. Rather than restore an artificial limit that was producing visibly blocky output, Fregata now sets explicit, deliberate quality targets:

  • Birdseye restream (off by default): 2 Mb/s — roughly half of ffmpeg 8's unbounded default, and a large quality improvement over 0.17.
  • Timelapse exports and preview clips: constant-quality encoding that scales with the content, instead of a fixed byte target.

Net effect on a typical install: previews and timelapses look noticeably better. If you restream birdseye over a metered or constrained link, that stream's bandwidth has gone up.

You can now change Fregata's ports

Frigate 0.18 adds a networking.listen config block, and Fregata honours it end-to-end (nginx, the menu-bar app, and the update/diagnostic tooling all follow it):

networking:
  listen:
    internal: 5000   # default
    external: 8971   # default

Fregata-specific behaviour worth knowing:

  • The AirPlay-conflict fallback (port 5000 → 5050) and FREGATA_EXPOSE_INTERNAL_PORT follow whichever port you configure — they aren't hardcoded to 5000 any more.
  • Only the port number is honoured. If you write ip:port, the host part is discarded — Fregata's own loopback-by-default gating still decides what interface it binds to.
  • Don't pick a port Fregata already uses (5001, 5002, 8082, 1984, 8554, 8555). You'll get a warning and probably a crash.

HTTPS on port 8971 is now faster

nginx has HTTP/2 enabled. If you access Fregata over 8971 (the default) and have more than a couple of cameras, Live and History views should feel noticeably quicker — the browser is no longer capped at six connections.

A new "Fregata (macOS)" section in Settings

Frigate's new Settings UI has a Fregata-specific category at the top of the
sidebar, covering the two things that only exist on a Mac:

  • Adaptive transcoding — bandwidth-adaptive playback, previously YAML-only.
  • Detector backend — pick Apple Neural Engine or GPU per detector, with a live readout of which one is actually in use and the current inference speed. If your detector has fallen back to CPU, this page now says so explicitly rather than leaving you to infer it from slow inference times.

Settings pages that don't apply to a Mac (Intel/AMD GPU options, Linux-specific detectors, and so on) are hidden or disabled throughout the new UI rather than offering you controls that can't work.


3. Going back to v0.17.x (same as v0.18.0-beta2)

Your recordings and database are safe. Database migrations in 0.18 only add tables and columns, so an older Fregata reads a 0.18 database without complaining — clips just won't carry data the older version never knew about.

The config is the one-way door. A migrated 0.18 config cannot be parsed by 0.17 — masks alone will do it, and 0.17 rejects any setting it doesn't recognise.

Fregata saves your pre-migration config, named for the version you came
from:

~/Fregata/config/backup_config_0.17-0.yaml

Keep that file. To roll back:

  1. Quit Fregata.
  2. Restore the backup:
    • Rename backup_config_0.17-0.yaml to config.yaml
  3. Install the older version and launch it.

Getting help

PLEASE FILE ALL BUG REPORTS, QUESTIONS, OR ISSUES HERE IN THE FREGATA GITHUB, NOT THE FRIGATE GITHUB

We will triage your issue and determine if it is a Fregata bug or a Frigate bug.


Plus All Changes from v0.17.2.5

🚀 CoreML Engine Re-Write for Frigate AI Enrichments Performance

In this release we've completely re-written Fregata's CoreML Engine to better support Frigate's AI Enrichments such as Semantic Search, License Plate Recognition, and Facial Recognition. All GPU-eligible models now run 100% on your Mac's GPU bringing huge performance increases when running these models.

Performance Gains vs v0.17.2.4 on a Base M4 Mac Mini

Model Performance Gain
Semantic Search
Jinav1 (Large) - Text ~419%
Jinav1 (Large) - Vision ~273%
Jinav2 (Large) - Text ~442%
Jinav2 (Large) - Vision ~341%
License Plate Recognition
YOLOv9 Plate Detection ~231%
PaddleOCR Text Detection (Small, single-line plates) ~161%
PaddleOCR Text Detection (Large, multi-line plates) ~181%
PaddleOCR Text Recognition ~188%
Facial Recognition
ArcFace (Large) ~411%

*Performance increase will vary depending on your Mac model. Pro, Max, and Ultra chips should do especially well here due to having more and/or better GPU cores.

Due to this change, we've altered the default model size that is loaded vs Frigate Docker. If you have Semantic Search or Facial Recognition set to model_size: small we recommend removing that line in your config, or setting it to model_size: large for both better accuracy and better performance. For Semantic Search and Facial Recognition, the small models can ONLY run on the CPU and are less accurate, for LPR both small and large run on the GPU but large is only useful for multi-line license plates and is less accurate on single-line plates.

New Defaults:

semantic_search:
  model_size: large

face_recognition:
  model_size: large

lpr:
  model_size: small #LPR large should only be used for countries with multi-line license plates

⚙️ Improvements & Changes

  • The minimum macOS version is now 14. This was necessary to support new CoreML APIs for the AI Enrichment performance improvements that do not exist on macOS 13.

  • Make the CPU stats in the bottom left of the Frigate WebUI show Fregata's CPU usage, instead of the Mac's total system CPU usage.

  • Make the RAM usage in the Fregata menu bar more accurate. It was undercounting RAM for some users, and overcounting for others.

  • Improve crash telemetry so we can fix more reported crashes.

  • Timeout moving clips from the RAM disk to the Media Directory after 30s, so a stalled copy does not halt all clips copying.

🐛 Bug Fixes

  • Fix an incorrect log statement if the RAM disk gets too full.

  • Fix a bug that could cause clip preview files to not be saved if the Media Directory has a space in its path.

  • Fix a crash seen in telemetry that could cause Frigate to crash if a camera name was longer than 27 characters.

  • Fix a crash seen in telemetry that could cause Frigate to crash in rare cases when ONVIF auto tracking was enabled.

  • Fix a crash seen in telemetry that could cause process to crash in rare cases during Fregata shutdown, instead of exiting gracefully.

  • Fix a crash seen in telemetry in sqlite-vec that could happen in rare cases while deleting embeddings from the vector database by bumping the sqlite-vec version.

  • Fix a crash seen in telemetry that could occur in rare cases when RecordingCleanup is running.

  • Fix a crash seen in telemetry around shared memory access that was very rare.

Download

SHA-256: 33e142778f348fc62a1a80da7271601e71810afa4cc080067a3100afd4909016

Requires macOS 14 (Sonoma) or later on Apple Silicon.