Commit Graph
100 Commits
Author SHA1 Message Date
Josh HawkinsandGitHub 9fa2b002ba Attributes for object masks (#18003)
* Add ability to select attributes for object masks

This feature already works correctly on the backend. This just adds the ability to select attributes through the UI.

* Add clarity to LPR docs about timestamps

* fix sub label score and add info popover
2025-05-02 13:46:30 -05:00
Josh HawkinsandGitHub f98795abfd Face UI fixes (#18000)
* ensure portrait cams are contained in dialog

* always show rename and delete buttons on mobile and tablet

without a group-hover state, a double-tap was required to select a face from the dropdown
2025-05-02 06:44:45 -06:00
Josh HawkinsandGitHub 4d6a139bf8 UI fixes (#17989)
* use correct time in custom export time picker

* fix inline icons
2025-05-01 09:06:29 -06:00
Josh HawkinsandGitHub 08c087f221 Docs updates (#17986)
* docs updates

* revamp hwaccel

* remove

* clarify

* fix

* more clarity

* clean up
2025-05-01 08:17:35 -05:00
Josh HawkinsandGitHub 377b78af11 Change default zmq timeout (#17971)
* update default zmq timeout

* use lower default timeout

* keep longer timeout for event maintainer

* remove default

* remove
2025-04-30 08:29:16 -06:00
Josh HawkinsandGitHub 96d89eb50c Lower timeout in object processing (#17970)
On startup, the object processing pipeline would be delayed for 10ms every iteration through the loop while the end event subscriber blocked. For users with large numbers of cameras and a fair amount of detected objects, this would cause the detected objects queue length to rise and frames to be eventually dropped, leading to processing delays, incorrect frame times applied to thumbnail_data, and other seemingly unexplainable things.
2025-04-30 07:42:53 -06:00
Josh HawkinsandGitHub a9f139e062 Fixes (#17961)
* Fix i18n page titles

* fix frontend crash in npu stats

* return empty object for gpu_usages if null

* fix gpu info i18n keys
2025-04-29 17:03:44 -05:00
Josh HawkinsandGitHub c91c6970de Autotracking improvements (#17955)
* add zoom time to movement predictions

* config migrator

* add space to face rename regex

* more debug

* only calculate zoom time of relative move

* fix test

* make migrated movement weight a zero

* check for str and bool for movestatus support
2025-04-29 10:17:56 -06:00
Josh HawkinsandGitHub 9291543705 Fix missing i18n keys (#17952)
* Fix missing i18n keys

* gpu info dialog fixes
2025-04-29 06:47:19 -06:00
Josh HawkinsandGitHub 1e079027ec Assign requestor correctly (#17944) 2025-04-28 21:52:37 -05:00
Josh HawkinsandGitHub d6afd5c198 Add Italian, Cantonese, and German to languages menu (#17942) 2025-04-28 17:54:31 -06:00
Josh HawkinsandGitHub d62790cd78 Add ability to use the browser back button to close sheets and dialogs (#17932) 2025-04-28 08:41:08 -06:00
Josh HawkinsandGitHub 2610cfcfde Classification config changes (#17892)
* Only auto-populate some config fields down to the camera level

- Don't populate LPR and face global-only settings down to the camera level
- Ensure LPR mixin uses camera level min_area
- Explicitly forbid extra config values for LPR and face

* lpr docs tweak

* remove extra text already in i18n key

* consistency
2025-04-24 07:30:10 -06:00
Josh HawkinsandGitHub d11f46bbce Add ability to rename faces in the Face Library (#17879)
* api endpoint

* embeddings rename function

* frontend and i18n keys

* lazy load train tab images

* only log exception to make codeql happy
2025-04-23 17:27:46 -06:00
b061d083ba Misc fixes (#17871)
* fix check for snapshot score

for manual events, snapScore is 0, so "0" gets displayed instead of a condition being evaluated.

* fix ongoing events from being returned for all review queries

The existing condition will include any record with a null end_time regardless of when it started, as long as the start_time is greater than the after param. With this fix, both the start time needs to be within the specified range, and for events that have already ended, their end time must be before the before param

* Base alert toggles on width not device class

---------

Co-authored-by: Nicolas Mowen <nickmowen213@gmail.com>
2025-04-23 07:06:31 -06:00
Josh HawkinsandGitHub 44d44f87ac i18n tweaks (#17865)
* Add plural variant to i18n selected key

Weblate needs both keys to populate other languages

* move smart capitalization logic into language provider

* fix key
2025-04-23 06:19:20 -06:00
Josh HawkinsandGitHub cee5d6e5ee Fix i18n plural for selected review count (#17864)
* Fix i18n plural for selected review count

* use selected count in explore
2025-04-22 22:01:46 -05:00
Josh HawkinsandGitHub 78c1694451 Add missing i18n keys (#17861) 2025-04-22 19:46:05 -06:00
Josh HawkinsandGitHub b6e0e5698a Proper i18n date/time handling (#17858)
* install date-fns-tz

* add date locale hook

* refactor formatUnixTimestampToDateTime

Use date-fns style instead of using strftime. This requires changing the i18n keys to the way date-fns represents dates (eg: "MMM d, h:mm:ss aaa"  instead of "%b %-d, %H:%M"

* refactor calendar to use new hook

* fix useFormattedTimestamp to use new formatUnixTimestampToDateTime date_format

* change i18n keys to new format

* fix timeline

* fix review

* fix explore

* fix metrics

* fix notifications

* fix face library

* clean up
2025-04-22 15:50:21 -06:00
Josh HawkinsandGitHub 645c84bc1a Dark mode theme tweaks (#17846)
Slightly adjust some default theme (dark mode only) colors to make them more readable.
2025-04-21 20:45:12 -06:00
Josh HawkinsandGitHub 05f02fb956 Update live view docs (#17847)
Update docs with example on transcoding to AAC with go2rtc.
2025-04-21 20:44:49 -06:00
Josh HawkinsandGitHub 6936d33172 Frame time fix (#17816)
* Don't update thumbnail/snapshot if frame is not in the frame cache

This follows up on changes originally made in https://github.com/blakeblackshear/frigate/pull/17671 - it is possible that is_better_thumbnail is true but the frame_time for the object is not the same as the current_frame_time. So rather than checking the frame cache, this change will only update the thumbnail_data when the two frame time values are the same.

* add camera name to debug log
2025-04-21 16:36:10 -06:00
Josh HawkinsandGitHub a91a2ce4ca Don't limit review summary query (#17835)
* Don't limit review summary query

The /review/summary endpoint was being restricted to the last 30 days, so unreviewed alerts and detections weren't showing in the calendar before that point. This change removes the WHERE clause so that the endpoint returns all results.

* fix

* remove unneeded test

we are now returning all results so we don't need to test for > month_ago

* fix
2025-04-21 11:09:01 -06:00
Josh HawkinsandGitHub 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
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