Commit Graph

184 Commits

Author SHA1 Message Date
Josh Hawkins
592141daaa
Increase ffmpeg timeout to 10 seconds (#17831)
FFmpeg adds an extra delay for the first start of the stream. For some cameras the stream start can be 1 second, for some cameras it can be more than 5 seconds. Frigate by default used a timeout of 5 seconds and drops the connection without waiting for a response from go2rtc. Originally suggested by @AlexxIT in https://github.com/AlexxIT/go2rtc/issues/1633
2025-04-21 07:38:51 -05:00
Nicolas Mowen
622bda9f66
Include arch in name (#17667) 2025-04-12 07:50:17 -06:00
Jan Čermák
93712b37d3
Update Hailo library to v4.20.1 (#17094)
The upcoming HAOS 15.0 will use Hailo driver v4.20.1. The current dev
has the older patch release (v4.20.0) staged for future versions, but
since new Frigate build will be needed for future compatibility, it
makes sense to sync at the latest one.

Link: https://github.com/home-assistant/operating-system/pull/3922
2025-04-12 07:25:35 -06:00
Josh Hawkins
d8cde59aaf
More face fixes (#17630)
* update max upload to 20mb

* ensure cancel button doesn't submit form

* update nginx config
2025-04-10 07:17:13 -06:00
leccelecce
e1a4053426
Upgrade bundled nginx to 1.27.4 (#17419) 2025-03-27 12:48:43 -06:00
leccelecce
0947bffeef
nginx: don't gzip png, gif, jpeg or jpg (#17400) 2025-03-26 19:48:28 -05:00
Nicolas Mowen
eabc316c7b
Various fixes (#17342)
* Remove imutils

* Ensure that state is maintained when setting search params

* Change script for version of setuptools

* Fix

* Fix
2025-03-24 12:25:36 -05:00
Felipe Santos
f8b0329b37
Move database and config from homeassistant /config to addon /config (#16337)
* Move database and config from homeassistant /config to addon /config

* Re-implement config migration for the add-on

* Align some terms

* Improve function name

* Use local variables

* Add model.path migration

* Fix homeassistant config path

* Ensure migration scripts run before go2rtc and frigate

* Migrate all files I know

* Add ffmpeg.path migration

* Update docker/main/rootfs/etc/s6-overlay/s6-rc.d/prepare/run

Co-authored-by: Josh Hawkins <32435876+hawkeye217@users.noreply.github.com>

* Improve some variable names and organization

* Update docs to reflect addon config dir

* Update live.md with /addon_configs

* Move addon config section to configuration doc

* Align several terminologies and improve text

* Fix webrtc example config title

* Capitalize Add-on in more places

* Improve specific add-on config dir docs

* Align bash and python scripts to prefer config.yml over config.yaml

* Support config.json in migration shell scripts

* Change docs to reflect config.yml is preferred over config.yaml

* If previous config was yaml, migrate to yaml

* Fix typo in edgetpu.md

* Fix formatting of Python files

* Remove HailoRT Beta add-on variant from docs

* Add migration for labelmap and certs

* Fix variable name

* Fix new_config_file var unset

* Fix addon config directories table

* Improve db migration to avoid migrating files like .db.bak

* Fix echo location

---------

Co-authored-by: Josh Hawkins <32435876+hawkeye217@users.noreply.github.com>
2025-03-24 09:05:59 -05:00
leccelecce
e36fe79782
Update webmanifest to use /BASE_PATH/ (#17310) 2025-03-23 05:34:33 -06:00
Josh Hawkins
7f966df5a4
Nginx fix: make locales public (#17248)
* make locales public

* remove cache
2025-03-19 06:50:36 -06:00
Josh Hawkins
9f7ba51f39
Proxy i18n locales dir for ingress (#17223) 2025-03-18 08:08:44 -06:00
bartbutenaers
61aef0bff0
Base path via environment variable (#17030)
* Base path via environment variable

* Feedback refactored

* Update docker/main/rootfs/usr/local/nginx/conf/nginx.conf

Co-authored-by: Blake Blackshear <blake.blackshear@gmail.com>

* Update docker/main/rootfs/usr/local/nginx/templates/base_path.gotmpl

Co-authored-by: Blake Blackshear <blake.blackshear@gmail.com>

* Revert api regex change

* Lint fix

* Fix https to http

* Base path documentation

* Base path contains leading slash

* Frigate specific environment variable

* Typo in comment

Co-authored-by: Blake Blackshear <blake.blackshear@gmail.com>

* Typo in comment

Co-authored-by: Blake Blackshear <blake.blackshear@gmail.com>

---------

Co-authored-by: Blake Blackshear <blake.blackshear@gmail.com>
2025-03-17 10:29:38 -05:00
Nicolas Mowen
b8f2d8fb0c
Fix rtsp config access (#17129) 2025-03-12 21:23:06 -05:00
Nicolas Mowen
b7333557a1
Enable audio by default (#17125)
* Remove mp4 query, allowing go2rtc to send any audio

* Add audio transcoding by default
2025-03-12 16:54:28 -05:00
Nicolas Mowen
9e70bddc9d
Update go2rtc version (#17119) 2025-03-12 13:54:20 -05:00
dependabot[bot]
c6bed1e108
Update markupsafe requirement from ==2.1.* to ==3.0.* in /docker/main (#14213)
Updates the requirements on [markupsafe](https://github.com/pallets/markupsafe) to permit the latest version.
- [Release notes](https://github.com/pallets/markupsafe/releases)
- [Changelog](https://github.com/pallets/markupsafe/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/markupsafe/compare/2.1.0...3.0.0)

---
updated-dependencies:
- dependency-name: markupsafe
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Nicolas Mowen <nickmowen213@gmail.com>
2025-03-11 17:46:47 -06:00
Josh Hawkins
74ca009b0b
UI viewer role (#16978)
* db migration

* db model

* assign admin role on password reset

* add role to jwt and api responses

* don't restrict api access for admins yet

* use json response

* frontend auth context

* update auth form for profile endpoint

* add access denied page

* add protected routes

* auth hook

* dialogs

* user settings view

* restrict viewer access to settings

* restrict camera functions for viewer role

* add password dialog to account menu

* spacing tweak

* migrator default to admin

* escape quotes in migrator

* ui tweaks

* tweaks

* colors

* colors

* fix merge conflict

* fix icons

* add api layer enforcement

* ui tweaks

* fix error message

* debug

* clean up

* remove print

* guard apis for admin only

* fix tests

* fix review tests

* use correct error responses from api in toasts

* add role to account menu
2025-03-08 10:01:08 -06:00
Nicolas Mowen
09705fd1b4
Update python deps (#17006) 2025-03-07 06:54:53 -07:00
dxs-dev
92422d853d
Fixed the issue where internal context copy occurs frequently. (#16931)
remove cache mount in nginx build

Co-authored-by: Ludis Hur <ludishur@dxsolution.kr>
2025-03-04 06:19:40 -07:00
Nicolas Mowen
4e03efaba9
Disable hailort log (#16888) 2025-03-02 09:26:59 -06:00
Josh Hawkins
d0e9bcbfdc
Add ability to use Jina CLIP V2 for semantic search (#16826)
* add wheels

* move extra index url to bottom

* config model option

* add postprocess

* fix config

* jina v2 embedding class

* use jina v2 in embeddings

* fix ov inference

* frontend

* update reference config

* revert device

* fix truncation

* return np tensors

* use correct embeddings from inference

* manual preprocess

* clean up

* docs

* lower batch size for v2 only

* docs clarity

* wording
2025-02-26 07:58:25 -07:00
Felipe Santos
e773d63c16
Improve ffmpeg versions handling (#16712)
* Improve ffmpeg versions handling

* Remove fallback from LIBAVFORMAT_VERSION_MAJOR, it should always be set

* Mention ffprobe in custom ffmpeg docs

* Fix ffmpeg extraction

* Fix go2rtc example formatting

* Add fallback back to LIBAVFORMAT_VERSION_MAJOR

* Fix linter
2025-02-20 18:07:41 -07:00
Nicolas Mowen
6e8e88692c
Fix coral dep (#16713) 2025-02-20 17:50:50 -07:00
Lander Noterman
94a9dcede8
JetPack 6: fix BASE_HOOK (#16701) 2025-02-20 05:29:22 -07:00
Lander Noterman
5bd412071a
Add support for JetPack 6 (#16571)
* it builds!

* some fixes

* use python 3.11 (rc1)

* add deadsnakes ppa for more recent python 3.11 in jetson images

* fix pip stuff

* revert to tensor 8.6

* revert changes to docker/main

* add hook to install deadsnakes ppa for tensorrt/jetson

* remove unnecessary pip break-system-packages

* move tflite_runtime to requirements-wheels.txt
2025-02-18 07:38:07 -07:00
Nicolas Mowen
1e709f5b3f
Update coral deps and remove unused pycoral (#16630) 2025-02-17 06:57:05 -07:00
Mitch Ross
2020cdffd5
Fix prometheus client exporter (#16620)
* wip

* wip

* put it back

* formatter

* Delete hailort.log

* Delete hailort.log

* lint

---------

Co-authored-by: Nicolas Mowen <nickmowen213@gmail.com>
2025-02-17 06:17:15 -07:00
Felipe Santos
349abc8d1b
Remove internal docker container IP from WebRTC candidates (#16618) 2025-02-16 21:24:13 -07:00
Josh Hawkins
0b65137831
Return 404 for non-existent vod module media (#16586)
* Check if video source exists before showing player

* add comment

* also check 404

* language

* return 404 with vod module
2025-02-14 12:05:05 -07:00
Josh Hawkins
729f5c0833
LPR improvements (#16559)
* use a small yolov9 model for detection

* use yolov9 for users without frigate+ and update retention algorithm

* new lpr config fields

* levenshtein distance package

* tweaks

* docs
2025-02-13 16:08:56 -07:00
Nicolas Mowen
b594f198a9
Consolidate HailoRT into the main Docker Image (#16487)
* Simplify main build to include hailo

* Update docs

* Remove hailo docker build
2025-02-11 09:08:13 -07:00
Josh Hawkins
2a28964e63
Improve UI logs (#16434)
* use react-logviewer and backend streaming

* layout adjustments

* readd copy handler

* reorder and fix key

* add loading state

* handle frigate log consolidation

* handle newlines in sheet

* update react-logviewer

* fix scrolling and use chunked log download

* don't combine frigate log lines with timestamp

* basic deduplication

* use react-logviewer and backend streaming

* layout adjustments

* readd copy handler

* reorder and fix key

* add loading state

* handle frigate log consolidation

* handle newlines in sheet

* update react-logviewer

* fix scrolling and use chunked log download

* don't combine frigate log lines with timestamp

* basic deduplication

* move process logs function to services util

* improve layout and scrolling behavior

* clean up
2025-02-10 08:38:56 -07:00
Nicolas Mowen
c58d2add37
Fix missing prometheus commit (#16415)
* Add prometheus metrics

* add docs for metrics

* sidebar

* lint

* lint

---------

Co-authored-by: Mitch Ross <mitchross@users.noreply.github.com>
2025-02-09 10:04:39 -07:00
Nicolas Mowen
fa300742ea
Fix build (#16393)
* Fix rpi build

* Attempt to fix jetson builds
2025-02-08 14:51:42 -06:00
Nicolas Mowen
ab8f9e5412 Upgrade onvif-zeep dependency to use onvif-zeep-async (#15894)
* Upgrade to new dependency

* Start onvif work

* Update for async calls
2025-02-08 12:47:01 -06:00
Nicolas Mowen
c28a0ed9a3 Update openvino (#15634) 2025-02-08 12:47:01 -06:00
Nicolas Mowen
cd0d37ce07 Update python deps (#15618)
* Update opencv

* Update cython

* Update scikit

* Update scipy
2025-02-08 12:47:01 -06:00
Nicolas Mowen
877b7b2910 Update base image (#15103)
* Change base image

* Update python

* Update coral library

* Fix source file

* Install correct apt packages

* Cleanup

* Fix installation of coral deps

* fix python installations

* Fix devcontainer build

* Get tensorrt build working

* Update other deps

* Filter out tflite log

* Get ROCm build working

* Get rockchip build working

* Get hailo build working

* Add note to comment
2025-02-08 12:47:01 -06:00
Nicolas Mowen
66675cf977 Face recognition fixes (#15222)
* Fix nginx max upload size

* Close upload dialog when done and add toasts

* Formatting

* fix ruff
2025-02-08 12:47:01 -06:00
Nicolas Mowen
0e4ff91d6b Improve face recognition (#15205)
* Validate faces using cosine distance and SVC

* Formatting

* Use opencv instead of face embedding

* Update docs for training data

* Adjust to score system

* Set bounds

* remove face embeddings

* Update writing images

* Add face library page

* Add ability to select file

* Install opencv deps

* Cleanup

* Use different deps

* Move deps

* Cleanup

* Only show face library for desktop

* Implement deleting

* Add ability to upload image

* Add support for uploading images
2025-02-08 12:47:01 -06:00
Nicolas Mowen
e5fcc50ae2 Use SVC to normalize and classify faces for recognition (#14835)
* Add margin to detected faces for embeddings

* Standardize pixel values for face input

* Use SVC to classify faces

* Clear classifier when new face is added

* Formatting

* Add dependency
2025-02-08 12:47:01 -06:00
Josh Hawkins
c4ce7f9800 License plate recognition (ALPR) backend (#14564)
* Update version

* Face recognition backend (#14495)

* Add basic config and face recognition table

* Reconfigure updates processing to handle face

* Crop frame to face box

* Implement face embedding calculation

* Get matching face embeddings

* Add support face recognition based on existing faces

* Use arcface face embeddings instead of generic embeddings model

* Add apis for managing faces

* Implement face uploading API

* Build out more APIs

* Add min area config

* Handle larger images

* Add more debug logs

* fix calculation

* Reduce timeout

* Small tweaks

* Use webp images

* Use facenet model

* Improve face recognition (#14537)

* Increase requirements for face to be set

* Manage faces properly

* Add basic docs

* Simplify

* Separate out face recognition frome semantic search

* Update docs

* Formatting

* Fix access (#14540)

* Face detection (#14544)

* Add support for face detection

* Add support for detecting faces during registration

* Set body size to be larger

* Undo

* Update version

* Face recognition backend (#14495)

* Add basic config and face recognition table

* Reconfigure updates processing to handle face

* Crop frame to face box

* Implement face embedding calculation

* Get matching face embeddings

* Add support face recognition based on existing faces

* Use arcface face embeddings instead of generic embeddings model

* Add apis for managing faces

* Implement face uploading API

* Build out more APIs

* Add min area config

* Handle larger images

* Add more debug logs

* fix calculation

* Reduce timeout

* Small tweaks

* Use webp images

* Use facenet model

* Improve face recognition (#14537)

* Increase requirements for face to be set

* Manage faces properly

* Add basic docs

* Simplify

* Separate out face recognition frome semantic search

* Update docs

* Formatting

* Fix access (#14540)

* Face detection (#14544)

* Add support for face detection

* Add support for detecting faces during registration

* Set body size to be larger

* Undo

* initial foundation for alpr with paddleocr

* initial foundation for alpr with paddleocr

* initial foundation for alpr with paddleocr

* config

* config

* lpr maintainer

* clean up

* clean up

* fix processing

* don't process for stationary cars

* fix order

* fixes

* check for known plates

* improved length and character by character confidence

* model fixes and small tweaks

* docs

* placeholder for non frigate+ model lp detection

---------

Co-authored-by: Nicolas Mowen <nickmowen213@gmail.com>
2025-02-08 12:47:01 -06:00
Nicolas Mowen
594a4e0ba3 Face detection (#14544)
* Add support for face detection

* Add support for detecting faces during registration

* Set body size to be larger

* Undo
2025-02-08 12:47:01 -06:00
Nicolas Mowen
aa19ec3ddb Face recognition backend (#14495)
* Add basic config and face recognition table

* Reconfigure updates processing to handle face

* Crop frame to face box

* Implement face embedding calculation

* Get matching face embeddings

* Add support face recognition based on existing faces

* Use arcface face embeddings instead of generic embeddings model

* Add apis for managing faces

* Implement face uploading API

* Build out more APIs

* Add min area config

* Handle larger images

* Add more debug logs

* fix calculation

* Reduce timeout

* Small tweaks

* Use webp images

* Use facenet model
2025-02-08 12:47:01 -06:00
Nicolas Mowen
83ac42cbdc
Use correct path for script (#16045) 2025-01-18 21:33:13 -07:00
Nicolas Mowen
a5ce8d0d77
Fix env variable exporting (#16043) 2025-01-18 21:31:56 -06:00
Nicolas Mowen
0ee2e404da
Correctly calculate ffmpeg version based on ffmpeg path (#16041)
* Correctly calculate ffmpeg version based on ffmpeg path

* Formatting
2025-01-18 20:30:35 -06:00
Nicolas Mowen
66277fbb6c
Fix embeddings (#15072)
* Fix embeddings reading frames

* Fix event update reading

* Formatting

* Pin AIO http to fix build failure

* Pin starlette
2024-11-19 12:20:04 -06:00
Nicolas Mowen
a68c7f4ef8
Pin all intel packages (#14887) 2024-11-09 11:08:25 -06:00
Nicolas Mowen
7c474e6827
Pin intel driver (#14884)
* Pin intel driver

* Use slightly older version
2024-11-09 08:09:36 -07:00