Compare commits

...

28 Commits

Author SHA1 Message Date
Josh Hawkins
430cebecda
Fix trigger sync (#21264)
Some checks failed
CI / AMD64 Build (push) Has been cancelled
CI / ARM Build (push) Has been cancelled
CI / Jetson Jetpack 6 (push) Has been cancelled
CI / AMD64 Extra Build (push) Has been cancelled
CI / ARM Extra Build (push) Has been cancelled
CI / Synaptics Build (push) Has been cancelled
CI / Assemble and push default build (push) Has been cancelled
- don't look for event ids when trigger type is description
- don't try to delete thumbnail whe trigger type is description
- pass correct event ID into thumbnail deletion
2025-12-13 12:15:25 -06:00
Hosted Weblate
af7af33645 Translated using Weblate (Norwegian Bokmål)
Currently translated at 100.0% (120 of 120 strings)

Translated using Weblate (Norwegian Bokmål)

Currently translated at 100.0% (214 of 214 strings)

Translated using Weblate (Norwegian Bokmål)

Currently translated at 100.0% (130 of 130 strings)

Translated using Weblate (Norwegian Bokmål)

Currently translated at 100.0% (25 of 25 strings)

Translated using Weblate (Norwegian Bokmål)

Currently translated at 100.0% (128 of 128 strings)

Translated using Weblate (Norwegian Bokmål)

Currently translated at 100.0% (72 of 72 strings)

Translated using Weblate (Norwegian Bokmål)

Currently translated at 100.0% (654 of 654 strings)

Translated using Weblate (Norwegian Bokmål)

Currently translated at 100.0% (92 of 92 strings)

Translated using Weblate (Norwegian Bokmål)

Currently translated at 100.0% (41 of 41 strings)

Translated using Weblate (Norwegian Bokmål)

Currently translated at 100.0% (46 of 46 strings)

Translated using Weblate (Norwegian Bokmål)

Currently translated at 100.0% (41 of 41 strings)

Translated using Weblate (Norwegian Bokmål)

Currently translated at 100.0% (130 of 130 strings)

Translated using Weblate (Norwegian Bokmål)

Currently translated at 100.0% (48 of 48 strings)

Translated using Weblate (Norwegian Bokmål)

Currently translated at 100.0% (72 of 72 strings)

Translated using Weblate (Norwegian Bokmål)

Currently translated at 100.0% (92 of 92 strings)

Translated using Weblate (Norwegian Bokmål)

Currently translated at 100.0% (53 of 53 strings)

Translated using Weblate (Norwegian Bokmål)

Currently translated at 100.0% (652 of 652 strings)

Translated using Weblate (Norwegian Bokmål)

Currently translated at 100.0% (120 of 120 strings)

Translated using Weblate (Norwegian Bokmål)

Currently translated at 99.1% (119 of 120 strings)

Translated using Weblate (Norwegian Bokmål)

Currently translated at 100.0% (128 of 128 strings)

Translated using Weblate (Norwegian Bokmål)

Currently translated at 100.0% (119 of 119 strings)

Translated using Weblate (Norwegian Bokmål)

Currently translated at 100.0% (40 of 40 strings)

Translated using Weblate (Norwegian Bokmål)

Currently translated at 100.0% (72 of 72 strings)

Translated using Weblate (Norwegian Bokmål)

Currently translated at 100.0% (639 of 639 strings)

Translated using Weblate (Norwegian Bokmål)

Currently translated at 100.0% (52 of 52 strings)

Translated using Weblate (Norwegian Bokmål)

Currently translated at 100.0% (116 of 116 strings)

Translated using Weblate (Norwegian Bokmål)

Currently translated at 100.0% (55 of 55 strings)

Translated using Weblate (Norwegian Bokmål)

Currently translated at 100.0% (128 of 128 strings)

Translated using Weblate (Norwegian Bokmål)

Currently translated at 100.0% (48 of 48 strings)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: OverTheHillsAndFarAway <prosjektx@users.noreply.hosted.weblate.org>
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/common/nb_NO/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/components-camera/nb_NO/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/components-dialog/nb_NO/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/components-filter/nb_NO/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/components-player/nb_NO/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-classificationmodel/nb_NO/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-events/nb_NO/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-explore/nb_NO/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-facelibrary/nb_NO/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-live/nb_NO/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-search/nb_NO/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-settings/nb_NO/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-system/nb_NO/
Translation: Frigate NVR/common
Translation: Frigate NVR/components-camera
Translation: Frigate NVR/components-dialog
Translation: Frigate NVR/components-filter
Translation: Frigate NVR/components-player
Translation: Frigate NVR/views-classificationmodel
Translation: Frigate NVR/views-events
Translation: Frigate NVR/views-explore
Translation: Frigate NVR/views-facelibrary
Translation: Frigate NVR/views-live
Translation: Frigate NVR/views-search
Translation: Frigate NVR/views-settings
Translation: Frigate NVR/views-system
2025-12-13 08:02:05 -07:00
Hosted Weblate
9822716df5 Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 100.0% (41 of 41 strings)

Translated using Weblate (Chinese (Simplified Han script))

Currently translated at 100.0% (53 of 53 strings)

Translated using Weblate (Chinese (Simplified Han script))

Currently translated at 100.0% (654 of 654 strings)

Translated using Weblate (Chinese (Simplified Han script))

Currently translated at 100.0% (120 of 120 strings)

Translated using Weblate (Chinese (Simplified Han script))

Currently translated at 100.0% (652 of 652 strings)

Translated using Weblate (Chinese (Simplified Han script))

Currently translated at 100.0% (130 of 130 strings)

Translated using Weblate (Chinese (Simplified Han script))

Currently translated at 100.0% (639 of 639 strings)

Translated using Weblate (Chinese (Simplified Han script))

Currently translated at 100.0% (120 of 120 strings)

Translated using Weblate (Chinese (Simplified Han script))

Currently translated at 100.0% (119 of 119 strings)

Translated using Weblate (Chinese (Simplified Han script))

Currently translated at 100.0% (40 of 40 strings)

Translated using Weblate (Chinese (Simplified Han script))

Currently translated at 100.0% (92 of 92 strings)

Translated using Weblate (Chinese (Simplified Han script))

Currently translated at 100.0% (130 of 130 strings)

Translated using Weblate (Chinese (Simplified Han script))

Currently translated at 100.0% (46 of 46 strings)

Translated using Weblate (Chinese (Simplified Han script))

Currently translated at 100.0% (639 of 639 strings)

Translated using Weblate (Chinese (Simplified Han script))

Currently translated at 100.0% (118 of 118 strings)

Translated using Weblate (Chinese (Simplified Han script))

Currently translated at 100.0% (72 of 72 strings)

Translated using Weblate (Chinese (Simplified Han script))

Currently translated at 100.0% (501 of 501 strings)

Translated using Weblate (Chinese (Simplified Han script))

Currently translated at 100.0% (130 of 130 strings)

Translated using Weblate (Chinese (Simplified Han script))

Currently translated at 100.0% (55 of 55 strings)

Translated using Weblate (Chinese (Simplified Han script))

Currently translated at 100.0% (40 of 40 strings)

Translated using Weblate (Chinese (Simplified Han script))

Currently translated at 100.0% (128 of 128 strings)

Translated using Weblate (Chinese (Simplified Han script))

Currently translated at 100.0% (128 of 128 strings)

Translated using Weblate (Chinese (Simplified Han script))

Currently translated at 100.0% (92 of 92 strings)

Translated using Weblate (Chinese (Simplified Han script))

Currently translated at 100.0% (119 of 119 strings)

Co-authored-by: GuoQing Liu <842607283@qq.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/audio/zh_Hans/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/components-camera/zh_Hans/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/components-dialog/zh_Hans/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/components-filter/zh_Hans/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/objects/zh_Hans/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-classificationmodel/zh_Hans/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-events/zh_Hans/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-explore/zh_Hans/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-facelibrary/zh_Hans/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-live/zh_Hans/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-settings/zh_Hans/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-system/zh_Hans/
Translation: Frigate NVR/audio
Translation: Frigate NVR/components-camera
Translation: Frigate NVR/components-dialog
Translation: Frigate NVR/components-filter
Translation: Frigate NVR/objects
Translation: Frigate NVR/views-classificationmodel
Translation: Frigate NVR/views-events
Translation: Frigate NVR/views-explore
Translation: Frigate NVR/views-facelibrary
Translation: Frigate NVR/views-live
Translation: Frigate NVR/views-settings
Translation: Frigate NVR/views-system
2025-12-13 08:02:05 -07:00
Hosted Weblate
66bc4e6f96 Translated using Weblate (Chinese (Traditional Han script))
Currently translated at 92.3% (85 of 92 strings)

Translated using Weblate (Chinese (Traditional Han script))

Currently translated at 44.5% (53 of 119 strings)

Translated using Weblate (Chinese (Traditional Han script))

Currently translated at 44.5% (53 of 119 strings)

Translated using Weblate (Chinese (Traditional Han script))

Currently translated at 100.0% (52 of 52 strings)

Translated using Weblate (Chinese (Traditional Han script))

Currently translated at 100.0% (10 of 10 strings)

Translated using Weblate (Chinese (Traditional Han script))

Currently translated at 100.0% (48 of 48 strings)

Translated using Weblate (Chinese (Traditional Han script))

Currently translated at 100.0% (2 of 2 strings)

Translated using Weblate (Chinese (Traditional Han script))

Currently translated at 100.0% (214 of 214 strings)

Translated using Weblate (Chinese (Traditional Han script))

Currently translated at 100.0% (40 of 40 strings)

Translated using Weblate (Chinese (Traditional Han script))

Currently translated at 15.7% (79 of 501 strings)

Translated using Weblate (Chinese (Traditional Han script))

Currently translated at 100.0% (13 of 13 strings)

Translated using Weblate (Chinese (Traditional Han script))

Currently translated at 11.8% (76 of 639 strings)

Translated using Weblate (Chinese (Traditional Han script))

Currently translated at 92.1% (118 of 128 strings)

Translated using Weblate (Chinese (Traditional Han script))

Currently translated at 98.1% (54 of 55 strings)

Translated using Weblate (Chinese (Traditional Han script))

Currently translated at 85.3% (111 of 130 strings)

Co-authored-by: Ban <3637117+Ban921@users.noreply.github.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Yu Chun Huang <yujun@bo2.tw>
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/audio/zh_Hant/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/common/zh_Hant/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/components-auth/zh_Hant/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/components-dialog/zh_Hant/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/components-input/zh_Hant/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-classificationmodel/zh_Hant/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-events/zh_Hant/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-explore/zh_Hant/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-exports/zh_Hant/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-facelibrary/zh_Hant/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-live/zh_Hant/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-search/zh_Hant/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-settings/zh_Hant/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-system/zh_Hant/
Translation: Frigate NVR/audio
Translation: Frigate NVR/common
Translation: Frigate NVR/components-auth
Translation: Frigate NVR/components-dialog
Translation: Frigate NVR/components-input
Translation: Frigate NVR/views-classificationmodel
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-search
Translation: Frigate NVR/views-settings
Translation: Frigate NVR/views-system
2025-12-13 08:02:05 -07:00
Hosted Weblate
23dbe098a5 Translated using Weblate (Slovenian)
Currently translated at 98.0% (51 of 52 strings)

Co-authored-by: Emircanos <emircan368@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-facelibrary/sl/
Translation: Frigate NVR/views-facelibrary
2025-12-13 08:02:05 -07:00
Hosted Weblate
c7e6c23f59 Translated using Weblate (Slovak)
Currently translated at 100.0% (40 of 40 strings)

Translated using Weblate (Slovak)

Currently translated at 100.0% (130 of 130 strings)

Translated using Weblate (Slovak)

Currently translated at 99.1% (118 of 119 strings)

Translated using Weblate (Slovak)

Currently translated at 100.0% (116 of 116 strings)

Translated using Weblate (Slovak)

Currently translated at 100.0% (55 of 55 strings)

Translated using Weblate (Slovak)

Currently translated at 100.0% (128 of 128 strings)

Translated using Weblate (Slovak)

Currently translated at 100.0% (501 of 501 strings)

Translated using Weblate (Slovak)

Currently translated at 100.0% (214 of 214 strings)

Translated using Weblate (Slovak)

Currently translated at 100.0% (52 of 52 strings)

Translated using Weblate (Slovak)

Currently translated at 100.0% (639 of 639 strings)

Translated using Weblate (Slovak)

Currently translated at 100.0% (128 of 128 strings)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Jakub K <klacanjakub0@gmail.com>
Co-authored-by: Michal Klacan <mkbebe@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/audio/sk/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/common/sk/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/components-dialog/sk/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-classificationmodel/sk/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-events/sk/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-explore/sk/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-facelibrary/sk/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-settings/sk/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-system/sk/
Translation: Frigate NVR/audio
Translation: Frigate NVR/common
Translation: Frigate NVR/components-dialog
Translation: Frigate NVR/views-classificationmodel
Translation: Frigate NVR/views-events
Translation: Frigate NVR/views-explore
Translation: Frigate NVR/views-facelibrary
Translation: Frigate NVR/views-settings
Translation: Frigate NVR/views-system
2025-12-13 08:02:05 -07:00
Hosted Weblate
de968de878 Translated using Weblate (Swedish)
Currently translated at 100.0% (654 of 654 strings)

Translated using Weblate (Swedish)

Currently translated at 100.0% (120 of 120 strings)

Translated using Weblate (Swedish)

Currently translated at 100.0% (53 of 53 strings)

Translated using Weblate (Swedish)

Currently translated at 100.0% (92 of 92 strings)

Translated using Weblate (Swedish)

Currently translated at 100.0% (41 of 41 strings)

Translated using Weblate (Swedish)

Currently translated at 100.0% (652 of 652 strings)

Translated using Weblate (Swedish)

Currently translated at 100.0% (120 of 120 strings)

Translated using Weblate (Swedish)

Currently translated at 100.0% (130 of 130 strings)

Translated using Weblate (Swedish)

Currently translated at 100.0% (652 of 652 strings)

Translated using Weblate (Swedish)

Currently translated at 100.0% (118 of 118 strings)

Translated using Weblate (Swedish)

Currently translated at 100.0% (40 of 40 strings)

Translated using Weblate (Swedish)

Currently translated at 100.0% (128 of 128 strings)

Translated using Weblate (Swedish)

Currently translated at 98.3% (117 of 119 strings)

Translated using Weblate (Swedish)

Currently translated at 100.0% (55 of 55 strings)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Kristian Johansson <knmjohansson@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/components-dialog/sv/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/objects/sv/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-classificationmodel/sv/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-events/sv/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-explore/sv/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-facelibrary/sv/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-live/sv/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-settings/sv/
Translation: Frigate NVR/components-dialog
Translation: Frigate NVR/objects
Translation: Frigate NVR/views-classificationmodel
Translation: Frigate NVR/views-events
Translation: Frigate NVR/views-explore
Translation: Frigate NVR/views-facelibrary
Translation: Frigate NVR/views-live
Translation: Frigate NVR/views-settings
2025-12-13 08:02:05 -07:00
Hosted Weblate
b951cd9aef Translated using Weblate (French)
Currently translated at 100.0% (654 of 654 strings)

Translated using Weblate (French)

Currently translated at 100.0% (128 of 128 strings)

Translated using Weblate (French)

Currently translated at 100.0% (53 of 53 strings)

Translated using Weblate (French)

Currently translated at 100.0% (41 of 41 strings)

Translated using Weblate (French)

Currently translated at 100.0% (652 of 652 strings)

Translated using Weblate (French)

Currently translated at 100.0% (639 of 639 strings)

Translated using Weblate (French)

Currently translated at 100.0% (120 of 120 strings)

Translated using Weblate (French)

Currently translated at 100.0% (128 of 128 strings)

Translated using Weblate (French)

Currently translated at 100.0% (214 of 214 strings)

Translated using Weblate (French)

Currently translated at 100.0% (72 of 72 strings)

Translated using Weblate (French)

Currently translated at 100.0% (40 of 40 strings)

Translated using Weblate (French)

Currently translated at 100.0% (55 of 55 strings)

Translated using Weblate (French)

Currently translated at 100.0% (2 of 2 strings)

Translated using Weblate (French)

Currently translated at 100.0% (639 of 639 strings)

Translated using Weblate (French)

Currently translated at 100.0% (130 of 130 strings)

Translated using Weblate (French)

Currently translated at 100.0% (130 of 130 strings)

Translated using Weblate (French)

Currently translated at 100.0% (119 of 119 strings)

Translated using Weblate (French)

Currently translated at 100.0% (40 of 40 strings)

Translated using Weblate (French)

Currently translated at 100.0% (55 of 55 strings)

Translated using Weblate (French)

Currently translated at 100.0% (128 of 128 strings)

Co-authored-by: Apocoloquintose <bertrand.moreux@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/common/fr/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/components-dialog/fr/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/components-filter/fr/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/components-input/fr/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-classificationmodel/fr/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-events/fr/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-explore/fr/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-facelibrary/fr/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-settings/fr/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-system/fr/
Translation: Frigate NVR/common
Translation: Frigate NVR/components-dialog
Translation: Frigate NVR/components-filter
Translation: Frigate NVR/components-input
Translation: Frigate NVR/views-classificationmodel
Translation: Frigate NVR/views-events
Translation: Frigate NVR/views-explore
Translation: Frigate NVR/views-facelibrary
Translation: Frigate NVR/views-settings
Translation: Frigate NVR/views-system
2025-12-13 08:02:05 -07:00
Hosted Weblate
6286010014 Translated using Weblate (Spanish)
Currently translated at 90.2% (83 of 92 strings)

Co-authored-by: Hernán Rossetto <hmronline@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-live/es/
Translation: Frigate NVR/views-live
2025-12-13 08:02:05 -07:00
Hosted Weblate
1a0111a683 Translated using Weblate (Dutch)
Currently translated at 100.0% (41 of 41 strings)

Translated using Weblate (Dutch)

Currently translated at 100.0% (53 of 53 strings)

Translated using Weblate (Dutch)

Currently translated at 100.0% (652 of 652 strings)

Translated using Weblate (Dutch)

Currently translated at 100.0% (120 of 120 strings)

Translated using Weblate (Dutch)

Currently translated at 100.0% (639 of 639 strings)

Translated using Weblate (Dutch)

Currently translated at 100.0% (119 of 119 strings)

Translated using Weblate (Dutch)

Currently translated at 100.0% (130 of 130 strings)

Translated using Weblate (Dutch)

Currently translated at 100.0% (639 of 639 strings)

Translated using Weblate (Dutch)

Currently translated at 100.0% (119 of 119 strings)

Translated using Weblate (Dutch)

Currently translated at 100.0% (130 of 130 strings)

Translated using Weblate (Dutch)

Currently translated at 100.0% (40 of 40 strings)

Translated using Weblate (Dutch)

Currently translated at 100.0% (119 of 119 strings)

Translated using Weblate (Dutch)

Currently translated at 100.0% (55 of 55 strings)

Translated using Weblate (Dutch)

Currently translated at 100.0% (128 of 128 strings)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Marijn <168113859+Marijn0@users.noreply.github.com>
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/components-dialog/nl/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-classificationmodel/nl/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-events/nl/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-explore/nl/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-facelibrary/nl/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-settings/nl/
Translation: Frigate NVR/components-dialog
Translation: Frigate NVR/views-classificationmodel
Translation: Frigate NVR/views-events
Translation: Frigate NVR/views-explore
Translation: Frigate NVR/views-facelibrary
Translation: Frigate NVR/views-settings
2025-12-13 08:02:05 -07:00
Hosted Weblate
5716674703 Translated using Weblate (Italian)
Currently translated at 100.0% (128 of 128 strings)

Translated using Weblate (Italian)

Currently translated at 100.0% (40 of 40 strings)

Translated using Weblate (Italian)

Currently translated at 100.0% (119 of 119 strings)

Translated using Weblate (Italian)

Currently translated at 100.0% (55 of 55 strings)

Co-authored-by: Gringo <ita.translations@tiscali.it>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/components-dialog/it/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-classificationmodel/it/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-events/it/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-explore/it/
Translation: Frigate NVR/components-dialog
Translation: Frigate NVR/views-classificationmodel
Translation: Frigate NVR/views-events
Translation: Frigate NVR/views-explore
2025-12-13 08:02:05 -07:00
Hosted Weblate
dd22c8e2a3 Translated using Weblate (Polish)
Currently translated at 55.8% (67 of 120 strings)

Translated using Weblate (Polish)

Currently translated at 100.0% (52 of 52 strings)

Translated using Weblate (Polish)

Currently translated at 84.6% (110 of 130 strings)

Translated using Weblate (Polish)

Currently translated at 95.0% (38 of 40 strings)

Translated using Weblate (Polish)

Currently translated at 83.0% (108 of 130 strings)

Translated using Weblate (Polish)

Currently translated at 38.6% (46 of 119 strings)

Translated using Weblate (Polish)

Currently translated at 98.1% (54 of 55 strings)

Translated using Weblate (Polish)

Currently translated at 89.2% (570 of 639 strings)

Translated using Weblate (Polish)

Currently translated at 92.9% (119 of 128 strings)

Translated using Weblate (Polish)

Currently translated at 98.1% (210 of 214 strings)

Translated using Weblate (Polish)

Currently translated at 85.4% (546 of 639 strings)

Translated using Weblate (Polish)

Currently translated at 95.0% (38 of 40 strings)

Translated using Weblate (Polish)

Currently translated at 83.5% (107 of 128 strings)

Translated using Weblate (Polish)

Currently translated at 98.0% (51 of 52 strings)

Translated using Weblate (Polish)

Currently translated at 100.0% (92 of 92 strings)

Translated using Weblate (Polish)

Currently translated at 37.8% (45 of 119 strings)

Co-authored-by: Artur <wy66m6xm@anonaddy.me>
Co-authored-by: Bartlomiej Puls <bartlomiej.puls@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Mateusz Kulis <kulis.matis@gmail.com>
Co-authored-by: Paweł Bauer <pawol87@gmail.com>
Co-authored-by: piesu <dogiiee@proton.me>
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/common/pl/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/components-dialog/pl/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-classificationmodel/pl/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-events/pl/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-explore/pl/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-facelibrary/pl/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-live/pl/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-settings/pl/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-system/pl/
Translation: Frigate NVR/common
Translation: Frigate NVR/components-dialog
Translation: Frigate NVR/views-classificationmodel
Translation: Frigate NVR/views-events
Translation: Frigate NVR/views-explore
Translation: Frigate NVR/views-facelibrary
Translation: Frigate NVR/views-live
Translation: Frigate NVR/views-settings
Translation: Frigate NVR/views-system
2025-12-13 08:02:05 -07:00
Hosted Weblate
61ca688b14 Translated using Weblate (Vietnamese)
Currently translated at 59.0% (385 of 652 strings)

Translated using Weblate (Vietnamese)

Currently translated at 100.0% (130 of 130 strings)

Translated using Weblate (Vietnamese)

Currently translated at 100.0% (92 of 92 strings)

Translated using Weblate (Vietnamese)

Currently translated at 100.0% (52 of 52 strings)

Translated using Weblate (Vietnamese)

Currently translated at 32.5% (39 of 120 strings)

Translated using Weblate (Vietnamese)

Currently translated at 100.0% (214 of 214 strings)

Translated using Weblate (Vietnamese)

Currently translated at 100.0% (40 of 40 strings)

Translated using Weblate (Vietnamese)

Currently translated at 100.0% (13 of 13 strings)

Translated using Weblate (Vietnamese)

Currently translated at 56.4% (368 of 652 strings)

Translated using Weblate (Vietnamese)

Currently translated at 100.0% (55 of 55 strings)

Translated using Weblate (Vietnamese)

Currently translated at 23.3% (28 of 120 strings)

Translated using Weblate (Vietnamese)

Currently translated at 72.3% (94 of 130 strings)

Translated using Weblate (Vietnamese)

Currently translated at 96.1% (50 of 52 strings)

Translated using Weblate (Vietnamese)

Currently translated at 100.0% (128 of 128 strings)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Hào Nguyễn Xuân <it.xuanhao@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/common/vi/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/components-dialog/vi/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-classificationmodel/vi/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-events/vi/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-explore/vi/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-exports/vi/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-facelibrary/vi/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-live/vi/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-settings/vi/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-system/vi/
Translation: Frigate NVR/common
Translation: Frigate NVR/components-dialog
Translation: Frigate NVR/views-classificationmodel
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-settings
Translation: Frigate NVR/views-system
2025-12-13 08:02:05 -07:00
Hosted Weblate
68f5eab839 Translated using Weblate (Czech)
Currently translated at 63.5% (406 of 639 strings)

Translated using Weblate (Czech)

Currently translated at 92.3% (48 of 52 strings)

Translated using Weblate (Czech)

Currently translated at 75.0% (30 of 40 strings)

Translated using Weblate (Czech)

Currently translated at 16.8% (20 of 119 strings)

Translated using Weblate (Czech)

Currently translated at 63.2% (404 of 639 strings)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Libor Vymětalík <vymetalik.libor@gmail.com>
Co-authored-by: Martin Brož <code@martin-broz.cz>
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-classificationmodel/cs/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-events/cs/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-facelibrary/cs/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-settings/cs/
Translation: Frigate NVR/views-classificationmodel
Translation: Frigate NVR/views-events
Translation: Frigate NVR/views-facelibrary
Translation: Frigate NVR/views-settings
2025-12-13 08:02:05 -07:00
Hosted Weblate
2e125dcab2 Translated using Weblate (Catalan)
Currently translated at 100.0% (654 of 654 strings)

Translated using Weblate (Catalan)

Currently translated at 100.0% (41 of 41 strings)

Translated using Weblate (Catalan)

Currently translated at 100.0% (53 of 53 strings)

Translated using Weblate (Catalan)

Currently translated at 100.0% (652 of 652 strings)

Translated using Weblate (Catalan)

Currently translated at 100.0% (120 of 120 strings)

Translated using Weblate (Catalan)

Currently translated at 100.0% (130 of 130 strings)

Translated using Weblate (Catalan)

Currently translated at 100.0% (119 of 119 strings)

Translated using Weblate (Catalan)

Currently translated at 100.0% (639 of 639 strings)

Translated using Weblate (Catalan)

Currently translated at 100.0% (119 of 119 strings)

Translated using Weblate (Catalan)

Currently translated at 100.0% (639 of 639 strings)

Translated using Weblate (Catalan)

Currently translated at 100.0% (130 of 130 strings)

Translated using Weblate (Catalan)

Currently translated at 100.0% (40 of 40 strings)

Translated using Weblate (Catalan)

Currently translated at 100.0% (119 of 119 strings)

Translated using Weblate (Catalan)

Currently translated at 100.0% (128 of 128 strings)

Translated using Weblate (Catalan)

Currently translated at 100.0% (55 of 55 strings)

Co-authored-by: Eduardo Pastor Fernández <123eduardoneko123@gmail.com>
Co-authored-by: Gerard Ricart Castells <gerard.ricart@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/components-dialog/ca/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-classificationmodel/ca/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-events/ca/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-explore/ca/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-facelibrary/ca/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-settings/ca/
Translation: Frigate NVR/components-dialog
Translation: Frigate NVR/views-classificationmodel
Translation: Frigate NVR/views-events
Translation: Frigate NVR/views-explore
Translation: Frigate NVR/views-facelibrary
Translation: Frigate NVR/views-settings
2025-12-13 08:02:05 -07:00
Hosted Weblate
83753fb2ce Translated using Weblate (Ukrainian)
Currently translated at 100.0% (654 of 654 strings)

Translated using Weblate (Ukrainian)

Currently translated at 100.0% (41 of 41 strings)

Translated using Weblate (Ukrainian)

Currently translated at 100.0% (53 of 53 strings)

Translated using Weblate (Ukrainian)

Currently translated at 100.0% (652 of 652 strings)

Translated using Weblate (Ukrainian)

Currently translated at 100.0% (120 of 120 strings)

Translated using Weblate (Ukrainian)

Currently translated at 100.0% (130 of 130 strings)

Translated using Weblate (Ukrainian)

Currently translated at 100.0% (639 of 639 strings)

Translated using Weblate (Ukrainian)

Currently translated at 100.0% (639 of 639 strings)

Translated using Weblate (Ukrainian)

Currently translated at 100.0% (119 of 119 strings)

Translated using Weblate (Ukrainian)

Currently translated at 100.0% (130 of 130 strings)

Translated using Weblate (Ukrainian)

Currently translated at 100.0% (40 of 40 strings)

Translated using Weblate (Ukrainian)

Currently translated at 100.0% (119 of 119 strings)

Translated using Weblate (Ukrainian)

Currently translated at 100.0% (55 of 55 strings)

Translated using Weblate (Ukrainian)

Currently translated at 100.0% (128 of 128 strings)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Максим Горпиніч <gorpinicmaksim0@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/components-dialog/uk/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-classificationmodel/uk/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-events/uk/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-explore/uk/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-facelibrary/uk/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-settings/uk/
Translation: Frigate NVR/components-dialog
Translation: Frigate NVR/views-classificationmodel
Translation: Frigate NVR/views-events
Translation: Frigate NVR/views-explore
Translation: Frigate NVR/views-facelibrary
Translation: Frigate NVR/views-settings
2025-12-13 08:02:05 -07:00
Hosted Weblate
95368d39d1 Translated using Weblate (Bulgarian)
Currently translated at 100.0% (2 of 2 strings)

Translated using Weblate (Bulgarian)

Currently translated at 9.0% (5 of 55 strings)

Translated using Weblate (Bulgarian)

Currently translated at 0.7% (5 of 639 strings)

Translated using Weblate (Bulgarian)

Currently translated at 15.3% (2 of 13 strings)

Translated using Weblate (Bulgarian)

Currently translated at 31.5% (29 of 92 strings)

Translated using Weblate (Bulgarian)

Currently translated at 2.3% (3 of 128 strings)

Translated using Weblate (Bulgarian)

Currently translated at 20.0% (2 of 10 strings)

Translated using Weblate (Bulgarian)

Currently translated at 9.6% (5 of 52 strings)

Translated using Weblate (Bulgarian)

Currently translated at 22.5% (9 of 40 strings)

Translated using Weblate (Bulgarian)

Currently translated at 20.0% (2 of 10 strings)

Translated using Weblate (Bulgarian)

Currently translated at 6.2% (3 of 48 strings)

Translated using Weblate (Bulgarian)

Currently translated at 0.8% (1 of 119 strings)

Translated using Weblate (Bulgarian)

Currently translated at 100.0% (2 of 2 strings)

Translated using Weblate (Bulgarian)

Currently translated at 2.3% (3 of 128 strings)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Skye Fox <mardymcfly1985@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/components-auth/bg/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/components-dialog/bg/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/components-icons/bg/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/components-input/bg/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-classificationmodel/bg/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-configeditor/bg/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-events/bg/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-explore/bg/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-exports/bg/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-facelibrary/bg/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-live/bg/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-search/bg/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-settings/bg/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-system/bg/
Translation: Frigate NVR/components-auth
Translation: Frigate NVR/components-dialog
Translation: Frigate NVR/components-icons
Translation: Frigate NVR/components-input
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-search
Translation: Frigate NVR/views-settings
Translation: Frigate NVR/views-system
2025-12-13 08:02:05 -07:00
Hosted Weblate
8cb1fafed3 Translated using Weblate (Romanian)
Currently translated at 100.0% (41 of 41 strings)

Translated using Weblate (Romanian)

Currently translated at 100.0% (53 of 53 strings)

Translated using Weblate (Romanian)

Currently translated at 100.0% (120 of 120 strings)

Translated using Weblate (Romanian)

Currently translated at 100.0% (120 of 120 strings)

Translated using Weblate (Romanian)

Currently translated at 100.0% (130 of 130 strings)

Translated using Weblate (Romanian)

Currently translated at 100.0% (652 of 652 strings)

Translated using Weblate (Romanian)

Currently translated at 100.0% (119 of 119 strings)

Translated using Weblate (Romanian)

Currently translated at 100.0% (639 of 639 strings)

Translated using Weblate (Romanian)

Currently translated at 100.0% (130 of 130 strings)

Translated using Weblate (Romanian)

Currently translated at 100.0% (40 of 40 strings)

Translated using Weblate (Romanian)

Currently translated at 100.0% (119 of 119 strings)

Translated using Weblate (Romanian)

Currently translated at 100.0% (55 of 55 strings)

Translated using Weblate (Romanian)

Currently translated at 100.0% (128 of 128 strings)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: lukasig <lukasig@hotmail.com>
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/components-dialog/ro/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-classificationmodel/ro/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-events/ro/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-explore/ro/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-facelibrary/ro/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-settings/ro/
Translation: Frigate NVR/components-dialog
Translation: Frigate NVR/views-classificationmodel
Translation: Frigate NVR/views-events
Translation: Frigate NVR/views-explore
Translation: Frigate NVR/views-facelibrary
Translation: Frigate NVR/views-settings
2025-12-13 08:02:05 -07:00
Hosted Weblate
b75c85114e Translated using Weblate (Russian)
Currently translated at 92.9% (608 of 654 strings)

Co-authored-by: Artem Vladimirov <artyomka71@mail.ru>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-settings/ru/
Translation: Frigate NVR/views-settings
2025-12-13 08:02:05 -07:00
Hosted Weblate
e1a1baa98d Translated using Weblate (Estonian)
Currently translated at 63.0% (29 of 46 strings)

Translated using Weblate (Estonian)

Currently translated at 41.3% (19 of 46 strings)

Translated using Weblate (Estonian)

Currently translated at 42.3% (50 of 118 strings)

Translated using Weblate (Estonian)

Currently translated at 1.8% (1 of 53 strings)

Translated using Weblate (Estonian)

Currently translated at 5.1% (26 of 501 strings)

Translated using Weblate (Estonian)

Currently translated at 4.1% (2 of 48 strings)

Translated using Weblate (Estonian)

Currently translated at 9.5% (62 of 652 strings)

Translated using Weblate (Estonian)

Currently translated at 39.2% (84 of 214 strings)

Translated using Weblate (Estonian)

Currently translated at 0.7% (1 of 128 strings)

Translated using Weblate (Estonian)

Currently translated at 51.2% (21 of 41 strings)

Translated using Weblate (Estonian)

Currently translated at 100.0% (13 of 13 strings)

Translated using Weblate (Estonian)

Currently translated at 100.0% (10 of 10 strings)

Translated using Weblate (Estonian)

Currently translated at 36.4% (43 of 118 strings)

Translated using Weblate (Estonian)

Currently translated at 2.8% (6 of 214 strings)

Translated using Weblate (Estonian)

Currently translated at 9.0% (59 of 652 strings)

Translated using Weblate (Estonian)

Currently translated at 4.6% (6 of 130 strings)

Translated using Weblate (Estonian)

Currently translated at 7.5% (3 of 40 strings)

Translated using Weblate (Estonian)

Currently translated at 8.6% (8 of 92 strings)

Translated using Weblate (Estonian)

Currently translated at 29.1% (21 of 72 strings)

Translated using Weblate (Estonian)

Currently translated at 8.6% (4 of 46 strings)

Translated using Weblate (Estonian)

Currently translated at 4.9% (25 of 501 strings)

Translated using Weblate (Estonian)

Currently translated at 2.0% (1 of 48 strings)

Translated using Weblate (Estonian)

Currently translated at 35.5% (42 of 118 strings)

Translated using Weblate (Estonian)

Currently translated at 2.3% (12 of 501 strings)

Translated using Weblate (Estonian)

Currently translated at 0.8% (1 of 120 strings)

Translated using Weblate (Estonian)

Currently translated at 29.6% (35 of 118 strings)

Translated using Weblate (Estonian)

Currently translated at 2.1% (11 of 501 strings)

Translated using Weblate (Estonian)

Currently translated at 1.4% (3 of 214 strings)

Translated using Weblate (Estonian)

Currently translated at 4.3% (28 of 639 strings)

Translated using Weblate (Estonian)

Currently translated at 100.0% (2 of 2 strings)

Translated using Weblate (Estonian)

Currently translated at 7.6% (1 of 13 strings)

Translated using Weblate (Estonian)

Currently translated at 2.1% (1 of 46 strings)

Translated using Weblate (Estonian)

Currently translated at 2.5% (1 of 40 strings)

Translated using Weblate (Estonian)

Currently translated at 1.3% (1 of 72 strings)

Translated using Weblate (Estonian)

Currently translated at 3.6% (2 of 55 strings)

Translated using Weblate (Estonian)

Currently translated at 20.0% (2 of 10 strings)

Translated using Weblate (Estonian)

Currently translated at 100.0% (6 of 6 strings)

Translated using Weblate (Estonian)

Currently translated at 100.0% (2 of 2 strings)

Translated using Weblate (Estonian)

Currently translated at 4.0% (1 of 25 strings)

Added translation using Weblate (Estonian)

Added translation using Weblate (Estonian)

Added translation using Weblate (Estonian)

Added translation using Weblate (Estonian)

Added translation using Weblate (Estonian)

Added translation using Weblate (Estonian)

Added translation using Weblate (Estonian)

Added translation using Weblate (Estonian)

Added translation using Weblate (Estonian)

Added translation using Weblate (Estonian)

Added translation using Weblate (Estonian)

Added translation using Weblate (Estonian)

Added translation using Weblate (Estonian)

Added translation using Weblate (Estonian)

Added translation using Weblate (Estonian)

Added translation using Weblate (Estonian)

Added translation using Weblate (Estonian)

Added translation using Weblate (Estonian)

Added translation using Weblate (Estonian)

Added translation using Weblate (Estonian)

Added translation using Weblate (Estonian)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Priit Jõerüüt <jrthwlate@users.noreply.hosted.weblate.org>
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/audio/et/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/common/et/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/components-auth/et/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/components-camera/et/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/components-dialog/et/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/components-filter/et/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/components-icons/et/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/components-input/et/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/components-player/et/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/objects/et/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-classificationmodel/et/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-events/et/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-explore/et/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-exports/et/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-facelibrary/et/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-live/et/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-recording/et/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-search/et/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-settings/et/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-system/et/
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-input
Translation: Frigate NVR/components-player
Translation: Frigate NVR/objects
Translation: Frigate NVR/views-classificationmodel
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-recording
Translation: Frigate NVR/views-search
Translation: Frigate NVR/views-settings
Translation: Frigate NVR/views-system
2025-12-13 08:02:05 -07:00
Hosted Weblate
4098db2441 Translated using Weblate (Danish)
Currently translated at 85.5% (183 of 214 strings)

Translated using Weblate (Danish)

Currently translated at 36.1% (26 of 72 strings)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: kklar <karred.larsen@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/common/da/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/components-filter/da/
Translation: Frigate NVR/common
Translation: Frigate NVR/components-filter
2025-12-13 08:02:05 -07:00
Hosted Weblate
71f4417314 Translated using Weblate (German)
Currently translated at 100.0% (120 of 120 strings)

Translated using Weblate (German)

Currently translated at 100.0% (53 of 53 strings)

Translated using Weblate (German)

Currently translated at 100.0% (41 of 41 strings)

Translated using Weblate (German)

Currently translated at 100.0% (652 of 652 strings)

Translated using Weblate (German)

Currently translated at 100.0% (120 of 120 strings)

Translated using Weblate (German)

Currently translated at 100.0% (639 of 639 strings)

Translated using Weblate (German)

Currently translated at 100.0% (130 of 130 strings)

Translated using Weblate (German)

Currently translated at 100.0% (52 of 52 strings)

Translated using Weblate (German)

Currently translated at 100.0% (130 of 130 strings)

Translated using Weblate (German)

Currently translated at 100.0% (119 of 119 strings)

Translated using Weblate (German)

Currently translated at 100.0% (639 of 639 strings)

Translated using Weblate (German)

Currently translated at 100.0% (501 of 501 strings)

Translated using Weblate (German)

Currently translated at 100.0% (52 of 52 strings)

Translated using Weblate (German)

Currently translated at 99.8% (638 of 639 strings)

Translated using Weblate (German)

Currently translated at 99.8% (638 of 639 strings)

Translated using Weblate (German)

Currently translated at 100.0% (119 of 119 strings)

Translated using Weblate (German)

Currently translated at 100.0% (119 of 119 strings)

Translated using Weblate (German)

Currently translated at 100.0% (10 of 10 strings)

Translated using Weblate (German)

Currently translated at 100.0% (119 of 119 strings)

Translated using Weblate (German)

Currently translated at 100.0% (639 of 639 strings)

Translated using Weblate (German)

Currently translated at 100.0% (119 of 119 strings)

Translated using Weblate (German)

Currently translated at 100.0% (214 of 214 strings)

Translated using Weblate (German)

Currently translated at 100.0% (40 of 40 strings)

Translated using Weblate (German)

Currently translated at 100.0% (92 of 92 strings)

Translated using Weblate (German)

Currently translated at 100.0% (501 of 501 strings)

Translated using Weblate (German)

Currently translated at 100.0% (128 of 128 strings)

Translated using Weblate (German)

Currently translated at 100.0% (128 of 128 strings)

Translated using Weblate (German)

Currently translated at 99.5% (213 of 214 strings)

Translated using Weblate (German)

Currently translated at 99.5% (213 of 214 strings)

Translated using Weblate (German)

Currently translated at 83.5% (534 of 639 strings)

Translated using Weblate (German)

Currently translated at 93.8% (470 of 501 strings)

Translated using Weblate (German)

Currently translated at 98.9% (91 of 92 strings)

Translated using Weblate (German)

Currently translated at 100.0% (52 of 52 strings)

Translated using Weblate (German)

Currently translated at 100.0% (39 of 39 strings)

Translated using Weblate (German)

Currently translated at 100.0% (128 of 128 strings)

Translated using Weblate (German)

Currently translated at 100.0% (128 of 128 strings)

Translated using Weblate (German)

Currently translated at 100.0% (116 of 116 strings)

Translated using Weblate (German)

Currently translated at 100.0% (116 of 116 strings)

Translated using Weblate (German)

Currently translated at 34.4% (40 of 116 strings)

Translated using Weblate (German)

Currently translated at 94.8% (37 of 39 strings)

Translated using Weblate (German)

Currently translated at 100.0% (55 of 55 strings)

Translated using Weblate (German)

Currently translated at 78.0% (499 of 639 strings)

Translated using Weblate (German)

Currently translated at 98.4% (126 of 128 strings)

Translated using Weblate (German)

Currently translated at 29.3% (34 of 116 strings)

Translated using Weblate (German)

Currently translated at 96.0% (123 of 128 strings)

Translated using Weblate (German)

Currently translated at 78.0% (499 of 639 strings)

Co-authored-by: Emircanos <emircan368@gmail.com>
Co-authored-by: Fuxle <moritz.hofmann2005@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Sebastian Sie <sebastian.neuplanitz@googlemail.com>
Co-authored-by: bgriese0 <kontakt@bjoern-griese.de>
Co-authored-by: jmtatsch <julian@tatsch.it>
Co-authored-by: mvdberge <micha.vordemberge@christmann.info>
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/audio/de/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/common/de/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/components-auth/de/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/components-dialog/de/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-classificationmodel/de/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-events/de/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-explore/de/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-facelibrary/de/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-live/de/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-settings/de/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-system/de/
Translation: Frigate NVR/audio
Translation: Frigate NVR/common
Translation: Frigate NVR/components-auth
Translation: Frigate NVR/components-dialog
Translation: Frigate NVR/views-classificationmodel
Translation: Frigate NVR/views-events
Translation: Frigate NVR/views-explore
Translation: Frigate NVR/views-facelibrary
Translation: Frigate NVR/views-live
Translation: Frigate NVR/views-settings
Translation: Frigate NVR/views-system
2025-12-13 08:02:05 -07:00
Hosted Weblate
4002feb9f8 Translated using Weblate (Portuguese (Brazil))
Currently translated at 29.3% (34 of 116 strings)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Jose Machado <machado.jm4@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-classificationmodel/pt_BR/
Translation: Frigate NVR/views-classificationmodel
2025-12-13 08:02:05 -07:00
Hosted Weblate
7a399c842d Translated using Weblate (Turkish)
Currently translated at 100.0% (41 of 41 strings)

Translated using Weblate (Turkish)

Currently translated at 100.0% (53 of 53 strings)

Translated using Weblate (Turkish)

Currently translated at 100.0% (652 of 652 strings)

Translated using Weblate (Turkish)

Currently translated at 100.0% (130 of 130 strings)

Translated using Weblate (Turkish)

Currently translated at 100.0% (639 of 639 strings)

Translated using Weblate (Turkish)

Currently translated at 100.0% (501 of 501 strings)

Translated using Weblate (Turkish)

Currently translated at 100.0% (120 of 120 strings)

Translated using Weblate (Turkish)

Currently translated at 100.0% (214 of 214 strings)

Translated using Weblate (Turkish)

Currently translated at 100.0% (92 of 92 strings)

Translated using Weblate (Turkish)

Currently translated at 100.0% (128 of 128 strings)

Translated using Weblate (Turkish)

Currently translated at 100.0% (52 of 52 strings)

Translated using Weblate (Turkish)

Currently translated at 100.0% (130 of 130 strings)

Translated using Weblate (Turkish)

Currently translated at 100.0% (40 of 40 strings)

Translated using Weblate (Turkish)

Currently translated at 100.0% (119 of 119 strings)

Translated using Weblate (Turkish)

Currently translated at 64.6% (413 of 639 strings)

Translated using Weblate (Turkish)

Currently translated at 98.5% (211 of 214 strings)

Translated using Weblate (Turkish)

Currently translated at 66.3% (77 of 116 strings)

Translated using Weblate (Turkish)

Currently translated at 63.7% (74 of 116 strings)

Translated using Weblate (Turkish)

Currently translated at 97.6% (209 of 214 strings)

Translated using Weblate (Turkish)

Currently translated at 100.0% (55 of 55 strings)

Translated using Weblate (Turkish)

Currently translated at 94.5% (121 of 128 strings)

Translated using Weblate (Turkish)

Currently translated at 93.7% (120 of 128 strings)

Translated using Weblate (Turkish)

Currently translated at 94.5% (87 of 92 strings)

Translated using Weblate (Turkish)

Currently translated at 100.0% (39 of 39 strings)

Translated using Weblate (Turkish)

Currently translated at 58.9% (377 of 639 strings)

Translated using Weblate (Turkish)

Currently translated at 100.0% (52 of 52 strings)

Co-authored-by: Emircanos <emircan368@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
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-dialog/tr/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-classificationmodel/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-facelibrary/tr/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-live/tr/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-settings/tr/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-system/tr/
Translation: Frigate NVR/audio
Translation: Frigate NVR/common
Translation: Frigate NVR/components-dialog
Translation: Frigate NVR/views-classificationmodel
Translation: Frigate NVR/views-events
Translation: Frigate NVR/views-explore
Translation: Frigate NVR/views-facelibrary
Translation: Frigate NVR/views-live
Translation: Frigate NVR/views-settings
Translation: Frigate NVR/views-system
2025-12-13 08:02:05 -07:00
Josh Hawkins
bc5d6cf1c2
docs tweaks (#21261) 2025-12-13 07:59:49 -07:00
Martin Weinelt
dde02cadb2
Update peewee-migrate to 0.14.x (#21243)
Replaces two functions calls, that were deprecated and aliases for the
new function name:

- Migrator.python -> Migration.run
- Migrator.change_column -> Migrator.change_field
2025-12-13 07:13:04 -07:00
Nicolas Mowen
8ddcbf9a8d
Improve handling of backchannel audio in camera wizard (#21250)
* Improve handling of backchannel audio in camera wizard

* Cleanup

* look for backchannel on all registered streams on save

avoids potential issues with a timeout in stream registration

---------

Co-authored-by: Josh Hawkins <32435876+hawkeye217@users.noreply.github.com>
2025-12-13 07:12:37 -07:00
wozz
6b9b3778f5
fix: attribute error in embedding maintainer ini… (#21252)
* fix: Resolve deadlock and attribute error in embedding maintainer initialization

Updates the trigger embedding calculation to call embedding methods directly instead of using ZMQ. This prevents a deadlock during initialization where the ZMQ responder is not yet polling for requests.

Also updates sync_triggers to pass the camera name and trigger name to the calculation method, fixing an AttributeError where trigger.name was accessed on a TriggerConfig object.

* mocked repro

* Revert "mocked repro"

This reverts commit dea5b5d4db.

* fix formatting

* Update embeddings.py

new line
2025-12-13 07:12:09 -07:00
222 changed files with 4059 additions and 773 deletions

View File

@ -21,7 +21,7 @@ onvif-zeep-async == 4.0.*
paho-mqtt == 2.1.*
pandas == 2.2.*
peewee == 3.17.*
peewee_migrate == 1.13.*
peewee_migrate == 1.14.*
psutil == 7.1.*
pydantic == 2.10.*
git+https://github.com/fbcotter/py3nvml#egg=py3nvml

View File

@ -107,7 +107,7 @@ Fine-tune the LPR feature using these optional parameters at the global level of
### Normalization Rules
- **`replace_rules`**: List of regex replacement rules to normalize detected plates. These rules are applied sequentially and are applied _before_ the `format` regex, if specified. Each rule must have a `pattern` (which can be a string or a regex, prepended by `r`) and `replacement` (a string, which also supports [backrefs](https://docs.python.org/3/library/re.html#re.sub) like `\1`). These rules are useful for dealing with common OCR issues like noise characters, separators, or confusions (e.g., 'O'→'0').
- **`replace_rules`**: List of regex replacement rules to normalize detected plates. These rules are applied sequentially and are applied _before_ the `format` regex, if specified. Each rule must have a `pattern` (which can be a string or a regex) and `replacement` (a string, which also supports [backrefs](https://docs.python.org/3/library/re.html#re.sub) like `\1`). These rules are useful for dealing with common OCR issues like noise characters, separators, or confusions (e.g., 'O'→'0').
These rules must be defined at the global level of your `lpr` config.

View File

@ -155,8 +155,6 @@ detectors:
A TensorFlow Lite model is provided in the container at `/edgetpu_model.tflite` and is used by this detector type by default. To provide your own model, bind mount the file into the container and provide the path with `model.path`.
A Tensorflow Lite is provided in the container at `/openvino-model/ssdlite_mobilenet_v2.xml` and is used by this detector type by default. The model comes from Intel's Open Model Zoo [SSDLite MobileNet V2](https://github.com/openvinotoolkit/open_model_zoo/tree/master/models/public/ssdlite_mobilenet_v2) and is converted to an INT8 precision model.
#### YOLO v9
[YOLOv9](https://github.com/dbro/frigate-detector-edgetpu-yolo9/releases/download/v1.0/yolov9-s-relu6-best_320_int8_edgetpu.tflite) models that are compiled for Tensorflow Lite and properly quantized are supported, but not included by default. To provide your own model, bind mount the file into the container and provide the path with `model.path`. Note that the model may require a custom label file (eg. [use this 17 label file](https://raw.githubusercontent.com/dbro/frigate-detector-edgetpu-yolo9/refs/heads/main/labels-coco17.txt) for the model linked above.)

View File

@ -12,9 +12,6 @@ from peewee import DoesNotExist, IntegrityError
from PIL import Image
from playhouse.shortcuts import model_to_dict
from frigate.comms.embeddings_updater import (
EmbeddingsRequestEnum,
)
from frigate.comms.inter_process import InterProcessRequestor
from frigate.config import FrigateConfig
from frigate.config.classification import SemanticSearchModelEnum
@ -495,44 +492,49 @@ class Embeddings:
or thumbnail_missing
):
existing_trigger.embedding = self._calculate_trigger_embedding(
trigger
trigger, trigger_name, camera.name
)
needs_embedding_update = True
if needs_embedding_update:
existing_trigger.save()
continue
else:
# Create new trigger
try:
try:
event: Event = Event.get(Event.id == trigger.data)
except DoesNotExist:
logger.warning(
f"Event ID {trigger.data} for trigger {trigger_name} does not exist."
# For thumbnail triggers, validate the event exists
if trigger.type == "thumbnail":
try:
event: Event = Event.get(Event.id == trigger.data)
except DoesNotExist:
logger.warning(
f"Event ID {trigger.data} for trigger {trigger_name} does not exist."
)
continue
# Skip the event if not an object
if event.data.get("type") != "object":
logger.warning(
f"Event ID {trigger.data} for trigger {trigger_name} is not a tracked object."
)
continue
thumbnail = get_event_thumbnail_bytes(event)
if not thumbnail:
logger.warning(
f"Unable to retrieve thumbnail for event ID {trigger.data} for {trigger_name}."
)
continue
self.write_trigger_thumbnail(
camera.name, trigger.data, thumbnail
)
continue
# Skip the event if not an object
if event.data.get("type") != "object":
logger.warning(
f"Event ID {trigger.data} for trigger {trigger_name} is not a tracked object."
)
continue
thumbnail = get_event_thumbnail_bytes(event)
if not thumbnail:
logger.warning(
f"Unable to retrieve thumbnail for event ID {trigger.data} for {trigger_name}."
)
continue
self.write_trigger_thumbnail(
camera.name, trigger.data, thumbnail
)
# Calculate embedding for new trigger
embedding = self._calculate_trigger_embedding(trigger)
embedding = self._calculate_trigger_embedding(
trigger, trigger_name, camera.name
)
Trigger.create(
camera=camera.name,
@ -558,7 +560,11 @@ class Embeddings:
Trigger.camera == camera.name, Trigger.name.in_(triggers_to_remove)
).execute()
for trigger_name in triggers_to_remove:
self.remove_trigger_thumbnail(camera.name, trigger_name)
# Only remove thumbnail files for thumbnail triggers
if existing_triggers[trigger_name].type == "thumbnail":
self.remove_trigger_thumbnail(
camera.name, existing_triggers[trigger_name].data
)
def write_trigger_thumbnail(
self, camera: str, event_id: str, thumbnail: bytes
@ -588,14 +594,13 @@ class Embeddings:
f"Failed to delete thumbnail for trigger with data {event_id} in {camera}: {e}"
)
def _calculate_trigger_embedding(self, trigger) -> bytes:
def _calculate_trigger_embedding(
self, trigger, trigger_name: str, camera_name: str
) -> bytes:
"""Calculate embedding for a trigger based on its type and data."""
if trigger.type == "description":
logger.debug(f"Generating embedding for trigger description {trigger.name}")
embedding = self.requestor.send_data(
EmbeddingsRequestEnum.embed_description.value,
{"id": None, "description": trigger.data, "upsert": False},
)
logger.debug(f"Generating embedding for trigger description {trigger_name}")
embedding = self.embed_description(None, trigger.data, upsert=False)
return embedding.astype(np.float32).tobytes()
elif trigger.type == "thumbnail":
@ -615,28 +620,21 @@ class Embeddings:
try:
with open(
os.path.join(
TRIGGER_DIR, trigger.camera, f"{trigger.data}.webp"
),
os.path.join(TRIGGER_DIR, camera_name, f"{trigger.data}.webp"),
"rb",
) as f:
thumbnail = f.read()
except Exception as e:
logger.error(
f"Failed to read thumbnail for trigger {trigger.name} with ID {trigger.data}: {e}"
f"Failed to read thumbnail for trigger {trigger_name} with ID {trigger.data}: {e}"
)
return b""
logger.debug(
f"Generating embedding for trigger thumbnail {trigger.name} with ID {trigger.data}"
f"Generating embedding for trigger thumbnail {trigger_name} with ID {trigger.data}"
)
embedding = self.requestor.send_data(
EmbeddingsRequestEnum.embed_thumbnail.value,
{
"id": str(trigger.data),
"thumbnail": str(thumbnail),
"upsert": False,
},
embedding = self.embed_thumbnail(
str(trigger.data), thumbnail, upsert=False
)
return embedding.astype(np.float32).tobytes()

View File

@ -5,7 +5,7 @@ Some examples (model - class or model name)::
> Model = migrator.orm['model_name'] # Return model in current state by name
> migrator.sql(sql) # Run custom SQL
> migrator.python(func, *args, **kwargs) # Run python code
> migrator.run(func, *args, **kwargs) # Run python code
> migrator.create_model(Model) # Create a model (could be used as decorator)
> migrator.remove_model(model, cascade=True) # Remove a model
> migrator.add_fields(model, **fields) # Add fields to a model

View File

@ -5,7 +5,7 @@ Some examples (model - class or model name)::
> Model = migrator.orm['model_name'] # Return model in current state by name
> migrator.sql(sql) # Run custom SQL
> migrator.python(func, *args, **kwargs) # Run python code
> migrator.run(func, *args, **kwargs) # Run python code
> migrator.create_model(Model) # Create a model (could be used as decorator)
> migrator.remove_model(model, cascade=True) # Remove a model
> migrator.add_fields(model, **fields) # Add fields to a model

View File

@ -5,7 +5,7 @@ Some examples (model - class or model name)::
> Model = migrator.orm['model_name'] # Return model in current state by name
> migrator.sql(sql) # Run custom SQL
> migrator.python(func, *args, **kwargs) # Run python code
> migrator.run(func, *args, **kwargs) # Run python code
> migrator.create_model(Model) # Create a model (could be used as decorator)
> migrator.remove_model(model, cascade=True) # Remove a model
> migrator.add_fields(model, **fields) # Add fields to a model

View File

@ -5,7 +5,7 @@ Some examples (model - class or model name)::
> Model = migrator.orm['model_name'] # Return model in current state by name
> migrator.sql(sql) # Run custom SQL
> migrator.python(func, *args, **kwargs) # Run python code
> migrator.run(func, *args, **kwargs) # Run python code
> migrator.create_model(Model) # Create a model (could be used as decorator)
> migrator.remove_model(model, cascade=True) # Remove a model
> migrator.add_fields(model, **fields) # Add fields to a model

View File

@ -5,7 +5,7 @@ Some examples (model - class or model name)::
> Model = migrator.orm['model_name'] # Return model in current state by name
> migrator.sql(sql) # Run custom SQL
> migrator.python(func, *args, **kwargs) # Run python code
> migrator.run(func, *args, **kwargs) # Run python code
> migrator.create_model(Model) # Create a model (could be used as decorator)
> migrator.remove_model(model, cascade=True) # Remove a model
> migrator.add_fields(model, **fields) # Add fields to a model

View File

@ -5,7 +5,7 @@ Some examples (model - class or model name)::
> Model = migrator.orm['model_name'] # Return model in current state by name
> migrator.sql(sql) # Run custom SQL
> migrator.python(func, *args, **kwargs) # Run python code
> migrator.run(func, *args, **kwargs) # Run python code
> migrator.create_model(Model) # Create a model (could be used as decorator)
> migrator.remove_model(model, cascade=True) # Remove a model
> migrator.add_fields(model, **fields) # Add fields to a model

View File

@ -5,7 +5,7 @@ Some examples (model - class or model name)::
> Model = migrator.orm['model_name'] # Return model in current state by name
> migrator.sql(sql) # Run custom SQL
> migrator.python(func, *args, **kwargs) # Run python code
> migrator.run(func, *args, **kwargs) # Run python code
> migrator.create_model(Model) # Create a model (could be used as decorator)
> migrator.remove_model(model, cascade=True) # Remove a model
> migrator.add_fields(model, **fields) # Add fields to a model

View File

@ -5,7 +5,7 @@ Some examples (model - class or model name)::
> Model = migrator.orm['model_name'] # Return model in current state by name
> migrator.sql(sql) # Run custom SQL
> migrator.python(func, *args, **kwargs) # Run python code
> migrator.run(func, *args, **kwargs) # Run python code
> migrator.create_model(Model) # Create a model (could be used as decorator)
> migrator.remove_model(model, cascade=True) # Remove a model
> migrator.add_fields(model, **fields) # Add fields to a model

View File

@ -5,7 +5,7 @@ Some examples (model - class or model name)::
> Model = migrator.orm['model_name'] # Return model in current state by name
> migrator.sql(sql) # Run custom SQL
> migrator.python(func, *args, **kwargs) # Run python code
> migrator.run(func, *args, **kwargs) # Run python code
> migrator.create_model(Model) # Create a model (could be used as decorator)
> migrator.remove_model(model, cascade=True) # Remove a model
> migrator.add_fields(model, **fields) # Add fields to a model

View File

@ -5,7 +5,7 @@ Some examples (model - class or model name)::
> Model = migrator.orm['model_name'] # Return model in current state by name
> migrator.sql(sql) # Run custom SQL
> migrator.python(func, *args, **kwargs) # Run python code
> migrator.run(func, *args, **kwargs) # Run python code
> migrator.create_model(Model) # Create a model (could be used as decorator)
> migrator.remove_model(model, cascade=True) # Remove a model
> migrator.add_fields(model, **fields) # Add fields to a model

View File

@ -5,7 +5,7 @@ Some examples (model - class or model name)::
> Model = migrator.orm['model_name'] # Return model in current state by name
> migrator.sql(sql) # Run custom SQL
> migrator.python(func, *args, **kwargs) # Run python code
> migrator.run(func, *args, **kwargs) # Run python code
> migrator.create_model(Model) # Create a model (could be used as decorator)
> migrator.remove_model(model, cascade=True) # Remove a model
> migrator.add_fields(model, **fields) # Add fields to a model

View File

@ -5,7 +5,7 @@ Some examples (model - class or model name)::
> Model = migrator.orm['model_name'] # Return model in current state by name
> migrator.sql(sql) # Run custom SQL
> migrator.python(func, *args, **kwargs) # Run python code
> migrator.run(func, *args, **kwargs) # Run python code
> migrator.create_model(Model) # Create a model (could be used as decorator)
> migrator.remove_model(model, cascade=True) # Remove a model
> migrator.add_fields(model, **fields) # Add fields to a model

View File

@ -5,7 +5,7 @@ Some examples (model - class or model name)::
> Model = migrator.orm['model_name'] # Return model in current state by name
> migrator.sql(sql) # Run custom SQL
> migrator.python(func, *args, **kwargs) # Run python code
> migrator.run(func, *args, **kwargs) # Run python code
> migrator.create_model(Model) # Create a model (could be used as decorator)
> migrator.remove_model(model, cascade=True) # Remove a model
> migrator.add_fields(model, **fields) # Add fields to a model

View File

@ -5,7 +5,7 @@ Some examples (model - class or model name)::
> Model = migrator.orm['model_name'] # Return model in current state by name
> migrator.sql(sql) # Run custom SQL
> migrator.python(func, *args, **kwargs) # Run python code
> migrator.run(func, *args, **kwargs) # Run python code
> migrator.create_model(Model) # Create a model (could be used as decorator)
> migrator.remove_model(model, cascade=True) # Remove a model
> migrator.add_fields(model, **fields) # Add fields to a model

View File

@ -5,7 +5,7 @@ Some examples (model - class or model name)::
> Model = migrator.orm['model_name'] # Return model in current state by name
> migrator.sql(sql) # Run custom SQL
> migrator.python(func, *args, **kwargs) # Run python code
> migrator.run(func, *args, **kwargs) # Run python code
> migrator.create_model(Model) # Create a model (could be used as decorator)
> migrator.remove_model(model, cascade=True) # Remove a model
> migrator.add_fields(model, **fields) # Add fields to a model

View File

@ -4,8 +4,8 @@ from frigate.models import Event
def migrate(migrator, database, fake=False, **kwargs):
migrator.change_columns(Event, sub_label=pw.CharField(max_length=100, null=True))
migrator.change_fields(Event, sub_label=pw.CharField(max_length=100, null=True))
def rollback(migrator, database, fake=False, **kwargs):
migrator.change_columns(Event, sub_label=pw.CharField(max_length=20, null=True))
migrator.change_fields(Event, sub_label=pw.CharField(max_length=20, null=True))

View File

@ -5,7 +5,7 @@ Some examples (model - class or model name)::
> Model = migrator.orm['model_name'] # Return model in current state by name
> migrator.sql(sql) # Run custom SQL
> migrator.python(func, *args, **kwargs) # Run python code
> migrator.run(func, *args, **kwargs) # Run python code
> migrator.create_model(Model) # Create a model (could be used as decorator)
> migrator.remove_model(model, cascade=True) # Remove a model
> migrator.add_fields(model, **fields) # Add fields to a model

View File

@ -5,7 +5,7 @@ Some examples (model - class or model name)::
> Model = migrator.orm['model_name'] # Return model in current state by name
> migrator.sql(sql) # Run custom SQL
> migrator.python(func, *args, **kwargs) # Run python code
> migrator.run(func, *args, **kwargs) # Run python code
> migrator.create_model(Model) # Create a model (could be used as decorator)
> migrator.remove_model(model, cascade=True) # Remove a model
> migrator.add_fields(model, **fields) # Add fields to a model

View File

@ -5,7 +5,7 @@ Some examples (model - class or model name)::
> Model = migrator.orm['model_name'] # Return model in current state by name
> migrator.sql(sql) # Run custom SQL
> migrator.python(func, *args, **kwargs) # Run python code
> migrator.run(func, *args, **kwargs) # Run python code
> migrator.create_model(Model) # Create a model (could be used as decorator)
> migrator.remove_model(model, cascade=True) # Remove a model
> migrator.add_fields(model, **fields) # Add fields to a model

View File

@ -5,7 +5,7 @@ Some examples (model - class or model name)::
> Model = migrator.orm['model_name'] # Return model in current state by name
> migrator.sql(sql) # Run custom SQL
> migrator.python(func, *args, **kwargs) # Run python code
> migrator.run(func, *args, **kwargs) # Run python code
> migrator.create_model(Model) # Create a model (could be used as decorator)
> migrator.remove_model(model, cascade=True) # Remove a model
> migrator.add_fields(model, **fields) # Add fields to a model

View File

@ -5,7 +5,7 @@ Some examples (model - class or model name)::
> Model = migrator.orm['model_name'] # Return model in current state by name
> migrator.sql(sql) # Run custom SQL
> migrator.python(func, *args, **kwargs) # Run python code
> migrator.run(func, *args, **kwargs) # Run python code
> migrator.create_model(Model) # Create a model (could be used as decorator)
> migrator.remove_model(model, cascade=True) # Remove a model
> migrator.add_fields(model, **fields) # Add fields to a model

View File

@ -5,7 +5,7 @@ Some examples (model - class or model name)::
> Model = migrator.orm['model_name'] # Return model in current state by name
> migrator.sql(sql) # Run custom SQL
> migrator.python(func, *args, **kwargs) # Run python code
> migrator.run(func, *args, **kwargs) # Run python code
> migrator.create_model(Model) # Create a model (could be used as decorator)
> migrator.remove_model(model, cascade=True) # Remove a model
> migrator.add_fields(model, **fields) # Add fields to a model

View File

@ -5,7 +5,7 @@ Some examples (model - class or model name)::
> Model = migrator.orm['model_name'] # Return model in current state by name
> migrator.sql(sql) # Run custom SQL
> migrator.python(func, *args, **kwargs) # Run python code
> migrator.run(func, *args, **kwargs) # Run python code
> migrator.create_model(Model) # Create a model (could be used as decorator)
> migrator.remove_model(model, cascade=True) # Remove a model
> migrator.add_fields(model, **fields) # Add fields to a model

View File

@ -5,7 +5,7 @@ Some examples (model - class or model name)::
> Model = migrator.orm['model_name'] # Return model in current state by name
> migrator.sql(sql) # Run custom SQL
> migrator.python(func, *args, **kwargs) # Run python code
> migrator.run(func, *args, **kwargs) # Run python code
> migrator.create_model(Model) # Create a model (could be used as decorator)
> migrator.remove_model(model, cascade=True) # Remove a model
> migrator.add_fields(model, **fields) # Add fields to a model

View File

@ -5,7 +5,7 @@ Some examples (model - class or model name)::
> Model = migrator.orm['model_name'] # Return model in current state by name
> migrator.sql(sql) # Run custom SQL
> migrator.python(func, *args, **kwargs) # Run python code
> migrator.run(func, *args, **kwargs) # Run python code
> migrator.create_model(Model) # Create a model (could be used as decorator)
> migrator.remove_model(model, cascade=True) # Remove a model
> migrator.add_fields(model, **fields) # Add fields to a model

View File

@ -5,7 +5,7 @@ Some examples (model - class or model name)::
> Model = migrator.orm['model_name'] # Return model in current state by name
> migrator.sql(sql) # Run custom SQL
> migrator.python(func, *args, **kwargs) # Run python code
> migrator.run(func, *args, **kwargs) # Run python code
> migrator.create_model(Model) # Create a model (could be used as decorator)
> migrator.remove_model(model, cascade=True) # Remove a model
> migrator.add_fields(model, **fields) # Add fields to a model

View File

@ -5,7 +5,7 @@ Some examples (model - class or model name)::
> Model = migrator.orm['model_name'] # Return model in current state by name
> migrator.sql(sql) # Run custom SQL
> migrator.python(func, *args, **kwargs) # Run python code
> migrator.run(func, *args, **kwargs) # Run python code
> migrator.create_model(Model) # Create a model (could be used as decorator)
> migrator.remove_model(model, cascade=True) # Remove a model
> migrator.add_fields(model, **fields) # Add fields to a model

View File

@ -5,7 +5,7 @@ Some examples (model - class or model name)::
> Model = migrator.orm['model_name'] # Return model in current state by name
> migrator.sql(sql) # Run custom SQL
> migrator.python(func, *args, **kwargs) # Run python code
> migrator.run(func, *args, **kwargs) # Run python code
> migrator.create_model(Model) # Create a model (could be used as decorator)
> migrator.remove_model(model, cascade=True) # Remove a model
> migrator.add_fields(model, **fields) # Add fields to a model

View File

@ -5,7 +5,7 @@ Some examples (model - class or model name)::
> Model = migrator.orm['model_name'] # Return model in current state by name
> migrator.sql(sql) # Run custom SQL
> migrator.python(func, *args, **kwargs) # Run python code
> migrator.run(func, *args, **kwargs) # Run python code
> migrator.create_model(Model) # Create a model (could be used as decorator)
> migrator.remove_model(model, cascade=True) # Remove a model
> migrator.add_fields(model, **fields) # Add fields to a model

View File

@ -8,7 +8,7 @@ Some examples (model - class or model_name)::
> Model = migrator.orm['model_name'] # Return model in current state by name
> migrator.sql(sql) # Run custom SQL
> migrator.python(func, *args, **kwargs) # Run python code
> migrator.run(func, *args, **kwargs) # Run python code
> migrator.create_model(Model) # Create a model (could be used as decorator)
> migrator.remove_model(model, cascade=True) # Remove a model
> migrator.add_fields(model, **fields) # Add fields to a model
@ -76,7 +76,7 @@ def migrate(migrator, database, fake=False, **kwargs):
)
if not fake: # Only run data migration if not faking
migrator.python(migrate_data)
migrator.run(migrate_data)
migrator.sql('ALTER TABLE "reviewsegment" DROP COLUMN "has_been_reviewed"')

View File

@ -6,7 +6,7 @@ Some examples (model - class or model_name)::
> Model = migrator.orm['model_name'] # Return model in current state by name
> migrator.sql(sql) # Run custom SQL
> migrator.python(func, *args, **kwargs) # Run python code
> migrator.run(func, *args, **kwargs) # Run python code
> migrator.create_model(Model) # Create a model (could be used as decorator)
> migrator.remove_model(model, cascade=True) # Remove a model
> migrator.add_fields(model, **fields) # Add fields to a model

View File

@ -5,7 +5,7 @@ Some examples (model - class or model name)::
> Model = migrator.orm['model_name'] # Return model in current state by name
> migrator.sql(sql) # Run custom SQL
> migrator.python(func, *args, **kwargs) # Run python code
> migrator.run(func, *args, **kwargs) # Run python code
> migrator.create_model(Model) # Create a model (could be used as decorator)
> migrator.remove_model(model, cascade=True) # Remove a model
> migrator.add_fields(model, **fields) # Add fields to a model

View File

@ -1,5 +1,6 @@
{
"form": {
"user": "Потребителско име"
"user": "Потребителско име",
"password": "Парола"
}
}

View File

@ -10,6 +10,7 @@
"select": "Избери"
},
"restart": {
"title": "Сигурен ли сте, че искате да рестартирате Frigate?"
"title": "Сигурен ли сте, че искате да рестартирате Frigate?",
"button": "Рестартирай"
}
}

View File

@ -1,5 +1,8 @@
{
"iconPicker": {
"selectIcon": "Изберете иконка"
"selectIcon": "Изберете иконка",
"search": {
"placeholder": "Потърси за икона…"
}
}
}

View File

@ -1,7 +1,10 @@
{
"button": {
"downloadVideo": {
"label": "Свали видео"
"label": "Свали видео",
"toast": {
"success": "Вашето видео за преглеждане почна да се изтегля."
}
}
}
}

View File

@ -1 +1,3 @@
{}
{
"documentTitle": "Модели за класификация"
}

View File

@ -1 +1,4 @@
{}
{
"documentTitle": "Настройки на конфигурацията - Фригейт",
"configEditor": "Настройки на конфигурацията"
}

View File

@ -9,5 +9,7 @@
"aria": "Избери събития",
"noFoundForTimePeriod": "Няма намерени събития за този времеви период."
},
"allCameras": "Всички камери"
"allCameras": "Всички камери",
"alerts": "Известия",
"detections": "Засичания"
}

View File

@ -8,5 +8,7 @@
}
},
"trackedObjectsCount_one": "{{count}} проследен обект ",
"trackedObjectsCount_other": "{{count}} проследени обекта "
"trackedObjectsCount_other": "{{count}} проследени обекта ",
"documentTitle": "Разгледай - Фригейт",
"generativeAI": "Генериращ Изкъствен Интелект"
}

View File

@ -1,3 +1,4 @@
{
"documentTitle": "Експорт - Frigate"
"documentTitle": "Експорт - Frigate",
"search": "Търси"
}

View File

@ -10,5 +10,9 @@
"deletedName_one": "{{count}} лице бе изтрито успешно.",
"deletedName_other": "{{count}} лица бяха изтрити успешно."
}
},
"description": {
"addFace": "Добавете нова колекция във библиотеката за лица при качването на първата ви снимка.",
"placeholder": "Напишете име за тази колекция"
}
}

View File

@ -64,5 +64,6 @@
"cameraSettings": {
"cameraEnabled": "Камерата е включена"
},
"documentTitle": "Наживо - Frigate"
"documentTitle": "Наживо - Frigate",
"documentTitle.withCamera": "{{camera}} - На живо - Фригейт"
}

View File

@ -1,5 +1,7 @@
{
"button": {
"save": "Запазване на търсенето"
}
},
"search": "Търси",
"savedSearches": "Запазени търсения"
}

View File

@ -12,5 +12,9 @@
"point_one": "{{count}} точка",
"point_other": "{{count}} точки"
}
},
"documentTitle": {
"default": "Настройки - Фригейт",
"authentication": "Настройки за сигурността - Фругейт"
}
}

View File

@ -1,5 +1,9 @@
{
"stats": {
"healthy": "Системата е изправна"
},
"documentTitle": {
"cameras": "Статистики за Камери - Фригейт",
"storage": "Статистика за паметта - Фригейт"
}
}

View File

@ -58,7 +58,8 @@
"endTimeMustAfterStartTime": "L'hora de finalització ha de ser posterior a l'hora d'inici",
"noVaildTimeSelected": "No s'ha seleccionat un rang de temps vàlid",
"failed": "No s'ha pogut inciar l'exportació: {{error}}"
}
},
"view": "Vista"
},
"fromTimeline": {
"saveExport": "Guardar exportació",

View File

@ -1,5 +1,5 @@
{
"documentTitle": "Models de classificació",
"documentTitle": "Models de classificació - Frigate",
"button": {
"deleteClassificationAttempts": "Suprimeix les imatges de classificació",
"renameCategory": "Reanomena la classe",
@ -152,7 +152,12 @@
"generateSuccess": "Imatges de mostra generades amb èxit",
"allImagesRequired_one": "Classifiqueu totes les imatges. Queda {{count}} imatge.",
"allImagesRequired_many": "Classifiqueu totes les imatges. Queden {{count}} imatges.",
"allImagesRequired_other": "Classifiqueu totes les imatges. Queden {{count}} imatges."
"allImagesRequired_other": "Classifiqueu totes les imatges. Queden {{count}} imatges.",
"modelCreated": "El model s'ha creat correctament. Utilitzeu la vista Classificacions recents per a afegir imatges per als estats que falten i, a continuació, entrenar el model.",
"missingStatesWarning": {
"title": "Falten exemples d'estat",
"description": "Es recomana seleccionar exemples per a tots els estats per obtenir els millors resultats. Podeu continuar sense seleccionar tots els estats, però el model no serà entrenat fins que tots els estats tinguin imatges. Després de continuar, utilitzeu la vista Classificacions recents per classificar imatges per als estats que falten, i després entrenar el model."
}
}
},
"deleteModel": {
@ -180,5 +185,6 @@
"noNewImages": "Sense noves imatges per entrenar. Classifica més imatges primer.",
"modelNotReady": "El model no está preparat per entrenar",
"noChanges": "No hi ha canvis al conjunt de dades des de l'última formació."
}
},
"none": "Cap"
}

View File

@ -55,5 +55,9 @@
"trackedPoint": "Punt de seguiment"
},
"zoomIn": "Amplia",
"zoomOut": "Redueix"
"zoomOut": "Redueix",
"normalActivity": "Normal",
"needsReview": "Necessita revisió",
"securityConcern": "Preocupació per la seguretat",
"select_all": "Tots"
}

View File

@ -220,6 +220,10 @@
"viewTrackingDetails": {
"label": "Veure detalls de seguiment",
"aria": "Mostra els detalls de seguiment"
},
"downloadCleanSnapshot": {
"label": "Descarrega la instantània neta",
"aria": "Descarrega la instantània neta"
}
},
"noTrackedObjects": "No s'han trobat objectes rastrejats",
@ -263,7 +267,8 @@
"header": {
"zones": "Zones",
"ratio": "Ràtio",
"area": "Àrea"
"area": "Àrea",
"score": "Puntuació"
}
},
"annotationSettings": {
@ -278,7 +283,7 @@
"millisecondsToOffset": "Millisegons per l'òfset de detecció d'anotacions per. <em>Per defecte: 0</em>",
"tips": "Reduïu el valor si la reproducció del vídeo es troba per davant dels quadres i els punts de ruta, i augmenteu-lo si es troba per darrere. Aquest valor pot ser negatiu.",
"toast": {
"success": "L'Òfset d'anotació per a {{camera}} s'ha desat al fitxer de configuració. Reinicieu Frigate per aplicar els canvis."
"success": "El desplaçament de l'anotació per {{camera}} s'ha desat al fitxer de configuració."
}
}
},

View File

@ -13,7 +13,8 @@
"train": {
"empty": "No hi ha intents recents de reconeixement de rostres",
"title": "Reconeixements recents",
"aria": "Selecciona els reconeixements recents"
"aria": "Selecciona els reconeixements recents",
"titleShort": "Recent"
},
"description": {
"addFace": "Afegiu una col·lecció nova a la biblioteca de cares pujant la vostra primera imatge.",

View File

@ -172,7 +172,7 @@
"name": {
"inputPlaceHolder": "Introduïu un nom…",
"title": "Nom",
"tips": "El nom ha de tenir almenys 2 caràcters, ha de tenir almenys una lletra, i no ha de ser el nom d'una càmera o una altra zona."
"tips": "El nom ha de tenir almenys 2 caràcters, ha de tenir almenys una lletra, i no ha de ser el nom d'una càmera o una altra zona en aquesta càmera."
},
"label": "Zones",
"desc": {
@ -199,7 +199,7 @@
},
"clickDrawPolygon": "Fes click per a dibuixar un polígon a la imatge.",
"toast": {
"success": "La zona {{zoneName}} ha estat desada. Reinicia Frigate per a aplicar els canvis."
"success": "S'ha desat la zona ({{zoneName}})."
}
},
"filter": {
@ -229,8 +229,8 @@
"clickDrawPolygon": "Fes click per a dibuixar un polígon a la imatge.",
"toast": {
"success": {
"title": "{{polygonName}} s'ha desat. Reinicia Frigate per a aplicar els canvis.",
"noName": "La màscara de moviment ha estat desada. Reinicia Frigate per aplicar els canvis."
"title": "{{polygonName}} s'ha desat.",
"noName": "La màscara de moviment ha estat desada."
}
}
},
@ -254,8 +254,8 @@
"clickDrawPolygon": "Fes click per a dibuixar un polígon a la imatge.",
"toast": {
"success": {
"title": "{{polygonName}} s'ha desat. Reinicia Frigate per a aplicar els canvis.",
"noName": "La màscara d'objectes ha estat desada. Reincia Frigate per a aplicar els canvis."
"title": "{{polygonName}} s'ha desat.",
"noName": "La màscara d'objectes ha estat desada."
}
},
"context": "Les màscares de filtratge dobjectes sutilitzen per descartar falsos positius dun tipus dobjecte concret segons la seva ubicació."
@ -527,7 +527,16 @@
"notMatch": "Les contrasenyes no coincideixen",
"match": "Les contrasenyes coincideixen",
"placeholder": "Introdueix la contrasenya",
"title": "Contrasenya"
"title": "Contrasenya",
"show": "Mostra contrasenya",
"hide": "Amaga contrasenya",
"requirements": {
"title": "Requisits contrasenya:",
"length": "Com a mínim 8 carácters",
"uppercase": "Com a mínim una majúscula",
"digit": "Com a mínim un digit",
"special": "Com a mínim un carácter especial (!@#$%^&*(),.?\":{}|<>)"
}
},
"newPassword": {
"title": "Nova contrasenya",
@ -537,14 +546,23 @@
}
},
"usernameIsRequired": "El nom d'usuari és obligatori",
"passwordIsRequired": "La contrasenya és obligatoria"
"passwordIsRequired": "La contrasenya és obligatoria",
"currentPassword": {
"title": "Constrasenya actual",
"placeholder": "Entra l'actual contrasenya"
}
},
"passwordSetting": {
"updatePassword": "Contrasenya actualitzada per {{username}}",
"setPassword": "Estableix Contrasenya",
"cannotBeEmpty": "La contrasenya no pot ser buida",
"doNotMatch": "Les contrasenyes no coincideixen",
"desc": "Crea un nova contrasenya segura per protegir aquest compte."
"desc": "Crea un nova contrasenya segura per protegir aquest compte.",
"currentPasswordRequired": "L'actual contrasenya es requerida",
"incorrectCurrentPassword": "L'actual contrasenya es incorrecte",
"passwordVerificationFailed": "Falla en la verificació de la contrasenya",
"multiDeviceWarning": "Serà necesari loguejarte en qualsevol altre dispositiu en que estiguis loguejat en {{refresh_time}}.",
"multiDeviceAdmin": "També pots forçar a tots els usuaris a tornar a autenticar-se immediatament rotant el teu secret JWT."
},
"deleteUser": {
"title": "Suprimir usuari",
@ -1138,7 +1156,8 @@
"audioCodecRequired": "Es requereix un flux d'àudio per admetre la detecció d'àudio.",
"restreamingWarning": "Reduir les connexions a la càmera per al flux de registre pot augmentar lleugerament l'ús de la CPU.",
"brands": {
"reolink-rtsp": "No és racomana utilitzar Reolink RSTP. Activeu HTTP a la configuració del microprogramari de la càmera i reinicieu l'assistent."
"reolink-rtsp": "No és racomana utilitzar Reolink RSTP. Activeu HTTP a la configuració del microprogramari de la càmera i reinicieu l'assistent.",
"reolink-http": "Els fluxos HTTP de reenllaç haurien d'utilitzar FFmpeg per a una millor compatibilitat. Habilita «Utilitza el mode de compatibilitat del flux» per a aquest flux."
},
"dahua": {
"substreamWarning": "El substream 1 està bloquejat a una resolució baixa. Moltes càmeres Dahua / Amcrest / EmpireTech suporten subfluxos addicionals que han d'estar habilitats a la configuració de la càmera. Es recomana comprovar i utilitzar aquests corrents si estan disponibles."

View File

@ -25,7 +25,10 @@
"deletedModel_one": "Úspešne odstranený {{count}} model",
"deletedModel_few": "Úspešne odstranené {{count}} modely",
"deletedModel_other": "Úspěšne ostranených {{count}} modelov",
"deletedCategory": "Zmazať triedu"
"deletedCategory": "Zmazať triedu",
"categorizedImage": "Obrázek úspěšně klasifikován",
"trainedModel": "Úspěšně vytrénovaný model.",
"trainingModel": "Trénování modelu bylo úspěšně zahájeno."
}
}
}

View File

@ -41,6 +41,8 @@
"zoomOut": "Oddálit",
"detail": {
"label": "Detail",
"noDataFound": "Žádná detailní data k prohlédnutí"
"noDataFound": "Žádná detailní data k prohlédnutí",
"aria": "Přepnout detailní zobrazení",
"trackedObject_other": "{{count}} objektů"
}
}

View File

@ -36,7 +36,7 @@
"desc": "Skutečně chcete vymazat kolekci {{name}}? Toto trvale vymaže všechny přiřazené obličeje."
},
"train": {
"title": "Trénovat",
"title": "Nedávná rozpoznání",
"empty": "Nejsou zde žádné předchozí pokusy o rozpoznání obličeje",
"aria": "Vybrat trénink"
},

View File

@ -8,7 +8,7 @@
"masksAndZones": "Editor masky a zón - Frigate",
"motionTuner": "Ladění detekce pohybu - Frigate",
"object": "Ladění - Frigate",
"general": "Obecné nastavení - Frigate",
"general": "Nastavení rozhraní- Frigate",
"frigatePlus": "Frigate+ nastavení - Frigate",
"enrichments": "Nastavení obohacení - Frigate",
"cameraManagement": "Správa kamer - Frigate",
@ -307,7 +307,9 @@
"frigateplus": "Frigate+",
"enrichments": "Obohacení",
"triggers": "Spouštěče",
"cameraManagement": "Správa"
"cameraManagement": "Správa",
"cameraReview": "Kontrola",
"roles": "Role"
},
"dialog": {
"unsavedChanges": {

View File

@ -1,6 +1,6 @@
{
"time": {
"untilForTime": "Indtil{{time}}",
"untilForTime": "Indtil {{time}}",
"untilForRestart": "Indtil Frigate genstarter.",
"untilRestart": "Indtil genstart",
"ago": "{{timeAgo}} siden",

View File

@ -15,5 +15,36 @@
},
"count_one": "{{count}} Label",
"label": "Etiketter"
},
"zones": {
"label": "Zoner",
"all": {
"title": "Alle zoner",
"short": "Zoner"
}
},
"more": "Flere filtre",
"sort": {
"label": "Sortér",
"dateAsc": "Dato (Stigende)",
"dateDesc": "Dato (Faldende)",
"speedAsc": "Anslået hastighed (Stigende)",
"speedDesc": "Anslået hastighed (Faldende)",
"relevance": "Relevans"
},
"dates": {
"selectPreset": "Vælg en forudindstilling…",
"all": {
"title": "Alle datoer",
"short": "Datoer"
}
},
"reset": {
"label": "Nulstille filtre til standardværdier"
},
"timeRange": "Tidsinterval",
"estimatedSpeed": "Anslået hastighed ({{unit}})",
"features": {
"hasVideoClip": "Har et videoklip"
}
}

View File

@ -296,7 +296,7 @@
"doorbell": "Türklingel",
"ding-dong": "BimBam",
"sliding_door": "Schiebetür",
"slam": "Knall",
"slam": "zuknallen",
"knock": "Klopfen",
"tap": "Schlag",
"squeak": "Quietschen",
@ -355,7 +355,7 @@
"shatter": "Zerspringen",
"silence": "Stille",
"environmental_noise": "Umgebungsgeräusch",
"static": "Rauschen",
"static": "Statisch",
"pink_noise": "Rosa Rauschen",
"television": "Fernsehgerät",
"radio": "Radio",
@ -441,5 +441,63 @@
"arrow": "Pfeil",
"electronic_tuner": "Elektronischer Tuner",
"effects_unit": "Effekteinheit",
"chorus_effect": "Chorus-Effekt"
"chorus_effect": "Chorus-Effekt",
"sodeling": "Verfilzen",
"chird": "Akkord",
"change_ringing": "Wechsle RingRing",
"shofar": "Schofar",
"gush": "sprudeln",
"sonar": "Sonar",
"whoosh": "Rauschen",
"thump": "Ruck",
"basketball_bounce": "Basketball Abbraller",
"bang": "Knall",
"slap": "Ohrfeige",
"whack": "verhauen",
"smash": "zerschlagen",
"breaking": "zerbrechen",
"bouncing": "Abbraller",
"whip": "Peitsche",
"flap": "Lasche",
"scratch": "Kratzer",
"scrape": "Abfall",
"rub": "scheuern",
"roll": "rollen",
"crushing": "Stauchen",
"crumpling": "zerknüllen",
"tearing": "Reißen",
"beep": "Piep",
"ping": "Ping",
"ding": "klingeln",
"thunk": "dumpfes Geräusch",
"clang": "Geklirr",
"squeal": "Ausruf",
"creak": "Knarren",
"rustle": "Geknister",
"whir": "schwirren",
"clatter": "Geratter",
"sizzle": "brutzeln",
"clicking": "Klicken",
"clickety_clack": "Klappergeräuschen",
"rumble": "Grollen",
"plop": "plumpsen",
"hum": "Brummen",
"zing": "Schwung",
"boing": "ferderndes Geräusch",
"crunch": "knirschendes",
"sine_wave": "Sinus Kurve",
"harmonic": "harmonisch",
"chirp_tone": "Frequenzwobbelung",
"pulse": "Takt",
"inside": "drinnen",
"outside": "draußen",
"reverberation": "Widerhall",
"echo": "Echo",
"noise": "Lärm",
"mains_hum": "Netzbrummen",
"distortion": "Verzerrung",
"sidetone": "Nebengeräusch",
"cacophony": "Dissonanz",
"throbbing": "Pochen",
"vibration": "Vibration"
}

View File

@ -81,7 +81,10 @@
"formattedTimestampMonthDayYear": {
"12hour": "d. MMM yyyy",
"24hour": "d. MMM yyyy"
}
},
"inProgress": "In Bearbeitung",
"invalidStartTime": "Ungültige Startzeit",
"invalidEndTime": "Ungültige Endzeit"
},
"button": {
"save": "Speichern",
@ -118,7 +121,8 @@
"pictureInPicture": "Bild in Bild",
"on": "AN",
"suspended": "Pausierte",
"unsuspended": "fortsetzen"
"unsuspended": "fortsetzen",
"continue": "Weiter"
},
"label": {
"back": "Zurück",
@ -227,7 +231,8 @@
"logout": "Abmelden"
},
"uiPlayground": "Testgebiet für Benutzeroberfläche",
"export": "Exportieren"
"export": "Exportieren",
"classification": "Klassifizierung"
},
"unit": {
"speed": {

View File

@ -11,6 +11,6 @@
},
"user": "Benutzername",
"password": "Kennwort",
"firstTimeLogin": "Versuchen Sie sich zum ersten Mal anzumelden? Die Anmeldedaten sind in den Frigate-Logs aufgeführt."
"firstTimeLogin": "Ist dies der erste Loginversuch? Die Zugangsdaten werden in den Frigate Logs angezeigt."
}
}

View File

@ -66,7 +66,8 @@
"failed": "Fehler beim Starten des Exports: {{error}}",
"noVaildTimeSelected": "Kein gültiger Zeitraum ausgewählt"
},
"success": "Export erfolgreich gestartet. Die Datei befindet sich auf der Exportseite."
"success": "Export erfolgreich gestartet. Die Datei befindet sich auf der Exportseite.",
"view": "Ansicht"
},
"fromTimeline": {
"saveExport": "Export speichern",

View File

@ -1,10 +1,10 @@
{
"documentTitle": "Klassifizierungsmodelle",
"documentTitle": "Klassifizierungsmodelle - Fregatte",
"details": {
"scoreInfo": "Die Punktzahl gibt die durchschnittliche Klassifizierungssicherheit aller Erkennungen dieses Objekts wieder."
"scoreInfo": "Die Punktzahl gibt die durchschnittliche Konfidenz aller Erkennungen dieses Objekts wieder."
},
"button": {
"deleteClassificationAttempts": "Lösche Klassifizierungs-Bilder",
"deleteClassificationAttempts": "Lösche klassifizierte Bilder",
"renameCategory": "Klasse umbenennen",
"deleteCategory": "Klasse löschen",
"deleteImages": "Bilder löschen",
@ -17,15 +17,15 @@
"trainingInProgress": "Modell wird gerade trainiert",
"noNewImages": "Keine weiteren Bilder zum trainieren. Bitte klassifiziere weitere Bilder im Datensatz.",
"noChanges": "Keine Veränderungen des Datensatzes seit dem letzten Training.",
"modelNotReady": "Modell ist nicht bereit trainiert zu werden."
"modelNotReady": "Modell ist nicht bereit zum Training"
},
"toast": {
"success": {
"deletedCategory": "Klasse gelöscht",
"deletedImage": "Gelöschte Bilder",
"deletedModel_one": "{{count}} Model erfolgreich gelöscht",
"deletedImage": "Bilder gelöscht",
"deletedModel_one": "{{count}} Modell erfolgreich gelöscht",
"deletedModel_other": "{{count}} Modelle erfolgreich gelöscht",
"categorizedImage": "Bild erfolgreich klassifiziert",
"categorizedImage": "Erfolgreich klassifizierte Bilder",
"trainedModel": "Modell erfolgreich trainiert.",
"trainingModel": "Modelltraining erfolgreich gestartet.",
"updatedModel": "Modellkonfiguration erfolgreich aktualisiert",
@ -33,8 +33,153 @@
},
"error": {
"deleteImageFailed": "Löschen fehlgeschlagen: {{errorMessage}}",
"deleteCategoryFailed": "Klasse konnte nicht gelöscht werden: {{errorMessage}}",
"deleteModelFailed": "Model konnte nicht gelöscht werden: {{errorMessage}}"
"deleteCategoryFailed": "Löschen der Klasse fehlgeschlagen: {{errorMessage}}",
"deleteModelFailed": "Model konnte nicht gelöscht werden: {{errorMessage}}",
"trainingFailedToStart": "Modelltraining konnte nicht gestartet werden: {{errorMessage}}",
"updateModelFailed": "Aktualisierung des Modells fehlgeschlagen: {{errorMessage}}",
"renameCategoryFailed": "Umbenennung der Klasse fehlgeschlagen: {{errorMessage}}",
"categorizeFailed": "Bildkategorisierung fehlgeschlagen: {{errorMessage}}",
"trainingFailed": "Modelltraining fehlgeschlagen. Details sind in den Frigate-Protokollen zu finden."
}
}
},
"deleteCategory": {
"title": "Klasse löschen",
"desc": "Möchten Sie die Klasse {{name}} wirklich löschen? Dadurch werden alle zugehörigen Bilder dauerhaft gelöscht und das Modell muss neu trainiert werden.",
"minClassesTitle": "Klasse kann nicht gelöscht werden",
"minClassesDesc": "Ein Klassifizierungsmodell benötigt mindestens zwei Klassen. Fügen Sie eine weitere Klasse hinzu, bevor Sie diese löschen."
},
"deleteModel": {
"title": "Klassifizierungsmodell löschen",
"single": "Möchten Sie {{name}} wirklich löschen? Dadurch werden alle zugehörigen Daten, einschließlich Bilder und Trainingsdaten, dauerhaft gelöscht. Diese Aktion kann nicht rückgängig gemacht werden.",
"desc_one": "Möchtest du {{count}} Modell wirklich löschen? Dadurch werden alle zugehörigen Daten, einschließlich Bilder und Trainingsdaten, dauerhaft gelöscht. Diese Aktion kann nicht rückgängig gemacht werden.",
"desc_other": "Möchtest du {{count}} Modelle wirklich löschen? Dadurch werden alle zugehörigen Daten, einschließlich Bilder und Trainingsdaten, dauerhaft gelöscht. Diese Aktion kann nicht rückgängig gemacht werden."
},
"edit": {
"title": "Klassifikationsmodell bearbeiten",
"descriptionState": "Bearbeite die Klassen für dieses Zustandsklassifikationsmodell. Änderungen erfordern erneutes Trainieren des Modells.",
"descriptionObject": "Bearbeite den Objekttyp und Klassifizierungstyp für dieses Objektklassifikationsmodell.",
"stateClassesInfo": "Hinweis: Die Änderung der Statusklassen erfordert ein erneutes Trainieren des Modells mit den aktualisierten Klassen."
},
"deleteDatasetImages": {
"title": "Datensatz Bilder löschen",
"desc_one": "Bist du sicher, dass {{count}} Bild von {{dataset}} gelöscht werden sollen? Diese Aktion kann nicht rückgängig gemacht werden und erfordert ein erneutes Trainieren des Modells.",
"desc_other": "Bist du sicher, dass {{count}} Bilder von {{dataset}} gelöscht werden sollen? Diese Aktion kann nicht rückgängig gemacht werden und erfordert ein erneutes Trainieren des Modells."
},
"deleteTrainImages": {
"title": "Trainingsbilder löschen",
"desc_one": "Bist du sicher, dass du {{count}} Bild löschen möchten? Diese Aktion kann nicht rückgängig gemacht werden.",
"desc_other": "Bist du sicher, dass du {{count}} Bilder löschen möchten? Diese Aktion kann nicht rückgängig gemacht werden."
},
"renameCategory": {
"title": "Klasse umbenennen",
"desc": "Neuen Namen für {{name}} eingeben. Das Modell muss neu trainiert werden, damit die Änderungen wirksam werden."
},
"description": {
"invalidName": "Ungültiger Name. Namen dürfen nur Buchstaben, Zahlen, Leerzeichen, Apostrophe, Unterstriche und Bindestriche enthalten."
},
"train": {
"title": "Neue Klassifizierungen",
"titleShort": "frisch",
"aria": "Neue Klassifizierungen auswählen"
},
"categories": "Klassen",
"createCategory": {
"new": "Neue Klasse erstellen"
},
"categorizeImageAs": "Bild klassifizieren als:",
"categorizeImage": "Bild klassifizieren",
"menu": {
"objects": "Objekte",
"states": "Zustände"
},
"noModels": {
"object": {
"title": "Keine Objektklassifikationsmodelle",
"description": "Erstelle ein benutzerdefiniertes Modell, um erkannte Objekte zu klassifizieren.",
"buttonText": "Objektmodell erstellen"
},
"state": {
"title": "Keine Statusklassifizierungsmodelle",
"description": "Erstellen Sie ein benutzerdefiniertes Modell, um Zustandsänderungen in bestimmten Kamerabereichen zu überwachen und zu klassifizieren.",
"buttonText": "Zustandsmodell erstellen"
}
},
"wizard": {
"title": "Neue Klassifizierung erstellen",
"steps": {
"nameAndDefine": "Benennen und definieren",
"stateArea": "Gebiet",
"chooseExamples": "Beispiel auswählen"
},
"step1": {
"description": "Zustandsmodelle überwachen feste Kamerabereiche auf Veränderungen (z. B. Tür offen/geschlossen). Objektmodelle fügen den erkannten Objekten Klassifizierungen hinzu (z. B. bekannte Tiere, Lieferanten usw.).",
"name": "Name",
"namePlaceholder": "Eingeben Modell Name...",
"type": "Typ",
"typeState": "Zustand",
"typeObject": "Objekt",
"objectLabel": "Objekt Bezeichnung",
"objectLabelPlaceholder": "Auswahl Objekt Typ...",
"classificationType": "Klassifizierungstyp",
"classificationTypeTip": "Etwas über Klassifizierungstyp lernen",
"classificationTypeDesc": "Unterbezeichnungen fügen dem Objektnamen zusätzlichen Text hinzu (z. B. „Person: UPS“). Attribute sind durchsuchbare Metadaten, die separat in den Objektmetadaten gespeichert sind.",
"classificationSubLabel": "Unterlabel",
"classificationAttribute": "Merkmal",
"classes": "Klasse",
"states": "Gebiet",
"classesTip": "Über Klassen lernen",
"classesStateDesc": "Definieren Sie die verschiedenen Zustände, in denen sich Ihr Kamerabereich befinden kann. Beispiel: „offen” und „geschlossen” für ein Garagentor.",
"classesObjectDesc": "Definieren Sie die verschiedenen Kategorien, in die erkannte Objekte klassifiziert werden sollen. Beispiel: „Lieferant“, „Bewohner“, „Fremder“ für die Klassifizierung von Personen.",
"classPlaceholder": "Eingabe Klassenbezeichnung...",
"errors": {
"nameRequired": "Modellname ist erforderlich",
"nameLength": "Der Modellname darf maximal 64 Zeichen lang sein",
"nameOnlyNumbers": "Der Modellname darf nicht nur aus Zahlen bestehen",
"classRequired": "Mindestens eine Klasse ist erforderlich",
"classesUnique": "Klassenname muss eindeutig sein",
"stateRequiresTwoClasses": "Gebietsmodelle erfordern mindestens zwei Klassen",
"objectLabelRequired": "Bitte wähle eine Objektbeschriftung",
"objectTypeRequired": "Bitte wählen Sie einen Klassifizierungstyp aus"
}
},
"step2": {
"description": "Wählen Sie Kameras aus und legen Sie für jede Kamera den zu überwachenden Bereich fest. Das Modell klassifiziert den Zustand dieser Bereiche.",
"cameras": "Kameras",
"selectCamera": "Kamera auswählen",
"noCameras": "Klick + zum hinzufügen der Kameras",
"selectCameraPrompt": "Wählen Sie eine Kamera aus der Liste aus, um ihren Überwachungsbereich festzulegen"
},
"step3": {
"selectImagesPrompt": "Wählen sie alle Bilder mit: {{className}}",
"selectImagesDescription": "Klicken Sie auf die Bilder, um sie auszuwählen. Klicken Sie auf „Weiter“, wenn Sie mit diesem Kurs fertig sind.",
"allImagesRequired_one": "Bitte klassifizieren Sie alle Bilder. {{count}} Bild verbleibend.",
"allImagesRequired_other": "Bitte klassifizieren Sie alle Bilder. {{count}} Bilder verbleiben.",
"generating": {
"title": "Beispielbilder generieren",
"description": "Frigate extrahiert repräsentative Bilder aus Ihren Aufnahmen. Dies kann einen Moment dauern..."
},
"training": {
"title": "Trainingsmodell",
"description": "Ihr Modell wird im Hintergrund trainiert. Schließen Sie diesen Dialog, und Ihr Modell wird ausgeführt, sobald das Training abgeschlossen ist."
},
"retryGenerate": "Generierung wiederholen",
"noImages": "Keine Bilder generiert",
"classifying": "Klassifizieren und Trainieren...",
"trainingStarted": "Training wurde erfolgreich gestartet",
"errors": {
"noCameras": "Keine Kameras konfiguriert",
"noObjectLabel": "Kein Objektlabel ausgewählt",
"generateFailed": "Beispiele konnten nicht generiert werden: {{error}}",
"generationFailed": "Generierung fehlgeschlagen. Bitte versuchen Sie es erneut.",
"classifyFailed": "Bilder konnten nicht klassifiziert werden: {{error}}"
},
"generateSuccess": "Erfolgreich generierte Beispielbilder",
"modelCreated": "Modell erfolgreich erstellt. Verwenden Sie die Ansicht „Aktuelle Klassifizierungen“, um Bilder für fehlende Zustände hinzuzufügen, und trainieren Sie dann das Modell.",
"missingStatesWarning": {
"title": "Beispiele für fehlende Zustände",
"description": "Es wird empfohlen für alle Zustände Beispiele auszuwählen. Das Modell wird erst trainiert, wenn für alle Zustände Bilder vorhanden sind. Fahren Sie fort und verwenden Sie die Ansicht „Aktuelle Klassifizierungen“, um Bilder für die fehlenden Zustände zu klassifizieren. Trainieren Sie anschließend das Modell."
}
}
},
"none": "Keiner"
}

View File

@ -48,10 +48,16 @@
"noDataFound": "Keine Detaildaten zur Überprüfung",
"settings": "Detailansicht Einstellungen",
"alwaysExpandActive": {
"desc": "Immer die Objektdetails des aktiven Überprüfungselements erweitern, sofern verfügbar."
"desc": "Immer die Objektdetails vom aktivem Überprüfungselement erweitern, sofern verfügbar.",
"title": "Immer aktiv erweitern"
}
},
"objectTrack": {
"trackedPoint": "Verfolgter Punkt"
}
"trackedPoint": "Verfolgter Punkt",
"clickToSeek": "Klicke, um zu dieser Zeit zu springen"
},
"normalActivity": "normal",
"needsReview": "benötigt Überprüfung",
"securityConcern": "Sicherheitsbedenken",
"select_all": "alle"
}

View File

@ -18,7 +18,7 @@
"updatedSublabel": "Unterkategorie erfolgreich aktualisiert.",
"updatedLPR": "Nummernschild erfolgreich aktualisiert.",
"regenerate": "Eine neue Beschreibung wurde von {{provider}} angefordert. Je nach Geschwindigkeit des Anbieters kann es einige Zeit dauern, bis die neue Beschreibung generiert ist.",
"audioTranscription": "Audio Transkription erfolgreich angefordert."
"audioTranscription": "Die Audio-Transkription wurde erfolgreich angefordert. Je nach Geschwindigkeit Ihres Frigate-Servers kann die Transkription einige Zeit in Anspruch nehmen."
},
"error": {
"regenerate": "Der Aufruf von {{provider}} für eine neue Beschreibung ist fehlgeschlagen: {{errorMessage}}",
@ -159,7 +159,8 @@
"video": "Video",
"object_lifecycle": "Objekt-Lebenszyklus",
"snapshot": "Snapshot",
"thumbnail": "Vorschaubild"
"thumbnail": "Vorschaubild",
"tracking_details": "Nachverfolgungs-Details"
},
"itemMenu": {
"downloadSnapshot": {
@ -206,6 +207,10 @@
},
"hideObjectDetails": {
"label": "Objektpfad verbergen"
},
"downloadCleanSnapshot": {
"label": "Bereinigte Momentaufnahme herunterladen",
"aria": "Bereinigte Momentaufnahme herunterladen"
}
},
"dialog": {
@ -249,13 +254,14 @@
"faceOrLicense_plate": "{{attribute}} erkannt für {{label}}",
"other": "{{label}} erkannt als {{attribute}}"
},
"gone": "{{label}} verließ",
"gone": "{{label}} hat verlassen",
"heard": "{{label}} wurde gehört",
"external": "{{label}} erkannt",
"header": {
"zones": "Zonen",
"ratio": "Verhältnis",
"area": "Bereich"
"area": "Bereich",
"score": "Bewertung"
}
},
"annotationSettings": {
@ -270,7 +276,7 @@
"millisecondsToOffset": "Millisekunden, um Erkennungs-Anmerkungen zu verschieben. <em>Standard: 0</em>",
"tips": "Verringere den Wert, wenn die Videowiedergabe den Boxen und Wegpunkten voraus ist, und erhöhe den Wert, wenn die Videowiedergabe hinter ihnen zurückbleibt. Dieser Wert kann negativ sein.",
"toast": {
"success": "Der Anmerkungs-Offset für {{camera}} wurde in der Konfigurationsdatei gespeichert. Starte Frigate neu, um Ihre Änderungen zu übernehmen."
"success": "Der Anmerkungs-Offset für {{camera}} wurde in der Konfigurationsdatei gespeichert."
}
}
},
@ -278,6 +284,10 @@
"previous": "Vorherige Anzeige",
"next": "Nächste Anzeige"
},
"title": "Verfolgungsdetails"
"title": "Verfolgungsdetails",
"adjustAnnotationSettings": "Anmerkungseinstellungen anpassen",
"autoTrackingTips": "Die Positionen der Begrenzungsrahmen sind bei Kameras mit automatischer Verfolgung ungenau.",
"count": "{{first}} von {{second}}",
"trackedPoint": "Verfolgter Punkt"
}
}

View File

@ -1,7 +1,7 @@
{
"description": {
"placeholder": "Gib einen Name für diese Kollektion ein",
"addFace": "Füge der Gesichtsbibliothek eine neue Sammlung hinzu, indem ein erstes Bild hochgeladen wird.",
"addFace": "Füge der Gesichtsbibliothek eine neue Sammlung hinzu, indem ein Bild hinzufügst.",
"invalidName": "Ungültiger Name. Namen dürfen nur Buchstaben, Zahlen, Leerzeichen, Apostrophe, Unterstriche und Bindestriche enthalten."
},
"details": {
@ -44,9 +44,10 @@
"deleteFace": "Lösche Gesicht"
},
"train": {
"title": "Aktuelle Erkennungen",
"title": "Kürzliche Erkennungen",
"aria": "Wähle aktuelle Erkennungen",
"empty": "Es gibt keine aktuellen Versuche zur Gesichtserkennung"
"empty": "Es gibt keine aktuellen Versuche zur Gesichtserkennung",
"titleShort": "frisch"
},
"deleteFaceLibrary": {
"title": "Lösche Name",
@ -64,7 +65,7 @@
"deletedName_other": "{{count}} Gesichter wurden erfolgreich gelöscht.",
"addFaceLibrary": "{{name}} wurde erfolgreich in die Gesichtsbibliothek aufgenommen!",
"trainedFace": "Gesicht erfolgreich trainiert.",
"updatedFaceScore": "Gesichtsbewertung erfolgreich aktualisiert.",
"updatedFaceScore": "Gesichtsbewertung erfolgreich auf {{name}} ({{score}}) aktualisiert.",
"renamedFace": "Gesicht erfolgreich in {{name}} umbenannt"
},
"error": {

View File

@ -172,9 +172,13 @@
"disable": "Live Audio Transkription ausschalten"
},
"noCameras": {
"title": "Keine Kameras eingerichtet",
"title": "Keine Kameras konfiguriert",
"description": "Beginne indem du eine Kamera anschließt.",
"buttonText": "Kamera hinzufügen"
"buttonText": "Kamera hinzufügen",
"restricted": {
"title": "Keine Kamera verfügbar",
"description": "Sie haben keine Berechtigung, Kameras in dieser Gruppe anzuzeigen."
}
},
"snapshot": {
"takeSnapshot": "Sofort-Schnappschuss herunterladen",

View File

@ -3,16 +3,16 @@
"default": "Einstellungen - Frigate",
"authentication": "Authentifizierungseinstellungen Frigate",
"camera": "Kameraeinstellungen - Frigate",
"masksAndZones": "Masken- und Zonen-Editor Frigate",
"masksAndZones": "Masken- und Zoneneditor Frigate",
"object": "Debug - Frigate",
"general": "UI Einstellungen Frigate",
"general": "UI-Einstellungen Frigate",
"frigatePlus": "Frigate+ Einstellungen Frigate",
"classification": "Klassifizierungseinstellungen Frigate",
"motionTuner": "Bewegungserkennungs-Optimierer Frigate",
"notifications": "Benachrichtigungs-Einstellungen",
"notifications": "Benachrichtigungseinstellungen",
"enrichments": "Erweiterte Statistiken - Frigate",
"cameraManagement": "Kameras verwalten - Frigate",
"cameraReview": "Kamera Einstellungen prüfen - Frigate"
"cameraReview": "Kameraeinstellungen prüfen - Frigate"
},
"menu": {
"ui": "Benutzeroberfläche",
@ -41,7 +41,7 @@
"noCamera": "Keine Kamera"
},
"general": {
"title": "Allgemeine Einstellungen",
"title": "Einstellungen der Benutzeroberfläche",
"liveDashboard": {
"title": "Live Übersicht",
"playAlertVideos": {
@ -51,6 +51,14 @@
"automaticLiveView": {
"desc": "Wechsle automatisch zur Live Ansicht der Kamera, wenn einen Aktivität erkannt wurde. Wenn du diese Option deaktivierst, werden die statischen Kamerabilder auf der Liveübersicht nur einmal pro Minute aktualisiert.",
"label": "Automatische Live Ansicht"
},
"displayCameraNames": {
"label": "Immer Namen der Kamera anzeigen",
"desc": "Kamerabezeichnung immer im einem Chip im Live-View-Dashboard für mehrere Kameras anzeigen."
},
"liveFallbackTimeout": {
"label": "Live Player Ausfallzeitlimit",
"desc": "Wenn der hochwertige Live-Stream einer Kamera nicht verfügbar ist, wechsle nach dieser Anzahl von Sekunden in den Modus für geringe Bandbreite. Standard: 3."
}
},
"storedLayouts": {
@ -232,7 +240,8 @@
"alreadyExists": "Für diese Kamera existiert bereits eine Zone mit diesem Namen.",
"mustBeAtLeastTwoCharacters": "Der Zonenname muss aus mindestens 2 Zeichen bestehen.",
"mustNotBeSameWithCamera": "Der Zonenname darf nicht mit dem Kameranamen identisch sein.",
"mustNotContainPeriod": "Der Zonenname darf keine Punkte enthalten."
"mustNotContainPeriod": "Der Zonenname darf keine Punkte enthalten.",
"mustHaveAtLeastOneLetter": "Der Name der Zone muss mindestens einen Buchstaben enthalten."
}
},
"loiteringTime": {
@ -289,7 +298,7 @@
"zones": {
"edit": "Zone bearbeiten",
"toast": {
"success": "Die Zone ({{zoneName}}) wurde gespeichert. Starten Sie Frigate neu, um die Änderungen zu übernehmen."
"success": "Die Zone ({{zoneName}}) wurde gespeichert."
},
"desc": {
"documentation": "Dokumentation",
@ -311,7 +320,7 @@
"name": {
"title": "Name",
"inputPlaceHolder": "Geben Sie einen Namen ein…",
"tips": "Der Name muss aus mindestens 2 Zeichen bestehen und sollte nicht den Namen einer Kamera oder anderen Zone entsprechen."
"tips": "Die Bezeichnung muss mindestens 2 Zeichen lang sein, mindestens einen Buchstaben enthalten und darf nicht die Bezeichnung einer Kamera oder einer anderen Zone sein."
},
"objects": {
"title": "Objekte",
@ -352,8 +361,8 @@
"clickDrawPolygon": "Klicke, um ein Polygon auf dem Bild zu zeichnen.",
"toast": {
"success": {
"noName": "Bewegungsmaske wurde gespeichert. Starte Frigate neu, um die Änderungen zu übernehmen.",
"title": "{{polygonName}} wurde gespeichert. Starte Frigate neu, um die Änderungen zu übernehmen."
"noName": "Bewegungsmaske wurde gespeichert.",
"title": "{{polygonName}} wurde gespeichert."
}
},
"add": "Neue Bewegungsmaske",
@ -373,8 +382,8 @@
"documentTitle": "Objektmaske bearbeiten Frigate",
"toast": {
"success": {
"noName": "Objektmaske wurde gespeichert. Starte Frigate neu, um die Änderungen zu übernehmen.",
"title": "{{polygonName}} wurde gespeichert. Starte Frigate neu, um die Änderungen zu übernehmen."
"noName": "Objektmaske wurde gespeichert.",
"title": "{{polygonName}} wurde gespeichert."
}
},
"desc": {
@ -532,7 +541,16 @@
},
"match": "Passwörter stimmen überein",
"title": "Passwort",
"placeholder": "Passwort eingeben"
"placeholder": "Passwort eingeben",
"requirements": {
"title": "Passwort Anforderungen:",
"length": "Mindestens 8 Zeichen",
"uppercase": "Mindestens ein Großbuchstabe",
"digit": "Mindestens eine Ziffer",
"special": "Mindestens ein Sonderzeichen (!@#$%^&*(),.?\":{}|<>)"
},
"show": "Passwort anzeigen",
"hide": "Verberge Passwort"
},
"newPassword": {
"title": "Neues Passwort",
@ -542,7 +560,11 @@
}
},
"usernameIsRequired": "Benutzername ist erforderlich",
"passwordIsRequired": "Passwort benötigt"
"passwordIsRequired": "Passwort benötigt",
"currentPassword": {
"title": "Aktuelles Passwort",
"placeholder": "Gib Dein aktuelles Passwort ein"
}
},
"changeRole": {
"desc": "Berechtigungen für <strong>{{username}}</strong> aktualisieren",
@ -573,7 +595,11 @@
"setPassword": "Passwort festlegen",
"desc": "Erstelle ein sicheres Passwort, um dieses Konto zu schützen.",
"cannotBeEmpty": "Das Passwort darf nicht leer sein",
"doNotMatch": "Die Passwörter sind nicht identisch"
"doNotMatch": "Die Passwörter sind nicht identisch",
"currentPasswordRequired": "Aktuelles Passwort wird benötigt",
"incorrectCurrentPassword": "Aktuelles Passwort ist falsch",
"passwordVerificationFailed": "Passwort konnte nicht überprüft werden",
"multiDeviceWarning": "Alle anderen Geräte, auf denen Sie angemeldet sind, müssen sich innerhalb von {{refresh_time}} erneut anmelden. Sie können auch alle Benutzer dazu zwingen, sich sofort erneut zu authentifizieren, indem Sie Ihr JWT-Geheimnis rotieren."
}
}
},
@ -686,13 +712,13 @@
"semanticSearch": {
"reindexNow": {
"confirmDesc": "Sind Sie sicher, dass Sie alle verfolgten Objekteinbettungen neu indizieren wollen? Dieser Prozess läuft im Hintergrund, kann aber Ihre CPU auslasten und eine gewisse Zeit in Anspruch nehmen. Sie können den Fortschritt auf der Seite Explore verfolgen.",
"label": "Jetzt neu indizien",
"label": "Jetzt neu indizieren",
"desc": "Bei der Neuindizierung werden die Einbettungen für alle verfolgten Objekte neu generiert. Dieser Prozess läuft im Hintergrund und kann je nach Anzahl der verfolgten Objekte Ihre CPU auslasten und eine gewisse Zeit in Anspruch nehmen.",
"confirmTitle": "Neuinszenierung bestätigen",
"confirmTitle": "Neuindizierung bestätigen",
"confirmButton": "Neuindizierung",
"success": "Die Neuindizierung wurde erfolgreich gestartet.",
"alreadyInProgress": "Die Neuindizierung ist bereits im Gange.",
"error": "Neuindizierung konnte nicht gestartet werden: {{errorMessage}}"
"error": "Die Neuindizierung konnte nicht gestartet werden: {{errorMessage}}"
},
"modelSize": {
"small": {
@ -715,7 +741,7 @@
"desc": "Die Gesichtserkennung ermöglicht es, Personen Namen zuzuweisen, und wenn ihr Gesicht erkannt wird, ordnet Frigate den Namen der Person als Untertitel zu. Diese Informationen sind in der Benutzeroberfläche, den Filtern und in den Benachrichtigungen enthalten.",
"readTheDocumentation": "Lies die Dokumentation",
"modelSize": {
"label": "Modell Größe",
"label": "Modellgröße",
"desc": "Die Größe des für die Gesichtserkennung verwendeten Modells.",
"small": {
"title": "klein",
@ -741,7 +767,7 @@
"triggers": {
"documentTitle": "Auslöser",
"management": {
"title": "Auslöser Verwaltung",
"title": "Auslöser",
"desc": "Auslöser für {{camera}} verwalten. Verwenden Sie den Vorschaubild Typ, um ähnliche Vorschaubilder wie das ausgewählte verfolgte Objekt auszulösen, und den Beschreibungstyp, um ähnliche Beschreibungen wie den von Ihnen angegebenen Text auszulösen."
},
"addTrigger": "Auslöser hinzufügen",
@ -762,7 +788,9 @@
},
"actions": {
"alert": "Als Alarm markieren",
"notification": "Benachrichtigung senden"
"notification": "Benachrichtigung senden",
"sub_label": "Unterlabel hinzufügen",
"attribute": "Attribut hinzufügen"
},
"dialog": {
"createTrigger": {
@ -780,25 +808,28 @@
"form": {
"name": {
"title": "Name",
"placeholder": "Auslöser Name eingeben",
"placeholder": "Benennen Sie diesen Auslöser",
"error": {
"minLength": "Der Name muss mindestens 2 Zeichen lang sein.",
"invalidCharacters": "Der Name darf nur Buchstaben, Zahlen, Unterstriche und Bindestriche enthalten.",
"alreadyExists": "Ein Auslöser mit diesem Namen existiert bereits für diese Kamera."
}
},
"description": "Geben Sie einen eindeutigen Namen oder eine Beschreibung ein, um diesen Auslöser zu identifizieren"
},
"enabled": {
"description": "Diesen Auslöser aktivieren oder deaktivieren"
},
"type": {
"title": "Typ",
"placeholder": "Auslöser Typ wählen"
"placeholder": "Auslöser Typ wählen",
"description": "Auslösen, wenn eine ähnliche Beschreibung eines verfolgten Objekts erkannt wird",
"thumbnail": "Auslösen, wenn eine ähnliche Miniaturansicht eines verfolgten Objekts erkannt wird"
},
"content": {
"title": "Inhalt",
"imagePlaceholder": "Ein Bild auswählen",
"imagePlaceholder": "Miniaturansicht auswählen",
"textPlaceholder": "Inhaltstext eingeben",
"imageDesc": "Ein Bild auswählen, um diese Aktion auszulösen, wenn ein ähnliches Bild erkannt wird.",
"imageDesc": "Es werden nur die letzten 100 Miniaturansichten angezeigt. Wenn Sie die gewünschte Miniaturansicht nicht finden können, überprüfen Sie bitte frühere Objekte in „Explore“ und richten Sie dort über das Menü einen Trigger ein.",
"textDesc": "Einen Text eingeben, um diese Aktion auszulösen, wenn eine ähnliche Beschreibung eines verfolgten Objekts erkannt wird.",
"error": {
"required": "Inhalt ist erforderlich."
@ -809,11 +840,12 @@
"error": {
"min": "Schwellenwert muss mindestens 0 sein",
"max": "Schwellenwert darf höchstens 1 sein"
}
},
"desc": "Legen Sie den Ähnlichkeitsschwellenwert für diesen Trigger fest. Ein höherer Schwellenwert bedeutet, dass eine größere Übereinstimmung erforderlich ist, um den Trigger auszulösen."
},
"actions": {
"title": "Aktionen",
"desc": "Standardmäßig sendet Frigate eine MQTT-Nachricht für alle Trigger. Wähle eine zusätzliche Aktion aus, die ausgeführt werden soll, wenn dieser Trigger ausgelöst wird.",
"desc": "Standardmäßig sendet Frigate für alle Trigger eine MQTT-Nachricht. Unterbezeichnungen fügen den Triggernamen zur Objektbezeichnung hinzu. Attribute sind durchsuchbare Metadaten, die separat in den Metadaten des verfolgten Objekts gespeichert werden.",
"error": {
"min": "Mindesten eine Aktion muss ausgewählt sein."
}
@ -840,6 +872,23 @@
"semanticSearch": {
"title": "Semantische Suche ist deaktiviert",
"desc": "Semantische Suche muss aktiviert sein um Auslöser nutzen zu können."
},
"wizard": {
"title": "Auslöser erstellen",
"step1": {
"description": "Konfigurieren Sie die Grundeinstellungen für Ihren Auslöser."
},
"step2": {
"description": "Legen Sie den Inhalt fest, der diese Aktion auslöst."
},
"step3": {
"description": "Konfigurieren Sie den Schwellenwert und die Aktionen für diesen Trigger."
},
"steps": {
"nameAndType": "Name und Typ",
"configureData": "Daten konfigurieren",
"thresholdAndActions": "Schwellenwert und Maßnahmen"
}
}
},
"roles": {
@ -893,7 +942,7 @@
"updateCameras": "Kameras für Rolle {{role}} aktualisiert",
"deleteRole": "Rolle {{role}} erfolgreich gelöscht",
"userRolesUpdated_one": "{{count}} Benutzer, denen diese Rolle zugewiesen wurde, wurden auf „Zuschauer“ aktualisiert, der Zugriff auf alle Kameras hat.",
"userRolesUpdated_other": ""
"userRolesUpdated_other": "{{count}} Benutzer, denen diese Rollen zugewiesen wurde, wurden auf „Zuschauer“ aktualisiert, der Zugriff auf alle Kameras habem."
},
"error": {
"createRoleFailed": "Fehler beim Erstellen der Rolle: {{errorMessage}}",
@ -909,7 +958,8 @@
"steps": {
"nameAndConnection": "Name & Verbindung",
"streamConfiguration": "Stream Konfiguration",
"validationAndTesting": "Überprüfung & Testen"
"validationAndTesting": "Überprüfung & Testen",
"probeOrSnapshot": "Test oder Momentaufnahme"
},
"save": {
"success": "Neue Kamera {{cameraName}} erfolgreich hinzugefügt.",
@ -926,8 +976,8 @@
"testFailed": "Stream Test fehlgeschlagen: {{error}}"
},
"step1": {
"description": "Gib deine Kameradaten ein und teste die Verbindung.",
"cameraName": "Kamera-Name",
"description": "Geben Sie Ihre Kameradaten ein und wählen Sie, ob Sie die Kamera automatisch erkennen lassen oder die Marke manuell auswählen möchten.",
"cameraName": "Kameraname",
"cameraNamePlaceholder": "z.B. vordere_tür oder Hof Übersicht",
"host": "Host/IP Adresse",
"port": "Port",
@ -936,8 +986,8 @@
"password": "Passwort",
"passwordPlaceholder": "Optional",
"selectTransport": "Transport-Protokoll auswählen",
"cameraBrand": "Kamera-Hersteller",
"selectBrand": "Wähle die Kamera-Hersteller für die URL-Vorlage aus",
"cameraBrand": "Kamerahersteller",
"selectBrand": "Wähle die Kamerahersteller für die URL-Vorlage aus",
"customUrl": "Benutzerdefinierte Stream-URL",
"brandInformation": "Hersteller Information",
"brandUrlFormat": "Für Kameras mit RTSP URL nutze folgendes Format: {{exampleUrl}}",
@ -950,21 +1000,31 @@
"noSnapshot": "Es kann kein Snapshot aus dem konfigurierten Stream abgerufen werden."
},
"errors": {
"brandOrCustomUrlRequired": "Wählen Sie entweder einen Kamera-Hersteller mit Host/IP aus oder wählen Sie „Andere“ mit einer benutzerdefinierten URL",
"nameRequired": "Kamera-Name benötigt",
"nameLength": "Kamera-Name darf höchsten 64 Zeichen lang sein",
"invalidCharacters": "Kamera-Name enthält ungültige Zeichen",
"nameExists": "Kamera-Name existiert bereits",
"brandOrCustomUrlRequired": "Wählen Sie entweder einen Kamerahersteller mit Host/IP aus oder wählen Sie „Andere“ mit einer benutzerdefinierten URL",
"nameRequired": "Der Kameraname wird benötigt",
"nameLength": "Der Kameraname darf höchsten 64 Zeichen lang sein",
"invalidCharacters": "Der Kameraname enthält ungültige Zeichen",
"nameExists": "Der Kameraname existiert bereits",
"brands": {
"reolink-rtsp": "Reolink RTSP wird nicht empfohlen. Es wird empfohlen, http in den Kameraeinstellungen zu aktivieren und den Kamera-Assistenten neu zu starten."
}
},
"customUrlRtspRequired": "Benutzerdefinierte URLs müssen mit „rtsp://“ beginnen. Für Nicht-RTSP-Kamerastreams ist eine manuelle Konfiguration erforderlich."
},
"docs": {
"reolink": "https://docs.frigate.video/configuration/camera_specific.html#reolink-cameras"
}
},
"connectionSettings": "Verbindungseinstellungen",
"detectionMethod": "Stream Erkennungsmethode",
"onvifPort": "ONVIF Port",
"probeMode": "Untersuche Kamera",
"detectionMethodDescription": "Suchen Sie die Kamera mit ONVIF (sofern unterstützt), um die URLs der Kamerastreams zu finden, oder wählen Sie manuell die Kameramarke aus, um vordefinierte URLs zu verwenden. Um eine benutzerdefinierte RTSP-URL einzugeben, wählen Sie die manuelle Methode und dann „Andere“.",
"onvifPortDescription": "Bei Kameras, die ONVIF unterstützen, ist dies in der Regel 80 oder 8080.",
"useDigestAuth": "Digest-Authentifizierung verwenden",
"useDigestAuthDescription": "Verwenden Sie die HTTP-Digest-Authentifizierung für ONVIF. Einige Kameras erfordern möglicherweise einen speziellen ONVIF-Benutzernamen/ein spezielles ONVIF-Passwort anstelle des Standard-Admin-Benutzers.",
"manualMode": "Manuelle Auswahl"
},
"step2": {
"description": "Konfigurieren Sie Stream-Rollen und fügen Sie zusätzliche Streams für Ihre Kamera hinzu.",
"description": "Suchen Sie in der Kamera nach verfügbaren Streams oder konfigurieren Sie manuelle Einstellungen basierend auf der von Ihnen ausgewählten Erkennungsmethode.",
"streamsTitle": "Kamera Streams",
"addStream": "Stream hinzufügen",
"addAnotherStream": "Weiteren Stream hinzufügen",
@ -983,8 +1043,8 @@
"audio": "Audio"
},
"testStream": "Verbindung testen",
"testSuccess": "Stream erfolgreich getestet!",
"testFailed": "Stream-Test fehlgeschlagen",
"testSuccess": "Verbindung erfolgreich getestet!",
"testFailed": "Verbindungstest fehlgeschlagen. Bitte überprüfen Sie ihre Eingaben und versuchen Sie es erneut.",
"testFailedTitle": "Test fehlgeschlagen",
"connected": "Verbunden",
"notConnected": "Nicht verbunden",
@ -1000,10 +1060,42 @@
"featuresPopover": {
"title": "Stream Funktionen",
"description": "Verwende go2rtc Restreaming, um die Verbindungen zu deiner Kamera zu reduzieren."
},
"streamDetails": "Verbindungsdetails",
"probing": "Kamera wird geprüft...",
"retry": "Wiederholen",
"testing": {
"probingMetadata": "Metadaten der Kamera werden überprüft...",
"fetchingSnapshot": "Kamera-Schnappschuss wird abgerufen..."
},
"probeFailed": "Fehler beim Untersuchen der Kamera: {{error}}",
"probingDevice": "Untersuche Gerät...",
"probeSuccessful": "Erkennung erfolgreich",
"probeError": "Erkennungsfehler",
"probeNoSuccess": "Erkennung fehlgeschlagen",
"deviceInfo": "Geräteinformationen",
"manufacturer": "Hersteller",
"model": "Modell",
"firmware": "Firmware",
"profiles": "Profile",
"ptzSupport": "PTZ Unterstützung",
"autotrackingSupport": "Unterstützung für Autoverfolgung",
"presets": "Voreinstellung",
"rtspCandidates": "RTSP Kandidaten",
"rtspCandidatesDescription": "Die folgenden RTSP-URLs wurden bei der Kameraerkennung gefunden. Testen Sie die Verbindung, um die Stream-Metadaten anzuzeigen.",
"noRtspCandidates": "Es wurden keine RTSP-URLs von der Kamera gefunden. Möglicherweise sind Ihre Anmeldedaten falsch oder die Kamera unterstützt ONVIF oder die Methode zum Abrufen von RTSP-URLs nicht. Gehen Sie zurück und geben Sie die RTSP-URL manuell ein.",
"candidateStreamTitle": "Kandidate {{number}}",
"useCandidate": "Verwenden",
"uriCopy": "Kopieren",
"uriCopied": "URI in die Zwischenablage kopiert",
"testConnection": "Test Verbindung",
"toggleUriView": "Klicken Sie hier, um die vollständige URI zu sehen",
"errors": {
"hostRequired": "Host/IP adresse wird benötigt"
}
},
"step3": {
"description": "Endgültige Validierung und Analyse vor dem Speichern Ihrer neuen Kamera. Verbinde jeden Stream vor dem Speichern.",
"description": "Konfigurieren Sie Stream-Rollen und fügen Sie zusätzliche Streams für Ihre Kamera hinzu",
"validationTitle": "Stream Validierung",
"connectAllStreams": "Verbinde alle Streams",
"reconnectionSuccess": "Wiederverbindung erfolgreich.",
@ -1040,6 +1132,90 @@
"hikvision": {
"substreamWarning": "Substream 1 ist auf eine niedrige Auflösung festgelegt. Viele Hikvision-Kameras unterstützen zusätzliche Substreams, die in den Kameraeinstellungen aktiviert werden müssen. Es wird empfohlen, diese Streams zu nutzen, sofern sie verfügbar sind."
}
},
"streamsTitle": "Kamera Stream",
"addStream": "Stream hinzufügen",
"addAnotherStream": "weiteren Stream hinzufügen",
"streamUrl": "Stream URL",
"streamUrlPlaceholder": "rtsp://benutzername:passwort@host:port/path",
"selectStream": "Auswahl Stream",
"searchCandidates": "Suche Kandidaten...",
"noStreamFound": "Kein Stream gefunden",
"url": "URL",
"resolution": "Auflösung",
"selectResolution": "Wähle Auflösung",
"quality": "Qualität",
"selectQuality": "Wähle Qualität",
"roleLabels": {
"detect": "Objekterkennung",
"record": "Aufnahme",
"audio": "Ton"
},
"testStream": "Verbindungstest",
"testSuccess": "Verbindungstest erfolgreich!",
"testFailed": "Verbindungstest fehlgeschlagen",
"testFailedTitle": "Test fehlgeschlagen",
"connected": "Verbunden",
"notConnected": "nicht verbunden",
"featuresTitle": "Funktionen",
"go2rtc": "Verbindungen zur Kamera reduzieren",
"detectRoleWarning": "Mindestens ein Stream muss die Rolle „detect“ haben, um fortfahren zu können.",
"rolesPopover": {
"title": "Stream Rollen",
"detect": "Hauptfeed für die Objekterkennung.",
"record": "Speichert Segmente des Video-Feeds basierend auf den Konfigurationseinstellungen.",
"audio": "Feed für audiobasierte Erkennung."
},
"featuresPopover": {
"title": "Stream Funktionen",
"description": "Verwenden Sie go2rtc-Restreaming, um die Verbindungen zu Ihrer Kamera zu reduzieren."
}
},
"step4": {
"description": "Endgültige Validierung und Analyse vor dem Speichern Ihrer neuen Kamera. Verbinden Sie jeden Stream vor dem Speichern.",
"validationTitle": "Stream-Validierung",
"connectAllStreams": "Alle Streams verbinden",
"reconnectionSuccess": "Wiederverbindung erfolgreich.",
"reconnectionPartial": "Einige Streams konnten nicht wieder verbunden werden.",
"streamUnavailable": "Stream Vorschau nicht verfügbar",
"reload": "neu Laden",
"connecting": "Verbinden...",
"streamTitle": "Stream {{number}}",
"valid": "gültig",
"failed": "fehlgeschlagen",
"notTested": "nicht getestet",
"connectStream": "Verbinden",
"connectingStream": "Verbinden",
"disconnectStream": "getrennt",
"estimatedBandwidth": "Voraussichtliche Bandbreite",
"roles": "Rollen",
"ffmpegModule": "Stream-Kompatibilitätsmodus verwenden",
"ffmpegModuleDescription": "Wenn der Stream nach mehreren Versuchen nicht geladen wird, versuchen Sie, diese Option zu aktivieren. Wenn diese Option aktiviert ist, verwendet Frigate das ffmpeg-Modul mit go2rtc. Dies kann zu einer besseren Kompatibilität mit einigen Kamerastreams führen.",
"none": "keiner",
"error": "Fehler",
"streamValidated": "Steam {{number}} erfolgreich validiert",
"streamValidationFailed": "Stream {{number}} Validierung fehlgeschlagen",
"saveAndApply": "Neue Kamera speichern",
"saveError": "Ungültige Konfiguration. Bitte überprüfen Sie Ihre Einstellungen.",
"issues": {
"title": "Stream-Validierung",
"videoCodecGood": "Video codec ist {{codec}}.",
"audioCodecGood": "Audio codec ist {{codec}}.",
"resolutionHigh": "Eine Auflösung von {{resolution}} kann zu einem erhöhten Ressourcenverbrauch führen.",
"resolutionLow": "Eine Auflösung von {{resolution}} ist möglicherweise zu gering, um kleine Objekte zuverlässig zu erkennen.",
"noAudioWarning": "Für diesen Stream wurde kein Ton erkannt, die Aufzeichnungen enthalten keinen Ton.",
"audioCodecRecordError": "Der AAC-Audio-Codec ist erforderlich, um Audio in Aufnahmen zu unterstützen.",
"audioCodecRequired": "Ein Audiostream ist erforderlich, um die Audioerkennung zu unterstützen.",
"restreamingWarning": "Die Reduzierung der Verbindungen zur Kamera für den Aufzeichnungsstream kann zu einer geringfügigen Erhöhung der CPU-Auslastung führen.",
"brands": {
"reolink-rtsp": "Reolink RTSP wird nicht empfohlen. Aktivieren Sie HTTP in den Firmware-Einstellungen der Kamera und starten Sie den Assistenten neu."
},
"dahua": {
"substreamWarning": "Substream 1 ist auf eine niedrige Auflösung festgelegt. Viele Kameras von Dahua / Amcrest / EmpireTech unterstützen zusätzliche Substreams, die in den Kameraeinstellungen aktiviert werden müssen. Es wird empfohlen, diese Streams zu überprüfen und zu nutzen, sofern sie verfügbar sind."
},
"hikvision": {
"substreamWarning": "Substream 1 ist auf eine niedrige Auflösung festgelegt. Viele Hikvision-Kameras unterstützen zusätzliche Substreams, die in den Kameraeinstellungen aktiviert werden müssen. Es wird empfohlen, diese Streams zu überprüfen und zu nutzen, sofern sie verfügbar sind."
}
}
}
},
@ -1057,9 +1233,9 @@
"add": "Kamera hinzufügen",
"edit": "Kamera bearbeiten",
"description": "Konfiguriere die Kameraeinstellungen, einschließlich Streams und Rollen.",
"name": "Kamera-Name",
"nameRequired": "Kamera-Name benötigt",
"nameLength": "Kamera-Name darf maximal 64 Zeichen lang sein.",
"name": "Kameraname",
"nameRequired": "Kameraname benötigt",
"nameLength": "Kameraname darf maximal 64 Zeichen lang sein.",
"namePlaceholder": "z.B. vordere_tür oder Hof Übersicht",
"enabled": "Aktiviert",
"ffmpeg": {
@ -1094,14 +1270,14 @@
"desc": "Generative KI Review Beschreibungen für diese Kamera vorübergehend aktivieren/deaktivieren. Wenn diese Option deaktiviert ist, werden für die Review Elemente dieser Kamera keine KI-generierten Beschreibungen angefordert."
},
"review": {
"title": "Review",
"title": "Überprüfung",
"desc": "Aktivieren/deaktivieren Sie vorübergehend Warnmeldungen und Erkennungen für diese Kamera, bis Frigate neu gestartet wird. Wenn diese Funktion deaktiviert ist, werden keine neuen Überprüfungselemente generiert. ",
"alerts": "Warnungen ",
"detections": "Erkennungen "
},
"reviewClassification": {
"title": "Bewertungsklassifizierung",
"desc": "Frigate kategorisiert zu überprüfende Elemente als Warnmeldungen und Erkennungen. Standardmäßig werden alle Objekte vom Typ <em>person</em> und <em>car</em> als Warnmeldungen betrachtet. Sie können die Kategorisierung der zu überprüfenden Elemente verfeinern, indem Sie die erforderlichen Zonen für sie konfigurieren.",
"desc": "Frigate kategorisiert zu überprüfende Elemente als Warnmeldungen und Erkennungen. Standardmäßig werden alle Objekte vom Typ <em>Person</em> und <em>Auto</em> als Warnmeldungen betrachtet. Sie können die Kategorisierung der zu überprüfenden Elemente verfeinern, indem Sie die erforderlichen Zonen für sie konfigurieren.",
"noDefinedZones": "Für diese Kamera sind keine Zonen definiert.",
"objectAlertsTips": "Alle {{alertsLabels}}-Objekte auf {{cameraName}} werden als Warnmeldungen angezeigt.",
"zoneObjectAlertsTips": "Alle {{alertsLabels}}-Objekte, die in {{zone}} auf {{cameraName}} erkannt wurden, werden als Warnmeldungen angezeigt.",

View File

@ -31,7 +31,12 @@
"gpuDecoder": "GPU Decoder",
"gpuEncoder": "GPU Encoder",
"npuUsage": "NPU Verwendung",
"npuMemory": "NPU Speicher"
"npuMemory": "NPU Speicher",
"intelGpuWarning": {
"title": "Intel GPU Statistik Warnung",
"message": "GPU stats nicht verfügbar",
"description": "Dies ist ein bekannter Fehler in den GPU-Statistik-Tools von Intel (intel_gpu_top), bei dem das Tool ausfällt und wiederholt eine GPU-Auslastung von 0 % anzeigt, selbst wenn die Hardwarebeschleunigung und die Objekterkennung auf der (i)GPU korrekt funktionieren. Dies ist kein Fehler von Frigate. Du kannst den Host neu starten, um das Problem vorübergehend zu beheben und zu prüfen, ob die GPU korrekt funktioniert. Dies hat keine Auswirkungen auf die Leistung."
}
},
"title": "Allgemein",
"detector": {
@ -167,10 +172,17 @@
"face_recognition": "Gesichts Erkennung",
"image_embedding": "Bild Embedding",
"yolov9_plate_detection_speed": "YOLOv9 Kennzeichenerkennungsgeschwindigkeit",
"yolov9_plate_detection": "YOLOv9 Kennzeichenerkennung"
"yolov9_plate_detection": "YOLOv9 Kennzeichenerkennung",
"review_description": "Bewertung Beschreibung",
"review_description_speed": "Bewertungsbeschreibung Geschwindigkeit",
"review_description_events_per_second": "Bewertungsbeschreibung",
"object_description": "Objekt Beschreibung",
"object_description_speed": "Objektbeschreibung Geschwindigkeit",
"object_description_events_per_second": "Objektbeschreibung"
},
"title": "Optimierungen",
"infPerSecond": "Rückschlüsse pro Sekunde"
"infPerSecond": "Rückschlüsse pro Sekunde",
"averageInf": "Durchschnittliche Inferenzzeit"
},
"stats": {
"healthy": "Das System läuft problemlos",

View File

@ -124,7 +124,7 @@
"twoWayTalk": {
"tips.documentation": "Leer la documentación ",
"available": "La conversación bidireccional está disponible para esta transmisión",
"unavailable": "La conversación bidireccional está disponible para esta transmisión",
"unavailable": "La conversación bidireccional no está disponible para esta transmisión",
"tips": "Tu dispositivo debe soportar la función y WebRTC debe estar configurado para la conversación bidireccional."
},
"lowBandwidth": {

View File

@ -0,0 +1,28 @@
{
"bicycle": "Jalgratas",
"car": "Auto",
"motorcycle": "Mootorratas",
"bus": "Buss",
"train": "Rong",
"boat": "Väike laev",
"bird": "Lind",
"cat": "Kass",
"dog": "Koer",
"horse": "Hobune",
"sheep": "Lammas",
"skateboard": "Rula",
"breathing": "Hingamine",
"wheeze": "Kähinal hingamine",
"snoring": "Norskamine",
"pets": "Lemmikloomad",
"animal": "Loom",
"children_playing": "Laste mängimine",
"crowd": "Rahvamass",
"applause": "Plaksutamine",
"heartbeat": "Südamelöök",
"heart_murmur": "Südamekahin",
"clapping": "Käteplagin",
"finger_snapping": "Sõrmede naksutamine",
"hands": "Käed",
"camera": "Kaamera"
}

View File

@ -0,0 +1,118 @@
{
"time": {
"untilForTime": "Kuni {{time}}",
"today": "Täna",
"untilForRestart": "Kuni Frigate käivitub uuesti.",
"untilRestart": "Kuni uuesti käivitamiseni",
"ago": "{{timeAgo}} tagasi",
"justNow": "Hetk tagasi",
"yesterday": "Eile",
"last7": "Viimase 7 päeva jooksul",
"last14": "Viimase 14 päeva jooksul",
"last30": "Viimase 30 päeva jooksul",
"thisWeek": "Sel nädalal",
"lastWeek": "Eelmisel nädalal",
"thisMonth": "Sel kuul",
"lastMonth": "Eelmisel kuul",
"5minutes": "5 minutit",
"10minutes": "10 minutit",
"30minutes": "30 minutit",
"1hour": "1 tund",
"12hours": "12 tundi",
"24hours": "24 tundi",
"pm": "pl",
"am": "el",
"yr": "{{time}} a",
"year_one": "{{time}} aasta",
"year_other": "{{time}} aastat",
"mo": "{{time}} k",
"month_one": "{{time}} kuu",
"month_other": "{{time}} kuud",
"d": "{{time}} pv",
"day_one": "{{time}} päev",
"day_other": "{{time}} päeva",
"h": "{{time}} t",
"hour_one": "{{time}} tund",
"hour_other": "{{time}} tundi",
"m": "{{time}} min",
"minute_one": "{{time}} minut",
"minute_other": "{{time}} minutit",
"s": "{{time}} sek",
"second_one": "{{time}} sekund",
"second_other": "{{time}} sekundit"
},
"menu": {
"user": {
"setPassword": "Lisa salasõna"
},
"live": {
"allCameras": "Kõik kaamerad"
},
"settings": "Seadistused",
"language": {
"withSystem": {
"label": "Kasuta keele jaoks süsteemi seadistusi"
}
}
},
"unit": {
"speed": {
"mph": "ml/t",
"kph": "km/t"
},
"data": {
"kbps": "kB/sek",
"mbps": "MB/sek",
"gbps": "GB/sek",
"kbph": "kB/t",
"mbph": "MB/t",
"gbph": "GB/t"
}
},
"button": {
"apply": "Rakenda",
"reset": "Lähtesta",
"done": "Valmis",
"enabled": "Kasutusel",
"enable": "Võta kasutusele",
"disabled": "Pole kasutusel",
"disable": "Eemalda kasutuselt",
"save": "Salvesta",
"saving": "Salvestan…",
"cancel": "Katkesta",
"close": "Sulge",
"copy": "Kopeeri",
"back": "Tagasi",
"history": "Ajalugu",
"fullscreen": "Täisekraanivaade",
"exitFullscreen": "Välju täisekraanivaatest",
"pictureInPicture": "Pilt pildis vaade",
"twoWayTalk": "Kahepoolne kõneside",
"cameraAudio": "Kaamera heli",
"on": "SEES",
"off": "VÄLJAS",
"edit": "Muuda",
"copyCoordinates": "Kopeeri koordinaadid",
"delete": "Kustuta",
"yes": "Jah",
"no": "Ei",
"download": "Laadi alla",
"info": "Teave"
},
"label": {
"back": "Mine tagasi",
"hide": "Peida: {{item}}",
"show": "Näita: {{item}}",
"all": "Kõik",
"ID": "Tunnus",
"none": "Puudub"
},
"list": {
"two": "{{0}} ja {{1}}",
"many": "{{items}} ja {{last}}",
"separatorWithSpace": ", "
},
"field": {
"optional": "Valikuline"
}
}

View File

@ -0,0 +1,16 @@
{
"form": {
"password": "Salasõna",
"errors": {
"passwordRequired": "Salasõna on vajalik",
"usernameRequired": "Kasutajanimi on vajalik",
"rateLimit": "Lubatud päringute ülempiir on käes. Proovi hiljem uuesti.",
"loginFailed": "Sisselogimine ei õnnestunud",
"unknownError": "Tundmatu viga. Lisateavet leiad logidest.",
"webUnknownError": "Tundmatu viga. Lisateavet leiad konsooli logidest."
},
"user": "Kasutajanimi",
"login": "Logi sisse",
"firstTimeLogin": "Kas proovid esimest korda logida sisse? Kasutajanimi ja salasõna leiduvad Frigate'i logides."
}
}

View File

@ -0,0 +1,53 @@
{
"group": {
"label": "Kaameragrupid",
"camera": {
"setting": {
"label": "Kaamerate voogedastuse seadistused",
"title": "Voogedastuse seadistused: {{cameraName}}",
"stream": "Voogedastus",
"placeholder": "Vali videovoog",
"streamMethod": {
"label": "Voogedastuse meetod",
"placeholder": "Vali voogedastuse meetod"
}
}
},
"add": "Lisa kaameragrupp",
"edit": "Muuda kaameragruppi",
"delete": {
"label": "Kustuta kaameragrupp",
"confirm": {
"title": "Kinnita kustutamine",
"desc": "Kas oled kindel, et soovid kustutada kaameragrupi: <em>{{name}}</em>?"
}
},
"name": {
"label": "Nimi",
"placeholder": "Sisesta nimi…",
"errorMessage": {
"mustLeastCharacters": "Kaameragrupi nimi peab olema vähemalt 2 tähemärki pikk.",
"exists": "Sellise nimega kaameragrupp on juba olemas.",
"nameMustNotPeriod": "Kaameragrupi nimes ei tohi olla tühikuid.",
"invalid": "Vigane kaameragrupi nimi."
}
},
"cameras": {
"label": "Kaamerad",
"desc": "Vali kaamerad selle grupi jaoks."
},
"icon": "Ikoon",
"success": "Kaameragrupp ({{name}}) on salvestatud."
},
"debug": {
"options": {
"label": "Seadistused",
"title": "Valikud",
"showOptions": "Näita valikuid",
"hideOptions": "Peida valikud"
},
"boundingBox": "Piirdekast",
"timestamp": "Ajatempel",
"zones": "Tsoonid"
}
}

View File

@ -0,0 +1,6 @@
{
"restart": {
"title": "Kas oled kindel, et soovid Frigate'i uuesti käivitada?",
"button": "Käivita uuesti"
}
}

View File

@ -0,0 +1,57 @@
{
"filter": "Filter",
"trackedObjectDelete": {
"toast": {
"error": "Jälgitavate objektide kustutamine ei õnnestunud: {{errorMessage}}",
"success": "Jälgitavate objektide kustutamine õnnestus."
}
},
"cameras": {
"all": {
"title": "Kõik kaamerad",
"short": "Kaamerad"
}
},
"labels": {
"all": {
"title": "Kõik sildid",
"short": "Sildid"
}
},
"subLabels": {
"all": "Kõik alamsildid"
},
"dates": {
"all": {
"title": "Kõik kuupäevad",
"short": "Kuupäevad"
}
},
"explore": {
"settings": {
"title": "Seadistused",
"defaultView": {
"title": "Vaikimisi vaade",
"summary": "Kokkuvõte",
"unfilteredGrid": "Filtreerimata ruudustik"
},
"gridColumns": {
"title": "Ruudustiku veerud",
"desc": "Vali ruudustikus kuvatavate veergude arv."
},
"searchSource": {
"options": {
"thumbnailImage": "Pisipilt",
"description": "Kirjeldus"
}
}
}
},
"logSettings": {
"loading": {
"title": "Laadin"
},
"disableLogStreaming": "Keela logi voogedastus",
"allLogs": "Kõik logid"
}
}

View File

@ -0,0 +1,8 @@
{
"iconPicker": {
"selectIcon": "Vali ikoon",
"search": {
"placeholder": "Otsi ikooni…"
}
}
}

View File

@ -0,0 +1,10 @@
{
"button": {
"downloadVideo": {
"label": "Laadi video alla",
"toast": {
"success": "Sinu ülevaatamisel video allalaadimine algas."
}
}
}
}

View File

@ -0,0 +1,3 @@
{
"noRecordingsFoundForThisTime": "Hetkel ei leidu ühtego salvestust"
}

View File

@ -0,0 +1,52 @@
{
"person": "Inimene",
"bicycle": "Jalgratas",
"car": "Auto",
"motorcycle": "Mootorratas",
"airplane": "Lennuk",
"bus": "Buss",
"train": "Rong",
"boat": "Väike laev",
"traffic_light": "Valgusfoor",
"fire_hydrant": "Tuletõrjehüdrant",
"street_sign": "Liiklusmärk",
"stop_sign": "Stoppmärk",
"parking_meter": "Parkimispiletite automaat",
"bench": "Istepink",
"bird": "Lind",
"cat": "Kass",
"dog": "Koer",
"horse": "Hobune",
"sheep": "Lammas",
"cow": "Lehm",
"elephant": "Elevant",
"bear": "Karu",
"zebra": "Sebra",
"giraffe": "Kaelkirjak",
"hat": "Müts",
"backpack": "Seljakott",
"umbrella": "Vihmavari",
"shoe": "King",
"eye_glasses": "Prillid",
"handbag": "Käekott",
"tie": "Lips",
"suitcase": "Kohver",
"frisbee": "Lendav taldrik",
"skis": "Suusad",
"snowboard": "Lumelaud",
"sports_ball": "Pall",
"kite": "Tuulelohe",
"baseball_bat": "Pesapallikurikas",
"baseball_glove": "Pesapallikinnas",
"skateboard": "Rula",
"surfboard": "Surfilaud",
"tennis_racket": "Tennisereket",
"animal": "Loom",
"bottle": "Pudel",
"plate": "Taldrik",
"wine_glass": "Veiniklaas",
"cup": "Kruus",
"fork": "Kahvel",
"knife": "Nuga",
"spoon": "Lusikas"
}

View File

@ -0,0 +1,8 @@
{
"toast": {
"success": {
"deletedModel_one": "{{count}} mudeli kustutamine õnnestus",
"deletedModel_other": "{{count}} mudeli kustutamine õnnestus"
}
}
}

View File

@ -0,0 +1 @@
{}

View File

@ -0,0 +1,31 @@
{
"alerts": "Häired",
"allCameras": "Kõik kaamerad",
"detail": {
"settings": "Üksikasjaliku vaate seadistused"
},
"detections": "Tuvastamise tulemused",
"motion": {
"label": "Liikumine",
"only": "Vaid liikumine"
},
"empty": {
"alert": "Ülevaatamiseks ei leidu ühtegi häiret",
"detection": "Ülevaatamiseks ei leidu ühtegi tuvastamist",
"motion": "Liikumise andmeid ei leidu"
},
"select_all": "Kõik",
"camera": "Kaamera",
"detected": "tuvastatud",
"normalActivity": "Tavaline",
"needsReview": "Vajab ülevaatamist",
"securityConcern": "Võib olla turvaprobleem",
"timeline": "Ajajoon",
"timeline.aria": "Vali ajajoon",
"zoomIn": "Suumi sisse",
"zoomOut": "Suumi välja",
"events": {
"label": "Sündmused",
"aria": "Vali sündmused"
}
}

View File

@ -0,0 +1,19 @@
{
"trackedObjectsCount_one": "{{count}} jälgitav objekt ",
"trackedObjectsCount_other": "{{count}} jälgitavat objekti ",
"fetchingTrackedObjectsFailed": "Viga jälgitavate objektide laadimisel: {{errorMessage}}",
"noTrackedObjects": "Ühtegi jälgitavat objekti ei leidunud",
"itemMenu": {
"findSimilar": {
"aria": "Otsi sarnaseid jälgitavaid objekte"
}
},
"trackingDetails": {
"annotationSettings": {
"showAllZones": {
"title": "Näita kõiki tsoone",
"desc": "Kui objekt on sisenenud tsooni, siis alati näida tsooni märgistust."
}
}
}
}

View File

@ -0,0 +1,23 @@
{
"documentTitle": "Eksport Frigate'ist",
"search": "Otsi",
"noExports": "Eksporditud sisu ei leidu",
"deleteExport": "Kustuta eksporditud sisu",
"deleteExport.desc": "Kas sa oled kindel et soovid „{{exportName}}“ kustutada?",
"editExport": {
"title": "Muuda eksporditud sisu nime",
"desc": "Sisesta eksporditud sisu jaoks uus nimi.",
"saveExport": "Salvesta eksporditud sisu"
},
"tooltip": {
"shareExport": "Jaga eksporditud sisu",
"downloadVideo": "Laadi video alla",
"editName": "Muuda nime",
"deleteExport": "Kustuta eksporditud sisu"
},
"toast": {
"error": {
"renameExportFailed": "Eksporditud sisu nime muutmine ei õnnestunud: {{errorMessage}}"
}
}
}

View File

@ -0,0 +1,5 @@
{
"button": {
"uploadImage": "Laadi pilt üles"
}
}

View File

@ -0,0 +1,14 @@
{
"muteCameras": {
"enable": "Summuta kõik kaamerad",
"disable": "Lõpeta kõikide kaamerate summutamine"
},
"streamingSettings": "Voogedastuse seadistused",
"cameraSettings": {
"title": "Seadistused: {{camera}}",
"cameraEnabled": "Kaamera on kasutusel",
"objectDetection": "Objektide tuvastamine",
"audioDetection": "Heli tuvastus",
"transcription": "Heli üleskirjutus"
}
}

View File

@ -0,0 +1,12 @@
{
"export": "Ekspordi",
"calendar": "Kalender",
"filter": "Filter",
"filters": "Filtrid",
"toast": {
"error": {
"noValidTimeSelected": "Ühtegi kehtivat ajavahemikku pole valitud",
"endTimeMustAfterStartTime": "Ajavahemiku lõpp peab olema peale algust"
}
}
}

View File

@ -0,0 +1,6 @@
{
"placeholder": {
"search": "Otsi…"
},
"search": "Otsi"
}

View File

@ -0,0 +1,139 @@
{
"cameraWizard": {
"step1": {
"password": "Salasõna",
"passwordPlaceholder": "Valikuline",
"customUrlPlaceholder": "rtsp://kasutajanimi:salasõna@host:port/asukoht",
"connectionSettings": "Ühenduse seadistused"
},
"step3": {
"streamUrlPlaceholder": "rtsp://kasutajanimi:salasõna@host:port/asukoht"
}
},
"users": {
"updatePassword": "Muuda salasõna",
"toast": {
"success": {
"updatePassword": "Salasõna muutmine õnnestus."
},
"error": {
"setPasswordFailed": "Salasõna salvestamine ei õnnestunud: {{errorMessage}}"
}
},
"table": {
"password": "Salasõna"
},
"dialog": {
"form": {
"password": {
"title": "Salasõna",
"placeholder": "Sisesta salasõna",
"confirm": {
"title": "Korda salasõna",
"placeholder": "Korda salasõna"
},
"strength": {
"title": "Salasõna tugevus: ",
"weak": "Nõrk",
"medium": "Keskmime",
"strong": "Tugev",
"veryStrong": "Väga tugev"
},
"match": "Salasõnad klapivad omavahel",
"notMatch": "Salasõnad ei klapi omavahel",
"show": "Näita salasõna",
"hide": "Peida salasõna",
"requirements": {
"title": "Salasõna reeglid:",
"length": "Vähemalt 8 tähemärki",
"uppercase": "Vähemalt üks suurtäht",
"digit": "Vähemalt üks number",
"special": "Vähemalt üks erimärk (!@#$%^&*(),.?\":{}|<>)"
}
},
"newPassword": {
"title": "Uus salasõna",
"placeholder": "Sisesta uus salasõna",
"confirm": {
"placeholder": "Sisesta uus salasõna uuesti"
}
},
"passwordIsRequired": "Salasõna on vajalik",
"currentPassword": {
"title": "Senine salasõna",
"placeholder": "Sisesta oma senine salasõna"
}
},
"createUser": {
"confirmPassword": "Palun kinnita oma uus salasõna"
},
"passwordSetting": {
"cannotBeEmpty": "Salasõna ei või jääda tühjaks",
"doNotMatch": "Salasõnad ei klapi omavahel",
"updatePassword": "Muuda kasutaja {{username}} salasõna",
"setPassword": "Sisesta salasõna",
"desc": "Selle kasutajakonto turvalisuse tagamiseks lisa tugev salasõna.",
"currentPasswordRequired": "Senine salasõna on vajalik",
"incorrectCurrentPassword": "Senine salasõna pole õige",
"passwordVerificationFailed": "Salasõna kontrollimine ei õnnestunud"
}
}
},
"debug": {
"boundingBoxes": {
"desc": "Näita jälgitavate objektide ümber märgiskaste"
}
},
"documentTitle": {
"default": "Seadistused - Frigate",
"authentication": "Autentimise seadistused - Frigate",
"cameraReview": "Kaamerate kordusvaatuste seadistused - Frigate",
"general": "Kasutajaliidese seadistused - Frigate",
"frigatePlus": "Frigate+ seadistused - Frigate",
"notifications": "Teavituste seadistused - Frigate"
},
"general": {
"title": "Kasutajaliidese seadistused",
"cameraGroupStreaming": {
"clearAll": "Kustuta kõik voogedastuse seadistused"
}
},
"cameraManagement": {
"backToSettings": "Tagasi kaameraseadistuste juurde"
},
"notification": {
"notificationSettings": {
"title": "Teavituste seadistused"
},
"globalSettings": {
"title": "Üldseadistused"
},
"deviceSpecific": "Seadmekohased seadistused",
"toast": {
"success": {
"settingSaved": "Teavituste seadistused on salvestatud."
}
}
},
"frigatePlus": {
"title": "Frigate+ seadistused",
"unsavedChanges": "Frigate+ seadistuste muudatused on salvestamata",
"toast": {
"success": "Frigate+ seadistuste muudatused on salvestatud. Muudatuste kasutuselevõtmiseks käivita Frigate uuesti."
}
},
"masksAndZones": {
"zones": {
"point_one": "{{count}} punkt",
"point_other": "{{count}} punkti"
},
"motionMasks": {
"point_one": "{{count}} punkt",
"point_other": "{{count}} punkti"
},
"objectMasks": {
"point_one": "{{count}} punkt",
"point_other": "{{count}} punkti"
}
}
}

View File

@ -0,0 +1,5 @@
{
"documentTitle": {
"general": "Üldine statistika - Frigate"
}
}

View File

@ -185,7 +185,7 @@
},
"label": "Mode sombre"
},
"review": "Événements",
"review": "Activités",
"explore": "Explorer",
"export": "Exporter",
"user": {
@ -247,7 +247,7 @@
"title": "Rôle",
"viewer": "Observateur",
"admin": "Administrateur",
"desc": "Les administrateurs ont un accès complet à toutes les fonctionnalités de l'interface Frigate. Les observateurs sont limités à la consultation des caméras, des événements, et à l'historique des enregistrements dans l'interface."
"desc": "Les administrateurs ont un accès complet à toutes les fonctionnalités de l'interface Frigate. Les observateurs sont limités à la consultation des caméras, des activités, et à l'historique des enregistrements dans l'interface."
},
"pagination": {
"next": {

View File

@ -65,7 +65,8 @@
"endTimeMustAfterStartTime": "L'heure de fin doit être postérieure à l'heure de début.",
"noVaildTimeSelected": "La plage horaire sélectionnée n'est pas valide."
},
"success": "Exportation démarrée avec succès. Consultez le fichier sur la page des exportations."
"success": "Exportation démarrée avec succès. Consultez le fichier sur la page des exportations.",
"view": "Vue"
},
"select": "Sélectionner",
"name": {
@ -109,19 +110,19 @@
"recording": {
"confirmDelete": {
"desc": {
"selected": "Êtes-vous sûr(e) de vouloir supprimer toutes les vidéos enregistrées associées à cet événement? <br /><br />Maintenez la touche <em>Maj</em> enfoncée pour éviter cette boîte de dialogue à l'avenir."
"selected": "Êtes-vous sûr(e) de vouloir supprimer toutes les vidéos enregistrées associées à cette activité? <br /><br />Maintenez la touche <em>Maj</em> enfoncée pour éviter cette boîte de dialogue à l'avenir."
},
"title": "Confirmer la suppression",
"toast": {
"success": "Les vidéos associées aux événements sélectionnés ont été supprimées.",
"success": "Les vidéos associées aux activités sélectionnées ont été supprimées.",
"error": "Échec de la suppression : {{error}}"
}
},
"button": {
"export": "Exporter",
"markAsReviewed": "Marquer comme vérifié",
"markAsReviewed": "Marquer comme traité",
"deleteNow": "Supprimer maintenant",
"markAsUnreviewed": "Marquer comme non vérifié"
"markAsUnreviewed": "Marquer comme non traité"
}
},
"imagePicker": {

View File

@ -83,7 +83,7 @@
}
},
"review": {
"showReviewed": "Afficher les éléments vérifiés"
"showReviewed": "Afficher les activités traitées"
},
"cameras": {
"label": "Filtre des caméras",

View File

@ -3,7 +3,7 @@
"downloadVideo": {
"label": "Télécharger la vidéo",
"toast": {
"success": "Le téléchargement de la vidéo de votre événement a commencé."
"success": "Le téléchargement de la vidéo a commencé."
}
}
}

View File

@ -1,5 +1,5 @@
{
"documentTitle": "Modèles de classification",
"documentTitle": "Modèles de classification - Frigate",
"button": {
"deleteClassificationAttempts": "Supprimer les images de classification",
"renameCategory": "Renommer la classe",
@ -152,7 +152,12 @@
"generateSuccess": "Génération des images d'exemple réussie",
"allImagesRequired_one": "Veuillez classifier toutes les images. {{count}} image restante.",
"allImagesRequired_many": "Veuillez classifier toutes les images. {{count}} images restantes.",
"allImagesRequired_other": "Veuillez classifier toutes les images. {{count}} images restantes."
"allImagesRequired_other": "Veuillez classifier toutes les images. {{count}} images restantes.",
"modelCreated": "Modèle créé avec succès. Utilisez la vue Classifications récentes pour ajouter des images pour les états manquants, puis entraînez le modèle.",
"missingStatesWarning": {
"title": "Exemples d'états manquants",
"description": "Pour des résultats optimaux, il est recommandé de sélectionner des exemples pour tous les états. Vous pouvez continuer sans cette étape, mais le modèle ne sera entraîné que lorsque chaque état disposera d'images. Continuez, puis utilisez la vue Classifications récentes pour classer les images manquantes et lancer l'entraînement."
}
}
},
"deleteModel": {
@ -180,5 +185,6 @@
"noNewImages": "Aucune nouvelle image pour l'entraînement. Veuillez d'abord classifier plus d'images dans le jeu de données.",
"modelNotReady": "Le modèle n'est pas prêt pour l'entraînement.",
"noChanges": "Aucune modification du jeu de données depuis le dernier entraînement"
}
},
"none": "Aucun"
}

Some files were not shown because too many files have changed in this diff Show More