Compare commits

...

29 Commits

Author SHA1 Message Date
Weblate (bot)
3b58cd5c12
Merge 98918b1583 into 2d8b6c8301 2025-11-23 15:44:30 +00:00
Hosted Weblate
98918b1583
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% (92 of 92 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% (639 of 639 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% (639 of 639 strings)

Translated using Weblate (Norwegian Bokmål)

Currently translated at 93.1% (108 of 116 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% (127 of 127 strings)

Translated using Weblate (Norwegian Bokmål)

Currently translated at 100.0% (39 of 39 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% (118 of 118 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/objects/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-settings/nb_NO/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-system/nb_NO/
Translation: Frigate NVR/common
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-11-23 15:44:17 +00:00
Hosted Weblate
1d37ce8915
Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 100.0% (125 of 125 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% (639 of 639 strings)

Translated using Weblate (Chinese (Simplified Han script))

Currently translated at 100.0% (90 of 90 strings)

Translated using Weblate (Chinese (Simplified Han script))

Currently translated at 100.0% (127 of 127 strings)

Translated using Weblate (Chinese (Simplified Han script))

Currently translated at 100.0% (214 of 214 strings)

Translated using Weblate (Chinese (Simplified Han script))

Currently translated at 100.0% (52 of 52 strings)

Translated using Weblate (Chinese (Simplified Han script))

Currently translated at 100.0% (116 of 116 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% (127 of 127 strings)

Translated using Weblate (Chinese (Simplified Han script))

Currently translated at 100.0% (39 of 39 strings)

Translated using Weblate (Chinese (Simplified Han script))

Currently translated at 100.0% (214 of 214 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/common/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/common
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-11-23 15:44:17 +00:00
Hosted Weblate
c37c327bbd
Translated using Weblate (Slovenian)
Currently translated at 100.0% (214 of 214 strings)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Kaboom <kaboom083@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/common/sl/
Translation: Frigate NVR/common
2025-11-23 15:44:16 +00:00
Hosted Weblate
4d99bff20a
Translated using Weblate (Slovak)
Currently translated at 97.6% (125 of 128 strings)

Translated using Weblate (Slovak)

Currently translated at 99.1% (115 of 116 strings)

Translated using Weblate (Slovak)

Currently translated at 99.5% (213 of 214 strings)

Translated using Weblate (Slovak)

Currently translated at 83.8% (536 of 639 strings)

Translated using Weblate (Slovak)

Currently translated at 100.0% (127 of 127 strings)

Translated using Weblate (Slovak)

Currently translated at 100.0% (92 of 92 strings)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Michal K <michal@totaljs.com>
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/common/sk/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-classificationmodel/sk/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-explore/sk/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-live/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/common
Translation: Frigate NVR/views-classificationmodel
Translation: Frigate NVR/views-explore
Translation: Frigate NVR/views-live
Translation: Frigate NVR/views-settings
Translation: Frigate NVR/views-system
2025-11-23 15:44:15 +00:00
Hosted Weblate
7d4ae1f030
Translated using Weblate (Swedish)
Currently translated at 100.0% (125 of 125 strings)

Translated using Weblate (Swedish)

Currently translated at 100.0% (639 of 639 strings)

Translated using Weblate (Swedish)

Currently translated at 100.0% (214 of 214 strings)

Translated using Weblate (Swedish)

Currently translated at 100.0% (92 of 92 strings)

Translated using Weblate (Swedish)

Currently translated at 100.0% (54 of 54 strings)

Translated using Weblate (Swedish)

Currently translated at 100.0% (639 of 639 strings)

Translated using Weblate (Swedish)

Currently translated at 100.0% (639 of 639 strings)

Translated using Weblate (Swedish)

Currently translated at 100.0% (116 of 116 strings)

Translated using Weblate (Swedish)

Currently translated at 100.0% (639 of 639 strings)

Translated using Weblate (Swedish)

Currently translated at 100.0% (127 of 127 strings)

Translated using Weblate (Swedish)

Currently translated at 100.0% (39 of 39 strings)

Translated using Weblate (Swedish)

Currently translated at 100.0% (214 of 214 strings)

Translated using Weblate (Norwegian Bokmål)

Currently translated at 100.0% (118 of 118 strings)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Kristian Johansson <knmjohansson@gmail.com>
Co-authored-by: OverTheHillsAndFarAway <prosjektx@users.noreply.hosted.weblate.org>
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/common/sv/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/components-dialog/sv/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/objects/nb_NO/
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-live/sv/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-settings/sv/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-system/sv/
Translation: Frigate NVR/common
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-live
Translation: Frigate NVR/views-settings
Translation: Frigate NVR/views-system
2025-11-23 15:44:13 +00:00
Hosted Weblate
5a3e1f12cd
Translated using Weblate (French)
Currently translated at 100.0% (128 of 128 strings)

Translated using Weblate (French)

Currently translated at 100.0% (125 of 125 strings)

Translated using Weblate (French)

Currently translated at 100.0% (92 of 92 strings)

Translated using Weblate (French)

Currently translated at 100.0% (639 of 639 strings)

Translated using Weblate (French)

Currently translated at 100.0% (127 of 127 strings)

Translated using Weblate (French)

Currently translated at 100.0% (39 of 39 strings)

Translated using Weblate (French)

Currently translated at 100.0% (214 of 214 strings)

Translated using Weblate (French)

Currently translated at 100.0% (116 of 116 strings)

Translated using Weblate (French)

Currently translated at 100.0% (118 of 118 strings)

Translated using Weblate (French)

Currently translated at 100.0% (635 of 635 strings)

Translated using Weblate (French)

Currently translated at 100.0% (113 of 113 strings)

Translated using Weblate (French)

Currently translated at 100.0% (108 of 108 strings)

Translated using Weblate (French)

Currently translated at 100.0% (52 of 52 strings)

Translated using Weblate (French)

Currently translated at 100.0% (209 of 209 strings)

Translated using Weblate (French)

Currently translated at 100.0% (106 of 106 strings)

Translated using Weblate (French)

Currently translated at 97.1% (103 of 106 strings)

Translated using Weblate (French)

Currently translated at 97.1% (103 of 106 strings)

Translated using Weblate (French)

Currently translated at 100.0% (598 of 598 strings)

Translated using Weblate (French)

Currently translated at 100.0% (127 of 127 strings)

Co-authored-by: Anonymous <noreply@weblate.org>
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/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-live/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/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-11-23 15:44:12 +00:00
Hosted Weblate
fb328c0529
Translated using Weblate (Spanish)
Currently translated at 64.0% (409 of 639 strings)

Translated using Weblate (Spanish)

Currently translated at 100.0% (39 of 39 strings)

Translated using Weblate (Spanish)

Currently translated at 76.3% (97 of 127 strings)

Translated using Weblate (Spanish)

Currently translated at 29.3% (34 of 116 strings)

Translated using Weblate (Spanish)

Currently translated at 24.1% (28 of 116 strings)

Translated using Weblate (Spanish)

Currently translated at 25.4% (27 of 106 strings)

Translated using Weblate (Spanish)

Currently translated at 26.4% (28 of 106 strings)

Translated using Weblate (Spanish)

Currently translated at 76.3% (97 of 127 strings)

Translated using Weblate (Spanish)

Currently translated at 100.0% (39 of 39 strings)

Co-authored-by: Adrian C <adriancuervo@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Josep Olivé <josepolive89@gmail.com>
Co-authored-by: Ramòn Rueda <virem1@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-classificationmodel/es/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-events/es/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-explore/es/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-settings/es/
Translation: Frigate NVR/views-classificationmodel
Translation: Frigate NVR/views-events
Translation: Frigate NVR/views-explore
Translation: Frigate NVR/views-settings
2025-11-23 15:44:11 +00:00
Hosted Weblate
0a0e320939
Translated using Weblate (Dutch)
Currently translated at 100.0% (128 of 128 strings)

Translated using Weblate (Dutch)

Currently translated at 100.0% (116 of 116 strings)

Translated using Weblate (Dutch)

Currently translated at 100.0% (92 of 92 strings)

Translated using Weblate (Dutch)

Currently translated at 100.0% (125 of 125 strings)

Translated using Weblate (Dutch)

Currently translated at 100.0% (639 of 639 strings)

Translated using Weblate (Dutch)

Currently translated at 100.0% (127 of 127 strings)

Translated using Weblate (Dutch)

Currently translated at 100.0% (39 of 39 strings)

Translated using Weblate (Dutch)

Currently translated at 100.0% (214 of 214 strings)

Translated using Weblate (Dutch)

Currently translated at 100.0% (116 of 116 strings)

Translated using Weblate (Dutch)

Currently translated at 100.0% (635 of 635 strings)

Translated using Weblate (Dutch)

Currently translated at 100.0% (113 of 113 strings)

Translated using Weblate (Dutch)

Currently translated at 100.0% (108 of 108 strings)

Translated using Weblate (Dutch)

Currently translated at 100.0% (52 of 52 strings)

Translated using Weblate (Dutch)

Currently translated at 100.0% (209 of 209 strings)

Translated using Weblate (Dutch)

Currently translated at 100.0% (106 of 106 strings)

Translated using Weblate (Dutch)

Currently translated at 100.0% (106 of 106 strings)

Translated using Weblate (Dutch)

Currently translated at 100.0% (598 of 598 strings)

Translated using Weblate (Dutch)

Currently translated at 100.0% (207 of 207 strings)

Translated using Weblate (Dutch)

Currently translated at 97.1% (103 of 106 strings)

Translated using Weblate (Dutch)

Currently translated at 97.1% (103 of 106 strings)

Translated using Weblate (Dutch)

Currently translated at 100.0% (598 of 598 strings)

Translated using Weblate (Dutch)

Currently translated at 100.0% (127 of 127 strings)

Co-authored-by: Anonymous <noreply@weblate.org>
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/common/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-live/nl/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-settings/nl/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-system/nl/
Translation: Frigate NVR/common
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-11-23 15:44:11 +00:00
Hosted Weblate
61e8d80117
Translated using Weblate (Italian)
Currently translated at 100.0% (92 of 92 strings)

Translated using Weblate (Italian)

Currently translated at 100.0% (128 of 128 strings)

Translated using Weblate (Italian)

Currently translated at 100.0% (116 of 116 strings)

Translated using Weblate (Italian)

Currently translated at 100.0% (118 of 118 strings)

Translated using Weblate (Italian)

Currently translated at 100.0% (639 of 639 strings)

Translated using Weblate (Italian)

Currently translated at 100.0% (39 of 39 strings)

Translated using Weblate (Italian)

Currently translated at 100.0% (52 of 52 strings)

Translated using Weblate (Italian)

Currently translated at 100.0% (127 of 127 strings)

Translated using Weblate (Italian)

Currently translated at 100.0% (54 of 54 strings)

Translated using Weblate (Italian)

Currently translated at 100.0% (214 of 214 strings)

Translated using Weblate (Italian)

Currently translated at 100.0% (501 of 501 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/audio/it/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/common/it/
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/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-facelibrary/it/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-live/it/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-settings/it/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-system/it/
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-11-23 15:44:10 +00:00
Hosted Weblate
c858aa94ae
Translated using Weblate (Polish)
Currently translated at 63.8% (408 of 639 strings)

Translated using Weblate (Polish)

Currently translated at 30.0% (34 of 113 strings)

Translated using Weblate (Polish)

Currently translated at 75.5% (96 of 127 strings)

Translated using Weblate (Polish)

Currently translated at 27.3% (29 of 106 strings)

Translated using Weblate (Polish)

Currently translated at 68.3% (409 of 598 strings)

Translated using Weblate (Polish)

Currently translated at 100.0% (52 of 52 strings)

Translated using Weblate (Polish)

Currently translated at 98.1% (53 of 54 strings)

Translated using Weblate (Polish)

Currently translated at 100.0% (13 of 13 strings)

Translated using Weblate (Polish)

Currently translated at 100.0% (39 of 39 strings)

Translated using Weblate (Polish)

Currently translated at 74.8% (95 of 127 strings)

Translated using Weblate (Polish)

Currently translated at 100.0% (10 of 10 strings)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Mateusz Paś <piciuok@gmail.com>
Co-authored-by: Wojciech Niziński <niziak-weblate@spox.org>
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/components-auth/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-exports/pl/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-facelibrary/pl/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-settings/pl/
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-exports
Translation: Frigate NVR/views-facelibrary
Translation: Frigate NVR/views-settings
2025-11-23 15:44:09 +00:00
Hosted Weblate
1546acae11
Translated using Weblate (Croatian)
Currently translated at 33.3% (2 of 6 strings)

Translated using Weblate (Croatian)

Currently translated at 21.1% (11 of 52 strings)

Translated using Weblate (Croatian)

Currently translated at 2.7% (2 of 72 strings)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Josip <josipmiki54@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/components-filter/hr/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-facelibrary/hr/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-recording/hr/
Translation: Frigate NVR/components-filter
Translation: Frigate NVR/views-facelibrary
Translation: Frigate NVR/views-recording
2025-11-23 15:44:08 +00:00
Hosted Weblate
9ca68a247a
Translated using Weblate (Czech)
Currently translated at 14.6% (17 of 116 strings)

Translated using Weblate (Czech)

Currently translated at 13.7% (16 of 116 strings)

Translated using Weblate (Czech)

Currently translated at 100.0% (13 of 13 strings)

Translated using Weblate (Czech)

Currently translated at 63.0% (403 of 639 strings)

Translated using Weblate (Czech)

Currently translated at 76.9% (30 of 39 strings)

Translated using Weblate (Czech)

Currently translated at 4.7% (5 of 106 strings)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Jakub Sojka <sojkubu@seznam.cz>
Co-authored-by: Martin Janda <janda@chilliit.cz>
Co-authored-by: Michal K <michal@totaljs.com>
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-exports/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-exports
Translation: Frigate NVR/views-settings
2025-11-23 15:44:07 +00:00
Hosted Weblate
34415f95a2
Translated using Weblate (Catalan)
Currently translated at 100.0% (128 of 128 strings)

Translated using Weblate (Catalan)

Currently translated at 100.0% (125 of 125 strings)

Translated using Weblate (Catalan)

Currently translated at 100.0% (639 of 639 strings)

Translated using Weblate (Catalan)

Currently translated at 100.0% (92 of 92 strings)

Translated using Weblate (Catalan)

Currently translated at 100.0% (639 of 639 strings)

Translated using Weblate (Catalan)

Currently translated at 100.0% (127 of 127 strings)

Translated using Weblate (Catalan)

Currently translated at 100.0% (39 of 39 strings)

Translated using Weblate (Catalan)

Currently translated at 100.0% (214 of 214 strings)

Translated using Weblate (Catalan)

Currently translated at 100.0% (116 of 116 strings)

Translated using Weblate (Catalan)

Currently translated at 100.0% (113 of 113 strings)

Translated using Weblate (Catalan)

Currently translated at 100.0% (108 of 108 strings)

Translated using Weblate (Catalan)

Currently translated at 100.0% (52 of 52 strings)

Translated using Weblate (Catalan)

Currently translated at 100.0% (209 of 209 strings)

Translated using Weblate (Catalan)

Currently translated at 100.0% (106 of 106 strings)

Translated using Weblate (Catalan)

Currently translated at 100.0% (598 of 598 strings)

Translated using Weblate (Catalan)

Currently translated at 97.1% (103 of 106 strings)

Translated using Weblate (Catalan)

Currently translated at 100.0% (106 of 106 strings)

Translated using Weblate (Catalan)

Currently translated at 100.0% (598 of 598 strings)

Translated using Weblate (Catalan)

Currently translated at 100.0% (127 of 127 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/common/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-live/ca/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-settings/ca/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-system/ca/
Translation: Frigate NVR/common
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-11-23 15:44:06 +00:00
Hosted Weblate
e96ea54a66
Translated using Weblate (Ukrainian)
Currently translated at 100.0% (128 of 128 strings)

Translated using Weblate (Ukrainian)

Currently translated at 100.0% (125 of 125 strings)

Translated using Weblate (Ukrainian)

Currently translated at 100.0% (92 of 92 strings)

Translated using Weblate (Ukrainian)

Currently translated at 100.0% (639 of 639 strings)

Translated using Weblate (Ukrainian)

Currently translated at 100.0% (127 of 127 strings)

Translated using Weblate (Ukrainian)

Currently translated at 100.0% (39 of 39 strings)

Translated using Weblate (Ukrainian)

Currently translated at 100.0% (214 of 214 strings)

Translated using Weblate (Ukrainian)

Currently translated at 100.0% (214 of 214 strings)

Translated using Weblate (Ukrainian)

Currently translated at 100.0% (116 of 116 strings)

Translated using Weblate (Ukrainian)

Currently translated at 100.0% (635 of 635 strings)

Translated using Weblate (Ukrainian)

Currently translated at 100.0% (113 of 113 strings)

Translated using Weblate (Ukrainian)

Currently translated at 100.0% (108 of 108 strings)

Translated using Weblate (Ukrainian)

Currently translated at 100.0% (52 of 52 strings)

Translated using Weblate (Ukrainian)

Currently translated at 100.0% (209 of 209 strings)

Translated using Weblate (Ukrainian)

Currently translated at 100.0% (106 of 106 strings)

Translated using Weblate (Ukrainian)

Currently translated at 97.1% (103 of 106 strings)

Translated using Weblate (Ukrainian)

Currently translated at 100.0% (598 of 598 strings)

Translated using Weblate (Ukrainian)

Currently translated at 100.0% (127 of 127 strings)

Co-authored-by: Alex Taran <oleksii.taran@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Максим Горпиніч <gorpinicmaksim0@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/common/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-live/uk/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-settings/uk/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-system/uk/
Translation: Frigate NVR/common
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-11-23 15:44:06 +00:00
Hosted Weblate
951a07d5a8
Translated using Weblate (Bulgarian)
Currently translated at 31.1% (28 of 90 strings)

Translated using Weblate (Bulgarian)

Currently translated at 7.6% (1 of 13 strings)

Translated using Weblate (Bulgarian)

Currently translated at 50.0% (1 of 2 strings)

Translated using Weblate (Bulgarian)

Currently translated at 50.0% (1 of 2 strings)

Translated using Weblate (Bulgarian)

Currently translated at 7.4% (4 of 54 strings)

Translated using Weblate (Bulgarian)

Currently translated at 10.0% (1 of 10 strings)

Translated using Weblate (Bulgarian)

Currently translated at 17.7% (21 of 118 strings)

Co-authored-by: Borislav <sartheris@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
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/objects/bg/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-exports/bg/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-live/bg/
Translation: Frigate NVR/components-auth
Translation: Frigate NVR/components-dialog
Translation: Frigate NVR/components-icons
Translation: Frigate NVR/components-input
Translation: Frigate NVR/objects
Translation: Frigate NVR/views-exports
Translation: Frigate NVR/views-live
2025-11-23 15:44:05 +00:00
Hosted Weblate
7961acf09d
Translated using Weblate (Romanian)
Currently translated at 100.0% (128 of 128 strings)

Translated using Weblate (Romanian)

Currently translated at 100.0% (125 of 125 strings)

Translated using Weblate (Romanian)

Currently translated at 100.0% (92 of 92 strings)

Translated using Weblate (Romanian)

Currently translated at 100.0% (118 of 118 strings)

Translated using Weblate (Romanian)

Currently translated at 100.0% (639 of 639 strings)

Translated using Weblate (Romanian)

Currently translated at 100.0% (127 of 127 strings)

Translated using Weblate (Romanian)

Currently translated at 100.0% (39 of 39 strings)

Translated using Weblate (Romanian)

Currently translated at 100.0% (214 of 214 strings)

Translated using Weblate (Romanian)

Currently translated at 100.0% (116 of 116 strings)

Translated using Weblate (Romanian)

Currently translated at 100.0% (113 of 113 strings)

Translated using Weblate (Romanian)

Currently translated at 100.0% (108 of 108 strings)

Translated using Weblate (Romanian)

Currently translated at 100.0% (52 of 52 strings)

Translated using Weblate (Romanian)

Currently translated at 100.0% (106 of 106 strings)

Translated using Weblate (Romanian)

Currently translated at 100.0% (598 of 598 strings)

Translated using Weblate (Romanian)

Currently translated at 100.0% (127 of 127 strings)

Translated using Weblate (Romanian)

Currently translated at 100.0% (209 of 209 strings)

Translated using Weblate (Romanian)

Currently translated at 97.1% (103 of 106 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/common/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-live/ro/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-settings/ro/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-system/ro/
Translation: Frigate NVR/common
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-11-23 15:44:04 +00:00
Hosted Weblate
a0b9dd661c
Translated using Weblate (Russian)
Currently translated at 68.7% (439 of 639 strings)

Translated using Weblate (Russian)

Currently translated at 98.5% (211 of 214 strings)

Translated using Weblate (Russian)

Currently translated at 95.5% (108 of 113 strings)

Translated using Weblate (Russian)

Currently translated at 100.0% (52 of 52 strings)

Translated using Weblate (Russian)

Currently translated at 100.0% (209 of 209 strings)

Translated using Weblate (Russian)

Currently translated at 100.0% (501 of 501 strings)

Translated using Weblate (Russian)

Currently translated at 100.0% (108 of 108 strings)

Translated using Weblate (Russian)

Currently translated at 100.0% (54 of 54 strings)

Translated using Weblate (Russian)

Currently translated at 100.0% (106 of 106 strings)

Translated using Weblate (Russian)

Currently translated at 78.0% (467 of 598 strings)

Translated using Weblate (Russian)

Currently translated at 100.0% (52 of 52 strings)

Translated using Weblate (Russian)

Currently translated at 100.0% (127 of 127 strings)

Translated using Weblate (Russian)

Currently translated at 100.0% (39 of 39 strings)

Translated using Weblate (Russian)

Currently translated at 73.9% (442 of 598 strings)

Translated using Weblate (Russian)

Currently translated at 95.5% (86 of 90 strings)

Translated using Weblate (Russian)

Currently translated at 98.0% (51 of 52 strings)

Translated using Weblate (Russian)

Currently translated at 71.6% (91 of 127 strings)

Translated using Weblate (Russian)

Currently translated at 86.4% (433 of 501 strings)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Артём Владимиров <artyomka71@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/audio/ru/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/common/ru/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/components-dialog/ru/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-classificationmodel/ru/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-events/ru/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-explore/ru/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-facelibrary/ru/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-live/ru/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-settings/ru/
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
2025-11-23 15:44:03 +00:00
Hosted Weblate
5559519fb3
Translated using Weblate (Greek)
Currently translated at 100.0% (10 of 10 strings)

Co-authored-by: Christos Sidiropoulos <dev@csidirop.de>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/components-auth/el/
Translation: Frigate NVR/components-auth
2025-11-23 15:44:02 +00:00
Hosted Weblate
3fd0547881
Translated using Weblate (Danish)
Currently translated at 48.3% (57 of 118 strings)

Translated using Weblate (Danish)

Currently translated at 16.6% (9 of 54 strings)

Translated using Weblate (Danish)

Currently translated at 7.7% (9 of 116 strings)

Translated using Weblate (Danish)

Currently translated at 6.7% (8 of 118 strings)

Translated using Weblate (Danish)

Currently translated at 1.4% (9 of 639 strings)

Translated using Weblate (Danish)

Currently translated at 16.6% (8 of 48 strings)

Translated using Weblate (Danish)

Currently translated at 100.0% (6 of 6 strings)

Translated using Weblate (Danish)

Currently translated at 10.0% (9 of 90 strings)

Translated using Weblate (Danish)

Currently translated at 17.3% (9 of 52 strings)

Translated using Weblate (Danish)

Currently translated at 61.5% (8 of 13 strings)

Translated using Weblate (Danish)

Currently translated at 9.4% (12 of 127 strings)

Translated using Weblate (Danish)

Currently translated at 25.6% (10 of 39 strings)

Translated using Weblate (Danish)

Currently translated at 80.0% (8 of 10 strings)

Translated using Weblate (Danish)

Currently translated at 36.0% (9 of 25 strings)

Translated using Weblate (Danish)

Currently translated at 100.0% (2 of 2 strings)

Translated using Weblate (Danish)

Currently translated at 12.5% (9 of 72 strings)

Translated using Weblate (Danish)

Currently translated at 14.8% (8 of 54 strings)

Translated using Weblate (Danish)

Currently translated at 19.5% (9 of 46 strings)

Translated using Weblate (Danish)

Currently translated at 90.0% (9 of 10 strings)

Translated using Weblate (Danish)

Currently translated at 16.9% (85 of 501 strings)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: demention666 <anders+GITHUB@familien-harder.dk>
Co-authored-by: dinf60 <dinf60@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/audio/da/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/components-auth/da/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/components-camera/da/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/components-dialog/da/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/components-filter/da/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/components-input/da/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/components-player/da/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-classificationmodel/da/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-configeditor/da/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-events/da/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-explore/da/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-exports/da/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-facelibrary/da/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-live/da/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-recording/da/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-search/da/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-settings/da/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-system/da/
Translation: Frigate NVR/audio
Translation: Frigate NVR/components-auth
Translation: Frigate NVR/components-camera
Translation: Frigate NVR/components-dialog
Translation: Frigate NVR/components-filter
Translation: Frigate NVR/components-input
Translation: Frigate NVR/components-player
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-recording
Translation: Frigate NVR/views-search
Translation: Frigate NVR/views-settings
Translation: Frigate NVR/views-system
2025-11-23 15:44:00 +00:00
Hosted Weblate
e5aaf3cc1b
Translated using Weblate (German)
Currently translated at 100.0% (13 of 13 strings)

Translated using Weblate (German)

Currently translated at 77.7% (497 of 639 strings)

Translated using Weblate (German)

Currently translated at 98.0% (51 of 52 strings)

Translated using Weblate (German)

Currently translated at 18.1% (21 of 116 strings)

Translated using Weblate (German)

Currently translated at 84.6% (33 of 39 strings)

Translated using Weblate (German)

Currently translated at 6.0% (7 of 116 strings)

Translated using Weblate (German)

Currently translated at 92.3% (48 of 52 strings)

Translated using Weblate (German)

Currently translated at 93.7% (119 of 127 strings)

Translated using Weblate (German)

Currently translated at 71.6% (91 of 127 strings)

Translated using Weblate (German)

Currently translated at 100.0% (54 of 54 strings)

Translated using Weblate (Dutch)

Currently translated at 100.0% (635 of 635 strings)

Translated using Weblate (German)

Currently translated at 100.0% (209 of 209 strings)

Translated using Weblate (German)

Currently translated at 88.4% (443 of 501 strings)

Co-authored-by: Christos Sidiropoulos <dev@csidirop.de>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Marijn <168113859+Marijn0@users.noreply.github.com>
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-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-exports/de/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-facelibrary/de/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-settings/de/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-settings/nl/
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-exports
Translation: Frigate NVR/views-facelibrary
Translation: Frigate NVR/views-settings
2025-11-23 15:43:59 +00:00
Hosted Weblate
ab41a56856
Translated using Weblate (Portuguese (Brazil))
Currently translated at 24.1% (28 of 116 strings)

Translated using Weblate (Portuguese (Brazil))

Currently translated at 68.7% (439 of 639 strings)

Translated using Weblate (Portuguese (Brazil))

Currently translated at 97.4% (38 of 39 strings)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Marcelo Popper Costa <marcelo_popper@hotmail.com>
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-classificationmodel/pt_BR/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-events/pt_BR/
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-settings/pt_BR/
Translation: Frigate NVR/views-classificationmodel
Translation: Frigate NVR/views-events
Translation: Frigate NVR/views-settings
2025-11-23 15:43:58 +00:00
Hosted Weblate
f8474f9c4a
Translated using Weblate (Lithuanian)
Currently translated at 30.1% (32 of 106 strings)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: MaBeniu <runnerm@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-classificationmodel/lt/
Translation: Frigate NVR/views-classificationmodel
2025-11-23 15:43:57 +00:00
Hosted Weblate
5115026a4e
Added translation using Weblate (Latvian)
Added translation using Weblate (Latvian)

Added translation using Weblate (Latvian)

Added translation using Weblate (Latvian)

Added translation using Weblate (Latvian)

Added translation using Weblate (Latvian)

Added translation using Weblate (Latvian)

Added translation using Weblate (Latvian)

Added translation using Weblate (Latvian)

Added translation using Weblate (Latvian)

Added translation using Weblate (Latvian)

Update translation files

Updated by "Squash Git commits" add-on in Weblate.

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Languages add-on <noreply-addon-languages@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/common/
Translation: Frigate NVR/common
2025-11-23 15:43:57 +00:00
Hosted Weblate
af7f9e39c9
Translated using Weblate (Turkish)
Currently translated at 35.8% (38 of 106 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-classificationmodel/tr/
Translation: Frigate NVR/views-classificationmodel
2025-11-23 15:43:56 +00:00
icidi
2d8b6c8301
fix typo (#20969)
Some checks are pending
CI / AMD64 Build (push) Waiting to run
CI / ARM Build (push) Waiting to run
CI / Jetson Jetpack 6 (push) Waiting to run
CI / AMD64 Extra Build (push) Blocked by required conditions
CI / ARM Extra Build (push) Blocked by required conditions
CI / Synaptics Build (push) Blocked by required conditions
CI / Assemble and push default build (push) Blocked by required conditions
2025-11-23 08:43:15 -07:00
Blake Blackshear
84c3f98a09
clarify trademark and license interaction (#21019) 2025-11-23 08:42:48 -07:00
Jakub Sojka
c87f89fcc1
Chore/update yq to 4.48.2 (#20967)
* chore: update yq from 4.33.3 to 4.48.2

* fix: update yq v4 syntax for Frigate config upload command

---------

Co-authored-by: Jakub Sojka <jakub.sojka@mallgroup.com>
2025-11-23 08:41:44 -07:00
Josh Hawkins
815303922d
Miscellaneous Fixes (#21005)
* update live view docs

* use swr as single source of truth for searchDetail

rather than maintaining a separate state, derive the selected item from swr cache. fixes websocket sync when regenerating descriptions or fetching transcriptions

* fix key warning in console

* don't try to fetch event from review item for audio events

* update audio transcription toast wording

* Add a community supported badge to specific detectors in the info summaries to better separate

* Make object classification publish to tracked object update and add examples for state classification

* Add item to advanced docs about tensorflow limiting

* Don't show submission for in progress objects

* fix for ios not reporting video dimensions on initial metadata load

in testing, polling with requestAnimationFrame finds the dimensions within 2 frames

* Catch jetson nvidia device tree

---------

Co-authored-by: Nicolas Mowen <nickmowen213@gmail.com>
2025-11-23 08:40:25 -07:00
212 changed files with 3521 additions and 601 deletions

View File

@ -1,6 +1,6 @@
The MIT License The MIT License
Copyright (c) 2020 Blake Blackshear Copyright (c) 2025 Frigate LLC (Frigate™)
Permission is hereby granted, free of charge, to any person obtaining a copy Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal of this software and associated documentation files (the "Software"), to deal

View File

@ -1,8 +1,10 @@
<p align="center"> <p align="center">
<img align="center" alt="logo" src="docs/static/img/frigate.png"> <img align="center" alt="logo" src="docs/static/img/branding/frigate.png">
</p> </p>
# Frigate - NVR With Realtime Object Detection for IP Cameras # Frigate NVR™ - Realtime Object Detection for IP Cameras
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
<a href="https://hosted.weblate.org/engage/frigate-nvr/"> <a href="https://hosted.weblate.org/engage/frigate-nvr/">
<img src="https://hosted.weblate.org/widget/frigate-nvr/language-badge.svg" alt="Translation status" /> <img src="https://hosted.weblate.org/widget/frigate-nvr/language-badge.svg" alt="Translation status" />
@ -33,6 +35,15 @@ View the documentation at https://docs.frigate.video
If you would like to make a donation to support development, please use [Github Sponsors](https://github.com/sponsors/blakeblackshear). If you would like to make a donation to support development, please use [Github Sponsors](https://github.com/sponsors/blakeblackshear).
## License
This project is licensed under the **MIT License**.
- **Code:** The source code, configuration files, and documentation in this repository are available under the [MIT License](LICENSE). You are free to use, modify, and distribute the code as long as you include the original copyright notice.
- **Trademarks:** The "Frigate" name, the "Frigate NVR" brand, and the Frigate logo are **trademarks of Frigate LLC** and are **not** covered by the MIT License.
Please see our [Trademark Policy](TRADEMARK.md) for details on acceptable use of our brand assets.
## Screenshots ## Screenshots
### Live dashboard ### Live dashboard
@ -66,3 +77,7 @@ We use [Weblate](https://hosted.weblate.org/projects/frigate-nvr/) to support la
<a href="https://hosted.weblate.org/engage/frigate-nvr/"> <a href="https://hosted.weblate.org/engage/frigate-nvr/">
<img src="https://hosted.weblate.org/widget/frigate-nvr/multi-auto.svg" alt="Translation status" /> <img src="https://hosted.weblate.org/widget/frigate-nvr/multi-auto.svg" alt="Translation status" />
</a> </a>
---
**Copyright © 2025 Frigate LLC.**

58
TRADEMARK.md Normal file
View File

@ -0,0 +1,58 @@
# Trademark Policy
**Last Updated:** November 2025
This document outlines the policy regarding the use of the trademarks associated with the Frigate NVR project.
## 1. Our Trademarks
The following terms and visual assets are trademarks (the "Marks") of **Frigate LLC**:
- **Frigate™**
- **Frigate NVR™**
- **Frigate+™**
- **The Frigate Logo**
**Note on Common Law Rights:**
Frigate LLC asserts all common law rights in these Marks. The absence of a federal registration symbol (®) does not constitute a waiver of our intellectual property rights.
## 2. Interaction with the MIT License
The software in this repository is licensed under the [MIT License](LICENSE).
**Crucial Distinction:**
- The **Code** is free to use, modify, and distribute under the MIT terms.
- The **Brand (Trademarks)** is **NOT** licensed under MIT.
You may not use the Marks in any way that is not explicitly permitted by this policy or by written agreement with Frigate LLC.
## 3. Acceptable Use
You may use the Marks without prior written permission in the following specific contexts:
- **Referential Use:** To truthfully refer to the software (e.g., _"I use Frigate NVR for my home security"_).
- **Compatibility:** To indicate that your product or project works with the software (e.g., _"MyPlugin for Frigate NVR"_ or _"Compatible with Frigate"_).
- **Commentary:** In news articles, blog posts, or tutorials discussing the software.
## 4. Prohibited Use
You may **NOT** use the Marks in the following ways:
- **Commercial Products:** You may not use "Frigate" in the name of a commercial product, service, or app (e.g., selling an app named _"Frigate Viewer"_ is prohibited).
- **Implying Affiliation:** You may not use the Marks in a way that suggests your project is official, sponsored by, or endorsed by Frigate LLC.
- **Confusing Forks:** If you fork this repository to create a derivative work, you **must** remove the Frigate logo and rename your project to avoid user confusion. You cannot distribute a modified version of the software under the name "Frigate".
- **Domain Names:** You may not register domain names containing "Frigate" that are likely to confuse users (e.g., `frigate-official-support.com`).
## 5. The Logo
The Frigate logo (the bird icon) is a visual trademark.
- You generally **cannot** use the logo on your own website or product packaging without permission.
- If you are building a dashboard or integration that interfaces with Frigate, you may use the logo only to represent the Frigate node/service, provided it does not imply you _are_ Frigate.
## 6. Questions & Permissions
If you are unsure if your intended use violates this policy, or if you wish to request a specific license to use the Marks (e.g., for a partnership), please contact us at:
**help@frigate.video**

View File

@ -145,6 +145,6 @@ rm -rf /var/lib/apt/lists/*
# Install yq, for frigate-prepare and go2rtc echo source # Install yq, for frigate-prepare and go2rtc echo source
curl -fsSL \ curl -fsSL \
"https://github.com/mikefarah/yq/releases/download/v4.33.3/yq_linux_$(dpkg --print-architecture)" \ "https://github.com/mikefarah/yq/releases/download/v4.48.2/yq_linux_$(dpkg --print-architecture)" \
--output /usr/local/bin/yq --output /usr/local/bin/yq
chmod +x /usr/local/bin/yq chmod +x /usr/local/bin/yq

View File

@ -53,6 +53,17 @@ environment_vars:
VARIABLE_NAME: variable_value VARIABLE_NAME: variable_value
``` ```
#### TensorFlow Thread Configuration
If you encounter thread creation errors during classification model training, you can limit TensorFlow's thread usage:
```yaml
environment_vars:
TF_INTRA_OP_PARALLELISM_THREADS: "2" # Threads within operations (0 = use default)
TF_INTER_OP_PARALLELISM_THREADS: "2" # Threads between operations (0 = use default)
TF_DATASET_THREAD_POOL_SIZE: "2" # Data pipeline threads (0 = use default)
```
### `database` ### `database`
Tracked object and recording information is managed in a sqlite database at `/config/frigate.db`. If that database is deleted, recordings will be orphaned and will need to be cleaned up manually. They also won't show up in the Media Browser within Home Assistant. Tracked object and recording information is managed in a sqlite database at `/config/frigate.db`. If that database is deleted, recordings will be orphaned and will need to be cleaned up manually. They also won't show up in the Media Browser within Home Assistant.
@ -247,7 +258,7 @@ curl -X POST http://frigate_host:5000/api/config/save -d @config.json
if you'd like you can use your yaml config directly by using [`yq`](https://github.com/mikefarah/yq) to convert it to json: if you'd like you can use your yaml config directly by using [`yq`](https://github.com/mikefarah/yq) to convert it to json:
```bash ```bash
yq r -j config.yml | curl -X POST http://frigate_host:5000/api/config/save -d @- yq -o=json '.' config.yaml | curl -X POST 'http://frigate_host:5000/api/config/save?save_option=saveonly' --data-binary @-
``` ```
### Via Command Line ### Via Command Line

View File

@ -214,6 +214,42 @@ For restreamed cameras, go2rtc remains active but does not use system resources
Note that disabling a camera through the config file (`enabled: False`) removes all related UI elements, including historical footage access. To retain access while disabling the camera, keep it enabled in the config and use the UI or MQTT to disable it temporarily. Note that disabling a camera through the config file (`enabled: False`) removes all related UI elements, including historical footage access. To retain access while disabling the camera, keep it enabled in the config and use the UI or MQTT to disable it temporarily.
### Live player error messages
When your browser runs into problems playing back your camera streams, it will log short error messages to the browser console. They indicate playback, codec, or network issues on the client/browser side, not something server side with Frigate itself. Below are the common messages you may see and simple actions you can take to try to resolve them.
- **startup**
- What it means: The player failed to initialize or connect to the live stream (network or startup error).
- What to try: Reload the Live view or click _Reset_. Verify `go2rtc` is running and the camera stream is reachable. Try switching to a different stream from the Live UI dropdown (if available) or use a different browser.
- Possible console messages from the player code:
- `Error opening MediaSource.`
- `Browser reported a network error.`
- `Max error count ${errorCount} exceeded.` (the numeric value will vary)
- **mse-decode**
- What it means: The browser reported a decoding error while trying to play the stream, which usually is a result of a codec incompatibility or corrupted frames.
- What to try: Ensure your camera/restream is using H.264 video and AAC audio (these are the most compatible). If your camera uses a non-standard audio codec, configure `go2rtc` to transcode the stream to AAC. Try another browser (some browsers have stricter MSE/codec support) and, for iPhone, ensure you're on iOS 17.1 or newer.
- Possible console messages from the player code:
- `Safari cannot open MediaSource.`
- `Safari reported InvalidStateError.`
- `Safari reported decoding errors.`
- **stalled**
- What it means: Playback has stalled because the player has fallen too far behind live (extended buffering or no data arriving).
- What to try: This is usually indicative of the browser struggling to decode too many high-resolution streams at once. Try selecting a lower-bandwidth stream (substream), reduce the number of live streams open, improve the network connection, or lower the camera resolution. Also check your camera's keyframe (I-frame) interval — shorter intervals make playback start and recover faster. You can also try increasing the timeout value in the UI pane of Frigate's settings.
- Possible console messages from the player code:
- `Buffer time (10 seconds) exceeded, browser may not be playing media correctly.`
- `Media playback has stalled after <n> seconds due to insufficient buffering or a network interruption.` (the seconds value will vary)
## Live view FAQ ## Live view FAQ
1. **Why don't I have audio in my Live view?** 1. **Why don't I have audio in my Live view?**
@ -277,3 +313,38 @@ Note that disabling a camera through the config file (`enabled: False`) removes
7. **My camera streams have lots of visual artifacts / distortion.** 7. **My camera streams have lots of visual artifacts / distortion.**
Some cameras don't include the hardware to support multiple connections to the high resolution stream, and this can cause unexpected behavior. In this case it is recommended to [restream](./restream.md) the high resolution stream so that it can be used for live view and recordings. Some cameras don't include the hardware to support multiple connections to the high resolution stream, and this can cause unexpected behavior. In this case it is recommended to [restream](./restream.md) the high resolution stream so that it can be used for live view and recordings.
8. **Why does my camera stream switch aspect ratios on the Live dashboard?**
Your camera may change aspect ratios on the dashboard because Frigate uses different streams for different purposes. With go2rtc and Smart Streaming, Frigate shows a static image from the `detect` stream when no activity is present, and switches to the live stream when motion is detected. The camera image will change size if your streams use different aspect ratios.
To prevent this, make the `detect` stream match the go2rtc live stream's aspect ratio (resolution does not need to match, just the aspect ratio). You can either adjust the camera's output resolution or set the `width` and `height` values in your config's `detect` section to a resolution with an aspect ratio that matches.
Example: Resolutions from two streams
- Mismatched (may cause aspect ratio switching on the dashboard):
- Live/go2rtc stream: 1920x1080 (16:9)
- Detect stream: 640x352 (~1.82:1, not 16:9)
- Matched (prevents switching):
- Live/go2rtc stream: 1920x1080 (16:9)
- Detect stream: 640x360 (16:9)
You can update the detect settings in your camera config to match the aspect ratio of your go2rtc live stream. For example:
```yaml
cameras:
front_door:
detect:
width: 640
height: 360 # set this to 360 instead of 352
ffmpeg:
inputs:
- path: rtsp://127.0.0.1:8554/front_door # main stream 1920x1080
roles:
- record
- path: rtsp://127.0.0.1:8554/front_door_sub # sub stream 640x352
roles:
- detect
```

View File

@ -3,6 +3,8 @@ id: object_detectors
title: Object Detectors title: Object Detectors
--- ---
import CommunityBadge from '@site/src/components/CommunityBadge';
# Supported Hardware # Supported Hardware
:::info :::info
@ -13,8 +15,8 @@ Frigate supports multiple different detectors that work on different types of ha
- [Coral EdgeTPU](#edge-tpu-detector): The Google Coral EdgeTPU is available in USB and m.2 format allowing for a wide range of compatibility with devices. - [Coral EdgeTPU](#edge-tpu-detector): The Google Coral EdgeTPU is available in USB and m.2 format allowing for a wide range of compatibility with devices.
- [Hailo](#hailo-8): The Hailo8 and Hailo8L AI Acceleration module is available in m.2 format with a HAT for RPi devices, offering a wide range of compatibility with devices. - [Hailo](#hailo-8): The Hailo8 and Hailo8L AI Acceleration module is available in m.2 format with a HAT for RPi devices, offering a wide range of compatibility with devices.
- [MemryX](#memryx-mx3): The MX3 Acceleration module is available in m.2 format, offering broad compatibility across various platforms. - <CommunityBadge /> [MemryX](#memryx-mx3): The MX3 Acceleration module is available in m.2 format, offering broad compatibility across various platforms.
- [DeGirum](#degirum): Service for using hardware devices in the cloud or locally. Hardware and models provided on the cloud on [their website](https://hub.degirum.com). - <CommunityBadge /> [DeGirum](#degirum): Service for using hardware devices in the cloud or locally. Hardware and models provided on the cloud on [their website](https://hub.degirum.com).
**AMD** **AMD**
@ -34,16 +36,16 @@ Frigate supports multiple different detectors that work on different types of ha
- [ONNX](#onnx): TensorRT will automatically be detected and used as a detector in the `-tensorrt` Frigate image when a supported ONNX model is configured. - [ONNX](#onnx): TensorRT will automatically be detected and used as a detector in the `-tensorrt` Frigate image when a supported ONNX model is configured.
**Nvidia Jetson** **Nvidia Jetson** <CommunityBadge />
- [TensortRT](#nvidia-tensorrt-detector): TensorRT can run on Jetson devices, using one of many default models. - [TensortRT](#nvidia-tensorrt-detector): TensorRT can run on Jetson devices, using one of many default models.
- [ONNX](#onnx): TensorRT will automatically be detected and used as a detector in the `-tensorrt-jp6` Frigate image when a supported ONNX model is configured. - [ONNX](#onnx): TensorRT will automatically be detected and used as a detector in the `-tensorrt-jp6` Frigate image when a supported ONNX model is configured.
**Rockchip** **Rockchip** <CommunityBadge />
- [RKNN](#rockchip-platform): RKNN models can run on Rockchip devices with included NPUs. - [RKNN](#rockchip-platform): RKNN models can run on Rockchip devices with included NPUs.
**Synaptics** **Synaptics** <CommunityBadge />
- [Synaptics](#synaptics): synap models can run on Synaptics devices(e.g astra machina) with included NPUs. - [Synaptics](#synaptics): synap models can run on Synaptics devices(e.g astra machina) with included NPUs.

View File

@ -246,7 +246,7 @@ birdseye:
# Optional: ffmpeg configuration # Optional: ffmpeg configuration
# More information about presets at https://docs.frigate.video/configuration/ffmpeg_presets # More information about presets at https://docs.frigate.video/configuration/ffmpeg_presets
ffmpeg: ffmpeg:
# Optional: ffmpeg binry path (default: shown below) # Optional: ffmpeg binary path (default: shown below)
# can also be set to `7.0` or `5.0` to specify one of the included versions # can also be set to `7.0` or `5.0` to specify one of the included versions
# or can be set to any path that holds `bin/ffmpeg` & `bin/ffprobe` # or can be set to any path that holds `bin/ffmpeg` & `bin/ffprobe`
path: "default" path: "default"

View File

@ -3,6 +3,8 @@ id: hardware
title: Recommended hardware title: Recommended hardware
--- ---
import CommunityBadge from '@site/src/components/CommunityBadge';
## Cameras ## Cameras
Cameras that output H.264 video and AAC audio will offer the most compatibility with all features of Frigate and Home Assistant. It is also helpful if your camera supports multiple substreams to allow different resolutions to be used for detection, streaming, and recordings without re-encoding. Cameras that output H.264 video and AAC audio will offer the most compatibility with all features of Frigate and Home Assistant. It is also helpful if your camera supports multiple substreams to allow different resolutions to be used for detection, streaming, and recordings without re-encoding.
@ -59,7 +61,7 @@ Frigate supports multiple different detectors that work on different types of ha
- [Supports primarily ssdlite and mobilenet model architectures](../../configuration/object_detectors#edge-tpu-detector) - [Supports primarily ssdlite and mobilenet model architectures](../../configuration/object_detectors#edge-tpu-detector)
- [MemryX](#memryx-mx3): The MX3 M.2 accelerator module is available in m.2 format allowing for a wide range of compatibility with devices. - <CommunityBadge /> [MemryX](#memryx-mx3): The MX3 M.2 accelerator module is available in m.2 format allowing for a wide range of compatibility with devices.
- [Supports many model architectures](../../configuration/object_detectors#memryx-mx3) - [Supports many model architectures](../../configuration/object_detectors#memryx-mx3)
- Runs best with tiny, small, or medium-size models - Runs best with tiny, small, or medium-size models
@ -84,32 +86,26 @@ Frigate supports multiple different detectors that work on different types of ha
**Nvidia** **Nvidia**
- [TensortRT](#tensorrt---nvidia-gpu): TensorRT can run on Nvidia GPUs and Jetson devices. - [TensortRT](#tensorrt---nvidia-gpu): TensorRT can run on Nvidia GPUs to provide efficient object detection.
- [Supports majority of model architectures via ONNX](../../configuration/object_detectors#onnx-supported-models) - [Supports majority of model architectures via ONNX](../../configuration/object_detectors#onnx-supported-models)
- Runs well with any size models including large - Runs well with any size models including large
**Rockchip** - <CommunityBadge /> [Jetson](#nvidia-jetson): Jetson devices are supported via the TensorRT or ONNX detectors when running Jetpack 6.
**Rockchip** <CommunityBadge />
- [RKNN](#rockchip-platform): RKNN models can run on Rockchip devices with included NPUs to provide efficient object detection. - [RKNN](#rockchip-platform): RKNN models can run on Rockchip devices with included NPUs to provide efficient object detection.
- [Supports limited model architectures](../../configuration/object_detectors#choosing-a-model) - [Supports limited model architectures](../../configuration/object_detectors#choosing-a-model)
- Runs best with tiny or small size models - Runs best with tiny or small size models
- Runs efficiently on low power hardware - Runs efficiently on low power hardware
**Synaptics** **Synaptics** <CommunityBadge />
- [Synaptics](#synaptics): synap models can run on Synaptics devices(e.g astra machina) with included NPUs to provide efficient object detection. - [Synaptics](#synaptics): synap models can run on Synaptics devices(e.g astra machina) with included NPUs to provide efficient object detection.
::: :::
### Synaptics
- **Synaptics** Default model is **mobilenet**
| Name | Synaptics SL1680 Inference Time |
| ---------------- | ------------------------------- |
| ssd mobilenet | ~ 25 ms |
| yolov5m | ~ 118 ms |
### Hailo-8 ### Hailo-8
Frigate supports both the Hailo-8 and Hailo-8L AI Acceleration Modules on compatible hardware platforms—including the Raspberry Pi 5 with the PCIe hat from the AI kit. The Hailo detector integration in Frigate automatically identifies your hardware type and selects the appropriate default model when a custom model isnt provided. Frigate supports both the Hailo-8 and Hailo-8L AI Acceleration Modules on compatible hardware platforms—including the Raspberry Pi 5 with the PCIe hat from the AI kit. The Hailo detector integration in Frigate automatically identifies your hardware type and selects the appropriate default model when a custom model isnt provided.
@ -261,7 +257,7 @@ Inference speeds may vary depending on the host platform. The above data was mea
### Nvidia Jetson ### Nvidia Jetson
Frigate supports all Jetson boards, from the inexpensive Jetson Nano to the powerful Jetson Orin AGX. It will [make use of the Jetson's hardware media engine](/configuration/hardware_acceleration_video#nvidia-jetson-orin-agx-orin-nx-orin-nano-xavier-agx-xavier-nx-tx2-tx1-nano) when configured with the [appropriate presets](/configuration/ffmpeg_presets#hwaccel-presets), and will make use of the Jetson's GPU and DLA for object detection when configured with the [TensorRT detector](/configuration/object_detectors#nvidia-tensorrt-detector). Jetson devices are supported via the TensorRT or ONNX detectors when running Jetpack 6. It will [make use of the Jetson's hardware media engine](/configuration/hardware_acceleration_video#nvidia-jetson-orin-agx-orin-nx-orin-nano-xavier-agx-xavier-nx-tx2-tx1-nano) when configured with the [appropriate presets](/configuration/ffmpeg_presets#hwaccel-presets), and will make use of the Jetson's GPU and DLA for object detection when configured with the [TensorRT detector](/configuration/object_detectors#nvidia-tensorrt-detector).
Inference speed will vary depending on the YOLO model, jetson platform and jetson nvpmodel (GPU/DLA/EMC clock speed). It is typically 20-40 ms for most models. The DLA is more efficient than the GPU, but not faster, so using the DLA will reduce power consumption but will slightly increase inference time. Inference speed will vary depending on the YOLO model, jetson platform and jetson nvpmodel (GPU/DLA/EMC clock speed). It is typically 20-40 ms for most models. The DLA is more efficient than the GPU, but not faster, so using the DLA will reduce power consumption but will slightly increase inference time.
@ -282,6 +278,15 @@ Frigate supports hardware video processing on all Rockchip boards. However, hard
The inference time of a rk3588 with all 3 cores enabled is typically 25-30 ms for yolo-nas s. The inference time of a rk3588 with all 3 cores enabled is typically 25-30 ms for yolo-nas s.
### Synaptics
- **Synaptics** Default model is **mobilenet**
| Name | Synaptics SL1680 Inference Time |
| ------------- | ------------------------------- |
| ssd mobilenet | ~ 25 ms |
| yolov5m | ~ 118 ms |
## What does Frigate use the CPU for and what does it use a detector for? (ELI5 Version) ## What does Frigate use the CPU for and what does it use a detector for? (ELI5 Version)
This is taken from a [user question on reddit](https://www.reddit.com/r/homeassistant/comments/q8mgau/comment/hgqbxh5/?utm_source=share&utm_medium=web2x&context=3). Modified slightly for clarity. This is taken from a [user question on reddit](https://www.reddit.com/r/homeassistant/comments/q8mgau/comment/hgqbxh5/?utm_source=share&utm_medium=web2x&context=3). Modified slightly for clarity.

View File

@ -159,11 +159,44 @@ Message published for updates to tracked object metadata, for example:
} }
``` ```
#### Object Classification Update
Message published when [object classification](/configuration/custom_classification/object_classification) reaches consensus on a classification result.
**Sub label type:**
```json
{
"type": "classification",
"id": "1607123955.475377-mxklsc",
"camera": "front_door_cam",
"timestamp": 1607123958.748393,
"model": "person_classifier",
"sub_label": "delivery_person",
"score": 0.87
}
```
**Attribute type:**
```json
{
"type": "classification",
"id": "1607123955.475377-mxklsc",
"camera": "front_door_cam",
"timestamp": 1607123958.748393,
"model": "helmet_detector",
"attribute": "yes",
"score": 0.92
}
```
### `frigate/reviews` ### `frigate/reviews`
Message published for each changed review item. The first message is published when the `detection` or `alert` is initiated. Message published for each changed review item. The first message is published when the `detection` or `alert` is initiated.
An `update` with the same ID will be published when: An `update` with the same ID will be published when:
- The severity changes from `detection` to `alert` - The severity changes from `detection` to `alert`
- Additional objects are detected - Additional objects are detected
- An object is recognized via face, lpr, etc. - An object is recognized via face, lpr, etc.
@ -308,6 +341,11 @@ Publishes transcribed text for audio detected on this camera.
**NOTE:** Requires audio detection and transcription to be enabled **NOTE:** Requires audio detection and transcription to be enabled
### `frigate/<camera_name>/classification/<model_name>`
Publishes the current state detected by a state classification model for the camera. The topic name includes the model name as configured in your classification settings.
The published value is the detected state class name (e.g., `open`, `closed`, `on`, `off`). The state is only published when it changes, helping to reduce unnecessary MQTT traffic.
### `frigate/<camera_name>/enabled/set` ### `frigate/<camera_name>/enabled/set`
Topic to turn Frigate's processing of a camera on and off. Expected values are `ON` and `OFF`. Topic to turn Frigate's processing of a camera on and off. Expected values are `ON` and `OFF`.

View File

@ -10,7 +10,7 @@ const config: Config = {
baseUrl: "/", baseUrl: "/",
onBrokenLinks: "throw", onBrokenLinks: "throw",
onBrokenMarkdownLinks: "warn", onBrokenMarkdownLinks: "warn",
favicon: "img/favicon.ico", favicon: "img/branding/favicon.ico",
organizationName: "blakeblackshear", organizationName: "blakeblackshear",
projectName: "frigate", projectName: "frigate",
themes: [ themes: [
@ -116,8 +116,8 @@ const config: Config = {
title: "Frigate", title: "Frigate",
logo: { logo: {
alt: "Frigate", alt: "Frigate",
src: "img/logo.svg", src: "img/branding/logo.svg",
srcDark: "img/logo-dark.svg", srcDark: "img/branding/logo-dark.svg",
}, },
items: [ items: [
{ {
@ -170,7 +170,7 @@ const config: Config = {
], ],
}, },
], ],
copyright: `Copyright © ${new Date().getFullYear()} Blake Blackshear`, copyright: `Copyright © ${new Date().getFullYear()} Frigate LLC`,
}, },
}, },
plugins: [ plugins: [

View File

@ -0,0 +1,23 @@
import React from "react";
export default function CommunityBadge() {
return (
<span
title="This detector is maintained by community members who provide code, maintenance, and support. See the contributing boards documentation for more information."
style={{
display: "inline-block",
backgroundColor: "#f1f3f5",
color: "#24292f",
fontSize: "11px",
fontWeight: 600,
padding: "2px 6px",
borderRadius: "3px",
border: "1px solid #d1d9e0",
marginLeft: "4px",
cursor: "help",
}}
>
Community Supported
</span>
);
}

30
docs/static/img/branding/LICENSE.md vendored Normal file
View File

@ -0,0 +1,30 @@
# COPYRIGHT AND TRADEMARK NOTICE
The images, logos, and icons contained in this directory (the "Brand Assets") are
proprietary to Frigate LLC and are NOT covered by the MIT License governing the
rest of this repository.
1. TRADEMARK STATUS
The "Frigate" name and the accompanying logo are common law trademarks™ of
Frigate LLC. Frigate LLC reserves all rights to these marks.
2. LIMITED PERMISSION FOR USE
Permission is hereby granted to display these Brand Assets strictly for the
following purposes:
a. To execute the software interface on a local machine.
b. To identify the software in documentation or reviews (nominative use).
3. RESTRICTIONS
You may NOT:
a. Use these Brand Assets to represent a derivative work (fork) as an official
product of Frigate LLC.
b. Use these Brand Assets in a way that implies endorsement, sponsorship, or
commercial affiliation with Frigate LLC.
c. Modify or alter the Brand Assets.
If you fork this repository with the intent to distribute a modified or competing
version of the software, you must replace these Brand Assets with your own
original content.
ALL RIGHTS RESERVED.
Copyright (c) 2025 Frigate LLC.

View File

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

View File

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 12 KiB

View File

Before

Width:  |  Height:  |  Size: 936 B

After

Width:  |  Height:  |  Size: 936 B

View File

Before

Width:  |  Height:  |  Size: 933 B

After

Width:  |  Height:  |  Size: 933 B

View File

@ -1,6 +1,7 @@
"""Real time processor that works with classification tflite models.""" """Real time processor that works with classification tflite models."""
import datetime import datetime
import json
import logging import logging
import os import os
from typing import Any from typing import Any
@ -21,6 +22,7 @@ from frigate.config.classification import (
) )
from frigate.const import CLIPS_DIR, MODEL_CACHE_DIR from frigate.const import CLIPS_DIR, MODEL_CACHE_DIR
from frigate.log import redirect_output_to_logger from frigate.log import redirect_output_to_logger
from frigate.types import TrackedObjectUpdateTypesEnum
from frigate.util.builtin import EventsPerSecond, InferenceSpeed, load_labels from frigate.util.builtin import EventsPerSecond, InferenceSpeed, load_labels
from frigate.util.object import box_overlaps, calculate_region from frigate.util.object import box_overlaps, calculate_region
@ -284,6 +286,7 @@ class CustomObjectClassificationProcessor(RealTimeProcessorApi):
config: FrigateConfig, config: FrigateConfig,
model_config: CustomClassificationConfig, model_config: CustomClassificationConfig,
sub_label_publisher: EventMetadataPublisher, sub_label_publisher: EventMetadataPublisher,
requestor: InterProcessRequestor,
metrics: DataProcessorMetrics, metrics: DataProcessorMetrics,
): ):
super().__init__(config, metrics) super().__init__(config, metrics)
@ -292,6 +295,7 @@ class CustomObjectClassificationProcessor(RealTimeProcessorApi):
self.train_dir = os.path.join(CLIPS_DIR, self.model_config.name, "train") self.train_dir = os.path.join(CLIPS_DIR, self.model_config.name, "train")
self.interpreter: Interpreter | None = None self.interpreter: Interpreter | None = None
self.sub_label_publisher = sub_label_publisher self.sub_label_publisher = sub_label_publisher
self.requestor = requestor
self.tensor_input_details: dict[str, Any] | None = None self.tensor_input_details: dict[str, Any] | None = None
self.tensor_output_details: dict[str, Any] | None = None self.tensor_output_details: dict[str, Any] | None = None
self.classification_history: dict[str, list[tuple[str, float, float]]] = {} self.classification_history: dict[str, list[tuple[str, float, float]]] = {}
@ -486,6 +490,8 @@ class CustomObjectClassificationProcessor(RealTimeProcessorApi):
) )
if consensus_label is not None: if consensus_label is not None:
camera = obj_data["camera"]
if ( if (
self.model_config.object_config.classification_type self.model_config.object_config.classification_type
== ObjectClassificationType.sub_label == ObjectClassificationType.sub_label
@ -494,6 +500,20 @@ class CustomObjectClassificationProcessor(RealTimeProcessorApi):
(object_id, consensus_label, consensus_score), (object_id, consensus_label, consensus_score),
EventMetadataTypeEnum.sub_label, EventMetadataTypeEnum.sub_label,
) )
self.requestor.send_data(
"tracked_object_update",
json.dumps(
{
"type": TrackedObjectUpdateTypesEnum.classification,
"id": object_id,
"camera": camera,
"timestamp": now,
"model": self.model_config.name,
"sub_label": consensus_label,
"score": consensus_score,
}
),
)
elif ( elif (
self.model_config.object_config.classification_type self.model_config.object_config.classification_type
== ObjectClassificationType.attribute == ObjectClassificationType.attribute
@ -507,6 +527,20 @@ class CustomObjectClassificationProcessor(RealTimeProcessorApi):
), ),
EventMetadataTypeEnum.attribute.value, EventMetadataTypeEnum.attribute.value,
) )
self.requestor.send_data(
"tracked_object_update",
json.dumps(
{
"type": TrackedObjectUpdateTypesEnum.classification,
"id": object_id,
"camera": camera,
"timestamp": now,
"model": self.model_config.name,
"attribute": consensus_label,
"score": consensus_score,
}
),
)
def handle_request(self, topic, request_data): def handle_request(self, topic, request_data):
if topic == EmbeddingsRequestEnum.reload_classification_model.value: if topic == EmbeddingsRequestEnum.reload_classification_model.value:

View File

@ -195,6 +195,7 @@ class EmbeddingMaintainer(threading.Thread):
self.config, self.config,
model_config, model_config,
self.event_metadata_publisher, self.event_metadata_publisher,
self.requestor,
self.metrics, self.metrics,
) )
) )
@ -339,6 +340,7 @@ class EmbeddingMaintainer(threading.Thread):
self.config, self.config,
model_config, model_config,
self.event_metadata_publisher, self.event_metadata_publisher,
self.requestor,
self.metrics, self.metrics,
) )

View File

@ -30,3 +30,4 @@ class TrackedObjectUpdateTypesEnum(str, Enum):
description = "description" description = "description"
face = "face" face = "face"
lpr = "lpr" lpr = "lpr"
classification = "classification"

View File

@ -130,8 +130,13 @@ def get_soc_type() -> Optional[str]:
"""Get the SoC type from device tree.""" """Get the SoC type from device tree."""
try: try:
with open("/proc/device-tree/compatible") as file: with open("/proc/device-tree/compatible") as file:
soc = file.read().split(",")[-1].strip("\x00") content = file.read()
return soc
# Check for Jetson devices
if "nvidia" in content:
return None
return content.split(",")[-1].strip("\x00")
except FileNotFoundError: except FileNotFoundError:
logger.debug("Could not determine SoC type from device tree") logger.debug("Could not determine SoC type from device tree")
return None return None

View File

@ -0,0 +1,33 @@
# COPYRIGHT AND TRADEMARK NOTICE
The images, logos, and icons contained in this directory (the "Brand Assets") are
proprietary to Frigate LLC and are NOT covered by the MIT License governing the
rest of this repository.
1. TRADEMARK STATUS
The "Frigate" name and the accompanying logo are common law trademarks™ of
Frigate LLC. Frigate LLC reserves all rights to these marks.
2. LIMITED PERMISSION FOR USE
Permission is hereby granted to display these Brand Assets strictly for the
following purposes:
a. To execute the software interface on a local machine.
b. To identify the software in documentation or reviews (nominative use).
3. RESTRICTIONS
You may NOT:
a. Use these Brand Assets to represent a derivative work (fork) as an official
product of Frigate LLC.
b. Use these Brand Assets in a way that implies endorsement, sponsorship, or
commercial affiliation with Frigate LLC.
c. Modify or alter the Brand Assets.
If you fork this repository with the intent to distribute a modified or competing
version of the software, you must replace these Brand Assets with your own
original content.
For full usage guidelines, strictly see the TRADEMARK.md file in the
repository root.
ALL RIGHTS RESERVED.
Copyright (c) 2025 Frigate LLC.

View File

Before

Width:  |  Height:  |  Size: 3.9 KiB

After

Width:  |  Height:  |  Size: 3.9 KiB

View File

Before

Width:  |  Height:  |  Size: 558 B

After

Width:  |  Height:  |  Size: 558 B

View File

Before

Width:  |  Height:  |  Size: 800 B

After

Width:  |  Height:  |  Size: 800 B

View File

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

View File

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 12 KiB

View File

Before

Width:  |  Height:  |  Size: 2.9 KiB

After

Width:  |  Height:  |  Size: 2.9 KiB

View File

Before

Width:  |  Height:  |  Size: 2.6 KiB

After

Width:  |  Height:  |  Size: 2.6 KiB

View File

@ -2,29 +2,29 @@
<html lang="en"> <html lang="en">
<head> <head>
<meta charset="UTF-8" /> <meta charset="UTF-8" />
<link rel="icon" href="/images/favicon.ico" /> <link rel="icon" href="/images/branding/favicon.ico" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Frigate</title> <title>Frigate</title>
<link <link
rel="apple-touch-icon" rel="apple-touch-icon"
sizes="180x180" sizes="180x180"
href="/images/apple-touch-icon.png" href="/images/branding/apple-touch-icon.png"
/> />
<link <link
rel="icon" rel="icon"
type="image/png" type="image/png"
sizes="32x32" sizes="32x32"
href="/images/favicon-32x32.png" href="/images/branding/favicon-32x32.png"
/> />
<link <link
rel="icon" rel="icon"
type="image/png" type="image/png"
sizes="16x16" sizes="16x16"
href="/images/favicon-16x16.png" href="/images/branding/favicon-16x16.png"
/> />
<link rel="icon" type="image/svg+xml" href="/images/favicon.svg" /> <link rel="icon" type="image/svg+xml" href="/images/branding/favicon.svg" />
<link rel="manifest" href="/site.webmanifest" crossorigin="use-credentials" /> <link rel="manifest" href="/site.webmanifest" crossorigin="use-credentials" />
<link rel="mask-icon" href="/images/favicon.svg" color="#3b82f7" /> <link rel="mask-icon" href="/images/branding/favicon.svg" color="#3b82f7" />
<meta name="theme-color" content="#ffffff" media="(prefers-color-scheme: light)" /> <meta name="theme-color" content="#ffffff" media="(prefers-color-scheme: light)" />
<meta name="theme-color" content="#000000" media="(prefers-color-scheme: dark)" /> <meta name="theme-color" content="#000000" media="(prefers-color-scheme: dark)" />
</head> </head>

View File

@ -2,29 +2,29 @@
<html lang="en"> <html lang="en">
<head> <head>
<meta charset="UTF-8" /> <meta charset="UTF-8" />
<link rel="icon" href="/images/favicon.ico" /> <link rel="icon" href="/images/branding/favicon.ico" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Frigate</title> <title>Frigate</title>
<link <link
rel="apple-touch-icon" rel="apple-touch-icon"
sizes="180x180" sizes="180x180"
href="/images/apple-touch-icon.png" href="/images/branding/apple-touch-icon.png"
/> />
<link <link
rel="icon" rel="icon"
type="image/png" type="image/png"
sizes="32x32" sizes="32x32"
href="/images/favicon-32x32.png" href="/images/branding/favicon-32x32.png"
/> />
<link <link
rel="icon" rel="icon"
type="image/png" type="image/png"
sizes="16x16" sizes="16x16"
href="/images/favicon-16x16.png" href="/images/branding/favicon-16x16.png"
/> />
<link rel="icon" type="image/svg+xml" href="/images/favicon.svg" /> <link rel="icon" type="image/svg+xml" href="/images/branding/favicon.svg" />
<link rel="manifest" href="/site.webmanifest" crossorigin="use-credentials" /> <link rel="manifest" href="/site.webmanifest" crossorigin="use-credentials" />
<link rel="mask-icon" href="/images/favicon.svg" color="#3b82f7" /> <link rel="mask-icon" href="/images/branding/favicon.svg" color="#3b82f7" />
<meta name="theme-color" content="#ffffff" media="(prefers-color-scheme: light)" /> <meta name="theme-color" content="#ffffff" media="(prefers-color-scheme: light)" />
<meta name="theme-color" content="#000000" media="(prefers-color-scheme: dark)" /> <meta name="theme-color" content="#000000" media="(prefers-color-scheme: dark)" />
</head> </head>

View File

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

View File

@ -8,5 +8,8 @@
"lastHour_other": "Последните {{count}} часа" "lastHour_other": "Последните {{count}} часа"
}, },
"select": "Избери" "select": "Избери"
},
"restart": {
"title": "Сигурен ли сте, че искате да рестартирате Frigate?"
} }
} }

View File

@ -1 +1,5 @@
{} {
"iconPicker": {
"selectIcon": "Изберете иконка"
}
}

View File

@ -1 +1,7 @@
{} {
"button": {
"downloadVideo": {
"label": "Свали видео"
}
}
}

View File

@ -18,5 +18,6 @@
"bicycle": "Велосипед", "bicycle": "Велосипед",
"skateboard": "Скейтборд", "skateboard": "Скейтборд",
"door": "Врата", "door": "Врата",
"blender": "Блендер" "blender": "Блендер",
"person": "Човек"
} }

View File

@ -1 +1,3 @@
{} {
"documentTitle": "Експорт - Frigate"
}

View File

@ -63,5 +63,6 @@
}, },
"cameraSettings": { "cameraSettings": {
"cameraEnabled": "Камерата е включена" "cameraEnabled": "Камерата е включена"
} },
"documentTitle": "Наживо - Frigate"
} }

View File

@ -104,7 +104,8 @@
"anonymous": "Anònim", "anonymous": "Anònim",
"logout": "Tanca la sessió", "logout": "Tanca la sessió",
"current": "Usuari actual: {{user}}" "current": "Usuari actual: {{user}}"
} },
"classification": "Classificació"
}, },
"pagination": { "pagination": {
"previous": { "previous": {
@ -197,7 +198,10 @@
"formattedTimestampMonthDayYearHourMinute": { "formattedTimestampMonthDayYearHourMinute": {
"12hour": "MMM d yyyy, h:mm aaa", "12hour": "MMM d yyyy, h:mm aaa",
"24hour": "MMM d yyyy, HH:mm" "24hour": "MMM d yyyy, HH:mm"
} },
"inProgress": "En curs",
"invalidStartTime": "Hora d'inici no vàlida",
"invalidEndTime": "Hora de finalització no vàlida"
}, },
"unit": { "unit": {
"speed": { "speed": {
@ -221,7 +225,9 @@
"back": "Torna enrere", "back": "Torna enrere",
"hide": "Oculta {{item}}", "hide": "Oculta {{item}}",
"show": "Mostra {{item}}", "show": "Mostra {{item}}",
"ID": "ID" "ID": "ID",
"none": "Cap",
"all": "Tots"
}, },
"button": { "button": {
"apply": "Aplicar", "apply": "Aplicar",
@ -258,7 +264,8 @@
"off": "APAGAT", "off": "APAGAT",
"unselect": "Desseleccionar", "unselect": "Desseleccionar",
"enable": "Habilitar", "enable": "Habilitar",
"enabled": "Habilitat" "enabled": "Habilitat",
"continue": "Continua"
}, },
"toast": { "toast": {
"copyUrlToClipboard": "URL copiada al porta-retalls.", "copyUrlToClipboard": "URL copiada al porta-retalls.",

View File

@ -17,31 +17,40 @@
"categorizedImage": "Imatge classificada amb èxit", "categorizedImage": "Imatge classificada amb èxit",
"trainedModel": "Model entrenat amb èxit.", "trainedModel": "Model entrenat amb èxit.",
"trainingModel": "S'ha iniciat amb èxit la formació de models.", "trainingModel": "S'ha iniciat amb èxit la formació de models.",
"deletedModel_one": "S'ha suprimit correctament el model {{count}}", "deletedModel_one": "S'ha suprimit correctament {{count}} model",
"deletedModel_many": "S'han suprimit correctament {{count}} models", "deletedModel_many": "S'han suprimit correctament els {{count}} models",
"deletedModel_other": "", "deletedModel_other": "S'han suprimit correctament els {{count}} models",
"updatedModel": "S'ha actualitzat correctament la configuració del model" "updatedModel": "S'ha actualitzat correctament la configuració del model",
"renamedCategory": "S'ha canviat el nom de la classe a {{name}}"
}, },
"error": { "error": {
"deleteImageFailed": "No s'ha pogut suprimir: {{errorMessage}}", "deleteImageFailed": "No s'ha pogut suprimir: {{errorMessage}}",
"deleteCategoryFailed": "No s'ha pogut suprimir la classe: {{errorMessage}}", "deleteCategoryFailed": "No s'ha pogut suprimir la classe: {{errorMessage}}",
"categorizeFailed": "No s'ha pogut categoritzar la imatge: {{errorMessage}}", "categorizeFailed": "No s'ha pogut categoritzar la imatge: {{errorMessage}}",
"trainingFailed": "No s'ha pogut iniciar l'entrenament del model: {{errorMessage}}", "trainingFailed": "Ha fallat l'entrenament del model. Comproveu els registres de fragata per a més detalls.",
"deleteModelFailed": "No s'ha pogut suprimir el model: {{errorMessage}}", "deleteModelFailed": "No s'ha pogut suprimir el model: {{errorMessage}}",
"updateModelFailed": "No s'ha pogut actualitzar el model: {{errorMessage}}" "updateModelFailed": "No s'ha pogut actualitzar el model: {{errorMessage}}",
"renameCategoryFailed": "No s'ha pogut canviar el nom de la classe: {{errorMessage}}",
"trainingFailedToStart": "Errar en arrencar l'entrenament del model: {{errorMessage}}"
} }
}, },
"deleteCategory": { "deleteCategory": {
"title": "Suprimeix la classe", "title": "Suprimeix la classe",
"desc": "Esteu segur que voleu suprimir la classe {{name}}? Això suprimirà permanentment totes les imatges associades i requerirà tornar a entrenar el model." "desc": "Esteu segur que voleu suprimir la classe {{name}}? Això suprimirà permanentment totes les imatges associades i requerirà tornar a entrenar el model.",
"minClassesTitle": "No es pot suprimir la classe",
"minClassesDesc": "Un model de classificació ha de tenir almenys 2 classes. Afegeix una altra classe abans d'eliminar aquesta."
}, },
"deleteDatasetImages": { "deleteDatasetImages": {
"title": "Suprimeix les imatges del conjunt de dades", "title": "Suprimeix les imatges del conjunt de dades",
"desc": "Esteu segur que voleu suprimir {{count}} imatges de {{dataset}}? Aquesta acció no es pot desfer i requerirà tornar a entrenar el model." "desc_one": "Esteu segur que voleu suprimir {{count}} imatge de {{dataset}}? Aquesta acció no es pot desfer i requerirà tornar a entrenar el model.",
"desc_many": "Esteu segur que voleu suprimir {{count}} imatges de {{dataset}}? Aquesta acció no es pot desfer i requerirà tornar a entrenar el model.",
"desc_other": "Esteu segur que voleu suprimir {{count}} imatges de {{dataset}}? Aquesta acció no es pot desfer i requerirà tornar a entrenar el model."
}, },
"deleteTrainImages": { "deleteTrainImages": {
"title": "Suprimeix les imatges del tren", "title": "Suprimeix les imatges del tren",
"desc": "Esteu segur que voleu suprimir {{count}} imatges? Aquesta acció no es pot desfer." "desc_one": "Esteu segur que voleu suprimir {{count}} imatge? Aquesta acció no es pot desfer.",
"desc_many": "Esteu segur que voleu suprimir {{count}} imatges? Aquesta acció no es pot desfer.",
"desc_other": "Esteu segur que voleu suprimir {{count}} imatges? Aquesta acció no es pot desfer."
}, },
"renameCategory": { "renameCategory": {
"title": "Reanomena la classe", "title": "Reanomena la classe",
@ -140,13 +149,18 @@
"generationFailed": "Ha fallat la generació. Torneu-ho a provar.", "generationFailed": "Ha fallat la generació. Torneu-ho a provar.",
"classifyFailed": "No s'han pogut classificar les imatges: {{error}}" "classifyFailed": "No s'han pogut classificar les imatges: {{error}}"
}, },
"generateSuccess": "Imatges de mostra generades amb èxit" "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."
} }
}, },
"deleteModel": { "deleteModel": {
"title": "Suprimeix el model de classificació", "title": "Suprimeix el model de classificació",
"single": "Esteu segur que voleu suprimir {{name}}? Això suprimirà permanentment totes les dades associades, incloses les imatges i les dades d'entrenament. Aquesta acció no es pot desfer.", "single": "Esteu segur que voleu suprimir {{name}}? Això suprimirà permanentment totes les dades associades, incloses les imatges i les dades d'entrenament. Aquesta acció no es pot desfer.",
"desc": "Esteu segur que voleu suprimir {{count}} model(s)? Això suprimirà permanentment totes les dades associades, incloses les imatges i les dades d'entrenament. Aquesta acció no es pot desfer." "desc_one": "Esteu segur que voleu suprimir el model {{count}}? Això suprimirà permanentment totes les dades associades, incloses les imatges i les dades d'entrenament. Aquesta acció no es pot desfer.",
"desc_many": "Esteu segur que voleu suprimir {{count}} models? Això suprimirà permanentment totes les dades associades, incloses les imatges i les dades d'entrenament. Aquesta acció no es pot desfer.",
"desc_other": "Esteu segur que voleu suprimir {{count}} models? Això suprimirà permanentment totes les dades associades, incloses les imatges i les dades d'entrenament. Aquesta acció no es pot desfer."
}, },
"menu": { "menu": {
"objects": "Objectes", "objects": "Objectes",
@ -160,5 +174,11 @@
"descriptionState": "Edita les classes per a aquest model de classificació d'estats. Els canvis requeriran tornar a entrenar el model.", "descriptionState": "Edita les classes per a aquest model de classificació d'estats. Els canvis requeriran tornar a entrenar el model.",
"descriptionObject": "Edita el tipus d'objecte i el tipus de classificació per a aquest model de classificació d'objectes.", "descriptionObject": "Edita el tipus d'objecte i el tipus de classificació per a aquest model de classificació d'objectes.",
"stateClassesInfo": "Nota: Canviar les classes d'estat requereix tornar a entrenar el model amb les classes actualitzades." "stateClassesInfo": "Nota: Canviar les classes d'estat requereix tornar a entrenar el model amb les classes actualitzades."
},
"tooltip": {
"trainingInProgress": "El model s'està entrenant actualment",
"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ó."
} }
} }

View File

@ -39,9 +39,9 @@
"threateningActivity": "Activitat amenaçadora", "threateningActivity": "Activitat amenaçadora",
"detail": { "detail": {
"noDataFound": "No hi ha dades detallades a revisar", "noDataFound": "No hi ha dades detallades a revisar",
"trackedObject_one": "objecte", "trackedObject_one": "{{count}} objecte",
"aria": "Canvia la vista de detall", "aria": "Canvia la vista de detall",
"trackedObject_other": "objectes", "trackedObject_other": "{{count}} objectes",
"noObjectDetailData": "No hi ha dades de detall d'objecte disponibles.", "noObjectDetailData": "No hi ha dades de detall d'objecte disponibles.",
"label": "Detall", "label": "Detall",
"settings": "Configuració de la vista detallada", "settings": "Configuració de la vista detallada",

View File

@ -85,7 +85,8 @@
"snapshot": "instantània", "snapshot": "instantània",
"video": "vídeo", "video": "vídeo",
"object_lifecycle": "cicle de vida de l'objecte", "object_lifecycle": "cicle de vida de l'objecte",
"thumbnail": "miniatura" "thumbnail": "miniatura",
"tracking_details": "detalls del seguiment"
}, },
"details": { "details": {
"timestamp": "Marca temporal", "timestamp": "Marca temporal",
@ -170,7 +171,9 @@
"success": "L'objectes amb seguiment s'ha suprimit correctament.", "success": "L'objectes amb seguiment s'ha suprimit correctament.",
"error": "No s'ha pogut suprimir l'objecte rastrejat: {{errorMessage}}" "error": "No s'ha pogut suprimir l'objecte rastrejat: {{errorMessage}}"
} }
} },
"nextTrackedObject": "Següent objecte rastrejat",
"previousTrackedObject": "Objecte rastrejat anterior"
}, },
"itemMenu": { "itemMenu": {
"downloadVideo": { "downloadVideo": {
@ -273,7 +276,7 @@
"label": "Òfset d'Anotació", "label": "Òfset d'Anotació",
"desc": "Aquestes dades provenen del flux de detecció de la càmera, però se superposen a les imatges del flux de gravació. És poc probable que els dos fluxos estiguin perfectament sincronitzats. Com a resultat, el quadre delimitador i les imatges no s'alinearan perfectament. Tanmateix, es pot utilitzar el camp <code>annotation_offset</code> per ajustar-ho.", "desc": "Aquestes dades provenen del flux de detecció de la càmera, però se superposen a les imatges del flux de gravació. És poc probable que els dos fluxos estiguin perfectament sincronitzats. Com a resultat, el quadre delimitador i les imatges no s'alinearan perfectament. Tanmateix, es pot utilitzar el camp <code>annotation_offset</code> per ajustar-ho.",
"millisecondsToOffset": "Millisegons per l'òfset de detecció d'anotacions per. <em>Per defecte: 0</em>", "millisecondsToOffset": "Millisegons per l'òfset de detecció d'anotacions per. <em>Per defecte: 0</em>",
"tips": "CONSELL: Imagineu-vos que hi ha un clip d'esdeveniment amb una persona caminant d'esquerra a dreta. Si el quadre delimitador de la cronologia de l'esdeveniment està constantment a l'esquerra de la persona, aleshores s'hauria de disminuir el valor. De la mateixa manera, si una persona camina d'esquerra a dreta i el quadre delimitador està constantment per davant de la persona, aleshores s'hauria d'augmentar el valor.", "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": { "toast": {
"success": "L'Òfset d'anotació per a {{camera}} s'ha desat al fitxer de configuració. Reinicieu Frigate per aplicar els canvis." "success": "L'Òfset d'anotació per a {{camera}} s'ha desat al fitxer de configuració. Reinicieu Frigate per aplicar els canvis."
} }

View File

@ -67,7 +67,7 @@
"toast": { "toast": {
"success": { "success": {
"trainedFace": "Rostre entrenat amb èxit.", "trainedFace": "Rostre entrenat amb èxit.",
"updatedFaceScore": "Puntació de rostre actualitzada amb èxit.", "updatedFaceScore": "S'ha actualitzat correctament la puntuació de la cara a {{name}} ({{score}}).",
"uploadedImage": "Imatge pujada amb èxit.", "uploadedImage": "Imatge pujada amb èxit.",
"addFaceLibrary": "{{name}} s'ha afegit amb èxit a la biblioteca de rostres!", "addFaceLibrary": "{{name}} s'ha afegit amb èxit a la biblioteca de rostres!",
"deletedName_one": "{{count}} rostre s'ha suprimit amb èxit.", "deletedName_one": "{{count}} rostre s'ha suprimit amb èxit.",

View File

@ -180,6 +180,10 @@
"noCameras": { "noCameras": {
"title": "No s'ha configurat cap càmera", "title": "No s'ha configurat cap càmera",
"description": "Comenceu connectant una càmera a Frigate.", "description": "Comenceu connectant una càmera a Frigate.",
"buttonText": "Afegeix una càmera" "buttonText": "Afegeix una càmera",
"restricted": {
"title": "No hi ha càmeres disponibles",
"description": "No teniu permís per veure cap càmera en aquest grup."
}
} }
} }

View File

@ -7,7 +7,7 @@
"authentication": "Configuració d'autenticació - Frigate", "authentication": "Configuració d'autenticació - Frigate",
"camera": "Paràmetres de càmera - Frigate", "camera": "Paràmetres de càmera - Frigate",
"masksAndZones": "Editor de màscares i zones - Frigate", "masksAndZones": "Editor de màscares i zones - Frigate",
"general": "Paràmetres Generals - Frigate", "general": "Configuració de la interfície d'usuari - Fragata",
"frigatePlus": "Paràmetres de Frigate+ - Frigate", "frigatePlus": "Paràmetres de Frigate+ - Frigate",
"notifications": "Paràmetres de notificació - Frigate", "notifications": "Paràmetres de notificació - Frigate",
"cameraManagement": "Gestionar càmeres - Frigate", "cameraManagement": "Gestionar càmeres - Frigate",
@ -39,7 +39,7 @@
"noCamera": "Cap càmera" "noCamera": "Cap càmera"
}, },
"general": { "general": {
"title": "Paràmetres generals", "title": "Paràmetres de la interfície d'usuari",
"liveDashboard": { "liveDashboard": {
"title": "Panell en directe", "title": "Panell en directe",
"automaticLiveView": { "automaticLiveView": {
@ -53,6 +53,10 @@
"displayCameraNames": { "displayCameraNames": {
"label": "Mostra sempre els noms de la càmera", "label": "Mostra sempre els noms de la càmera",
"desc": "Mostra sempre els noms de les càmeres en un xip al tauler de visualització en directe multicàmera." "desc": "Mostra sempre els noms de les càmeres en un xip al tauler de visualització en directe multicàmera."
},
"liveFallbackTimeout": {
"label": "Temps d'espera per a la reserva del jugador en directe",
"desc": "Quan el flux en viu d'alta qualitat d'una càmera no està disponible, torneu al mode d'amplada de banda baixa després d'aquests molts segons. Per defecte: 3."
} }
}, },
"storedLayouts": { "storedLayouts": {
@ -858,9 +862,9 @@
"createRole": "Rol {{role}} creat exitosament", "createRole": "Rol {{role}} creat exitosament",
"updateCameras": "Càmeres actualitzades per al rol {{role}}", "updateCameras": "Càmeres actualitzades per al rol {{role}}",
"deleteRole": "Rol {{role}} eliminat exitosament", "deleteRole": "Rol {{role}} eliminat exitosament",
"userRolesUpdated_one": "{{count}} usuari(s) asignats a aquest rol s'han actualitzat a 'visor', i tenen accés a totes les càmeres.", "userRolesUpdated_one": "{{count}} l'usuari assignat a aquest rol s'ha actualitzat a 'visor', que té accés a totes les càmeres.",
"userRolesUpdated_many": "", "userRolesUpdated_many": "{{count}} usuaris assignats a aquest rol s'han actualitzat a 'visor', que té accés a totes les càmeres.",
"userRolesUpdated_other": "" "userRolesUpdated_other": "{{count}} usuaris assignats a aquest rol s'han actualitzat a 'visor', que té accés a totes les càmeres."
}, },
"error": { "error": {
"createRoleFailed": "Error al crear el rol: {{errorMessage}}", "createRoleFailed": "Error al crear el rol: {{errorMessage}}",
@ -876,11 +880,12 @@
"steps": { "steps": {
"nameAndConnection": "Nom i connexió", "nameAndConnection": "Nom i connexió",
"streamConfiguration": "Configuració de stream", "streamConfiguration": "Configuració de stream",
"validationAndTesting": "Validació i proves" "validationAndTesting": "Validació i proves",
"probeOrSnapshot": "Prova o instantània"
}, },
"step1": { "step1": {
"cameraBrand": "Marca de la càmera", "cameraBrand": "Marca de la càmera",
"description": "Introduïu els detalls de la càmera i proveu la connexió.", "description": "Introduïu els detalls de la càmera i trieu provar la càmera o seleccionar manualment la marca.",
"cameraName": "Nom de la càmera", "cameraName": "Nom de la càmera",
"cameraNamePlaceholder": "p. ex., vista general de la porta davantera o de la barra posterior", "cameraNamePlaceholder": "p. ex., vista general de la porta davantera o de la barra posterior",
"host": "Adreça de l'amfitrió/IP", "host": "Adreça de l'amfitrió/IP",
@ -919,7 +924,16 @@
"testing": { "testing": {
"probingMetadata": "S'estan provant les metadades de la càmera...", "probingMetadata": "S'estan provant les metadades de la càmera...",
"fetchingSnapshot": "S'està recuperant la instantània de la càmera..." "fetchingSnapshot": "S'està recuperant la instantània de la càmera..."
} },
"connectionSettings": "Configuració de la connexió",
"detectionMethod": "Mètode de detecció de flux",
"onvifPort": "ONVIF Port",
"probeMode": "Càmera de prova",
"manualMode": "Selecció manual",
"detectionMethodDescription": "Proveu la càmera amb ONVIF (si és compatible) per trobar URL de flux de càmera, o seleccioneu manualment la marca de càmera per utilitzar URL predefinits. Per a introduir un URL RTSP personalitzat, trieu el mètode manual i seleccioneu \"Altres\".",
"onvifPortDescription": "Per a les càmeres que suporten ONVIF, això sol ser 80 o 8080.",
"useDigestAuth": "Utilitza l'autenticació digest",
"useDigestAuthDescription": "Usa l'autenticació de resum HTTP per a ONVIF. Algunes càmeres poden requerir un nom d'usuari/contrasenya ONVIF dedicat en lloc de l'usuari administrador estàndard."
}, },
"save": { "save": {
"failure": "SS'ha produït un error en desar {{cameraName}}.", "failure": "SS'ha produït un error en desar {{cameraName}}.",
@ -936,7 +950,7 @@
"testFailed": "Ha fallat la prova de flux: {{error}}" "testFailed": "Ha fallat la prova de flux: {{error}}"
}, },
"step2": { "step2": {
"description": "Configura els rols de flux i afegeix fluxos addicionals per a la càmera.", "description": "Proveu la càmera per als fluxos disponibles o configureu la configuració manual basada en el mètode de detecció seleccionat.",
"streamsTitle": "Fluxos de la càmera", "streamsTitle": "Fluxos de la càmera",
"addStream": "Afegeix un flux", "addStream": "Afegeix un flux",
"addAnotherStream": "Afegeix un altre flux", "addAnotherStream": "Afegeix un altre flux",
@ -953,8 +967,8 @@
"audio": "Àudio" "audio": "Àudio"
}, },
"testStream": "Prova la connexió", "testStream": "Prova la connexió",
"testSuccess": "Prova de flux amb èxit!", "testSuccess": "Prova de connexió correcta!",
"testFailed": "Ha fallat la prova del flux", "testFailed": "Ha fallat la prova de connexió. Si us plau, comproveu la vostra entrada i torneu-ho a provar.",
"testFailedTitle": "Ha fallat la prova", "testFailedTitle": "Ha fallat la prova",
"connected": "Connectat", "connected": "Connectat",
"notConnected": "No connectat", "notConnected": "No connectat",
@ -972,7 +986,39 @@
"description": "Utilitzeu el restreaming go2rtc per reduir les connexions a la càmera." "description": "Utilitzeu el restreaming go2rtc per reduir les connexions a la càmera."
}, },
"roles": "Rols", "roles": "Rols",
"streamUrlPlaceholder": "rtsp://usuari:contrasenya@host:port/ruta" "streamUrlPlaceholder": "rtsp://usuari:contrasenya@host:port/ruta",
"streamDetails": "Detalls del flux",
"probing": "Provant càmera...",
"retry": "Intentar de nou",
"testing": {
"probingMetadata": "S'estan provant les metadades de la càmera...",
"fetchingSnapshot": "S'està recuperant la instantània de la càmera..."
},
"probeFailed": "No s'ha pogut provar la càmera: {{error}}",
"probingDevice": "Provant dispositiu...",
"probeSuccessful": "Prova exitosa",
"probeError": "Error de prova",
"probeNoSuccess": "La prova no ha tingut èxit",
"deviceInfo": "Informació del dispositiu",
"manufacturer": "Fabricant",
"model": "Model",
"firmware": "Firmware",
"profiles": "Perfils",
"ptzSupport": "Suport PTZ",
"autotrackingSupport": "Implementació de seguiment automàtic",
"presets": "Predefinits",
"rtspCandidates": "Candidats RTSP",
"rtspCandidatesDescription": "S'han trobat els següents URL RTSP de la sonda de la càmera. Proveu la connexió per a veure les metadades del flux.",
"noRtspCandidates": "No s'ha trobat cap URL RTSP a la càmera. Les vostres credencials poden ser incorrectes, o la càmera pot no admetre ONVIF o el mètode utilitzat per recuperar els URL RTSP. Torneu enrere i introduïu l'URL RTSP manualment.",
"candidateStreamTitle": "Candidat {{number}}",
"useCandidate": "Utilitza",
"uriCopy": "Copia",
"uriCopied": "URI copiat al porta-retalls",
"testConnection": "Prova la connexió",
"toggleUriView": "Feu clic per a commutar la vista completa de l'URI",
"errors": {
"hostRequired": "Es requereix l'adreça de l'amfitrió/IP"
}
}, },
"step3": { "step3": {
"none": "Cap", "none": "Cap",
@ -996,7 +1042,7 @@
"resolutionHigh": "Una resolució de {{resolution}} pot causar un ús més gran dels recursos.", "resolutionHigh": "Una resolució de {{resolution}} pot causar un ús més gran dels recursos.",
"resolutionLow": "Una resolució de {{resolution}} pot ser massa baixa per a la detecció fiable d'objectes petits." "resolutionLow": "Una resolució de {{resolution}} pot ser massa baixa per a la detecció fiable d'objectes petits."
}, },
"description": "Validació i anàlisi final abans de desar la nova càmera. Connecta cada flux abans de desar-lo.", "description": "Configura els rols de flux i afegeix fluxos addicionals per a la càmera.",
"validationTitle": "Validació del flux", "validationTitle": "Validació del flux",
"connectAllStreams": "Connecta tots els fluxos", "connectAllStreams": "Connecta tots els fluxos",
"reconnectionSuccess": "S'ha reconnectat correctament.", "reconnectionSuccess": "S'ha reconnectat correctament.",
@ -1016,7 +1062,91 @@
"streamValidated": "El flux {{number}} s'ha validat correctament", "streamValidated": "El flux {{number}} s'ha validat correctament",
"streamValidationFailed": "Ha fallat la validació del flux {{number}}", "streamValidationFailed": "Ha fallat la validació del flux {{number}}",
"ffmpegModule": "Usa el mode de compatibilitat del flux", "ffmpegModule": "Usa el mode de compatibilitat del flux",
"ffmpegModuleDescription": "Si el flux no es carrega després de diversos intents, proveu d'activar-ho. Quan està activat, Frigate utilitzarà el mòdul ffmpeg amb go2rtc. Això pot proporcionar una millor compatibilitat amb alguns fluxos de càmera." "ffmpegModuleDescription": "Si el flux no es carrega després de diversos intents, proveu d'activar-ho. Quan està activat, Frigate utilitzarà el mòdul ffmpeg amb go2rtc. Això pot proporcionar una millor compatibilitat amb alguns fluxos de càmera.",
"streamsTitle": "Fluxos de la càmera",
"addStream": "Afegeix un flux",
"addAnotherStream": "Afegeix un altre flux",
"streamUrl": "URL del flux",
"streamUrlPlaceholder": "rtsp://usuari:contrasenya@host:port/ruta",
"selectStream": "Selecciona un flux",
"searchCandidates": "Cerca candidats...",
"noStreamFound": "No s'ha trobat cap flux",
"url": "URL",
"resolution": "Resolució",
"selectResolution": "Selecciona la resolució",
"quality": "Qualitat",
"selectQuality": "Selecciona la qualitat",
"roleLabels": {
"detect": "Detecció d'objectes",
"record": "Enregistrament",
"audio": "Àudio"
},
"testStream": "Prova la connexió",
"testSuccess": "Prova de flux amb èxit!",
"testFailed": "Ha fallat la prova del flux",
"testFailedTitle": "Ha fallat la prova",
"connected": "Connectat",
"notConnected": "No connectat",
"featuresTitle": "Característiques",
"go2rtc": "Redueix les connexions a la càmera",
"detectRoleWarning": "Almenys un flux ha de tenir el rol de \"detecte\" per continuar.",
"rolesPopover": {
"title": "Roles de flux",
"detect": "Canal principal per a la detecció d'objectes.",
"record": "Desa els segments del canal de vídeo basats en la configuració.",
"audio": "Canal per a la detecció basada en àudio."
},
"featuresPopover": {
"title": "Característiques del flux",
"description": "Utilitzeu el restreaming go2rtc per reduir les connexions a la càmera."
}
},
"step4": {
"description": "Validació i anàlisi final abans de desar la nova càmera. Connecta cada flux abans de desar-lo.",
"validationTitle": "Validació del flux",
"connectAllStreams": "Connecta tots els fluxos",
"reconnectionSuccess": "S'ha reconnectat correctament.",
"reconnectionPartial": "Alguns fluxos no s'han pogut tornar a connecta.",
"streamUnavailable": "La vista prèvia del flux no està disponible",
"reload": "Torna a carregar",
"connecting": "S'està connectant...",
"streamTitle": "Flux {{number}}",
"valid": "Vàlid",
"failed": "Ha fallat",
"notTested": "No provat",
"connectStream": "Connecta",
"connectingStream": "Connectant",
"disconnectStream": "Desconnecta",
"estimatedBandwidth": "Amplada de banda estimada",
"roles": "Roles",
"ffmpegModule": "Usa el mode de compatibilitat del flux",
"ffmpegModuleDescription": "Si el flux no es carrega després de diversos intents, proveu d'activar-ho. Quan està activat, Frigate utilitzarà el mòdul ffmpeg amb go2rtc. Això pot proporcionar una millor compatibilitat amb alguns fluxos de càmera.",
"none": "Cap",
"error": "Error",
"streamValidated": "El flux {{number}} s'ha validat correctament",
"streamValidationFailed": "Ha fallat la validació del flux {{number}}",
"saveAndApply": "Desa una càmera nova",
"saveError": "Configuració no vàlida. Si us plau, comproveu la configuració.",
"issues": {
"title": "Validació del flux",
"videoCodecGood": "El còdec de vídeo és {{codec}}.",
"audioCodecGood": "El còdec d'àudio és {{codec}}.",
"resolutionHigh": "Una resolució de {{resolution}} pot causar un ús més gran dels recursos.",
"resolutionLow": "Una resolució de {{resolution}} pot ser massa baixa per a la detecció fiable d'objectes petits.",
"noAudioWarning": "No s'ha detectat cap àudio per a aquest flux, els enregistraments no tindran àudio.",
"audioCodecRecordError": "El còdec d'àudio AAC és necessari per a suportar l'àudio en els enregistraments.",
"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."
},
"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."
},
"hikvision": {
"substreamWarning": "El substream 1 està bloquejat a una resolució baixa. Moltes càmeres Hikvision 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."
}
}
} }
}, },
"cameraManagement": { "cameraManagement": {

View File

@ -76,7 +76,12 @@
} }
}, },
"npuUsage": "Ús de NPU", "npuUsage": "Ús de NPU",
"npuMemory": "Memòria de NPU" "npuMemory": "Memòria de NPU",
"intelGpuWarning": {
"title": "Avís d'estadístiques de la GPU d'Intel",
"message": "Estadístiques de GPU no disponibles",
"description": "Aquest és un error conegut en les eines d'informació de les estadístiques de GPU d'Intel (intel.gpu.top) on es trencarà i retornarà repetidament un ús de GPU del 0% fins i tot en els casos en què l'acceleració del maquinari i la detecció d'objectes s'executen correctament a la (i)GPU. Això no és un error de fragata. Podeu reiniciar l'amfitrió per a corregir temporalment el problema i confirmar que la GPU funciona correctament. Això no afecta el rendiment."
}
}, },
"otherProcesses": { "otherProcesses": {
"title": "Altres processos", "title": "Altres processos",
@ -179,8 +184,15 @@
"plate_recognition_speed": "Velocitat de reconeixement de matrícules", "plate_recognition_speed": "Velocitat de reconeixement de matrícules",
"text_embedding_speed": "Velocitat d'incrustació de text", "text_embedding_speed": "Velocitat d'incrustació de text",
"yolov9_plate_detection": "Detecció de matrícules YOLOv9", "yolov9_plate_detection": "Detecció de matrícules YOLOv9",
"yolov9_plate_detection_speed": "Velocitat de detecció de matrícules YOLOv9" "yolov9_plate_detection_speed": "Velocitat de detecció de matrícules YOLOv9",
"review_description": "Descripció de la revisió",
"review_description_speed": "Velocitat de la descripció de la revisió",
"review_description_events_per_second": "Descripció de la revisió",
"object_description": "Descripció de l'objecte",
"object_description_speed": "Velocitat de la descripció de l'objecte",
"object_description_events_per_second": "Descripció de l'objecte"
}, },
"infPerSecond": "Inferències per segon" "infPerSecond": "Inferències per segon",
"averageInf": "Temps mitjà d'inferència"
} }
} }

View File

@ -1,7 +1,31 @@
{ {
"documentTitle": "Klasifikační modely", "documentTitle": "Klasifikační modely",
"button": { "button": {
"deleteClassificationAttempts": "Odstranit Klasifikační obrazy", "deleteClassificationAttempts": "Odstrániť Klasifikačné obrazy",
"renameCategory": "Přejmenovat třídu" "renameCategory": "Premenovať triedu",
"deleteCategory": "Zmazať triedu",
"deleteImages": "Zmazať obrázok",
"trainModel": "Trenovací model",
"addClassification": "Pridať klasifikáciu",
"deleteModels": "Zmazať modeli",
"editModel": "Upraviť model"
},
"details": {
"scoreInfo": "Skóre predstavuje priemernú istotu klasifikácie naprieč detekciami tohoto objektu."
},
"tooltip": {
"trainingInProgress": "Model se práve trénuje",
"noNewImages": "Žiadne nové obrázky na trénovanie. Najskôr klasifikujte viac obrazkov v datasete.",
"noChanges": "Od posledného treningu nedošlo k žiadnym zmenám v datasete.",
"modelNotReady": "Model nieje pripravený na trénovanie."
},
"toast": {
"success": {
"deletedImage": "Zmazať obrazky",
"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"
}
} }
} }

View File

@ -36,5 +36,11 @@
"selected_one": "{{count}} vybráno", "selected_one": "{{count}} vybráno",
"selected_other": "{{count}} vybráno", "selected_other": "{{count}} vybráno",
"suspiciousActivity": "Podezřelá aktivita", "suspiciousActivity": "Podezřelá aktivita",
"threateningActivity": "Ohrožující činnost" "threateningActivity": "Ohrožující činnost",
"zoomIn": "Přiblížit",
"zoomOut": "Oddálit",
"detail": {
"label": "Detail",
"noDataFound": "Žádná detailní data k prohlédnutí"
}
} }

View File

@ -13,5 +13,11 @@
"error": { "error": {
"renameExportFailed": "Nepodařilo se přejmenovat export: {{errorMessage}}" "renameExportFailed": "Nepodařilo se přejmenovat export: {{errorMessage}}"
} }
},
"tooltip": {
"shareExport": "Sdílet export",
"downloadVideo": "Stáhnout video",
"deleteExport": "Smazat export",
"editName": "Upravit jméno"
} }
} }

View File

@ -306,7 +306,8 @@
"notifications": "Notifikace", "notifications": "Notifikace",
"frigateplus": "Frigate+", "frigateplus": "Frigate+",
"enrichments": "Obohacení", "enrichments": "Obohacení",
"triggers": "Spouštěče" "triggers": "Spouštěče",
"cameraManagement": "Správa"
}, },
"dialog": { "dialog": {
"unsavedChanges": { "unsavedChanges": {

View File

@ -80,5 +80,9 @@
"hammer": "Hammer", "hammer": "Hammer",
"drill": "Bore", "drill": "Bore",
"explosion": "Eksplosion", "explosion": "Eksplosion",
"fireworks": "Nytårskrudt" "fireworks": "Nytårskrudt",
"babbling": "Pludren",
"yell": "Råb",
"whoop": "Jubel",
"snicker": "Smålatter"
} }

View File

@ -7,7 +7,9 @@
"usernameRequired": "Brugernavn kræves", "usernameRequired": "Brugernavn kræves",
"passwordRequired": "Kodeord kræves", "passwordRequired": "Kodeord kræves",
"loginFailed": "Login fejlede", "loginFailed": "Login fejlede",
"unknownError": "Ukendt fejl. Tjek logs." "unknownError": "Ukendt fejl. Tjek logs.",
} "rateLimit": "Grænsen for forespørgsler er overskredet. Prøv igen senere."
},
"firstTimeLogin": "Forsøger du at logge ind for første gang? Loginoplysningerne står i Frigate-loggene."
} }
} }

View File

@ -11,7 +11,11 @@
} }
}, },
"name": { "name": {
"label": "Navn" "label": "Navn",
"placeholder": "Indtast et navn…",
"errorMessage": {
"mustLeastCharacters": "Kameragruppens navn skal være mindst 2 tegn."
}
} }
} }
} }

View File

@ -3,7 +3,23 @@
"title": "Er du sikker på at du vil genstarte Frigate?", "title": "Er du sikker på at du vil genstarte Frigate?",
"button": "Genstart", "button": "Genstart",
"restarting": { "restarting": {
"title": "Frigate genstarter" "title": "Frigate genstarter",
"button": "Gennemtving genindlæsning nu",
"content": "Denne side genindlæses om {{countdown}} sekunder."
}
},
"explore": {
"plus": {
"submitToPlus": {
"label": "Indsend til Frigate+",
"desc": "Objekter på steder, du ønsker at undgå, er ikke falske positiver. Hvis du indsender dem som falske positiver, vil det forvirre modellen."
},
"review": {
"question": {
"label": "Bekræft denne etiket til Frigate Plus",
"ask_a": "Er dette objekt et <code>{{label}}</code>?"
}
}
} }
} }
} }

View File

@ -10,8 +10,10 @@
}, },
"labels": { "labels": {
"all": { "all": {
"short": "Labels" "short": "Labels",
"title": "Alle etiketter"
}, },
"count_one": "{{count}} Label" "count_one": "{{count}} Label",
"label": "Etiketter"
} }
} }

View File

@ -1,7 +1,10 @@
{ {
"button": { "button": {
"downloadVideo": { "downloadVideo": {
"label": "Download Video" "label": "Download Video",
"toast": {
"success": "Din video til gennemgang er begyndt at blive downloadet."
}
} }
} }
} }

View File

@ -1,5 +1,15 @@
{ {
"noRecordingsFoundForThisTime": "Ingen optagelser fundet i det angivet tidsrum", "noRecordingsFoundForThisTime": "Ingen optagelser fundet i det angivet tidsrum",
"noPreviewFound": "Ingen forhåndsvisning fundet", "noPreviewFound": "Ingen forhåndsvisning fundet",
"cameraDisabled": "Kamera er deaktiveret" "cameraDisabled": "Kamera er deaktiveret",
"noPreviewFoundFor": "Ingen forhåndsvisning fundet for {{cameraName}}",
"submitFrigatePlus": {
"title": "Indsend denne frame til Frigate+?",
"submit": "Indsend"
},
"livePlayerRequiredIOSVersion": "iOS 17.1 eller nyere kræves for denne type livestream.",
"streamOffline": {
"title": "Stream offline",
"desc": "Der er ikke modtaget nogen frames på {{cameraName}}-<code>detect</code>-streamen, tjek fejlloggene."
}
} }

View File

@ -1 +1,17 @@
{} {
"documentTitle": "Klassifikationsmodeller",
"details": {
"scoreInfo": "Scoren repræsenterer den gennemsnitlige klassifikationssikkerhed på tværs af alle registreringer af dette objekt."
},
"description": {
"invalidName": "Ugyldigt navn. Navne må kun indeholde bogstaver, tal, mellemrum, apostroffer, understregninger og bindestreger."
},
"button": {
"deleteClassificationAttempts": "Slet klassifikationsbilleder",
"renameCategory": "Omdøb klasse",
"deleteCategory": "Slet klasse",
"deleteImages": "Slet billeder",
"trainModel": "Træn model",
"addClassification": "Tilføj klassifikation"
}
}

View File

@ -2,5 +2,9 @@
"documentTitle": "Konfigurationsstyring - Frigate", "documentTitle": "Konfigurationsstyring - Frigate",
"copyConfig": "Kopiér konfiguration", "copyConfig": "Kopiér konfiguration",
"saveAndRestart": "Gem & Genstart", "saveAndRestart": "Gem & Genstart",
"saveOnly": "Kun gem" "saveOnly": "Kun gem",
"configEditor": "Konfigurationseditor",
"safeConfigEditor": "Konfigurationseditor (Sikker tilstand)",
"safeModeDescription": "Frigate er i sikker tilstand på grund af en fejl ved validering af konfigurationen.",
"confirm": "Afslut uden at gemme?"
} }

View File

@ -7,5 +7,10 @@
}, },
"allCameras": "Alle kameraer", "allCameras": "Alle kameraer",
"timeline": "Tidslinje", "timeline": "Tidslinje",
"camera": "Kamera" "camera": "Kamera",
"empty": {
"alert": "Der er ingen advarsler at gennemgå",
"detection": "Der er ingen registreringer at gennemgå",
"motion": "Ingen bevægelsesdata fundet"
}
} }

View File

@ -13,7 +13,17 @@
"exploreIsUnavailable": { "exploreIsUnavailable": {
"embeddingsReindexing": { "embeddingsReindexing": {
"startingUp": "Starter…", "startingUp": "Starter…",
"estimatedTime": "Estimeret tid tilbage:" "estimatedTime": "Estimeret tid tilbage:",
} "context": "Udforsk kan bruges, når genindekseringen af de sporede objektindlejringer er fuldført.",
"finishingShortly": "Afsluttes om lidt",
"step": {
"thumbnailsEmbedded": "Miniaturer indlejret: "
}
},
"title": "Udforsk er ikke tilgængelig"
},
"exploreMore": "Udforsk flere {{label}}-objekter",
"details": {
"timestamp": "Tidsstempel"
} }
} }

View File

@ -4,6 +4,9 @@
"deleteExport.desc": "Er du sikker på at du vil slette {{exportName}}?", "deleteExport.desc": "Er du sikker på at du vil slette {{exportName}}?",
"editExport": { "editExport": {
"title": "Omdøb Eksport", "title": "Omdøb Eksport",
"saveExport": "Gem Eksport" "saveExport": "Gem Eksport",
} "desc": "Indtast et nyt navn for denne eksport."
},
"noExports": "Ingen eksporter fundet",
"deleteExport": "Slet eksport"
} }

View File

@ -1,10 +1,19 @@
{ {
"selectItem": "Vælg {{item}}", "selectItem": "Vælg {{item}}",
"description": { "description": {
"addFace": "Gennemgang af tilføjelse til ansigts bibliotek", "addFace": "Tilføj en ny samling til ansigtsbiblioteket ved at uploade dit første billede.",
"placeholder": "Angiv et navn for bibliotek" "placeholder": "Angiv et navn for bibliotek",
"invalidName": "Ugyldigt navn. Navne må kun indeholde bogstaver, tal, mellemrum, apostroffer, understregninger og bindestreger."
}, },
"details": { "details": {
"person": "Person" "person": "Person",
"timestamp": "Tidsstempel",
"unknown": "Ukendt",
"scoreInfo": "Scoren er et vægtet gennemsnit af alle ansigtsscorer, vægtet efter ansigtets størrelse på hvert billede."
},
"documentTitle": "Ansigtsbibliotek - Frigate",
"uploadFaceImage": {
"title": "Upload ansigtsbillede",
"desc": "Upload et billede for at scanne efter ansigter og inkludere det for {{pageToggle}}"
} }
} }

View File

@ -8,5 +8,14 @@
"cameraAudio": { "cameraAudio": {
"enable": "Aktivér kameralyd", "enable": "Aktivér kameralyd",
"disable": "Deaktivér kamera lyd" "disable": "Deaktivér kamera lyd"
},
"lowBandwidthMode": "Lavbåndbredde-tilstand",
"ptz": {
"move": {
"clickMove": {
"label": "Klik i billedrammen for at centrere kameraet",
"enable": "Aktivér klik for at flytte"
}
}
} }
} }

View File

@ -5,7 +5,8 @@
"filters": "Filtere", "filters": "Filtere",
"toast": { "toast": {
"error": { "error": {
"endTimeMustAfterStartTime": "Sluttidspunkt skal være efter starttidspunkt" "endTimeMustAfterStartTime": "Sluttidspunkt skal være efter starttidspunkt",
"noValidTimeSelected": "Intet gyldigt tidsinterval valgt"
} }
} }
} }

View File

@ -6,6 +6,7 @@
"save": "Gem søgning", "save": "Gem søgning",
"delete": "Slet gemt søgning", "delete": "Slet gemt søgning",
"filterInformation": "Filter information", "filterInformation": "Filter information",
"filterActive": "Filtre aktiv" "filterActive": "Filtre aktiv",
"clear": "Ryd søgning"
} }
} }

View File

@ -3,6 +3,12 @@
"default": "Indstillinger - Frigate", "default": "Indstillinger - Frigate",
"authentication": "Bruger Indstillinger - Frigate", "authentication": "Bruger Indstillinger - Frigate",
"camera": "Kamera indstillinger - Frigate", "camera": "Kamera indstillinger - Frigate",
"object": "Debug - Frigate" "object": "Debug - Frigate",
"cameraManagement": "Administrér kameraer - Frigate",
"cameraReview": "Indstillinger for kameragennemgang - Frigate",
"enrichments": "Indstillinger for berigelser - Frigate",
"masksAndZones": "Maske- og zoneeditor - Frigate",
"motionTuner": "Bevægelsesjustering - Frigate",
"general": "Brugergrænsefladeindstillinger - Frigate"
} }
} }

View File

@ -6,7 +6,98 @@
"frigate": "Frigate Logs - Frigate", "frigate": "Frigate Logs - Frigate",
"go2rtc": "Go2RTC Logs - Frigate", "go2rtc": "Go2RTC Logs - Frigate",
"nginx": "Nginx Logs - Frigate" "nginx": "Nginx Logs - Frigate"
},
"general": "Generelle statistikker - Frigate",
"enrichments": "Beredningsstatistikker - Frigate"
},
"title": "System",
"logs": {
"copy": {
"label": "Kopier til udklipsholder",
"success": "Logs er kopieret til udklipsholder",
"error": "Kunne ikke kopiere logs til udklipsholder"
},
"type": {
"label": "Type",
"timestamp": "Tidsstempel",
"message": "Besked",
"tag": "Tag"
},
"tips": "Logs bliver streamet fra serveren",
"toast": {
"error": {
"fetchingLogsFailed": "Fejl ved indhentning af logs: {{errorMessage}}",
"whileStreamingLogs": "Fejl ved streaming af logs: {{errorMessage}}"
} }
}, },
"title": "System" "download": {
"label": "Download logs"
}
},
"general": {
"title": "Generelt",
"hardwareInfo": {
"gpuUsage": "GPU forbrug",
"gpuMemory": "GPU hukommelse",
"gpuEncoder": "GPU indkoder",
"gpuDecoder": "GPU afkoder",
"title": "Hardware information",
"gpuInfo": {
"closeInfo": {
"label": "Luk GPU information"
},
"copyInfo": {
"label": "Kopier GPU information"
},
"toast": {
"success": "Kopierede GPU information til udklipsholder"
}
},
"npuUsage": "NPU forbrug",
"npuMemory": "NPU hukommelse"
},
"detector": {
"title": "Detektorer",
"inferenceSpeed": "Detektorinferenshastighed",
"temperature": "Detektor temperatur",
"cpuUsage": "Detektor CPU forbrug",
"cpuUsageInformation": "CPU brugt til at forberede input- og outputdata til/fra detektionsmodeller. Denne værdi måler ikke inferensforbrug, selvom der bruges en GPU eller accelerator.",
"memoryUsage": "Detektorhummelsesforbrug"
},
"otherProcesses": {
"title": "Andre processer",
"processCpuUsage": "Proces CPU forbrug",
"processMemoryUsage": "Proceshukommelsesforbrug"
}
},
"metrics": "System metrikker",
"storage": {
"title": "Lagring",
"overview": "Overblik",
"recordings": {
"title": "Optagelser",
"tips": "Denne værdi repræsenterer den samlede lagerplads, der bruges af optagelserne i Frigates database. Frigate sporer ikke lagerpladsforbruget for alle filer på din disk.",
"earliestRecording": "Tidligste optagelse til rådighed:"
},
"shm": {
"title": "SHM (delt hukommelse) tildeling",
"warning": "Den nuværende SHM størrelse af {{total}}MB er for lille. Øg den til minimum {{min_shm}}MB."
},
"cameraStorage": {
"title": "Kamera lagring",
"camera": "Kamera",
"unusedStorageInformation": "Ubrugt lagringsinformation",
"storageUsed": "Lagring",
"percentageOfTotalUsed": "Procentandel af total",
"bandwidth": "Båndbredde",
"unused": {
"title": "Ubrugt",
"tips": "Denne værdi repræsenterer muligvis ikke nøjagtigt den ledige plads, der er tilgængelig for Frigate, hvis du har andre filer gemt på dit drev ud over Frigates optagelser. Frigate sporer ikke lagerforbrug ud over sine optagelser."
}
}
},
"cameras": {
"title": "Kameraer",
"overview": "Overblik"
}
} }

View File

@ -425,5 +425,21 @@
"sanding": "Schleifen", "sanding": "Schleifen",
"machine_gun": "Maschinengewehr", "machine_gun": "Maschinengewehr",
"boom": "Dröhnen", "boom": "Dröhnen",
"field_recording": "Außenaufnahme" "field_recording": "Außenaufnahme",
"liquid": "Flüssigkeit",
"splash": "Spritzer",
"slosh": "Schwenken",
"squish": "Quetschen",
"drip": "Tropfen",
"pour": "Gießen",
"trickle": "Tröpfeln",
"fill": "Füllen",
"spray": "Sprühen",
"pump": "Pumpen",
"stir": "Umrühren",
"boiling": "Köchelnd",
"arrow": "Pfeil",
"electronic_tuner": "Elektronischer Tuner",
"effects_unit": "Effekteinheit",
"chorus_effect": "Chorus-Effekt"
} }

View File

@ -121,7 +121,12 @@
"unsuspended": "fortsetzen" "unsuspended": "fortsetzen"
}, },
"label": { "label": {
"back": "Zurück" "back": "Zurück",
"hide": "Verstecke {{item}}",
"show": "Zeige {{item}}",
"ID": "ID",
"none": "Nichts",
"all": "Alle"
}, },
"menu": { "menu": {
"configurationEditor": "Konfigurationseditor", "configurationEditor": "Konfigurationseditor",
@ -284,5 +289,14 @@
}, },
"information": { "information": {
"pixels": "{{area}}px" "pixels": "{{area}}px"
},
"field": {
"optional": "Optional",
"internalID": "Die interne ID, die Frigate in der Konfiguration und Datenbank verwendet"
},
"list": {
"two": "{{0}} und {{1}}",
"many": "{{items}}, und {{last}}",
"separatorWithSpace": ", "
} }
} }

View File

@ -10,6 +10,7 @@
"unknownError": "Unbekannter Fehler. Prüfe Logs." "unknownError": "Unbekannter Fehler. Prüfe Logs."
}, },
"user": "Benutzername", "user": "Benutzername",
"password": "Kennwort" "password": "Kennwort",
"firstTimeLogin": "Versuchen Sie sich zum ersten Mal anzumelden? Die Anmeldedaten sind in den Frigate-Logs aufgeführt."
} }
} }

View File

@ -66,7 +66,7 @@
"failed": "Fehler beim Starten des Exports: {{error}}", "failed": "Fehler beim Starten des Exports: {{error}}",
"noVaildTimeSelected": "Kein gültiger Zeitraum ausgewählt" "noVaildTimeSelected": "Kein gültiger Zeitraum ausgewählt"
}, },
"success": "Export erfolgreich gestartet. Die Datei befindet sich im Ordner /exports." "success": "Export erfolgreich gestartet. Die Datei befindet sich auf der Exportseite."
}, },
"fromTimeline": { "fromTimeline": {
"saveExport": "Export speichern", "saveExport": "Export speichern",
@ -126,6 +126,7 @@
"search": { "search": {
"placeholder": "Nach Label oder Unterlabel suchen..." "placeholder": "Nach Label oder Unterlabel suchen..."
}, },
"noImages": "Kein Vorschaubild für diese Kamera gefunden" "noImages": "Kein Vorschaubild für diese Kamera gefunden",
"unknownLabel": "Gespeichertes Triggerbild"
} }
} }

View File

@ -1 +1,34 @@
{} {
"documentTitle": "Klassifizierungsmodelle",
"details": {
"scoreInfo": "Die Punktzahl gibt die durchschnittliche Klassifizierungssicherheit aller Erkennungen dieses Objekts wieder."
},
"button": {
"deleteClassificationAttempts": "Lösche Klassifizierungs-Bilder",
"renameCategory": "Klasse umbenennen",
"deleteCategory": "Klasse löschen",
"deleteImages": "Bilder löschen",
"trainModel": "Modell trainieren",
"addClassification": "Klassifizierung hinzufügen",
"deleteModels": "Modell löschen",
"editModel": "Modell bearbeiten"
},
"tooltip": {
"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."
},
"toast": {
"success": {
"deletedCategory": "Klasse gelöscht",
"deletedImage": "Gelöschte Bilder",
"deletedModel_one": "{{count}} Model erfolgreich gelöscht",
"deletedModel_other": "{{count}} Modelle erfolgreich gelöscht",
"categorizedImage": "Bild erfolgreich klassifiziert",
"trainedModel": "Modell erfolgreich trainiert.",
"trainingModel": "Modelltraining erfolgreich gestartet.",
"updatedModel": "Modellkonfiguration erfolgreich aktualisiert"
}
}
}

View File

@ -36,5 +36,14 @@
"selected_other": "{{count}} ausgewählt", "selected_other": "{{count}} ausgewählt",
"detected": "erkannt", "detected": "erkannt",
"suspiciousActivity": "Verdächtige Aktivität", "suspiciousActivity": "Verdächtige Aktivität",
"threateningActivity": "Bedrohliche Aktivität" "threateningActivity": "Bedrohliche Aktivität",
"zoomIn": "Hereinzoomen",
"zoomOut": "Herauszoomen",
"detail": {
"label": "Detail",
"aria": "Detailansicht umschalten",
"trackedObject_one": "{{count}} Objekt",
"trackedObject_other": "{{count}} Objekte",
"noObjectDetailData": "Keine detaillierten Daten des Objekt verfügbar."
}
} }

View File

@ -158,7 +158,8 @@
"details": "Details", "details": "Details",
"video": "Video", "video": "Video",
"object_lifecycle": "Objekt-Lebenszyklus", "object_lifecycle": "Objekt-Lebenszyklus",
"snapshot": "Snapshot" "snapshot": "Snapshot",
"thumbnail": "Vorschaubild"
}, },
"itemMenu": { "itemMenu": {
"downloadSnapshot": { "downloadSnapshot": {
@ -195,12 +196,22 @@
"addTrigger": { "addTrigger": {
"aria": "Einen Trigger für dieses verfolgte Objekt hinzufügen", "aria": "Einen Trigger für dieses verfolgte Objekt hinzufügen",
"label": "Trigger hinzufügen" "label": "Trigger hinzufügen"
},
"viewTrackingDetails": {
"label": "Details zum Verfolgen anzeigen",
"aria": "Details zum Verfolgen anzeigen"
},
"showObjectDetails": {
"label": "Objektpfad anzeigen"
},
"hideObjectDetails": {
"label": "Objektpfad verbergen"
} }
}, },
"dialog": { "dialog": {
"confirmDelete": { "confirmDelete": {
"title": "Löschen bestätigen", "title": "Löschen bestätigen",
"desc": "Beim Löschen dieses verfolgten Objekts werden der Schnappschuss, alle gespeicherten Einbettungen und alle zugehörigen Objektlebenszykluseinträge entfernt. Aufgezeichnetes Filmmaterial dieses verfolgten Objekts in der Verlaufsansicht wird <em>NICHT</em> gelöscht. <br /><br />Sind Sie sicher, dass Sie fortfahren möchten?" "desc": "Beim Löschen dieses verfolgten Objekts werden der Schnappschuss, alle gespeicherten Einbettungen und alle zugehörigen Verfolgungsdetails entfernt. Aufgezeichnetes Filmmaterial dieses verfolgten Objekts in der Verlaufsansicht wird <em>NICHT</em> gelöscht. <br /><br />Sind Sie sicher, dass Sie fortfahren möchten?"
} }
}, },
"searchResult": { "searchResult": {
@ -210,7 +221,9 @@
"error": "Das verfolgte Objekt konnte nicht gelöscht werden: {{errorMessage}}" "error": "Das verfolgte Objekt konnte nicht gelöscht werden: {{errorMessage}}"
} }
}, },
"tooltip": "Entspricht {{type}} bei {{confidence}}%" "tooltip": "Entspricht {{type}} bei {{confidence}}%",
"previousTrackedObject": "Vorheriges verfolgtes Objekt",
"nextTrackedObject": "Nächstes verfolgtes Objekt"
}, },
"noTrackedObjects": "Keine verfolgten Objekte gefunden", "noTrackedObjects": "Keine verfolgten Objekte gefunden",
"fetchingTrackedObjectsFailed": "Fehler beim Abrufen von verfolgten Objekten: {{errorMessage}}", "fetchingTrackedObjectsFailed": "Fehler beim Abrufen von verfolgten Objekten: {{errorMessage}}",
@ -222,5 +235,48 @@
}, },
"concerns": { "concerns": {
"label": "Bedenken" "label": "Bedenken"
},
"trackingDetails": {
"noImageFound": "Kein Bild mit diesem Zeitstempel gefunden.",
"createObjectMask": "Objekt-Maske erstellen",
"scrollViewTips": "Klicke, um die relevanten Momente aus dem Lebenszyklus dieses Objektes zu sehen.",
"lifecycleItemDesc": {
"visible": "{{label}} erkannt",
"entered_zone": "{{label}} betrat {{zones}}",
"active": "{{label}} wurde aktiv",
"stationary": "{{label}} wurde stationär",
"attribute": {
"faceOrLicense_plate": "{{attribute}} erkannt für {{label}}",
"other": "{{label}} erkannt als {{attribute}}"
},
"gone": "{{label}} verließ",
"heard": "{{label}} wurde gehört",
"external": "{{label}} erkannt",
"header": {
"zones": "Zonen",
"ratio": "Verhältnis",
"area": "Bereich"
}
},
"annotationSettings": {
"title": "Anmerkungseinstellungen",
"showAllZones": {
"title": "Zeige alle Zonen",
"desc": "Immer Zonen auf Rahmen anzeigen, in die Objekte eingetreten sind."
},
"offset": {
"label": "Anmerkungen Versatz",
"desc": "Diese Daten stammen aus dem Erkennungsfeed der Kamera, werden jedoch über Bilder aus dem Aufzeichnungsfeed gelegt. Es ist unwahrscheinlich, dass beide Streams perfekt synchron sind. Daher stimmen der Begrenzungsrahmen und das Filmmaterial nicht vollständig überein. Mit dieser Einstellung lassen sich die Anmerkungen zeitlich nach vorne oder hinten verschieben, um sie besser an das aufgezeichnete Filmmaterial anzupassen.",
"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."
}
}
},
"carousel": {
"previous": "Vorherige Anzeige",
"next": "Nächste Anzeige"
}
} }
} }

View File

@ -13,5 +13,11 @@
"error": { "error": {
"renameExportFailed": "Umbenennen des Exports fehlgeschlagen: {{errorMessage}}" "renameExportFailed": "Umbenennen des Exports fehlgeschlagen: {{errorMessage}}"
} }
},
"tooltip": {
"shareExport": "Export teilen",
"downloadVideo": "Video herunterladen",
"editName": "Name ändern",
"deleteExport": "Export löschen"
} }
} }

View File

@ -1,7 +1,7 @@
{ {
"description": { "description": {
"placeholder": "Gib einen Name für diese Kollektion ein", "placeholder": "Gib einen Name für diese Kollektion ein",
"addFace": "Anleitung für das Hinzufügen einer neuen Kollektion zur Gesichtsbibliothek.", "addFace": "Füge der Gesichtsbibliothek eine neue Sammlung hinzu, indem ein erstes Bild hochgeladen wird.",
"invalidName": "Ungültiger Name. Namen dürfen nur Buchstaben, Zahlen, Leerzeichen, Apostrophe, Unterstriche und Bindestriche enthalten." "invalidName": "Ungültiger Name. Namen dürfen nur Buchstaben, Zahlen, Leerzeichen, Apostrophe, Unterstriche und Bindestriche enthalten."
}, },
"details": { "details": {
@ -22,7 +22,7 @@
"title": "Kollektion erstellen", "title": "Kollektion erstellen",
"new": "Lege ein neues Gesicht an", "new": "Lege ein neues Gesicht an",
"desc": "Erstelle eine neue Kollektion", "desc": "Erstelle eine neue Kollektion",
"nextSteps": "Um eine solide Grundlage zu bilden: <li> Benutze den Trainieren Tab, um Bilder für jede erkannte Person auszuwählen und zu trainieren.</li> <li>Konzentriere dich für gute Ergebnisse auf Frontalfotos; vermeide Bilder zu Trainingszwecken, bei denen Gesichter aus einem Winkel erfasst wurden.</li></ul>" "nextSteps": "Um eine solide Grundlage zu bilden: <li> Benutze den \"Aktuelle Erkennungen\" Tab, um Bilder für jede erkannte Person auszuwählen und zu trainieren.</li> <li>Konzentriere dich für gute Ergebnisse auf Frontalfotos; vermeide Bilder zu Trainingszwecken, bei denen Gesichter aus einem Winkel erfasst wurden.</li></ul>"
}, },
"documentTitle": "Gesichtsbibliothek - Frigate", "documentTitle": "Gesichtsbibliothek - Frigate",
"selectItem": "Wähle {{item}}", "selectItem": "Wähle {{item}}",
@ -44,8 +44,8 @@
"deleteFace": "Lösche Gesicht" "deleteFace": "Lösche Gesicht"
}, },
"train": { "train": {
"title": "Trainiere", "title": "Aktuelle Erkennungen",
"aria": "Wähle Training", "aria": "Wähle aktuelle Erkennungen",
"empty": "Es gibt keine aktuellen Versuche zur Gesichtserkennung" "empty": "Es gibt keine aktuellen Versuche zur Gesichtserkennung"
}, },
"deleteFaceLibrary": { "deleteFaceLibrary": {

View File

@ -5,7 +5,7 @@
"camera": "Kameraeinstellungen - Frigate", "camera": "Kameraeinstellungen - Frigate",
"masksAndZones": "Masken- und Zonen-Editor Frigate", "masksAndZones": "Masken- und Zonen-Editor Frigate",
"object": "Debug - Frigate", "object": "Debug - Frigate",
"general": "Allgemeine Einstellungen Frigate", "general": "UI Einstellungen Frigate",
"frigatePlus": "Frigate+ Einstellungen Frigate", "frigatePlus": "Frigate+ Einstellungen Frigate",
"classification": "Klassifizierungseinstellungen Frigate", "classification": "Klassifizierungseinstellungen Frigate",
"motionTuner": "Bewegungserkennungs-Optimierer Frigate", "motionTuner": "Bewegungserkennungs-Optimierer Frigate",

View File

@ -10,6 +10,7 @@
"loginFailed": "Αποτυχία σύνδεσης", "loginFailed": "Αποτυχία σύνδεσης",
"unknownError": "Άγνωστο σφάλμα. Ελέγξτε το αρχείο καταγραφής.", "unknownError": "Άγνωστο σφάλμα. Ελέγξτε το αρχείο καταγραφής.",
"webUnknownError": "Άγνωστο σφάλμα. Εξετάστε το αρχείο καταγραφής κονσόλας." "webUnknownError": "Άγνωστο σφάλμα. Εξετάστε το αρχείο καταγραφής κονσόλας."
} },
"firstTimeLogin": "Προσπαθείτε να συνδεθείτε για πρώτη φορά; Τα διαπιστευτήρια είναι τυπωμένα στα logs του Frigate."
} }
} }

View File

@ -103,7 +103,7 @@
"regenerate": "A new description has been requested from {{provider}}. Depending on the speed of your provider, the new description may take some time to regenerate.", "regenerate": "A new description has been requested from {{provider}}. Depending on the speed of your provider, the new description may take some time to regenerate.",
"updatedSublabel": "Successfully updated sub label.", "updatedSublabel": "Successfully updated sub label.",
"updatedLPR": "Successfully updated license plate.", "updatedLPR": "Successfully updated license plate.",
"audioTranscription": "Successfully requested audio transcription." "audioTranscription": "Successfully requested audio transcription. Depending on the speed of your Frigate server, the transcription may take some time to complete."
}, },
"error": { "error": {
"regenerate": "Failed to call {{provider}} for a new description: {{errorMessage}}", "regenerate": "Failed to call {{provider}} for a new description: {{errorMessage}}",

View File

@ -18,15 +18,19 @@
"deletedModel_many": "Borrados con éxito {{count}} modelos", "deletedModel_many": "Borrados con éxito {{count}} modelos",
"deletedModel_other": "Borrados con éxito {{count}} modelos", "deletedModel_other": "Borrados con éxito {{count}} modelos",
"categorizedImage": "Imagen Clasificada Correctamente", "categorizedImage": "Imagen Clasificada Correctamente",
"trainedModel": "Modelo entrenado correctamente." "trainedModel": "Modelo entrenado correctamente.",
"trainingModel": "Entrenamiento del modelo iniciado correctamente.",
"updatedModel": "Configuración del modelo actualizada correctamente",
"renamedCategory": "Clase renombrada correctamente a {{name}}"
}, },
"error": { "error": {
"deleteImageFailed": "Fallo al borrar: {{errorMessage}}", "deleteImageFailed": "Fallo al borrar: {{errorMessage}}",
"deleteCategoryFailed": "Fallo al borrar clase: {{errorMessage}}", "deleteCategoryFailed": "Fallo al borrar clase: {{errorMessage}}",
"deleteModelFailed": "Fallo al borrar modelo: {{errorMessage}}", "deleteModelFailed": "Fallo al borrar modelo: {{errorMessage}}",
"categorizeFailed": "Fallo al categorizar imagen: {{errorMessage}}", "categorizeFailed": "Fallo al categorizar imagen: {{errorMessage}}",
"trainingFailed": "Fallo al iniciar el entrenamiento del modelo: {{errorMessage}}", "trainingFailed": "El entrenamiento del modelo ha fallado. Revisa los registros de Frigate para más detalles.",
"updateModelFailed": "Fallo al actualizar modelo: {{errorMessage}}" "updateModelFailed": "Fallo al actualizar modelo: {{errorMessage}}",
"trainingFailedToStart": "No se pudo iniciar el entrenamiento del modelo: {{errorMessage}}"
} }
}, },
"deleteCategory": { "deleteCategory": {
@ -35,6 +39,21 @@
}, },
"deleteModel": { "deleteModel": {
"title": "Borrar Modelo de Clasificación", "title": "Borrar Modelo de Clasificación",
"single": "¿Está seguro de que quiere eliminar {{name}}? Esto borrar permanentemente todos los datos asociados incluidas las imágenes y los datos de entrenamiento. Esta acción no se puede deshacer." "single": "¿Está seguro de que quiere eliminar {{name}}? Esto borrar permanentemente todos los datos asociados incluidas las imágenes y los datos de entrenamiento. Esta acción no se puede deshacer.",
"desc_one": "¿Estas seguro de que quiere borrar {{count}} modelo/s? Esto borrara permanentemente todos los datos asociados, incluyendo imágenes y datos de entrenamiento. Esta acción no puede ser desehecha.",
"desc_many": "",
"desc_other": ""
},
"edit": {
"title": "Editar modelo de clasificación"
},
"tooltip": {
"noChanges": "No se han realizado cambios en el conjunto de datos desde el último entrenamiento.",
"modelNotReady": "El modelo no está listo para el entrenamiento",
"trainingInProgress": "El modelo está entrenándose actualmente.",
"noNewImages": "No hay imágenes nuevas para entrenar. Clasifica antes más imágenes del conjunto de datos."
},
"details": {
"scoreInfo": "La puntuación representa la confianza media de clasificación en todas las detecciones de este objeto."
} }
} }

View File

@ -42,12 +42,19 @@
"zoomOut": "Alejar", "zoomOut": "Alejar",
"detail": { "detail": {
"label": "Detalle", "label": "Detalle",
"trackedObject_one": "objeto", "trackedObject_one": "{{count}} objeto",
"trackedObject_other": "objetos", "trackedObject_other": "{{count}} objetos",
"noObjectDetailData": "No hay datos detallados del objeto.", "noObjectDetailData": "No hay datos detallados del objeto.",
"settings": "Configuración de la Vista Detalle" "settings": "Configuración de la Vista Detalle",
"noDataFound": "No hay datos detallados para revisar",
"aria": "Alternar vista de detalles",
"alwaysExpandActive": {
"title": "Expandir siempre los activos",
"desc": "Expandir siempre los detalles del objeto activo cuando esten disponibles."
}
}, },
"objectTrack": { "objectTrack": {
"clickToSeek": "Clic para ir a este momento" "clickToSeek": "Clic para ir a este momento",
"trackedPoint": "Puntro trazado"
} }
} }

View File

@ -111,7 +111,8 @@
"video": "vídeo", "video": "vídeo",
"object_lifecycle": "ciclo de vida del objeto", "object_lifecycle": "ciclo de vida del objeto",
"details": "detalles", "details": "detalles",
"thumbnail": "miniatura" "thumbnail": "miniatura",
"tracking_details": "detalles de seguimiento"
}, },
"objectLifecycle": { "objectLifecycle": {
"title": "Ciclo de vida del objeto", "title": "Ciclo de vida del objeto",
@ -227,9 +228,14 @@
"label": "Preocupaciones" "label": "Preocupaciones"
}, },
"trackingDetails": { "trackingDetails": {
"title": "Detalles del Seguimiento", "title": "Detalles del seguimiento",
"noImageFound": "No se ha encontrado imagen en este momento.", "noImageFound": "No se ha encontrado imagen en este momento.",
"createObjectMask": "Crear Máscara de Objeto", "createObjectMask": "Crear máscara de objeto",
"adjustAnnotationSettings": "Ajustar configuración de anotaciones" "adjustAnnotationSettings": "Ajustar configuración de anotaciones",
"scrollViewTips": "Haz clic para ver los momentos relevantes del ciclo de vida de este objeto.",
"count": "{{first}} de {{second}}",
"lifecycleItemDesc": {
"visible": "{{label}} detectado"
}
} }
} }

View File

@ -7,7 +7,7 @@
"camera": "Configuración de cámara - Frigate", "camera": "Configuración de cámara - Frigate",
"motionTuner": "Ajuste de movimiento - Frigate", "motionTuner": "Ajuste de movimiento - Frigate",
"classification": "Configuración de clasificación - Frigate", "classification": "Configuración de clasificación - Frigate",
"general": "Configuración General - Frigate", "general": "Configuración de Interfaz de Usuario - Frigate",
"frigatePlus": "Configuración de Frigate+ - Frigate", "frigatePlus": "Configuración de Frigate+ - Frigate",
"notifications": "Configuración de Notificaciones - Frigate", "notifications": "Configuración de Notificaciones - Frigate",
"enrichments": "Configuración de Análisis Avanzado - Frigate", "enrichments": "Configuración de Análisis Avanzado - Frigate",
@ -78,7 +78,7 @@
"title": "Diseños guardados", "title": "Diseños guardados",
"clearAll": "Borrar todos los diseños" "clearAll": "Borrar todos los diseños"
}, },
"title": "Configuración general", "title": "Ajustes de Interfaz de Usuario",
"toast": { "toast": {
"success": { "success": {
"clearStoredLayout": "Diseño almacenado eliminado para {{cameraName}}", "clearStoredLayout": "Diseño almacenado eliminado para {{cameraName}}",

View File

@ -87,7 +87,10 @@
"formattedTimestampMonthDayYear": { "formattedTimestampMonthDayYear": {
"12hour": "d MMM, yyyy", "12hour": "d MMM, yyyy",
"24hour": "d MMM,yyyy" "24hour": "d MMM,yyyy"
} },
"inProgress": "En cours",
"invalidStartTime": "Heure de début invalide",
"invalidEndTime": "Heure de fin invalide"
}, },
"button": { "button": {
"apply": "Appliquer", "apply": "Appliquer",
@ -124,7 +127,8 @@
"export": "Exporter", "export": "Exporter",
"deleteNow": "Supprimer maintenant", "deleteNow": "Supprimer maintenant",
"download": "Télécharger", "download": "Télécharger",
"done": "Terminé" "done": "Terminé",
"continue": "Continuer"
}, },
"menu": { "menu": {
"configuration": "Configuration", "configuration": "Configuration",
@ -226,7 +230,8 @@
}, },
"uiPlayground": "Bac à sable de l'interface", "uiPlayground": "Bac à sable de l'interface",
"faceLibrary": "Bibliothèque de visages", "faceLibrary": "Bibliothèque de visages",
"languages": "Langues" "languages": "Langues",
"classification": "Classification"
}, },
"toast": { "toast": {
"save": { "save": {
@ -272,7 +277,9 @@
"back": "Retour", "back": "Retour",
"hide": "Masquer {{item}}", "hide": "Masquer {{item}}",
"show": "Afficher {{item}}", "show": "Afficher {{item}}",
"ID": "ID" "ID": "ID",
"none": "Aucun",
"all": "Tous"
}, },
"unit": { "unit": {
"speed": { "speed": {

View File

@ -20,28 +20,37 @@
"deletedModel_one": "{{count}} modèle supprimé avec succès", "deletedModel_one": "{{count}} modèle supprimé avec succès",
"deletedModel_many": "{{count}} modèles supprimés avec succès", "deletedModel_many": "{{count}} modèles supprimés avec succès",
"deletedModel_other": "{{count}} modèles supprimés avec succès", "deletedModel_other": "{{count}} modèles supprimés avec succès",
"updatedModel": "Configuration du modèle mise à jour avec succès" "updatedModel": "Configuration du modèle mise à jour avec succès",
"renamedCategory": "Classe renommée en {{name}} avec succès"
}, },
"error": { "error": {
"deleteImageFailed": "Échec de la suppression : {{errorMessage}}", "deleteImageFailed": "Échec de la suppression : {{errorMessage}}",
"deleteCategoryFailed": "Échec de la suppression de la classe : {{errorMessage}}", "deleteCategoryFailed": "Échec de la suppression de la classe : {{errorMessage}}",
"categorizeFailed": "Échec de la catégorisation de l'image : {{errorMessage}}", "categorizeFailed": "Échec de la catégorisation de l'image : {{errorMessage}}",
"trainingFailed": "Échec du démarrage de l'entraînement du modèle : {{errorMessage}}", "trainingFailed": "L'entraînement du modèle a échoué. Consultez les journaux de Frigate pour plus de détails.",
"deleteModelFailed": "Impossible de supprimer le modèle : {{errorMessage}}", "deleteModelFailed": "Impossible de supprimer le modèle : {{errorMessage}}",
"updateModelFailed": "Impossible de mettre à jour le modèle : {{errorMessage}}" "updateModelFailed": "Impossible de mettre à jour le modèle : {{errorMessage}}",
"renameCategoryFailed": "Impossible de renommer la classe : {{errorMessage}}",
"trainingFailedToStart": "Impossible de démarrer l'entraînement du modèle : {{errorMessage}}"
} }
}, },
"deleteCategory": { "deleteCategory": {
"title": "Supprimer la classe", "title": "Supprimer la classe",
"desc": "Êtes-vous sûr de vouloir supprimer la classe {{name}}? Cette action supprimera définitivement toutes les images associées et nécessitera un réentraînement du modèle." "desc": "Êtes-vous sûr de vouloir supprimer la classe {{name}}? Cette action supprimera définitivement toutes les images associées et nécessitera un réentraînement du modèle.",
"minClassesTitle": "Impossible de supprimer la classe",
"minClassesDesc": "Un modèle de classification doit avoir au moins 2 classes. Ajoutez une autre classe avant de supprimer celle-ci."
}, },
"deleteDatasetImages": { "deleteDatasetImages": {
"title": "Supprimer les images du jeu de données", "title": "Supprimer les images du jeu de données",
"desc": "Êtes-vous sûr de vouloir supprimer {{count}} images du jeu de données {{dataset}}? Cette action est irréversible et nécessitera un réentraînement du modèle." "desc_one": "Êtes-vous sûr de vouloir supprimer {{count}} image du jeu de données {{dataset}}? Cette action est irréversible et nécessitera un réentraînement du modèle.",
"desc_many": "Êtes-vous sûr de vouloir supprimer {{count}} images du jeu de données {{dataset}}? Cette action est irréversible et nécessitera un réentraînement du modèle.",
"desc_other": "Êtes-vous sûr de vouloir supprimer {{count}} images du jeu de données {{dataset}}? Cette action est irréversible et nécessitera un réentraînement du modèle."
}, },
"deleteTrainImages": { "deleteTrainImages": {
"title": "Supprimer les images d'entraînement", "title": "Supprimer les images d'entraînement",
"desc": "Êtes-vous sûr de vouloir supprimer {{count}} images? Cette action est irréversible." "desc_one": "Êtes-vous sûr de vouloir supprimer {{count}} image? Cette action est irréversible.",
"desc_many": "Êtes-vous sûr de vouloir supprimer {{count}} images? Cette action est irréversible.",
"desc_other": "Êtes-vous sûr de vouloir supprimer {{count}} images? Cette action est irréversible."
}, },
"renameCategory": { "renameCategory": {
"title": "Renommer la classe", "title": "Renommer la classe",
@ -140,13 +149,18 @@
"generationFailed": "Échec de la génération. Veuillez réessayer.", "generationFailed": "Échec de la génération. Veuillez réessayer.",
"classifyFailed": "Échec de la classification des images : {{error}}" "classifyFailed": "Échec de la classification des images : {{error}}"
}, },
"generateSuccess": "Génération des images d'exemple réussie" "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."
} }
}, },
"deleteModel": { "deleteModel": {
"title": "Supprimer le modèle de classification", "title": "Supprimer le modèle de classification",
"single": "Voulez-vous vraiment supprimer {{name}}? Cela supprimera définitivement toutes les données associées, y compris les images et les données d'entraînement. Cette action est irréversible.", "single": "Voulez-vous vraiment supprimer {{name}}? Cela supprimera définitivement toutes les données associées, y compris les images et les données d'entraînement. Cette action est irréversible.",
"desc": "Voulez-vous vraiment supprimer {{count}} modèle(s)? Cela supprimera définitivement toutes les données associées, y compris les images et les données d'entraînement. Cette action est irréversible." "desc_one": "Voulez-vous vraiment supprimer {{count}} modèle? Cela supprimera définitivement toutes les données associées, y compris les images et les données d'entraînement. Cette action est irréversible.",
"desc_many": "Voulez-vous vraiment supprimer {{count}} modèles? Cela supprimera définitivement toutes les données associées, y compris les images et les données d'entraînement. Cette action est irréversible.",
"desc_other": "Voulez-vous vraiment supprimer {{count}} modèles? Cela supprimera définitivement toutes les données associées, y compris les images et les données d'entraînement. Cette action est irréversible."
}, },
"menu": { "menu": {
"objects": "Objets", "objects": "Objets",
@ -160,5 +174,11 @@
"descriptionState": "Modifier les classes pour ce modèle de classification d'état. Les modifications nécessiteront un réentraînement du modèle.", "descriptionState": "Modifier les classes pour ce modèle de classification d'état. Les modifications nécessiteront un réentraînement du modèle.",
"descriptionObject": "Modifier le type d'objet et le type de classification pour ce modèle de classification d'objet", "descriptionObject": "Modifier le type d'objet et le type de classification pour ce modèle de classification d'objet",
"stateClassesInfo": "Note : La modification des classes d'état nécessite un réentraînement du modèle avec les classes mises à jour." "stateClassesInfo": "Note : La modification des classes d'état nécessite un réentraînement du modèle avec les classes mises à jour."
},
"tooltip": {
"trainingInProgress": "Modèle en cours d'entraînement",
"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"
} }
} }

View File

@ -41,8 +41,8 @@
"detail": { "detail": {
"noDataFound": "Aucun détail à examiner", "noDataFound": "Aucun détail à examiner",
"aria": "Activer/désactiver la vue détaillée", "aria": "Activer/désactiver la vue détaillée",
"trackedObject_one": "objet", "trackedObject_one": "{{count}} objet",
"trackedObject_other": "objets", "trackedObject_other": "{{count}} objets",
"noObjectDetailData": "Aucun détail d'objet disponible", "noObjectDetailData": "Aucun détail d'objet disponible",
"label": "Détail", "label": "Détail",
"settings": "Paramètres de la vue Détail", "settings": "Paramètres de la vue Détail",

View File

@ -110,7 +110,8 @@
"video": "vidéo", "video": "vidéo",
"object_lifecycle": "cycle de vie de l'objet", "object_lifecycle": "cycle de vie de l'objet",
"snapshot": "instantané", "snapshot": "instantané",
"thumbnail": "Miniature" "thumbnail": "Miniature",
"tracking_details": "Détails du suivi"
}, },
"objectLifecycle": { "objectLifecycle": {
"title": "Cycle de vie de l'objet", "title": "Cycle de vie de l'objet",
@ -227,7 +228,9 @@
"error": "Échec de la suppression de l'objet suivi : {{errorMessage}}" "error": "Échec de la suppression de l'objet suivi : {{errorMessage}}"
} }
}, },
"tooltip": "Correspondance : {{type}} à {{confidence}}%" "tooltip": "Correspondance : {{type}} à {{confidence}}%",
"previousTrackedObject": "Objet suivi précédent",
"nextTrackedObject": "Objet suivi suivant"
}, },
"exploreMore": "Explorer plus d'objets {{label}}", "exploreMore": "Explorer plus d'objets {{label}}",
"aiAnalysis": { "aiAnalysis": {
@ -267,7 +270,7 @@
"offset": { "offset": {
"desc": "Ces données proviennent du flux de détection de votre caméra, mais elles sont superposées aux images du flux d'enregistrement. Il est peu probable que les deux flux soient parfaitement synchronisés. Par conséquent, le cadre de délimitation et la vidéo ne s'aligneront pas parfaitement. Vous pouvez utiliser ce paramètre pour décaler les annotations vers l'avant ou vers l'arrière dans le temps afin de mieux les aligner avec la vidéo enregistrée.", "desc": "Ces données proviennent du flux de détection de votre caméra, mais elles sont superposées aux images du flux d'enregistrement. Il est peu probable que les deux flux soient parfaitement synchronisés. Par conséquent, le cadre de délimitation et la vidéo ne s'aligneront pas parfaitement. Vous pouvez utiliser ce paramètre pour décaler les annotations vers l'avant ou vers l'arrière dans le temps afin de mieux les aligner avec la vidéo enregistrée.",
"millisecondsToOffset": "Millisecondes de décalage pour les annotations de détection. <em>Par défaut : 0</em>", "millisecondsToOffset": "Millisecondes de décalage pour les annotations de détection. <em>Par défaut : 0</em>",
"tips": "ASTUCE : Imaginez une séquence d'événement avec une personne marchant de gauche à droite. Si le cadre de détection sur la chronologie de l'événement est constamment à gauche de la personne, la valeur doit être diminuée. De même, si une personne marche de gauche à droite et que le cadre de détection est constamment devant la personne, la valeur doit être augmentée.", "tips": "Diminuez la valeur si la lecture vidéo est en avance sur les cadres de détection et les points de tracé, et augmentez-la si la lecture vidéo est en retard sur ceux-ci. Cette valeur peut être négative.",
"toast": { "toast": {
"success": "Le décalage des annotations pour {{camera}} a été sauvegardé dans le fichier de configuration. Redémarrez Frigate pour appliquer vos modifications." "success": "Le décalage des annotations pour {{camera}} a été sauvegardé dans le fichier de configuration. Redémarrez Frigate pour appliquer vos modifications."
}, },

View File

@ -60,7 +60,7 @@
"deletedName_other": "{{count}} visages ont été supprimés avec succès.", "deletedName_other": "{{count}} visages ont été supprimés avec succès.",
"uploadedImage": "Image téléversée avec succès", "uploadedImage": "Image téléversée avec succès",
"addFaceLibrary": "{{name}} a été ajouté avec succès à la bibliothèque de visages!", "addFaceLibrary": "{{name}} a été ajouté avec succès à la bibliothèque de visages!",
"updatedFaceScore": "Score du visage mis à jour avec succès", "updatedFaceScore": "Score du visage ({{score}}) de {{name}} mis à jour avec succès",
"deletedFace_one": "{{count}} visage supprimé avec succès", "deletedFace_one": "{{count}} visage supprimé avec succès",
"deletedFace_many": "{{count}} visages supprimés avec succès", "deletedFace_many": "{{count}} visages supprimés avec succès",
"deletedFace_other": "{{count}} visages supprimés avec succès", "deletedFace_other": "{{count}} visages supprimés avec succès",

View File

@ -174,7 +174,11 @@
"noCameras": { "noCameras": {
"title": "Aucune caméra n'est configurée", "title": "Aucune caméra n'est configurée",
"description": "Pour commencer, connectez une caméra à Frigate.", "description": "Pour commencer, connectez une caméra à Frigate.",
"buttonText": "Ajouter une caméra" "buttonText": "Ajouter une caméra",
"restricted": {
"title": "Aucune caméra disponible",
"description": "Vous n'avez pas la permission de visionner les caméras de ce groupe."
}
}, },
"snapshot": { "snapshot": {
"takeSnapshot": "Télécharger un instantané", "takeSnapshot": "Télécharger un instantané",

View File

@ -5,7 +5,7 @@
"camera": "Paramètres des caméras - Frigate", "camera": "Paramètres des caméras - Frigate",
"classification": "Paramètres de classification - Frigate", "classification": "Paramètres de classification - Frigate",
"motionTuner": "Réglage de la détection de mouvement - Frigate", "motionTuner": "Réglage de la détection de mouvement - Frigate",
"general": "Paramètres généraux - Frigate", "general": "Paramètres de l'interface utilisateur - Frigate",
"masksAndZones": "Éditeur de masques et de zones - Frigate", "masksAndZones": "Éditeur de masques et de zones - Frigate",
"object": "Débogage - Frigate", "object": "Débogage - Frigate",
"frigatePlus": "Paramètres Frigate+ - Frigate", "frigatePlus": "Paramètres Frigate+ - Frigate",
@ -41,7 +41,7 @@
"noCamera": "Aucune caméra" "noCamera": "Aucune caméra"
}, },
"general": { "general": {
"title": "Paramètres généraux", "title": "Paramètres de l'interface utilisateur",
"liveDashboard": { "liveDashboard": {
"title": "Tableau de bord en direct", "title": "Tableau de bord en direct",
"automaticLiveView": { "automaticLiveView": {
@ -55,6 +55,10 @@
"displayCameraNames": { "displayCameraNames": {
"label": "Toujours afficher les noms des caméras", "label": "Toujours afficher les noms des caméras",
"desc": "Toujours afficher les noms des caméras dans une puce sur le tableau de bord de la vue en direct multi-caméras" "desc": "Toujours afficher les noms des caméras dans une puce sur le tableau de bord de la vue en direct multi-caméras"
},
"liveFallbackTimeout": {
"label": "Délai d'attente avant repli (Lecteur en direct)",
"desc": "Lorsque le flux en direct haute qualité d'une caméra est indisponible, le lecteur bascule en mode faible bande passante après ce nombre de secondes. Par défaut : 3."
} }
}, },
"storedLayouts": { "storedLayouts": {
@ -893,9 +897,9 @@
"createRole": "Rôle {{role}} créé avec succès", "createRole": "Rôle {{role}} créé avec succès",
"updateCameras": "Caméras mis à jour pour le rôle {{role}}", "updateCameras": "Caméras mis à jour pour le rôle {{role}}",
"deleteRole": "Rôle {{role}} supprimé avec succès", "deleteRole": "Rôle {{role}} supprimé avec succès",
"userRolesUpdated_one": "{{count}} utilisateurs affectés à ce rôle ont été mis à jour avec des droits \"Observateur\", et ont accès à toutes les caméras.", "userRolesUpdated_one": "{{count}} utilisateur affecté à ce rôle a été mis à jour avec des droits \"Observateur\", et a accès à toutes les caméras.",
"userRolesUpdated_many": "", "userRolesUpdated_many": "{{count}} utilisateurs affectés à ce rôle ont été mis à jour avec des droits \"Observateur\", et ont accès à toutes les caméras.",
"userRolesUpdated_other": "" "userRolesUpdated_other": "{{count}} utilisateurs affectés à ce rôle ont été mis à jour avec des droits \"Observateur\", et ont accès à toutes les caméras."
}, },
"error": { "error": {
"createRoleFailed": "Échec dans la création du rôle : {{errorMessage}}", "createRoleFailed": "Échec dans la création du rôle : {{errorMessage}}",
@ -942,7 +946,8 @@
"steps": { "steps": {
"nameAndConnection": "Nom et connexion", "nameAndConnection": "Nom et connexion",
"streamConfiguration": "Configuration du flux", "streamConfiguration": "Configuration du flux",
"validationAndTesting": "Validation et tests" "validationAndTesting": "Validation et tests",
"probeOrSnapshot": "Sondage ou Instantané"
}, },
"save": { "save": {
"success": "Nouvelle caméra {{cameraName}} enregistrée avec succès", "success": "Nouvelle caméra {{cameraName}} enregistrée avec succès",
@ -959,7 +964,7 @@
"testFailed": "Échec du test de flux : {{error}}" "testFailed": "Échec du test de flux : {{error}}"
}, },
"step1": { "step1": {
"description": "Saisissez les détails de votre caméra et testez la connexion.", "description": "Saisissez les détails de votre caméra et choisissez d'interroger la caméra ou de sélectionner manuellement la marque.",
"cameraName": "Nom de la caméra", "cameraName": "Nom de la caméra",
"cameraNamePlaceholder": "par ex., porte_entree ou apercu_cour_arriere", "cameraNamePlaceholder": "par ex., porte_entree ou apercu_cour_arriere",
"host": "Hôte / Adresse IP", "host": "Hôte / Adresse IP",
@ -999,10 +1004,19 @@
"testing": { "testing": {
"probingMetadata": "Vérification des métadonnées de la caméra en cours...", "probingMetadata": "Vérification des métadonnées de la caméra en cours...",
"fetchingSnapshot": "Récupération de l'instantané de la caméra en cours..." "fetchingSnapshot": "Récupération de l'instantané de la caméra en cours..."
} },
"connectionSettings": "Paramètres de connexion",
"detectionMethod": "Méthode de détection du flux",
"onvifPort": "Port ONVIF",
"probeMode": "Interroger la caméra",
"manualMode": "Sélection manuelle",
"detectionMethodDescription": "Interrogez la caméra avec ONVIF (si pris en charge) pour trouver les URL de flux de la caméra, ou sélectionnez manuellement la marque de la caméra pour utiliser des URL prédéfinies. Pour saisir une URL RTSP personnalisée, choisissez la méthode manuelle et sélectionnez \"Autre\".",
"onvifPortDescription": "Pour les caméras prenant en charge ONVIF, il s'agit généralement de 80 ou 8080.",
"useDigestAuth": "Utiliser l'authentification Digest",
"useDigestAuthDescription": "Utilisez l'authentification Digest HTTP pour ONVIF. Certaines caméras peuvent nécessiter un nom d'utilisateur/mot de passe ONVIF dédié au lieu de l'utilisateur administrateur standard."
}, },
"step2": { "step2": {
"description": "Définissez les rôles du flux et ajoutez des flux supplémentaires pour votre caméra.", "description": "Interrogez la caméra pour les flux disponibles ou configurez des paramètres manuels en fonction de la méthode de détection sélectionnée.",
"streamsTitle": "Flux de caméra", "streamsTitle": "Flux de caméra",
"addStream": "Ajouter un flux", "addStream": "Ajouter un flux",
"addAnotherStream": "Ajouter un autre flux", "addAnotherStream": "Ajouter un autre flux",
@ -1021,8 +1035,8 @@
"detect": "Détection d'objets" "detect": "Détection d'objets"
}, },
"testStream": "Tester la connexion", "testStream": "Tester la connexion",
"testSuccess": "Test du flux réussi!", "testSuccess": "Test de connexion réussi!",
"testFailed": "Échec du test du flux", "testFailed": "Échec du test de connexion. Veuillez vérifier votre saisie et réessayer.",
"testFailedTitle": "Échec du test", "testFailedTitle": "Échec du test",
"connected": "Connecté", "connected": "Connecté",
"notConnected": "Non connecté", "notConnected": "Non connecté",
@ -1038,10 +1052,42 @@
"featuresPopover": { "featuresPopover": {
"title": "Fonctionnalités du flux", "title": "Fonctionnalités du flux",
"description": "Utilisez la rediffusion du flux go2rtc pour réduire le nombre de connexions à votre caméra." "description": "Utilisez la rediffusion du flux go2rtc pour réduire le nombre de connexions à votre caméra."
},
"streamDetails": "Détails du flux",
"probing": "Interrogation de la caméra en cours...",
"retry": "Réessayer",
"testing": {
"probingMetadata": "Interrogation des métadonnées de la caméra en cours...",
"fetchingSnapshot": "Récupération de l'instantané de la caméra en cours..."
},
"probeFailed": "Impossible d'interroger la caméra : {{error}}",
"probingDevice": "Interrogation de l'appareil en cours...",
"probeSuccessful": "Interrogation réussie",
"probeError": "Erreur d'interrogation",
"probeNoSuccess": "Échec de l'interrogation",
"deviceInfo": "Informations sur l'appareil",
"manufacturer": "Fabricant",
"model": "Modèle",
"firmware": "Micrologiciel",
"profiles": "Profils",
"ptzSupport": "Prise en charge PTZ",
"autotrackingSupport": "Prise en charge du suivi automatique",
"presets": "Préréglages",
"rtspCandidates": "Candidats RTSP",
"rtspCandidatesDescription": "Les URL RTSP suivantes ont été trouvées lors de l'interrogation de la caméra. Testez la connexion pour afficher les métadonnées du flux.",
"noRtspCandidates": "Aucune URL RTSP n'a été trouvée sur la caméra. Vos identifiants sont peut-être incorrects, ou la caméra ne prend peut-être pas en charge ONVIF ou la méthode utilisée pour récupérer les URL RTSP. Revenez en arrière et saisissez l'URL RTSP manuellement.",
"candidateStreamTitle": "Candidat {{number}}",
"useCandidate": "Utiliser",
"uriCopy": "Copier",
"uriCopied": "URI copiée dans le presse-papiers",
"testConnection": "Tester la connexion",
"toggleUriView": "Cliquer pour basculer l'affichage de l'URI complet",
"errors": {
"hostRequired": "L'hôte/adresse IP est requis."
} }
}, },
"step3": { "step3": {
"description": "Validation et analyse finales avant l'enregistrement de votre nouvelle caméra. Connectez chaque flux avant d'enregistrer.", "description": "Configurez les rôles des flux et ajoutez des flux supplémentaires pour votre caméra.",
"validationTitle": "Validation du flux", "validationTitle": "Validation du flux",
"connectAllStreams": "Connecter tous les flux", "connectAllStreams": "Connecter tous les flux",
"reconnectionSuccess": "Reconnexion réussie.", "reconnectionSuccess": "Reconnexion réussie.",
@ -1082,7 +1128,91 @@
}, },
"valid": "Valide", "valid": "Valide",
"ffmpegModule": "Utiliser le mode de compatibilité du flux", "ffmpegModule": "Utiliser le mode de compatibilité du flux",
"ffmpegModuleDescription": "Si le flux ne se charge pas après plusieurs tentatives, essayez d'activer cette option. Lorsqu'elle est activée, Frigate utilisera le module ffmpeg avec go2rtc. Cela peut offrir une meilleure compatibilité avec certains flux de caméra." "ffmpegModuleDescription": "Si le flux ne se charge pas après plusieurs tentatives, essayez d'activer cette option. Lorsqu'elle est activée, Frigate utilisera le module ffmpeg avec go2rtc. Cela peut offrir une meilleure compatibilité avec certains flux de caméra.",
"streamsTitle": "Flux de la caméra",
"addStream": "Ajouter un flux",
"addAnotherStream": "Ajouter un autre flux",
"streamUrl": "URL du flux",
"streamUrlPlaceholder": "rtsp://nomdutilisateur:motdepasse@hote:port/chemin",
"selectStream": "Sélectionner un flux",
"searchCandidates": "Rechercher des candidats",
"noStreamFound": "Aucun flux trouvé",
"url": "URL",
"resolution": "Résolution",
"selectResolution": "Sélectionner la résolution",
"quality": "Qualité",
"selectQuality": "Sélectionner la qualité",
"roleLabels": {
"detect": "Détection d'objet",
"record": "Enregistrement",
"audio": "Audio"
},
"testStream": "Tester la connexion",
"testSuccess": "Test du flux réussi!",
"testFailed": "Échec du test du flux",
"testFailedTitle": "Échec du test",
"connected": "Connecté",
"notConnected": "Non connecté",
"featuresTitle": "Fonctionnalités",
"go2rtc": "Réduire les connexions à la caméra",
"detectRoleWarning": "Au moins un flux doit avoir le rôle 'détection' pour continuer.",
"rolesPopover": {
"title": "Rôles du flux",
"detect": "Flux principal pour la détection d'objet",
"record": "Enregistre des segments du flux vidéo en fonction des paramètres de configuration",
"audio": "Flux pour la détection basée sur l'audio"
},
"featuresPopover": {
"title": "Fonctionnalités du flux",
"description": "Utiliser la rediffusion go2rtc pour réduire les connexions à votre caméra"
}
},
"step4": {
"description": "Validation et analyse finales avant d'enregistrer votre nouvelle caméra. Connectez chaque flux avant d'enregistrer.",
"validationTitle": "Validation du flux",
"connectAllStreams": "Connecter tous les flux",
"reconnectionSuccess": "Reconnexion réussie",
"reconnectionPartial": "Certains flux n'ont pas réussi à se reconnecter.",
"streamUnavailable": "Aperçu du flux non disponible",
"reload": "Recharger",
"connecting": "En cours de connexion...",
"streamTitle": "Flux {{number}}",
"valid": "Valide",
"failed": "Échec",
"notTested": "Non testé",
"connectStream": "Connecter",
"connectingStream": "En cours de connexion",
"disconnectStream": "Déconnecter",
"estimatedBandwidth": "Bande passante estimée",
"roles": "Rôles",
"ffmpegModule": "Utiliser le mode de compatibilité du flux",
"ffmpegModuleDescription": "Si le flux ne se charge pas après plusieurs tentatives, essayez d'activer cette option. Lorsqu'elle est activée, Frigate utilisera le module ffmpeg avec go2rtc. Cela peut offrir une meilleure compatibilité avec certains flux de caméra.",
"none": "Aucun",
"error": "Erreur",
"streamValidated": "Flux {{number}} validé avec succès",
"streamValidationFailed": "Échec de la validation du flux {{number}}",
"saveAndApply": "Enregistrer la nouvelle caméra",
"saveError": "Configuration invalide. Veuillez vérifier vos paramètres.",
"issues": {
"title": "Validation du flux",
"videoCodecGood": "Le codec vidéo est {{codec}}.",
"audioCodecGood": "Le codec audio est {{codec}}.",
"resolutionHigh": "Une résolution de {{resolution}} peut entraîner une utilisation accrue des ressources.",
"resolutionLow": "Une résolution de {{resolution}} peut être trop faible pour une détection fiable des petits objets.",
"noAudioWarning": "Aucun audio détecté pour ce flux, les enregistrements n'auront pas de son.",
"audioCodecRecordError": "Le codec audio AAC est requis pour prendre en charge l'audio dans les enregistrements.",
"audioCodecRequired": "Un flux audio est requis pour prendre en charge la détection audio.",
"restreamingWarning": "Réduire les connexions à la caméra pour le flux d'enregistrement peut légèrement augmenter l'utilisation du processeur.",
"brands": {
"reolink-rtsp": "Le RTSP Reolink n'est pas recommandé. Activez HTTP dans les paramètres du micrologiciel de la caméra et redémarrez l'assistant."
},
"dahua": {
"substreamWarning": "Le sous-flux 1 est limité à une basse résolution. De nombreuses caméras Dahua / Amcrest / EmpireTech prennent en charge des sous-flux supplémentaires qui doivent être activés dans les paramètres de la caméra. Il est recommandé de vérifier et d'utiliser ces flux s'ils sont disponibles."
},
"hikvision": {
"substreamWarning": "Le sous-flux 1 est limité à une basse résolution. De nombreuses caméras Hikvision prennent en charge des sous-flux supplémentaires qui doivent être activés dans les paramètres de la caméra. Il est recommandé de vérifier et d'utiliser ces flux s'ils sont disponibles."
}
}
} }
}, },
"cameraManagement": { "cameraManagement": {

View File

@ -76,7 +76,12 @@
} }
}, },
"npuUsage": "Utilisation NPU", "npuUsage": "Utilisation NPU",
"npuMemory": "Mémoire NPU" "npuMemory": "Mémoire NPU",
"intelGpuWarning": {
"title": "Avertissement relatif aux statistiques du GPU Intel",
"message": "Statistiques du GPU non disponibles",
"description": "Il s'agit d'un bug connu de l'outil de statistiques GPU d'Intel (intel_gpu_top) : il peut afficher à tort une utilisation de 0 %, même lorsque l'accélération matérielle et la détection d'objets fonctionnent correctement sur l'iGPU. Ce problème ne vient pas de Frigate. Vous pouvez redémarrer l'hôte pour rétablir temporairement l'affichage et confirmer le fonctionnement du GPU. Les performances ne sont pas affectées."
}
}, },
"otherProcesses": { "otherProcesses": {
"title": "Autres processus", "title": "Autres processus",
@ -151,7 +156,7 @@
"copyToClipboard": "Données de la sonde copiées dans le presse-papiers" "copyToClipboard": "Données de la sonde copiées dans le presse-papiers"
}, },
"error": { "error": {
"unableToProbeCamera": "Impossible d'inspecter la caméra : {{errorMessage}}" "unableToProbeCamera": "Impossible d'interroger la caméra : {{errorMessage}}"
} }
} }
}, },
@ -180,7 +185,14 @@
"yolov9_plate_detection": "Détection de plaques d'immatriculation YOLOv9", "yolov9_plate_detection": "Détection de plaques d'immatriculation YOLOv9",
"face_recognition": "Reconnaissance faciale", "face_recognition": "Reconnaissance faciale",
"text_embedding": "Vitesse d'embedding de visage", "text_embedding": "Vitesse d'embedding de visage",
"yolov9_plate_detection_speed": "Vitesse de détection de plaques d'immatriculation YOLOv9" "yolov9_plate_detection_speed": "Vitesse de détection de plaques d'immatriculation YOLOv9",
} "review_description": "Description de la revue",
"review_description_speed": "Vitesse de la description de la revue",
"review_description_events_per_second": "Description de la revue",
"object_description": "Description de l'objet",
"object_description_speed": "Vitesse de la description d'objet",
"object_description_events_per_second": "Description de l'objet"
},
"averageInf": "Temps d'inférence moyen"
} }
} }

View File

@ -1,5 +1,5 @@
{ {
"filter": "Filtar", "filter": "Filter",
"classes": { "classes": {
"label": "Klase" "label": "Klase"
} }

View File

@ -1,5 +1,28 @@
{ {
"description": { "description": {
"addFace": "Vodič za dodavanje nove kolekcije u Biblioteku lica." "addFace": "Vodič za dodavanje nove kolekcije u Biblioteku lica."
},
"steps": {
"faceName": "Unesi Ime Lica",
"uploadFace": "Prenesi Sliku Lica",
"nextSteps": "Sljedeći Koraci",
"description": {
"uploadFace": "Prenesite sliku {{name}} koja prikazuje njezino lice iz prednjeg kuta. Slika ne mora biti obrezana samo na njezino lice."
}
},
"train": {
"title": "Nedavna Prepoznavanja",
"aria": "Odaberite nedavna prepoznavanja",
"empty": "Nema nedavnih pokušaja prepoznavanja lica"
},
"deleteFaceLibrary": {
"title": "Izbriši Ime",
"desc": "Jeste li sigurni da želite izbrisati kolekciju {{name}}? Ovim će se trajno izbrisati sva povezana lica."
},
"deleteFaceAttempts": {
"title": "Izbriši Lica",
"desc_one": "Jeste li sigurni da želite izbrisati {{count}} lice? Ova se radnja ne može poništiti.",
"desc_few": "Jeste li sigurni da želite izbrisati {{count}} lica? Ova se radnja ne može poništiti.",
"desc_other": "Jeste li sigurni da želite izbrisati {{count}} lica? Ova se radnja ne može poništiti."
} }
} }

View File

@ -1,4 +1,4 @@
{ {
"filter": "Filtar", "filter": "Filter",
"export": "Izvoz" "export": "Izvoz"
} }

View File

@ -399,7 +399,7 @@
"mechanical_fan": "Ventilatore meccanico", "mechanical_fan": "Ventilatore meccanico",
"air_conditioning": "Aria condizionata", "air_conditioning": "Aria condizionata",
"cash_register": "Registratore di cassa", "cash_register": "Registratore di cassa",
"single-lens_reflex_camera": "Fotocamera reflex a obiettivo singolo", "single-lens_reflex_camera": "Telecamera reflex a obiettivo singolo",
"tools": "Utensili", "tools": "Utensili",
"jackhammer": "Martello pneumatico", "jackhammer": "Martello pneumatico",
"sawing": "Segare", "sawing": "Segare",

View File

@ -87,7 +87,10 @@
"formattedTimestampMonthDayYear": { "formattedTimestampMonthDayYear": {
"12hour": "d MMM, yyyy", "12hour": "d MMM, yyyy",
"24hour": "d MMM, yyyy" "24hour": "d MMM, yyyy"
} },
"inProgress": "In corso",
"invalidStartTime": "Ora di inizio non valida",
"invalidEndTime": "Ora di fine non valida"
}, },
"button": { "button": {
"cancel": "Annulla", "cancel": "Annulla",
@ -124,7 +127,8 @@
"back": "Indietro", "back": "Indietro",
"pictureInPicture": "Immagine nell'immagine", "pictureInPicture": "Immagine nell'immagine",
"twoWayTalk": "Comunicazione bidirezionale", "twoWayTalk": "Comunicazione bidirezionale",
"cameraAudio": "Audio della telecamera" "cameraAudio": "Audio della telecamera",
"continue": "Continua"
}, },
"unit": { "unit": {
"speed": { "speed": {
@ -148,7 +152,9 @@
"back": "Vai indietro", "back": "Vai indietro",
"hide": "Nascondi {{item}}", "hide": "Nascondi {{item}}",
"show": "Mostra {{item}}", "show": "Mostra {{item}}",
"ID": "ID" "ID": "ID",
"none": "Nessuna",
"all": "Tutte"
}, },
"menu": { "menu": {
"configuration": "Configurazione", "configuration": "Configurazione",
@ -250,7 +256,8 @@
"setPassword": "Imposta password" "setPassword": "Imposta password"
}, },
"withSystem": "Sistema", "withSystem": "Sistema",
"faceLibrary": "Raccolta volti" "faceLibrary": "Raccolta volti",
"classification": "Classificazione"
}, },
"pagination": { "pagination": {
"next": { "next": {

View File

@ -129,7 +129,7 @@
"search": { "search": {
"placeholder": "Cerca per etichetta o sottoetichetta..." "placeholder": "Cerca per etichetta o sottoetichetta..."
}, },
"noImages": "Nessuna miniatura trovata per questa fotocamera", "noImages": "Nessuna miniatura trovata per questa telecamera",
"unknownLabel": "Immagine di attivazione salvata" "unknownLabel": "Immagine di attivazione salvata"
} }
} }

View File

@ -20,28 +20,37 @@
"deletedModel_one": "Eliminato con successo {{count}} modello", "deletedModel_one": "Eliminato con successo {{count}} modello",
"deletedModel_many": "Eliminati con successo {{count}} modelli", "deletedModel_many": "Eliminati con successo {{count}} modelli",
"deletedModel_other": "Eliminati con successo {{count}} modelli", "deletedModel_other": "Eliminati con successo {{count}} modelli",
"updatedModel": "Configurazione del modello aggiornata correttamente" "updatedModel": "Configurazione del modello aggiornata correttamente",
"renamedCategory": "Classe rinominata correttamente in {{name}}"
}, },
"error": { "error": {
"deleteImageFailed": "Impossibile eliminare: {{errorMessage}}", "deleteImageFailed": "Impossibile eliminare: {{errorMessage}}",
"deleteCategoryFailed": "Impossibile eliminare la classe: {{errorMessage}}", "deleteCategoryFailed": "Impossibile eliminare la classe: {{errorMessage}}",
"categorizeFailed": "Impossibile categorizzare l'immagine: {{errorMessage}}", "categorizeFailed": "Impossibile categorizzare l'immagine: {{errorMessage}}",
"trainingFailed": "Impossibile avviare l'addestramento del modello: {{errorMessage}}", "trainingFailed": "Addestramento del modello fallito. Controlla i registri di Frigate per i dettagli.",
"deleteModelFailed": "Impossibile eliminare il modello: {{errorMessage}}", "deleteModelFailed": "Impossibile eliminare il modello: {{errorMessage}}",
"updateModelFailed": "Impossibile aggiornare il modello: {{errorMessage}}" "updateModelFailed": "Impossibile aggiornare il modello: {{errorMessage}}",
"trainingFailedToStart": "Impossibile avviare l'addestramento del modello: {{errorMessage}}",
"renameCategoryFailed": "Impossibile rinominare la classe: {{errorMessage}}"
} }
}, },
"deleteCategory": { "deleteCategory": {
"title": "Elimina classe", "title": "Elimina classe",
"desc": "Vuoi davvero eliminare la classe {{name}}? Questa operazione eliminerà definitivamente tutte le immagini associate e richiederà un nuovo addestramento del modello." "desc": "Vuoi davvero eliminare la classe {{name}}? Questa operazione eliminerà definitivamente tutte le immagini associate e richiederà un nuovo addestramento del modello.",
"minClassesTitle": "Impossibile eliminare la classe",
"minClassesDesc": "Un modello di classificazione deve avere almeno 2 classi. Aggiungi un'altra classe prima di eliminare questa."
}, },
"deleteDatasetImages": { "deleteDatasetImages": {
"title": "Elimina immagini della base dati", "title": "Elimina immagini della base dati",
"desc": "Vuoi davvero eliminare {{count}} immagini da {{dataset}}? Questa azione non può essere annullata e richiederà un nuovo addestramento del modello." "desc_one": "Vuoi davvero eliminare {{count}} immagine da {{dataset}}? Questa azione non può essere annullata e richiederà un nuovo addestramento del modello.",
"desc_many": "Vuoi davvero eliminare {{count}} immagini da {{dataset}}? Questa azione non può essere annullata e richiederà un nuovo addestramento del modello.",
"desc_other": "Vuoi davvero eliminare {{count}} immagini da {{dataset}}? Questa azione non può essere annullata e richiederà un nuovo addestramento del modello."
}, },
"deleteTrainImages": { "deleteTrainImages": {
"title": "Elimina le immagini di addestramento", "title": "Elimina le immagini di addestramento",
"desc": "Vuoi davvero eliminare {{count}} immagini? Questa azione non può essere annullata." "desc_one": "Vuoi davvero eliminare {{count}} immagine? Questa azione non può essere annullata.",
"desc_many": "Vuoi davvero eliminare {{count}} immagini? Questa azione non può essere annullata.",
"desc_other": "Vuoi davvero eliminare {{count}} immagini? Questa azione non può essere annullata."
}, },
"renameCategory": { "renameCategory": {
"title": "Rinomina classe", "title": "Rinomina classe",
@ -140,13 +149,18 @@
"generationFailed": "Generazione fallita. Per favore riprova.", "generationFailed": "Generazione fallita. Per favore riprova.",
"classifyFailed": "Impossibile classificare le immagini: {{error}}" "classifyFailed": "Impossibile classificare le immagini: {{error}}"
}, },
"generateSuccess": "Immagini campione generate correttamente" "generateSuccess": "Immagini campione generate correttamente",
"allImagesRequired_one": "Classifica tutte le immagini. Rimane {{count}} immagine.",
"allImagesRequired_many": "Classifica tutte le immagini. Rimangono {{count}} immagini.",
"allImagesRequired_other": "Classifica tutte le immagini. Rimangono {{count}} immagini."
} }
}, },
"deleteModel": { "deleteModel": {
"title": "Elimina modello di classificazione", "title": "Elimina modello di classificazione",
"single": "Vuoi davvero eliminare {{name}}? Questa operazione eliminerà definitivamente tutti i dati associati, comprese le immagini e i dati di allenamento. Questa azione non può essere annullata.", "single": "Vuoi davvero eliminare {{name}}? Questa operazione eliminerà definitivamente tutti i dati associati, comprese le immagini e i dati di allenamento. Questa azione non può essere annullata.",
"desc": "Vuoi davvero eliminare {{count}} modello/i? Questa operazione eliminerà definitivamente tutti i dati associati, comprese le immagini e i dati di addestramento. Questa azione non può essere annullata." "desc_one": "Vuoi davvero eliminare {{count}} modello? Questa operazione eliminerà definitivamente tutti i dati associati, comprese le immagini e i dati di addestramento. Questa azione non può essere annullata.",
"desc_many": "Vuoi davvero eliminare {{count}} modelli? Questa operazione eliminerà definitivamente tutti i dati associati, comprese le immagini e i dati di addestramento. Questa azione non può essere annullata.",
"desc_other": "Vuoi davvero eliminare {{count}} modelli? Questa operazione eliminerà definitivamente tutti i dati associati, comprese le immagini e i dati di addestramento. Questa azione non può essere annullata."
}, },
"menu": { "menu": {
"objects": "Oggetti", "objects": "Oggetti",
@ -160,5 +174,11 @@
"descriptionState": "Modifica le classi per questo modello di classificazione dello stato. Le modifiche richiederanno un nuovo addestramento del modello.", "descriptionState": "Modifica le classi per questo modello di classificazione dello stato. Le modifiche richiederanno un nuovo addestramento del modello.",
"descriptionObject": "Modifica il tipo di oggetto e il tipo di classificazione per questo modello di classificazione degli oggetti.", "descriptionObject": "Modifica il tipo di oggetto e il tipo di classificazione per questo modello di classificazione degli oggetti.",
"stateClassesInfo": "Nota: la modifica delle classi di stato richiede il riaddestramento del modello con le classi aggiornate." "stateClassesInfo": "Nota: la modifica delle classi di stato richiede il riaddestramento del modello con le classi aggiornate."
},
"tooltip": {
"trainingInProgress": "Il modello è attualmente in addestramento",
"modelNotReady": "Il modello non è pronto per l'addestramento",
"noNewImages": "Nessuna nuova immagine da addestrare. Classifica prima più immagini nel database.",
"noChanges": "Nessuna modifica al database dall'ultimo addestramento."
} }
} }

View File

@ -41,8 +41,8 @@
"detail": { "detail": {
"noDataFound": "Nessun dato dettagliato da rivedere", "noDataFound": "Nessun dato dettagliato da rivedere",
"aria": "Attiva/disattiva la visualizzazione dettagliata", "aria": "Attiva/disattiva la visualizzazione dettagliata",
"trackedObject_one": "oggetto", "trackedObject_one": "{{count}} oggetto",
"trackedObject_other": "oggetti", "trackedObject_other": "{{count}} oggetti",
"noObjectDetailData": "Non sono disponibili dati dettagliati sull'oggetto.", "noObjectDetailData": "Non sono disponibili dati dettagliati sull'oggetto.",
"label": "Dettaglio", "label": "Dettaglio",
"settings": "Impostazioni di visualizzazione dettagliata", "settings": "Impostazioni di visualizzazione dettagliata",

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