Commit Graph

5375 Commits

Author SHA1 Message Date
Josh Hawkins
de6ad5a32a remove collapsible around root section 2026-02-27 09:37:57 -06:00
Josh Hawkins
bc5d7cf575 i18n tweaks 2026-02-27 09:37:57 -06:00
Josh Hawkins
0b148d66f3 fix array field template 2026-02-27 09:37:57 -06:00
Josh Hawkins
ab727089d2 use shadcn theme 2026-02-27 09:37:57 -06:00
Josh Hawkins
42a594984d tweaks 2026-02-27 09:37:57 -06:00
Josh Hawkins
25aaa2d9f7 remove show advanced fields switch 2026-02-27 09:37:57 -06:00
Josh Hawkins
f534c7216a improve generic error validation messages 2026-02-27 09:37:57 -06:00
Josh Hawkins
dd0c497fd3 generic and custom per-field validation 2026-02-27 09:37:57 -06:00
Josh Hawkins
f7cc87e8ce fix validation for schema objects that can be null 2026-02-27 09:37:57 -06:00
Josh Hawkins
55c6c50c97 fix sections and live validation 2026-02-27 09:37:57 -06:00
Josh Hawkins
b1cd5432bf tweaks 2026-02-27 09:37:57 -06:00
Josh Hawkins
dbc8e4c2d1 add reset logic to global config view 2026-02-27 09:37:57 -06:00
Josh Hawkins
f9e5969b7d i18n 2026-02-27 09:37:57 -06:00
Josh Hawkins
7692c89234 add global sections, camera config overrides, and reset button 2026-02-27 09:37:57 -06:00
Josh Hawkins
260237bf1a ensure update_topic is added to api calls
this needs further backend implementation to work correctly
2026-02-27 09:37:57 -06:00
Josh Hawkins
73ae2db1a5 fix nullable schema entries 2026-02-27 09:37:57 -06:00
Josh Hawkins
72ab1f93b5 add switches widgets and use friendly names 2026-02-27 09:37:57 -06:00
Josh Hawkins
f25b69e3eb sanitize internal fields 2026-02-27 09:37:57 -06:00
Josh Hawkins
223eb89dc4 fix nullable fields 2026-02-27 09:37:57 -06:00
Josh Hawkins
6a664f4624 motion i18n 2026-02-27 09:37:57 -06:00
Josh Hawkins
bd0bafc05e add descriptions to all fields for i18n 2026-02-27 09:37:57 -06:00
Josh Hawkins
0280c2ec43 section fields 2026-02-27 09:37:57 -06:00
Josh Hawkins
737de2f53a configure for full i18n support 2026-02-27 09:37:56 -06:00
Josh Hawkins
425e68c51c don't use properties wrapper when generating config i18n json 2026-02-27 09:37:56 -06:00
Josh Hawkins
68c74fef05 use react-jsonschema-form for UI config 2026-02-27 09:37:56 -06:00
Nicolas Mowen
eeefbf2bb5
Add support for multiple GenAI Providers (#22144)
* GenAI client manager

* Add config migration

* Convert to roles list

* Support getting client via manager

* Cleanup

* Fix import issues

* Set model in llama.cpp config

* Clenaup

* Use config update

* Clenaup

* Add new title and desc
2026-02-27 08:35:33 -07:00
Martin Weinelt
ba0e7bbc1a
Remove redundant tensorflow import in BirdRealTimeProcessor (#22127)
Was added in ae0c1ca (#21301) and then incompletely reverted in ec1d794
(#21320).
2026-02-27 05:37:17 -07:00
Martin Weinelt
e16763cff9
Fallback from tflite-runtime to ai-edge-litert (#21876)
Some checks are pending
CI / AMD64 Build (push) Waiting to run
CI / ARM Build (push) Waiting to run
CI / Jetson Jetpack 6 (push) Waiting to run
CI / AMD64 Extra Build (push) Blocked by required conditions
CI / ARM Extra Build (push) Blocked by required conditions
CI / Synaptics Build (push) Blocked by required conditions
CI / Assemble and push default build (push) Blocked by required conditions
The fallback to tensorflow was established back in 2023, because we could
not provide tflite-runtime downstream in nixpkgs.

By now we have ai-edge-litert available, which is the successor to the
tflite-runtime. It still provides the same entrypoints as tflite-runtime
and functionality has been verified in multiple deployments for the last
two weeks.
2026-02-26 21:55:29 -07:00
Felipe Santos
b88186983a
Increase maximum stream timeout to 15s (#21936)
* Increase maximum stream timeout to 15s

* Use predefined intervals instead for the stream timeout
2026-02-26 21:54:00 -07:00
Martin Weinelt
b4eac11cbd
Clean up trailing whitespaces in cpu stats process cmdline (#22089)
The psutil library reads the process commandline as by opening
/proc/pid/cmdline which returns a buffer that is larger than just the
program cmdline due to rounded memory allocation sizes.

That means that if the library does not detect a Null-terminated string
it keeps appending empty strings which add up as whitespaces when joined.
2026-02-26 21:53:26 -07:00
Nicolas Mowen
9c3a74b4f5 Cleanup 2026-02-26 21:27:56 -07:00
Nicolas Mowen
91714b8743 Remove exceptions 2026-02-26 21:27:56 -07:00
Nicolas Mowen
e5087b092d Fix frame time access 2026-02-26 21:27:56 -07:00
Nicolas Mowen
5f02e33e55 Adapt to new Gemini format 2026-02-26 21:27:56 -07:00
nulledy
84760c42cb ffmpeg Preview Segment Optimization for "high" and "very_high" (#21996)
* Introduce qmax parameter for ffmpeg preview encoding

Added PREVIEW_QMAX_PARAM to control ffmpeg encoding quality.

* formatting

* Fix spacing in qmax parameters for preview quality
2026-02-26 21:27:56 -07:00
nulledy
bb6e889449 Allow API Events to be Detections or Alerts, depending on the Event Label (#21923)
* - API created events will be alerts OR detections, depending on the event label, defaulting to alerts
- Indefinite API events will extend the recording segment until those events are ended
- API event start time is the actual start time, instead of having a pre-buffer of record.event_pre_capture

* Instead of checking for indefinite events on a camera before deciding if we should end the segment, only update last_detection_time and last_alert_time if frame_time is greater, which should have the same effect

* Add the ability to set a pre_capture number of seconds when creating a manual event via the API. Default behavior unchanged

* Remove unnecessary _publish_segment_start() call

* Formatting

* handle last_alert_time or last_detection_time being None when checking them against the frame_time

* comment manual_info["label"].split(": ")[0] for clarity
2026-02-26 21:27:56 -07:00
Josh Hawkins
12506f8c80 Improve jsmpeg player websocket handling (#21943)
* improve jsmpeg player websocket handling

prevent websocket console messages from appearing when player is destroyed

* reformat files after ruff upgrade
2026-02-26 21:27:56 -07:00
FL42
fef1fb36cc feat: add X-Frame-Time when returning snapshot (#21932)
Co-authored-by: Florent MORICONI <170678386+fmcloudconsulting@users.noreply.github.com>
2026-02-26 21:27:56 -07:00
Eric Work
2db0269825 Add networking options for configuring listening ports (#21779) 2026-02-26 21:27:56 -07:00
Nicolas Mowen
a4362caa0a Add live context tool to LLM (#21754)
* Add live context tool

* Improve handling of images in request

* Improve prompt caching
2026-02-26 21:27:56 -07:00
Nicolas Mowen
fa0feebd03 Update to ROCm 7.2.0 (#21753)
* Update to ROCm 7.2.0

* ROCm now works properly with JinaV1

* Arcface has compilation error
2026-02-26 21:27:56 -07:00
Josh Hawkins
c78ab2dc87 Offline preview image (#21752)
* use latest preview frame for latest image when camera is offline

* remove frame extraction logic

* tests

* frontend

* add description to api endpoint
2026-02-26 21:27:56 -07:00
Nicolas Mowen
e76b48f98b Implement LLM Chat API with tool calling support (#21731)
* Implement initial tools definiton APIs

* Add initial chat completion API with tool support

* Implement other providers

* Cleanup
2026-02-26 21:27:56 -07:00
John Shaw
af2339b35c Remove parents in remove_empty_directories (#21726)
The original implementation did a full directory tree walk to find and remove
empty directories, so this implementation should remove the parents as well,
like the original did.
2026-02-26 21:27:56 -07:00
Nicolas Mowen
9b7cee18db Implement llama.cpp GenAI Provider (#21690)
* Implement llama.cpp GenAI Provider

* Add docs

* Update links

* Fix broken mqtt links

* Fix more broken anchors
2026-02-26 21:27:56 -07:00
John Shaw
d3260e34b6 Optimize empty directory cleanup for recordings (#21695)
The previous empty directory cleanup did a full recursive directory
walk, which can be extremely slow. This new implementation only removes
directories which have a chance of being empty due to a recent file
deletion.
2026-02-26 21:27:56 -07:00
Nicolas Mowen
ee2c96c793 Refactor Time-Lapse Export (#21668)
* refactor time lapse creation to be a separate API call with ability to pass arbitrary ffmpeg args

* Add CPU fallback
2026-02-26 21:27:56 -07:00
Eugeny Tulupov
542295dcb3 Update go2rtc to v1.9.13 (#21648)
Co-authored-by: Eugeny Tulupov <eugeny.tulupov@spirent.com>
2026-02-26 21:27:56 -07:00
Josh Hawkins
56c7a13fbe Fix incorrect counting in sync_recordings (#21626) 2026-02-26 21:27:56 -07:00
Josh Hawkins
88348bf535 use same logging pattern in sync_recordings as the other sync functions (#21625) 2026-02-26 21:27:56 -07:00