A config with `edgetpu:usb` was reported as hardware that wasn't found, because the picker compared device strings exactly and the probe reports the unit as `edgetpu:usb:0`. A device without an index now resolves to the first unit of that kind, so the hardware dropdown, the unit checkboxes, and the model summary all recognize it.
* bump backend and frontend dependencies
Bumps every outdated dependency that passed testing, with the code changes each one needs.
- peewee 4.5 and peewee_migrate 2.3: use SqliteDatabase in place of the removed SqliteExtDatabase, and fix types for peewee's bundled stubs
- mypy 2.4.0: remove unused type ignores and add the annotations mypy 2 needs
- pandas 3.0: convert the motion activity index with as_unit("s"), because pandas 3 infers second resolution for whole-second timestamps and the old // 10**9 returned 1
- transformers 5.19: load Jina tokenizers from the saved directory with trust_remote_code off and use CLIPImageProcessor, since v5 removed CLIPFeatureExtractor and remote code pulled in torch
- tensorflow-cpu 2.21: pin protobuf to 7.36 in the TensorRT amd64 image, because the old 3.20.3 pin was installed over TensorFlow and broke its import
- pydantic 2.13 and google-genai 2.29: regenerate the API spec
- ruff 0.16: set an explicit lint select, since 0.16 widened the default rules
- react-router-dom 7: set useTransitions={false} on BrowserRouter to keep v6 update timing, which useSearchEffect relies on
- typescript 6: drop baseUrl and add node types in tsconfig
- radix: update to the latest release and remove the slot patch, which upstream now includes
- apexcharts 7.8: guard the tooltip formatter against null values
- cryptography 50, joserfc 1.7, pywebpush 2.5, openai 3.26, aiohttp, uvicorn, onvif-zeep-async, scipy, framer-motion 14, react-day-picker 10 and other minor and patch bumps
* silence httpx2 request logging
* redownload an incomplete jina tokenizer
An interrupted tokenizer download left the Hugging Face cache directory without the saved tokenizer files, and since the download is skipped whenever that directory exists, every restart failed to load the tokenizer. The Jina constructors now remove a tokenizer directory that has no tokenizer_config.json so the download runs again.
* try http-flv first for reolink cameras above 5MP in the camera wizard
The wizard picked RTSP for every Reolink above 5MP and then warned that RTSP isn't recommended, telling users to enable HTTP and restart, which just produced the same result. It now tries the http-flv stream first for those cameras and falls back to RTSP when the stream doesn't probe, since only the newer models serve H.265 over enhanced FLV. The RTSP warning is skipped when the camera's resolution made RTSP a valid choice.
http-flv no longer needs go2rtc's ffmpeg module, so the compatibility mode warning for Reolink HTTP streams is removed and the docs drop the `ffmpeg:` prefix from http-flv sources that have no transcoding modifiers.
* add reolink tests
* keep using ffmpeg module
* revert disable save buttons when there are no changes in config editor
* pass migrated config to each step in the config migration chain
* use 150 as the default max when typing a min speed in the search filter
* fix preview export outpoint to be relative to the start of the preview file
* don't crash on invalid trusted proxy entries or non-ip forwarded hops
* translate the camera count badge in the roles table
* run every batch through the lpr recognition model
* log rejected motion and notification mqtt payloads
* log invalid addresses in x-forwarded-for
* add test
* remove unused autotracked_object_region
* remove unreachable autotracker setup call in camera maintenance
* apply onvif retry limit when initialization fails
* fix reindex progress overcounting when there are fewer events than a batch
* match the register device button aria label to its text
* reset the add profile form on cancel
* ignore case when filtering search suggestions
* tweak comment
* implement auto mode for single camera live view
* add transcoded live streams and stream ordering for auto mode
Cameras can now add lower quality live streams that go2rtc transcodes to H.264 on demand. `live.transcode` takes a source stream and a list of heights and bitrates, and each quality becomes a `{camera}_transcode_{height}p` stream. The config validator adds them to `live.streams` without moving any the user already placed, and drops them when transcoding is disabled or a height changes. `create_config.py` writes them into go2rtc's generated config at startup, and saving the config or deleting a camera syncs them through go2rtc's API, so no restart is needed. They use `#hardware`, so go2rtc picks a hardware encoder and falls back to the CPU when there isn't one.
The Live playback settings stream list can be reordered by drag, since its order is the auto ladder. Auto order sorts it by bitrate, measuring native streams through a new admin-only `/go2rtc/streams/{name}/bitrate` endpoint and using the configured bitrate for transcoded ones. A pure reorder wasn't saved before because RJSF, the settings form, and `update_yaml` all ignore map key order. Sections can now mark a map with `orderedMaps`, which sends the whole map with `replace_paths` so `config_set` rewrites it in order.
Transcoded streams aren't in `go2rtc.streams`, which only lists yaml streams, so the frontend treated them as not restreamed and fell back to jsmpeg. Every restream check now goes through `isRestreamedStream`.
Auto treated any stall with no bytes in the last 2 seconds as a dead camera and handed it to the error fallback, which went straight to jsmpeg. Heavy congestion can stop delivery completely, so congested viewers skipped every lower stream. Auto now declines only when stats show the camera offline, and a stall on a live camera steps down. The stream picker also has a Try highest quality button that sends auto back to the top stream.
* fixes
Currently translated at 100.0% (759 of 759 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (1374 of 1374 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (1374 of 1374 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (759 of 759 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (508 of 508 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (141 of 141 strings)
Translated using Weblate (Turkish)
Currently translated at 99.7% (1370 of 1374 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (119 of 119 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (145 of 145 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (10 of 10 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (265 of 265 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (759 of 759 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (508 of 508 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (277 of 277 strings)
Translated using Weblate (Turkish)
Currently translated at 99.4% (1366 of 1374 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (119 of 119 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (145 of 145 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (10 of 10 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (265 of 265 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (46 of 46 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (62 of 62 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (66 of 66 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (759 of 759 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (508 of 508 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (141 of 141 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (277 of 277 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (1366 of 1366 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (49 of 49 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (6 of 6 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (119 of 119 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (60 of 60 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (87 of 87 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (145 of 145 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (68 of 68 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (10 of 10 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (50 of 50 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (264 of 264 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (46 of 46 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (62 of 62 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (24 of 24 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (25 of 25 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (759 of 759 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (508 of 508 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (141 of 141 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (277 of 277 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (1366 of 1366 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (119 of 119 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (60 of 60 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (145 of 145 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (129 of 129 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (35 of 35 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (2 of 2 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (74 of 74 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (118 of 118 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (50 of 50 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (10 of 10 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (500 of 500 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (264 of 264 strings)
Update translation files
Updated by "Cleanup translation files" add-on in Weblate.
Translated using Weblate (Turkish)
Currently translated at 100.0% (759 of 759 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (508 of 508 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (500 of 500 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (62 of 62 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (24 of 24 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (759 of 759 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (508 of 508 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (269 of 269 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (1364 of 1364 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (119 of 119 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (50 of 50 strings)
Translated using Weblate (Turkish)
Currently translated at 96.8% (1321 of 1364 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (50 of 50 strings)
Translated using Weblate (Turkish)
Currently translated at 95.3% (1300 of 1364 strings)
Translated using Weblate (Turkish)
Currently translated at 95.2% (1299 of 1364 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (759 of 759 strings)
Translated using Weblate (Turkish)
Currently translated at 86.1% (1175 of 1364 strings)
Translated using Weblate (Turkish)
Currently translated at 85.2% (1163 of 1364 strings)
Translated using Weblate (Turkish)
Currently translated at 58.3% (157 of 269 strings)
Translated using Weblate (Turkish)
Currently translated at 84.6% (1155 of 1364 strings)
Translated using Weblate (Turkish)
Currently translated at 84.6% (1155 of 1364 strings)
Translated using Weblate (Turkish)
Currently translated at 82.7% (1129 of 1364 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (759 of 759 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (508 of 508 strings)
Translated using Weblate (Turkish)
Currently translated at 58.3% (157 of 269 strings)
Translated using Weblate (Turkish)
Currently translated at 74.7% (1019 of 1364 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (49 of 49 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (119 of 119 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (87 of 87 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (145 of 145 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (35 of 35 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (74 of 74 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (118 of 118 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (46 of 46 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (62 of 62 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (66 of 66 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (24 of 24 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (25 of 25 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (759 of 759 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (508 of 508 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (141 of 141 strings)
Translated using Weblate (Turkish)
Currently translated at 58.3% (157 of 269 strings)
Translated using Weblate (Turkish)
Currently translated at 69.5% (949 of 1364 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (49 of 49 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (119 of 119 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (60 of 60 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (87 of 87 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (145 of 145 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (68 of 68 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (129 of 129 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (35 of 35 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (74 of 74 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (118 of 118 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (50 of 50 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (264 of 264 strings)
Translated using Weblate (Turkish)
Currently translated at 91.5% (695 of 759 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (508 of 508 strings)
Translated using Weblate (Turkish)
Currently translated at 86.5% (122 of 141 strings)
Translated using Weblate (Turkish)
Currently translated at 48.6% (663 of 1364 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (49 of 49 strings)
Translated using Weblate (Turkish)
Currently translated at 94.4% (137 of 145 strings)
Translated using Weblate (Turkish)
Currently translated at 91.4% (118 of 129 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (74 of 74 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (500 of 500 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (264 of 264 strings)
Translated using Weblate (Turkish)
Currently translated at 31.2% (237 of 759 strings)
Translated using Weblate (Turkish)
Currently translated at 31.2% (237 of 759 strings)
Translated using Weblate (Turkish)
Currently translated at 31.2% (237 of 759 strings)
Translated using Weblate (Turkish)
Currently translated at 56.1% (285 of 508 strings)
Translated using Weblate (Turkish)
Currently translated at 56.1% (285 of 508 strings)
Translated using Weblate (Turkish)
Currently translated at 56.1% (285 of 508 strings)
Translated using Weblate (Turkish)
Currently translated at 48.6% (663 of 1364 strings)
Translated using Weblate (Turkish)
Currently translated at 94.4% (137 of 145 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (74 of 74 strings)
Update translation files
Updated by "Cleanup translation files" add-on in Weblate.
Translated using Weblate (Turkish)
Currently translated at 1.5% (1 of 66 strings)
Translated using Weblate (Turkish)
Currently translated at 54.1% (13 of 24 strings)
Translated using Weblate (Turkish)
Currently translated at 16.0% (122 of 759 strings)
Translated using Weblate (Turkish)
Currently translated at 25.3% (129 of 508 strings)
Translated using Weblate (Turkish)
Currently translated at 86.5% (122 of 141 strings)
Translated using Weblate (Turkish)
Currently translated at 57.9% (156 of 269 strings)
Translated using Weblate (Turkish)
Currently translated at 48.6% (665 of 1366 strings)
Translated using Weblate (Turkish)
Currently translated at 80.6% (96 of 119 strings)
Translated using Weblate (Turkish)
Currently translated at 94.4% (137 of 145 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (68 of 68 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (35 of 35 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (74 of 74 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (118 of 118 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (500 of 500 strings)
Translated using Weblate (Turkish)
Currently translated at 100.0% (264 of 264 strings)
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Murat Odabasi <murat12@gmail.com>
Co-authored-by: pcislocked <git@pcislocked.net>
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/audio/tr/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/common/tr/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/components-auth/tr/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/components-camera/tr/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/components-dialog/tr/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/components-filter/tr/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/components-icons/tr/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/components-player/tr/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/config-cameras/tr/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/config-global/tr/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/config-groups/tr/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/config-validation/tr/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/objects/tr/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-chat/tr/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-classificationmodel/tr/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-configeditor/tr/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-events/tr/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-explore/tr/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-exports/tr/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-facelibrary/tr/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-live/tr/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-motionsearch/tr/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-recording/tr/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-replay/tr/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-search/tr/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-settings/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-settings/tr/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-system/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-system/tr/
Translation: Frigate NVR/Config - Cameras
Translation: Frigate NVR/Config - Global
Translation: Frigate NVR/Config - Groups
Translation: Frigate NVR/Config - Validation
Translation: Frigate NVR/audio
Translation: Frigate NVR/common
Translation: Frigate NVR/components-auth
Translation: Frigate NVR/components-camera
Translation: Frigate NVR/components-dialog
Translation: Frigate NVR/components-filter
Translation: Frigate NVR/components-icons
Translation: Frigate NVR/components-player
Translation: Frigate NVR/objects
Translation: Frigate NVR/views-chat
Translation: Frigate NVR/views-classificationmodel
Translation: Frigate NVR/views-configeditor
Translation: Frigate NVR/views-events
Translation: Frigate NVR/views-explore
Translation: Frigate NVR/views-exports
Translation: Frigate NVR/views-facelibrary
Translation: Frigate NVR/views-live
Translation: Frigate NVR/views-motionSearch
Translation: Frigate NVR/views-recording
Translation: Frigate NVR/views-replay
Translation: Frigate NVR/views-search
Translation: Frigate NVR/views-settings
Translation: Frigate NVR/views-system