Commit Graph
100 Commits
Author SHA1 Message Date
Josh HawkinsandGitHub 6e79ec1624 Move another username to i18n key (#17820)
Same as https://github.com/blakeblackshear/frigate/pull/17818 - this time in the delete user dialog
2025-04-19 20:53:23 -05:00
Josh HawkinsandGitHub 484ea10037 move username to i18n key (#17818)
Some languages structure phrases and sentences differently, so the username can't always be assumed to be the last item in the phrase. This change uses the Trans component to maintain the HTML formatting.
2025-04-19 19:05:49 -06:00
Josh HawkinsandGitHub 14a32a6472 LPR tweaks (#17783)
* clarify docs

* improve debugging messages

* don't run any lpr postprocessing

* wording
2025-04-18 07:45:37 -06:00
84c1ad59a2 i18n fixes (#17725)
* fix key

* add french

* Fix random 0

* fix i18n in role change dialog

* fix delete user dialog

* fix filter tips steps

* remove classes from i18n files

* combine disjointed norweigan localized files

* change submit to plus to use a question with yes/no

---------

Co-authored-by: Nicolas Mowen <nickmowen213@gmail.com>
2025-04-17 07:34:24 -06:00
Josh HawkinsandGitHub 760ed25f0c LPR improvements (#17716)
* add support for multi-line plates

* config for model size

* default to small model

* add license plate as attribute to motorcycle

* use model size

* docs

* attribute map

* i18n key fix
2025-04-15 09:40:12 -06:00
Josh HawkinsandGitHub 721f33c857 Add Polish and Russian (#17711) 2025-04-15 06:54:43 -06:00
Josh HawkinsandGitHub 73a475d13a Quick UI fix (#17710)
* remove i18n key in wrong place

* remove russian until after translations are merged
2025-04-15 06:37:17 -05:00
Josh HawkinsandGitHub 34e34b8b15 I18n fixes (#17699)
* fix norwegian

* fix face library keys

* add russian
2025-04-14 16:09:18 -06:00
Josh HawkinsandGitHub 4feba8bcf3 Add languages (#17662)
* Add Dutch to languages menu

* Add Norwegian to languages menu

* fix

* consolidate
2025-04-13 12:11:28 -06:00
Josh HawkinsandGitHub da62c41e87 Improve object tracking (#17671)
* Save initial frame of new objects to frame cache
Objects that move quickly through the frame and are only seen briefly may not have the update() method called to save thumbnail_data, and may not have the initial frame saved to the tracked object frame cache. This caused a "Frame missing from frame cache" message that was patched by #7313 but this sometimes caused the wrong frame to be chosen for the thumb/snapshot.

* Tracking tweaks
- When registering new objects, use the past detections from Norfair to populate self.positions and self.stationary_box_history. This prevents the first call of update_position() from triggering a +1 on the object's stationary count (because the iou would be 1.0).
- Add a specific tracker for dedicated LPR cam license_plate objects using a lower R value and higher distance threshold to account for fast moving plates.
- Add helpful debug messages and keep them disabled with `if False:`
2025-04-13 12:10:35 -06:00
Josh HawkinsandGitHub e09f0a6b11 UI tweaks (#17685)
* Fix i18n key

* ensure license_plate is added to filter list for dedicated lpr cameras

* add ability to use browser back button to close MobilePage

* add license_plate to review filter

* remove overlay state hook in review

* don't zoom text on iOS
2025-04-13 12:08:47 -06:00
Josh HawkinsandGitHub 4abf945b71 Add missing plural versions of some i18n keys (#17672) 2025-04-12 16:18:35 -06:00
Josh HawkinsandGitHub 664889d487 Small tweaks (#17651)
* clarify lpr

* add license plate icon and correctly format string
2025-04-11 06:48:16 -06:00
Josh HawkinsandGitHub 03f4318e40 Add languages to Language menu (#17606)
* Add support for Spanish

* add polish

* add turkish

* fix

* dynamically import non English locales to keep bundle size low
2025-04-11 06:38:36 -06:00
Josh HawkinsandGitHub 64db518837 Edit license plate in Tracked Object Details (#17631)
* api endpoint

* frontend

* only allow admins to edit sub labels and plates
2025-04-10 08:27:01 -06:00
Josh HawkinsandGitHub 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
Josh HawkinsandGitHub 049c5cfa9d Fix search sort when using score or estimated speed (#17629) 2025-04-10 07:07:50 -06:00
Josh HawkinsandGitHub cab701f054 Small tweaks and fixes (#17614)
* add ability to use * and ? in recognized plate input

* fix check for active polygon index

* fix broken link

* lpr docs tweaks
2025-04-09 07:26:06 -05:00
Josh HawkinsandGitHub f618f25d7e catch not implemented exception (#17594) 2025-04-07 20:41:53 -06:00
Josh HawkinsandGitHub 921908fe33 LPR device selection (#17592)
* config changes

* use device

* docs

* docs

* reset state

* remove auto

* use device

* docs
2025-04-07 19:30:08 -06:00
Josh HawkinsandGitHub cb27bdb2f7 LPR fixes (#17588)
* docs

* docs

* docs

* docs

* fix box merging logic

* always run paddleocr models on cpu

* docs clarity

* fix docs

* docs
2025-04-07 15:25:46 -05:00
Josh HawkinsandGitHub f2840468b4 Fix websocket enabled state (#17585)
* use camera activity hook instead of websocket enabled state

* use original websocket but use ternary operator instead
2025-04-07 12:24:53 -05:00
Josh HawkinsandGitHub 676180afca Update translation docs for weblate (#17579)
* Update translation docs for weblate

* link
2025-04-07 08:12:42 -05:00
Josh HawkinsandGitHub a29d4382e1 Catch crash when openai compatible endpoints don't return results correctly (#17572) 2025-04-07 06:59:39 -06:00
Josh HawkinsandGitHub 348e728220 LPR improvements (#17549)
* auto select LPR model backend for inference

* docs update
2025-04-05 11:03:17 -05:00
Josh HawkinsandGitHub 7917ec611a LPR tweaks (#17536)
* Merge nearby horizontal boxes

* only publish to recognized plate field if object already has a sub label

* don't overwrite sub labels in any situation

* always publish sub label if it's a known plate
2025-04-04 12:42:49 -05:00
Josh HawkinsandGitHub 19fc63e3af Face Library UI tweaks (#17525)
* install react-dropzone

* use react-dropzone with preview when uploading new face

* spacing consistency

* text tweaks
2025-04-03 11:34:19 -06:00
Josh HawkinsandGitHub b8b58e980b Use dropdown for collection selection in Face Library (#17521)
* Use dropdown for name selection in face library

* change verbiage
2025-04-03 08:17:29 -06:00
Josh HawkinsandGitHub 6475e042b5 Catch birdseye websocket error (#17502) 2025-04-02 07:38:48 -06:00
Josh HawkinsandGitHub f0b15e1f04 Provide default value for dashboard audio support (#17495)
* Provide default value for audio support to fix crash

* optional
2025-04-02 06:43:28 -06:00
Josh HawkinsandGitHub b83e214df5 Docs updates (#17478)
* face rec, lpr, and plus docs updates

* clarify plus
2025-04-01 07:59:04 -05:00
Josh HawkinsandGitHub 2920127ada Dedicated LPR improvements (#17453)
* remove license plate from attributes for dedicated lpr cameras

* ensure we always have a color

* use frigate+ models with dedicated lpr cameras

* docs

* docs clarity

* docs enrichments

* use license_plate as object type
2025-03-30 07:43:24 -06:00
Josh HawkinsandGitHub 2c1ded37a1 Ensure we use the stream name from local storage on mobile (#17452) 2025-03-30 06:17:25 -06:00
Josh HawkinsandGitHub bda7fcc784 use ceil instead of round for recording snapshot (#17444) 2025-03-29 06:19:12 -06:00
Josh HawkinsandGitHub 37c3ac5413 Misc fixes (#17443)
* ensure semantic search is enabled before updating embeddings stats

* add camera and label to snapshot download filename
2025-03-29 05:58:50 -06:00
Josh HawkinsandGitHub 37e0b9b904 LPR tweaks (#17428)
* fix snapshot when using dedicated lpr

* enhancement and debugging config

* docs
2025-03-28 06:29:11 -06:00
Josh HawkinsandGitHub 23c3323871 Dynamic embeddings reindexing (#17418)
* reindex with api endpoint and zmq

* threading

* frontend

* require admin role
2025-03-27 11:29:34 -06:00
Josh HawkinsandGitHub 6ec7d96ec9 remove LPR denoising (#17412) 2025-03-27 08:49:10 -06:00
Josh HawkinsandGitHub 1233bc3a42 Miscellaneous fixes (#17406)
* add config validator for face and lpr

* more lpr docs tweaks

* fix object lifecycle point clicking for aspect ratios less than 16/9

* fix semantic search indexing i18n keys

* remove ability to set system language

* clarify debug output
2025-03-27 05:49:14 -06:00
Josh HawkinsandGitHub 4edf0d8cd3 LPR bugfix (#17384)
* ensure image is numpy array

* clean up debugging

* clean up postprocessor

* process raw input as img
2025-03-26 07:41:00 -05:00
Josh HawkinsandGitHub b30de96525 Reduce expansion of license_plate box for frigate+ models (#17373) 2025-03-26 05:25:39 -06:00
Josh HawkinsandGitHub 2c3ea5b74e Make all object path points clickable (#17367) 2025-03-25 14:08:40 -06:00
Josh HawkinsandGitHub e80caabee6 Live and go2rtc docs updates (#17363) 2025-03-25 10:46:24 -06:00
Josh HawkinsandGitHub 9080305070 Increase the initial stall timeout of the MSE player (#17359) 2025-03-25 08:16:56 -05:00
Josh HawkinsandGitHub 1f98162377 Fixes (#17334)
* more docs updates

* debug view note

* hide notifications submenu if camera is disabled

* fix value replacement from incorrect i18n changes
2025-03-24 06:34:18 -06:00
Josh HawkinsandGitHub 678ae87c62 Dedicated LPR fixes (#17325)
* docs fps recommendation

* add detection_threshold to example

* send uncoverted yuv frame

* copy and convert

* ensure thumbnail is encoded as webp

* keep as jpeg
2025-03-23 17:15:15 -05:00
Josh HawkinsandGitHub e129fa6819 Fix missing key in example config (#17322) 2025-03-23 15:16:29 -06:00
Josh HawkinsandGitHub fa4643fddf LPR improvements (#17289)
* config options

* processing in maintainer

* detect and process dedicated lpr plates

* create camera type, add manual event and save snapshot

* use const

* ensure lpr events are always detections, typing fixes

* docs

* docs tweaks

* add preprocessing and penalization for low confidence chars
2025-03-23 13:30:48 -06:00
Josh HawkinsandGitHub b7fcd41737 UI tweaks (#17319) 2025-03-23 12:51:06 -06:00
Josh HawkinsandGitHub d32949017b Bugfixes and docs tweaks (#17307)
* ensure config file is updated with booleans instead of strings

* catch onvif error

* ensure object type is available as a ptz tracker

* update live view docs
2025-03-22 06:38:33 -06:00
Josh HawkinsandGitHub be56305b4e Small tweaks (#17275)
* Fix missing i18n key and make small UI tweak for disabled cameras

* simplify colors
2025-03-20 10:37:40 -06:00
Josh HawkinsandGitHub 512a1dfad6 Fix english rendering if timeago seconds (#17256) 2025-03-19 11:22:02 -05:00
Josh HawkinsandGitHub 7f966df5a4 Nginx fix: make locales public (#17248)
* make locales public

* remove cache
2025-03-19 06:50:36 -06:00
Josh HawkinsandGitHub 9f7ba51f39 Proxy i18n locales dir for ingress (#17223) 2025-03-18 08:08:44 -06:00
Josh HawkinsandGitHub fad62b996a Add Frigate+ pane to Settings UI (#17208)
* add plus data to config api response

* add fields to frontend type

* add frigate+ page in settings

* add docs

* fix label in explore detail dialog
2025-03-17 13:44:57 -05:00
Josh HawkinsandGitHub 03da70cb81 Refactor and clean up i18n (#17198)
* clean up i18n

* fix key

* fix key
2025-03-17 06:26:01 -06:00
Josh HawkinsandGitHub c724892158 i18n fixes (#17184)
* update PR template

* fix hook

* fix input

* fix hook

* add all audio detector keys

* add frigate+ keys

* fix spelling, formatting, and spacing

* fix labels

* capitalization

* fix timestamp

* fix menu

* fix plus text

* fix download label

* docs

* fix docs build

* fix docs formatting
2025-03-16 11:13:34 -06:00
Josh HawkinsandGitHub d87268acfe Small tweaks (#17168)
* Clean up repeated code in auth

* Ensure review status is migrated for anonymous users
2025-03-15 07:11:45 -06:00
Josh HawkinsandGitHub 5d524e8060 clarity for sub labels and recognized_license_plate (#17154) 2025-03-14 11:54:00 -05:00
Josh HawkinsandGitHub d2368f5cbb Use a recent time window for areas for autotracking zooming (#17150) 2025-03-14 09:09:16 -06:00
Josh HawkinsandGitHub fe078666c6 Ensure time range filter retains selected values (#17147) 2025-03-14 07:27:48 -06:00
Josh HawkinsandGitHub 8a17e2bfbf implement onvif retry mechanism (#17144) 2025-03-14 07:25:48 -05:00
Josh HawkinsandGitHub bf311e6467 Simplify auth check (#17138)
* simplify get_current_user

* add sanity check
2025-03-13 16:01:15 -05:00
Josh HawkinsandGitHub 4f6d70ded0 Review items per user (#17137)
* model

* migration

* api changes

* delete in cleanup

* fix tests
2025-03-13 14:20:09 -06:00
Josh HawkinsandGitHub c93b82d6e1 Ensure restart dialog isn't shown if config isn't saved successfully first (#17132) 2025-03-13 08:57:12 -06:00
Josh HawkinsandGitHub 124cc4c9cc Rename identifier field (#17128)
* backend rename

* frontend

* docs

* fix api path
2025-03-12 17:45:16 -06:00
Josh HawkinsandGitHub 6360802612 Use identifier field for unknown license plates (#17123)
* backend

* backend fixes

* api for search queries

* frontend

* docs

* add filterable scroll list to more filters pane for identifiers

* always publish identifier
2025-03-12 14:38:28 -06:00
Josh HawkinsandGitHub 4806d30406 Bugfixes (#17112)
* ensure disabled and offline messages don't overlay each other

* clean up enabled logic

* fix on demand recording button

* clean up
2025-03-12 06:09:09 -06:00
Josh HawkinsandGitHub c9382f8969 Add docs for user roles (#17093)
* Add docs for user roles

* header mapping docs
2025-03-11 08:05:42 -06:00
Josh HawkinsandGitHub 2be5225440 More auth role fixes (#17067)
* simplify check and handle comma separated roles

* spacing
2025-03-10 10:00:35 -05:00
Josh HawkinsandGitHub cb25bd4a88 Auth role bugfixes (#17066)
* get correct role from header map

* fix profile endpoint
2025-03-10 07:59:24 -06:00
Josh HawkinsandGitHub 1c6700c688 Ensure audio listener is defined before trying to stop ffmpeg (#17045) 2025-03-09 22:01:18 -06:00
Josh HawkinsandGitHub 9f9117c318 Ensure admin is default role (#17044) 2025-03-09 21:59:07 -06:00
Josh HawkinsandGitHub 1e0295fad5 LPR tweaks (#17046) 2025-03-09 21:58:31 -06:00
Josh HawkinsandGitHub 95b5854449 Small UI bugfix (#17035)
* test for more HA elements

* check if mobile and iOS instead of mobilesafari

* simplify

* fix for logs view
2025-03-09 07:47:10 -06:00
Josh HawkinsandGitHub cf3c0b2eb5 Prevent settings menu scroll on iOS proxy iframe from shifting entire UI (#17024) 2025-03-08 10:13:07 -06:00
Josh HawkinsandGitHub 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
Josh HawkinsandGitHub 0e3e2e5ccc Add cameras filter to history view (#16995) 2025-03-06 19:00:15 -07:00
Josh HawkinsandGitHub ad0e89e147 Ensure disabling a camera also disables audio detection (#16961)
* Ensure disabling a camera also disables audio detection

* fix enabled state

* fix path
2025-03-05 06:30:23 -07:00
Josh HawkinsandGitHub 73f8c97d1d Docs updates (#16949)
* live and lpr docs updates

* disabled clarity

* more disable clarity

* clarify sync_recordings
2025-03-04 17:29:11 -07:00
Josh HawkinsandGitHub 76c35307b2 Ensure genai thumbnails are always jpegs (#16939) 2025-03-04 07:34:19 -07:00
Josh HawkinsandGitHub 5210d8c0a2 Add camera enable switch to mobile drawer (#16929) 2025-03-03 17:41:28 -07:00
Josh HawkinsandGitHub 531042467a Dynamically enable/disable cameras (#16894)
* config options

* metrics

* stop and restart ffmpeg processes

* dispatcher

* frontend websocket

* buttons for testing

* don't recreate log pipe

* add/remove cam from birdseye when enabling/disabling

* end all objects and send empty camera activity

* enable/disable switch in ui

* disable buttons when camera is disabled

* use enabled_in_config for some frontend checks

* tweaks

* handle settings pane with disabled cameras

* frontend tweaks

* change to debug log

* mqtt docs

* tweak

* ensure all ffmpeg processes are initially started

* clean up

* use zmq

* remove camera metrics

* remove camera metrics

* tweaks

* frontend tweaks
2025-03-03 08:30:52 -07:00
Josh HawkinsandGitHub 8d2f461350 Embeddings tweaks (#16864)
* make semantic search optional

* config

* frontend metrics

* docs

* tweak

* fixes

* also check genai cameras for embeddings context
2025-02-28 11:43:08 -07:00
Josh HawkinsandGitHub 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
Josh HawkinsandGitHub 447f26e1b9 Fix lpr metrics and add yolov9 plate detection metric (#16827) 2025-02-26 07:29:34 -07:00
Josh HawkinsandGitHub 1d8f1bd7ae Ensure sub label is null when submitting an empty string (#16779)
* null sub_label when submitting an empty string

* prevent cancel from submitting form

* fix test
2025-02-24 07:02:36 -07:00
Josh HawkinsandGitHub 9414e001f3 Edit sub labels from the UI (#16764)
* Add ability to edit sub labels from tracked object detail dialog

* add allowEmpty prop

* use TextEntryDialog

* clean up

* text consistency
2025-02-23 16:56:48 -07:00
Josh HawkinsandGitHub 202b9d1c79 Check websocket correctly when no cameras are enabled/defined (#16762) 2025-02-23 11:11:18 -07:00
Josh HawkinsandGitHub 22cbf74dc8 Fix frigate log deduplication (#16759) 2025-02-23 06:25:50 -07:00
Josh HawkinsandGitHub 71f1ea86d2 Add note for notifications on iOS devices (#16744) 2025-02-22 09:19:37 -06:00
Josh HawkinsandGitHub b3c1b21f80 Don't require model_runner for realtime processors (#16728) 2025-02-21 13:26:03 -07:00
Josh HawkinsandGitHub 60b34bcfca Refactor processors and add LPR postprocessing (#16722)
* recordings data pub/sub

* function to process recording stream frames

* model runner

* lpr model runner

* refactor to mixin class and use model runner

* separate out realtime and post processors

* move model and mixin folders

* basic postprocessor

* clean up

* docs

* postprocessing logic

* clean up

* return none if recordings are disabled

* run postprocessor handle_requests too

* tweak expansion

* add put endpoint

* postprocessor tweaks with endpoint
2025-02-21 06:51:37 -07:00
Josh HawkinsandGitHub 0083d09a8b Bugfix: ensure all object labels are added to zones (#16686) 2025-02-19 06:25:39 -07:00
Josh HawkinsandGitHub b34fb8bf7c Improve LPR and speed zone docs (#16685)
* Improve lpr and speed zone docs

* clarify

* clarify
2025-02-19 07:19:41 -06:00
Josh HawkinsandGitHub 2b3ab02ebf object path plotter per camera with time selection dropdown (#16676) 2025-02-18 20:55:16 -07:00
Josh HawkinsandGitHub 2277a88f4d Ensure range is undefined when canceling an export (#16673) 2025-02-18 11:50:32 -07:00
Josh HawkinsandGitHub b6db97d313 Add metadata title field to exports (#16664) 2025-02-18 08:48:03 -06:00
Josh HawkinsandGitHub 1d3de77f63 Reorganize Lifecycle components (#16663)
* reorganize lifecycle components

* clean up
2025-02-18 07:17:51 -07:00
Josh HawkinsandGitHub 4f88a5f2ad Object Lifecycle tweaks (#16648)
* Disable object path and add warning for autotracking cameras

* clean up
2025-02-17 16:03:51 -07:00