{{label}}?",
+ "ask_an": "Je li ovaj objekt {{label}}?",
+ "ask_full": "Je li ovaj objekt {{untranslatedLabel}} ({{translatedLabel}})?"
+ },
+ "state": {
+ "submitted": "Pošlato"
+ }
+ }
+ },
+ "video": {
+ "viewInHistory": "Pregledajte u povijesti"
+ }
+ },
+ "export": {
+ "time": {
+ "fromTimeline": "Odaberite iz vremenske linije",
+ "lastHour_one": "Prošli sat",
+ "lastHour_few": "Prošla {{count}} sata",
+ "lastHour_other": "Prošlih {{count}} sati",
+ "custom": "Prilagođeno",
+ "start": {
+ "title": "Vrijeme početka",
+ "label": "Odaberite vrijeme početka"
+ },
+ "end": {
+ "title": "Vrijeme kraja",
+ "label": "Odaberite vrijeme kraja"
+ }
+ },
+ "name": {
+ "placeholder": "Nazovite izvoz"
+ },
+ "case": {
+ "newCaseOption": "Napravite novi slučaj",
+ "newCaseNamePlaceholder": "Novo ime slučaja",
+ "newCaseDescriptionPlaceholder": "Opis slučaja",
+ "label": "Slučaj",
+ "nonAdminHelp": "Za ove izvoze će se stvoriti novi slučaj.",
+ "placeholder": "Odaberite slučaj"
+ },
+ "select": "Odaberite",
+ "export": "Izvoz",
+ "queueing": "Stavljanje izvoza u red...",
+ "selectOrExport": "Odaberite ili izvozite",
+ "tabs": {
+ "export": "Jedna kamera",
+ "multiCamera": "Više kamera"
+ },
+ "multiCamera": {
+ "timeRange": "Vremenski opseg",
+ "selectFromTimeline": "Odaberite iz vremenske linije",
+ "cameraSelection": "Kamere",
+ "cameraSelectionHelp": "Kamere s praćenim objektima u ovom vremenskom opsegu su preselektirane",
+ "checkingActivity": "Provjeravamo aktivnost kamere...",
+ "noCameras": "Nema dostupnih kamera",
+ "detectionCount_one": "1 praćen objekt",
+ "detectionCount_few": "{{count}} praćena objekta",
+ "detectionCount_other": "{{count}} praćenih objekata",
+ "nameLabel": "Ime izvoza",
+ "namePlaceholder": "Nepovlačenje baznog imena za ove izvoze",
+ "queueingButton": "Stavljanje izvoza u red...",
+ "exportButton_one": "Izvoz 1 kamere",
+ "exportButton_few": "Izvoz {{count}} kamere",
+ "exportButton_other": "Izvoz {{count}} kamera"
+ },
+ "multi": {
+ "title_one": "Izvoz 1 pregleda",
+ "title_few": "Izvoz {{count}} pregleda",
+ "title_other": "Izvoz {{count}} pregleda",
+ "description": "Izvoz svakog odabranih pregleda. Svi izvozi bit će grupirani pod jedan slučaj.",
+ "descriptionNoCase": "Izvoz svakog odabranih pregleda.",
+ "caseNamePlaceholder": "Pregled izvoza - {{date}}",
+ "exportButton_one": "Izvoz 1 pregleda",
+ "exportButton_few": "Izvoz {{count}} pregleda",
+ "exportButton_other": "Izvoz {{count}} pregleda",
+ "exportingButton": "Izvoz...",
+ "toast": {
+ "started_one": "Pokrenut 1 izvoz. Otvaranje slučaja sada.",
+ "started_few": "Pokrenuta {{count}} izvoza. Otvaranje slučaja sada.",
+ "started_other": "Pokrenuto {{count}} izvoza. Otvaranje slučaja sada.",
+ "startedNoCase_one": "Pokrenut 1 izvoz.",
+ "startedNoCase_few": "Pokrenuta {{count}} izvoza.",
+ "startedNoCase_other": "Pokrenuto {{count}} izvoza.",
+ "partial": "Pokrenuto {{successful}} od {{total}} izvoza. Neuspješno: {{failedItems}}",
+ "failed": "Neuspješno pokretanje {{total}} izvoza. Neuspješno: {{failedItems}}"
+ }
+ },
+ "toast": {
+ "success": "Uspješno pokrenut izvoz. Pregledajte datoteku na stranici izvoza.",
+ "queued": "Izvoz u redu. Pregledajte napredak na stranici izvoza.",
+ "view": "Pregled",
+ "batchSuccess_one": "Pokrenut 1 izvoz. Otvaranje slučaja sada.",
+ "batchSuccess_few": "Pokrenuta {{count}} izvoza. Otvaranje slučaja sada.",
+ "batchSuccess_other": "Pokrenuto {{count}} izvoza. Otvaranje slučaja sada.",
+ "batchPartial": "Pokrenuto {{successful}} od {{total}} izvoza. Neuspješne kamere: {{failedCameras}}",
+ "batchFailed": "Neuspješno pokretanje {{total}} izvoza. Neuspješne kamere: {{failedCameras}}",
+ "batchQueuedSuccess_one": "U red stavljen 1 izvoz. Otvaranje slučaja sada.",
+ "batchQueuedSuccess_few": "U red stavljena {{count}} izvoza. Otvaranje slučaja sada.",
+ "batchQueuedSuccess_other": "U red stavljeno {{count}} izvoza. Otvaranje slučaja sada.",
+ "batchQueuedPartial": "U redu {{successful}} od {{total}} izvoza. Neuspješne kamere: {{failedCameras}}",
+ "batchQueueFailed": "Neuspješno dodavanje {{total}} izvoza. Neuspješne kamere: {{failedCameras}}",
+ "error": {
+ "failed": "Neuspješno dodavanje izvoza: {{error}}",
+ "endTimeMustAfterStartTime": "Krajnje vrijeme mora biti nakon početnog vremena",
+ "noVaildTimeSelected": "Nije odabran valjan vremenski opseg"
+ }
+ },
+ "fromTimeline": {
+ "saveExport": "Sačuvaj izvoz",
+ "queueingExport": "Kopiranje izvoza...",
+ "previewExport": "Pregled izvoza",
+ "useThisRange": "Koristi ovaj opseg"
+ }
+ },
+ "streaming": {
+ "label": "Tok",
+ "restreaming": {
+ "disabled": "Restreaming nije omogućeno za ovu kameru.",
+ "desc": {
+ "title": "Postavite go2rtc za dodatne opcije uživog pregleda i zvuk za ovu kameru."
+ }
+ },
+ "showStats": {
+ "label": "Prikaži statistiku strima",
+ "desc": "Omogući ovu opciju da prikaže statistiku prijenosa kao preklapanje na toku kamere."
+ },
+ "debugView": "Pregled za otklanjanje grešaka"
+ },
+ "search": {
+ "saveSearch": {
+ "label": "Sačuvaj pretragu",
+ "desc": "Navedite ime za ovu sačuvanu pretragu.",
+ "placeholder": "Unesite ime za svoju pretragu",
+ "overwrite": "{{searchName}} već postoji. Sačuvavanje će prebrisati postojet će vrijednost.",
+ "success": "Pretraga ({{searchName}}) je sačuvana.",
+ "button": {
+ "save": {
+ "label": "Sačuvaj ovu pretragu"
+ }
+ }
+ }
+ },
+ "recording": {
+ "shareTimestamp": {
+ "label": "Dijeli vremensku oznaku",
+ "title": "Dijeli vremensku oznaku",
+ "description": "Dijelite URL označen vremenom trenutne pozicije igrača ili odaberite prilagođenu vremensku oznaku. Napomena: ovo nije javni URL za dijeljenje i dostupan je samo korisnicima koji imaju pristup Frigate i ovoj kameri.",
+ "custom": "Prilagođena vremenska oznaka",
+ "button": "URL za dijeljenje vremenske oznake",
+ "shareTitle": "Vremenska oznaka pregleda Frigate: {{camera}}"
+ },
+ "confirmDelete": {
+ "title": "Potvrdi brisanje",
+ "desc": {
+ "selected": "Sigurni li ste da želite izbrisati sve snimljeno video povezano s ovim preglednim stavkom?detect prijenos, provjerite zapise o greškama"
+ },
+ "cameraDisabled": "Kamera je onemogućena",
+ "stats": {
+ "streamType": {
+ "title": "Tip prijenosa:",
+ "short": "Tip"
+ },
+ "bandwidth": {
+ "title": "Širina pojasa:",
+ "short": "Širina pojasa"
+ },
+ "latency": {
+ "title": "Kasnjenje:",
+ "value": "{{seconds}} sekundi",
+ "short": {
+ "title": "Kasnjenje",
+ "value": "{{seconds}} sek"
+ }
+ },
+ "totalFrames": "Ukupno okvira:",
+ "droppedFrames": {
+ "title": "Izgubljeni okviri:",
+ "short": {
+ "title": "Izgubljeni",
+ "value": "{{droppedFrames}} okvira"
+ }
+ },
+ "decodedFrames": "Dekodirani okviri:",
+ "droppedFrameRate": "Stopa izgubljenih okvira:"
+ },
+ "toast": {
+ "success": {
+ "submittedFrigatePlus": "Uspješno je poslano okvir Frigate+"
+ },
+ "error": {
+ "submitFrigatePlusFailed": "Neuspješno slanje okvira Frigate+"
+ }
+ }
+}
diff --git a/web/public/locales/bs/config/cameras.json b/web/public/locales/bs/config/cameras.json
new file mode 100644
index 0000000000..97da5a3793
--- /dev/null
+++ b/web/public/locales/bs/config/cameras.json
@@ -0,0 +1,949 @@
+{
+ "label": "KameraKonfig",
+ "zones": {
+ "label": "Zone",
+ "description": "Zona omogućava da definirate specifičnu područje okvira da biste odredili je li objekt unutar određenog područja.",
+ "friendly_name": {
+ "label": "Ime zone",
+ "description": "Korisničko ime za zonu, prikazano u UI Frigate. Ako nije postavljeno, koristi se oblikovana verzija imena zone."
+ },
+ "enabled": {
+ "label": "Omogućeno",
+ "description": "Omogući ili onemogući ovu zonu. Onemogućene zone zanemaruju se tijekom izvršavanja."
+ },
+ "enabled_in_config": {
+ "label": "Zapamti originalno stanje zone."
+ },
+ "filters": {
+ "label": "Filtri zone",
+ "description": "Filtri za primjenu na objekte unutar ove zone. Koriste se za smanjenje lažnih pozitiva ili ograničavanje kojih objekata se smatraju prisutnim u zoni.",
+ "min_area": {
+ "label": "Minimalna površina objekta",
+ "description": "Minimalna površina okvira (pikseli ili postotak) potrebna za ovaj tip objekta. Može biti pikseli (cijeli broj) ili postotak (float između 0.000001 i 0.99)."
+ },
+ "max_area": {
+ "label": "Maksimalna površina objekta",
+ "description": "Maksimalna površina okvira (pikseli ili postotak) dozvoljena za ovaj tip objekta. Može biti pikseli (cijeli broj) ili postotak (float između 0.000001 i 0.99)."
+ },
+ "min_ratio": {
+ "label": "Minimalni omjer visine/širine",
+ "description": "Minimalni omjer širine/visine potreban da bi okvir bio prihvaćen."
+ },
+ "max_ratio": {
+ "label": "Maksimalni omjer visine/širine",
+ "description": "Maksimalni omjer širine/visine dozvoljen da bi okvir bio prihvaćen."
+ },
+ "threshold": {
+ "label": "Prag pouzdanosti",
+ "description": "Prosjek pragova pouzdanosti detekcije potreban da bi objekt bio smatravan pravim pozitivom."
+ },
+ "min_score": {
+ "label": "Minimalna pouzdanost",
+ "description": "Minimalna pouzdanost detekcije po okviru potrebna da bi objekt bio brojan."
+ },
+ "mask": {
+ "label": "Maska filtriranja",
+ "description": "Koordinate poligona koje definiraju područje na kojem se ovaj filter primjenjuje unutar okvira."
+ },
+ "raw_mask": {
+ "label": "Ručna maska"
+ }
+ },
+ "coordinates": {
+ "label": "Koordinate",
+ "description": "Koordinate poligona koje definiraju područje zone. Može biti niz razdvojen zarezom ili lista nizova koordinata. Koordinate trebaju biti relativne (0-1) ili apsolutne (stariji format)."
+ },
+ "distances": {
+ "label": "Stvarne udaljenosti",
+ "description": "Nepovlačni stvarne udaljenosti za svaku stranu kvadrilateralne zone, koristi se za izračun brzine ili udaljenosti. Moraju imati tačno 4 vrijednosti ako su postavljene."
+ },
+ "inertia": {
+ "label": "Okviri inertnosti",
+ "description": "Broj uzastopnih okvira u kojima mora biti detektovan objekt u zoni da bi bio smatravan prisutnim. Pomaže u filtriranju privremenih detekcija."
+ },
+ "loitering_time": {
+ "label": "Sekunde loiteranja",
+ "description": "Broj sekundi koje objekt mora ostati u zoni da bi bio smatravan loiteranjem. Postaviti na 0 za onemogućavanje detekcije loiteranja."
+ },
+ "speed_threshold": {
+ "label": "Minimalna brzina",
+ "description": "Minimalna brzina (u stvarnim jedinicama ako su udaljenosti postavljene) potrebna da bi objekt bio smatravan prisutnim u zoni. Koristi se za zone koje se aktiviraju na osnovu brzine."
+ },
+ "objects": {
+ "label": "Objekti koji izazivaju",
+ "description": "Lista tipova objekata (iz labelmapa) koji mogu izazvati ovu zonu. Može biti niz ili lista nizova. Ako je prazna, svi objekti se uzimaju u obzir."
+ }
+ },
+ "name": {
+ "label": "Ime kamere",
+ "description": "Ime kamere je obavezno"
+ },
+ "friendly_name": {
+ "label": "Prijateljsko ime",
+ "description": "Prijateljsko ime kamere korišteno u korisničkom sučelju Frigate"
+ },
+ "enabled": {
+ "label": "Omogućeno",
+ "description": "Omogućeno"
+ },
+ "audio": {
+ "label": "Audio događaji",
+ "description": "Postavke za detekciju događaja temeljene na audio.",
+ "enabled": {
+ "label": "Omogući detekciju zvuka",
+ "description": "Omogući ili onemogući detekciju događaja temeljenu na audio za ovu kameru."
+ },
+ "max_not_heard": {
+ "label": "Vrijeme trajanja do kraja",
+ "description": "Količina sekundi bez konfiguriranog tipa zvuka prije nego što se audio događaj završi."
+ },
+ "min_volume": {
+ "label": "Minimalna zapremina",
+ "description": "Minimalni prag RMS zapremine potreban za pokretanje detekcije zvuka; niže vrijednosti povećavaju osjetljivost (npr. 200 visoko, 500 srednje, 1000 nisko)."
+ },
+ "listen": {
+ "label": "Tipovi slušanja",
+ "description": "Popis tipova audio događaja za detekciju (npr. zavijanje, požarne zvona, vrisak, govorenje, vikanje)."
+ },
+ "filters": {
+ "label": "Audio filteri",
+ "description": "Postavke filtera po tipu zvuka kao što su pragovi pouzdanosti za smanjenje lažnih pozitiva."
+ },
+ "enabled_in_config": {
+ "label": "Originalno stanje zvuka",
+ "description": "Indikuje je li detekcija zvuka izvorno omogućena u statičkoj konfiguracijskoj datoteci."
+ },
+ "num_threads": {
+ "label": "Dretve detekcije",
+ "description": "Broj dretvi za korištenje za obradu detekcije zvuka."
+ }
+ },
+ "audio_transcription": {
+ "label": "Transkripcija zvuka",
+ "description": "Postavke za transkripciju živog i govornog zvuka korištenih za događaje i žive podnaslove.",
+ "enabled": {
+ "label": "Omogući transkripciju",
+ "description": "Omogući ili onemogući transkripciju audio događaja pokrenutu ručno."
+ },
+ "enabled_in_config": {
+ "label": "Originalni stanje transkripcije"
+ },
+ "live_enabled": {
+ "label": "Uživo transkripcija",
+ "description": "Omogući streaming uživo transkripcije za audio dok se prima."
+ }
+ },
+ "birdseye": {
+ "label": "Birdseye",
+ "description": "Postavke za sastavni prikaz Birdseye koji kombinuje više snimke kamere u jedinstveni raspored.",
+ "enabled": {
+ "label": "Omogući Birdseye",
+ "description": "Omogući ili onemogući funkciju prikaza Birdseye."
+ },
+ "mode": {
+ "label": "Način praćenja",
+ "description": "Način uključivanja kamera u Birdseye: 'objekti', 'kretanje' ili 'kontinuirano'."
+ },
+ "order": {
+ "label": "Pozicija",
+ "description": "Numerička pozicija koja kontroliše redoslijed kamera u rasporedu Birdseye."
+ }
+ },
+ "detect": {
+ "label": "Detekcija objekata",
+ "description": "Postavke za ulogu detekcije/detekcija koja se koristi za pokretanje detekcije objekata i inicijalizaciju praćenja.",
+ "enabled": {
+ "label": "Omogući detekciju objekata",
+ "description": "Omogući ili onemogući detekciju objekata za ovu kameru."
+ },
+ "height": {
+ "label": "Visina detekcije",
+ "description": "Visina (pikseli) okvira korištenih za detekciju stream-a; ostavite prazno za korištenje originalne rezolucije stream-a."
+ },
+ "width": {
+ "label": "Širina detekcije",
+ "description": "Širina (pikseli) okvira korištenih za detekciju stream-a; ostavite prazno za korištenje originalne rezolucije stream-a."
+ },
+ "fps": {
+ "label": "Detekcija FPS",
+ "description": "Željeni broj okvira po sekundi za pokretanje detekcije; niže vrijednosti smanjuju upotrebu CPU-a (preporučena vrijednost je 5, postavite više - najviše 10 - samo ako praćite vrlo brze objekte)."
+ },
+ "min_initialized": {
+ "label": "Minimalni broj okvira inicijalizacije",
+ "description": "Broj uzastopnih detekcija potreban prije stvaranja praćenog objekta. Povećajte da biste smanjili lažne inicijalizacije. Zadana vrijednost je fps podijeljeno sa 2."
+ },
+ "max_disappeared": {
+ "label": "Maksimalni broj okvira koji su nestali",
+ "description": "Broj okvira bez detekcije prije nego što se praćeni objekt smatra izgubljenim."
+ },
+ "stationary": {
+ "label": "Konfiguracija stacionarnih objekata",
+ "description": "Postavke za detekciju i upravljanje objektima koji ostaju stacionarni tokom određenog vremena.",
+ "interval": {
+ "label": "Stacionarni interval",
+ "description": "Kako često (u snimcima) pokretati provjeru detekcije da biste potvrdili stacionarni objekt."
+ },
+ "threshold": {
+ "label": "Stacionarni prag",
+ "description": "Broj snimaka bez promjene pozicije potreban da bi objekt bio označen kao stacionarni."
+ },
+ "max_frames": {
+ "label": "Maksimalni snimci",
+ "description": "Ograničava koliko dugo se stacionarni objekti praćaju prije nego što se odbacuju.",
+ "default": {
+ "label": "Zadani maksimalni snimci",
+ "description": "Zadani maksimalni broj snimaka za praćenje stacionarnog objekta prije prestanka."
+ },
+ "objects": {
+ "label": "Maksimalni snimci po objektu",
+ "description": "Podešavanja po objektu za maksimalni broj snimaka za praćenje stacionarnih objekata."
+ }
+ },
+ "classifier": {
+ "label": "Omogući vizualni klasifikator",
+ "description": "Koristi vizualni klasifikator za detekciju pravozadanih stacionarnih objekata čak i kada se okviri tresu."
+ }
+ },
+ "annotation_offset": {
+ "label": "Pomak oznake",
+ "description": "Milisekunde za pomak detektiranih oznaka kako bi se bolje poravnali vremenski okviri s snimcima; može biti pozitivan ili negativan."
+ }
+ },
+ "face_recognition": {
+ "label": "Prepoznavanje lica",
+ "description": "Postavke za detekciju i prepoznavanje lica za ovu kameru.",
+ "enabled": {
+ "label": "Omogući prepoznavanje lica",
+ "description": "Omogući ili onemogući prepoznavanje lica."
+ },
+ "min_area": {
+ "label": "Minimalna površina lica",
+ "description": "Minimalna površina (pikseli) detektiranog okvira lica potrebna za pokušaj prepoznavanja."
+ }
+ },
+ "ffmpeg": {
+ "label": "FFmpeg",
+ "description": "Postavke FFmpeg uključuju putanju binarne datoteke, argumente, opcije hwaccel i izlazne argumente po ulozi.",
+ "path": {
+ "label": "Putanja do FFmpeg binarne datoteke",
+ "description": "Putanja do FFmpeg binarne datoteke ili verzija alias (\"5.0\" ili \"7.0\")."
+ },
+ "global_args": {
+ "label": "Globalni argumenti FFmpeg-a",
+ "description": "Globalni argumenti prebačeni na procese FFmpeg."
+ },
+ "hwaccel_args": {
+ "label": "Argumenti za ubrzanje hardvera",
+ "description": "Argumenti za ubrzanje hardvera za FFmpeg. Preporučuju se predložci specifični za dobavljača."
+ },
+ "input_args": {
+ "label": "Unos argumenata",
+ "description": "Ulazni argumenti primjenjeni na ulazne snimke FFmpeg."
+ },
+ "output_args": {
+ "label": "Izlazni argumenti",
+ "description": "Zadani izlazni argumenti korišteni za različite uloge FFmpeg-a poput detekcije i snimanja.",
+ "detect": {
+ "label": "Izlazni argumenti za detekciju",
+ "description": "Zadani izlazni argumenti za snimke uloga detekcije."
+ },
+ "record": {
+ "label": "Izlazni argumenti za snimanje",
+ "description": "Zadani izlazni argumenti za snimke uloga snimanja."
+ }
+ },
+ "retry_interval": {
+ "label": "Vrijeme ponovnog pokušaja FFmpeg-a",
+ "description": "Sekunde koje treba čekati prije nego što se pokuša ponovno uspostaviti veza s tokom kamere nakon neuspjeha. Zadano je 10."
+ },
+ "apple_compatibility": {
+ "label": "Kompatibilnost s Apple-om",
+ "description": "Omogući označavanje HEVC za bolju kompatibilnost s igračima Apple-a prilikom snimanja H.265."
+ },
+ "gpu": {
+ "label": "Indeks GPU-a",
+ "description": "Zadani indeks GPU-a korišten za ubrzanje hardvera ako je dostupan."
+ },
+ "inputs": {
+ "label": "Ulazni podaci kamere",
+ "description": "Popis definicija ulaznih tokova (putanje i uloge) za ovu kameru.",
+ "path": {
+ "label": "Putanja ulaza",
+ "description": "URL ili putanja ulaznog toka kamere."
+ },
+ "roles": {
+ "label": "Uloge ulaza",
+ "description": "Uloge za ovaj ulazni tok."
+ },
+ "global_args": {
+ "label": "Globalni argumenti FFmpeg-a",
+ "description": "Globalni argumenti FFmpeg-a za ovaj ulazni tok."
+ },
+ "hwaccel_args": {
+ "label": "Argumenti za ubrzanje hardvera",
+ "description": "Argumenti za ubrzanje hardvera za ovaj ulazni stream."
+ },
+ "input_args": {
+ "label": "Unos argumenata",
+ "description": "Argumeti unosa specifični za ovaj stream."
+ }
+ }
+ },
+ "live": {
+ "label": "Uživo prikaz",
+ "description": "Postavke korištenje Web UI za kontrolu izbora živog streama, rezolucije i kvalitete.",
+ "streams": {
+ "label": "Imena živih streamova",
+ "description": "Mapiranje konfiguriranih imena streamova na imena restream/go2rtc korишtena za uživo prikaz."
+ },
+ "height": {
+ "label": "Visina uživo",
+ "description": "Visina (piksela) za prikaz jsmpeg živog streama u Web UI; mora biti <= visina detektiranog streama."
+ },
+ "quality": {
+ "label": "Kvalitet uživo",
+ "description": "Kvalitet kodiranja za jsmpeg stream (1 najviši, 31 najniži)."
+ }
+ },
+ "lpr": {
+ "label": "Prepoznavanje tablice vozila",
+ "description": "Postavke prepoznavanja tablice vozila uključujući pragovi detekcije, formatiranje i poznate tablice.",
+ "enabled": {
+ "label": "Omogući LPR",
+ "description": "Omogući ili onemogući LPR na ovoj kameri."
+ },
+ "expire_time": {
+ "label": "Sekunde isteka",
+ "description": "Vrijeme u sekundama nakon kojeg nevidljiva tablica istječe iz praćenja (samo za dedikovane LPR kamere)."
+ },
+ "min_area": {
+ "label": "Minimalna površina tablice",
+ "description": "Minimalna površina tablice (piksela) potrebna za pokušaj prepoznavanja."
+ },
+ "enhancement": {
+ "label": "Nivo poboljšanja",
+ "description": "Nivo poboljšanja (0-10) za primjenu na isječke tablice prije OCR-a; veće vrijednosti ne moraju uvijek poboljšati rezultate, nivoi iznad 5 mogu raditi samo s tablicama u noćnom vremenu i trebaju se koristiti s oprezom."
+ }
+ },
+ "motion": {
+ "label": "Detekcija pokreta",
+ "description": "Zadane postavke detekcije pokreta za ovu kameru.",
+ "enabled": {
+ "label": "Omogući detekciju pokreta",
+ "description": "Omogući ili onemogući detekciju pokreta za ovu kameru."
+ },
+ "threshold": {
+ "label": "Prag pokreta",
+ "description": "Prag razlike piksela korišten za detektor pokreta; veće vrijednosti smanjuju osjetljivost (opseg 1-255)."
+ },
+ "lightning_threshold": {
+ "label": "Prag munje",
+ "description": "Prag za detekciju i zanemarivanje kratkih iskri svjetlosti (niže vrijednosti povećavaju osjetljivost, vrijednosti između 0.3 i 1.0). Ovo ne spriječava detekciju pokreta u potpunosti; jednostavno zaustavlja detektor da analizira dodatne okvire nakon što se prag premaši. Snimci temeljeni na pokretima i dalje se stvaraju tijekom ovih događaja."
+ },
+ "skip_motion_threshold": {
+ "label": "Preskoči prag pokreta",
+ "description": "Ako se postavi na vrijednost između 0.0 i 1.0, i ako se više od ovog udjela slike promijeni u jednom okviru, detektor neće vratiti kutije pokreta i odmah će se ponovno kalibrirati. Ovo može uštedjeti CPU i smanjiti lažne pozitive tijekom munje, oluje itd., ali može propustiti stvarne događaje kao što je automatsko praćenje objekta PTZ kamerom. Tržište je između izgube nekoliko megabajta snimaka i pregleda nekoliko kratkih zapisnika. Ostavite nepostavljeno (Nijedno) za onemogućavanje ove funkcije."
+ },
+ "improve_contrast": {
+ "label": "Poboljšaj kontrast",
+ "description": "Primijeni poboljšanje kontrasta na okvire prije analize pokreta kako bi pomoću detekcije."
+ },
+ "contour_area": {
+ "label": "Površina kontura",
+ "description": "Minimalna površina kontura u pikselima potrebna za brojanje kontura pokreta."
+ },
+ "delta_alpha": {
+ "label": "Delta alfa",
+ "description": "Faktor alfa spajanja korišten za razliku okvira za izračun pokreta."
+ },
+ "frame_alpha": {
+ "label": "Alfa okvira",
+ "description": "Vrijednost alfa korištena prilikom spajanja okvira za predobradbu pokreta."
+ },
+ "frame_height": {
+ "label": "Visina okvira",
+ "description": "Visina u pikselima na koju se skaliraju okviri prilikom izračuna pokreta."
+ },
+ "mask": {
+ "label": "Koordinate maska",
+ "description": "Uredno x,y koordinate koje definiraju poligon maska pokreta za uključivanje/isključivanje područja."
+ },
+ "mqtt_off_delay": {
+ "label": "MQTT zakasnjenje isključivanja",
+ "description": "Sekunde koje se čekaju nakon posljednjeg pokreta prije objave MQTT 'isključeno' stanje."
+ },
+ "enabled_in_config": {
+ "label": "Originalno stanje pokreta",
+ "description": "Indikira je li detekcija pokreta bila omogućena u originalnoj statičkoj konfiguraciji."
+ },
+ "raw_mask": {
+ "label": "Ručna maska"
+ }
+ },
+ "objects": {
+ "label": "Objekti",
+ "description": "Zadani parametri praćenja objekata uključujući koje oznake praćenja i filtre po objektu.",
+ "track": {
+ "label": "Objekti za praćenje",
+ "description": "Popis oznaka objekata za praćenje za ovu kameru."
+ },
+ "filters": {
+ "label": "Filtar objekata",
+ "description": "Filtar primijenjen na detektirane objekte kako bi se smanjila broj lažnih pozitiva (površina, omjer, pouzdanost).",
+ "min_area": {
+ "label": "Minimalna površina objekta",
+ "description": "Minimalna površina okvira (pikseli ili postotak) potrebna za ovaj tip objekta. Može biti pikseli (cijeli broj) ili postotak (float između 0.000001 i 0.99)."
+ },
+ "max_area": {
+ "label": "Maksimalna površina objekta",
+ "description": "Maksimalna površina okvira (pikseli ili postotak) dozvoljena za ovaj tip objekta. Može biti pikseli (cijeli broj) ili postotak (float između 0.000001 i 0.99)."
+ },
+ "min_ratio": {
+ "label": "Minimalni omjer visine/širine",
+ "description": "Minimalni omjer širine/visine potreban da bi okvir bio prihvaćen."
+ },
+ "max_ratio": {
+ "label": "Maksimalni omjer visine/širine",
+ "description": "Maksimalni omjer širine/visine dozvoljen da bi okvir bio prihvaćen."
+ },
+ "threshold": {
+ "label": "Prag pouzdanosti",
+ "description": "Prosjek pragova pouzdanosti detekcije potreban da bi objekt bio smatravan pravim pozitivom."
+ },
+ "min_score": {
+ "label": "Minimalna pouzdanost",
+ "description": "Minimalna pouzdanost detekcije po okviru potrebna da bi objekt bio brojan."
+ },
+ "mask": {
+ "label": "Maska filtriranja",
+ "description": "Koordinate poligona koje definiraju područje na kojem se ovaj filter primjenjuje unutar okvira."
+ },
+ "raw_mask": {
+ "label": "Ručna maska"
+ }
+ },
+ "mask": {
+ "label": "Maska objekta",
+ "description": "Poligonalna maska korištena za spriječavanje detekcije objekta u određenim područjima."
+ },
+ "raw_mask": {
+ "label": "Ručna maska"
+ },
+ "genai": {
+ "label": "Konfiguracija GenAI objekta",
+ "description": "Opcije GenAI za opisivanje praćenih objekata i slanje okvira za generisanje.",
+ "enabled": {
+ "label": "Omogući GenAI",
+ "description": "Omogući generisanje opisa za praćene objekte po zadanim postavkama."
+ },
+ "use_snapshot": {
+ "label": "Koristi snimke",
+ "description": "Koristi snimke objekata umjesto miniaturnih slika za generisanje opisa GenAI."
+ },
+ "prompt": {
+ "label": "Naslovni prompt",
+ "description": "Zadani šablon upita korišten za generisanje opisa pomoću GenAI."
+ },
+ "object_prompts": {
+ "label": "Prompti za objekte",
+ "description": "Prompti po objektu za prilagođavanje izlaza GenAI za specifične oznake."
+ },
+ "objects": {
+ "label": "GenAI objekti",
+ "description": "Popis oznaka objekata koje se po defaultu šalju GenAI."
+ },
+ "required_zones": {
+ "label": "Potrebne zone",
+ "description": "Zone koje moraju biti unesene za objekte da bi se kvalifikovali za generisanje opisa GenAI."
+ },
+ "debug_save_thumbnails": {
+ "label": "Sačuvajte miniaturne slike",
+ "description": "Sačuvaj miniaturne slike koje se šalju GenAI za ispravljanje i pregled."
+ },
+ "send_triggers": {
+ "label": "GenAI izazivači",
+ "description": "Definiše kada bi se trebale slati okvir za GenAI (na kraju, nakon ažuriranja, itd.).",
+ "tracked_object_end": {
+ "label": "Pošalji na kraju",
+ "description": "Pošalji zahtjev GenAI kada praćeni objekt završi."
+ },
+ "after_significant_updates": {
+ "label": "Raniji GenAI izazivač",
+ "description": "Pošalji zahtjev GenAI nakon određenog broja značajnih ažuriranja za praćeni objekt."
+ }
+ },
+ "enabled_in_config": {
+ "label": "Originalno stanje GenAI",
+ "description": "Pokazuje je li GenAI bio omogućen u originalnoj statičkoj konfiguraciji."
+ }
+ }
+ },
+ "record": {
+ "label": "Snimanje",
+ "description": "Postavke snimanja i zadržavanja za ovu kameru.",
+ "enabled": {
+ "label": "Omogući snimanje",
+ "description": "Omogući ili onemogući snimanje za ovu kameru."
+ },
+ "expire_interval": {
+ "label": "Interval čišćenja snimanja",
+ "description": "Minute između čišćenja koja uklanjaju istekle segmente snimaka."
+ },
+ "continuous": {
+ "label": "Neprekidna retencija",
+ "description": "Broj dana za čuvanje snimaka bez obzira na praćene objekte ili pokret. Postavite na 0 ako želite da čuvate samo snimke upozorenja i detekcije.",
+ "days": {
+ "label": "Dane zadržavanja",
+ "description": "Dana za čuvanje snimaka."
+ }
+ },
+ "motion": {
+ "label": "Retencija pokreta",
+ "description": "Broj dana za čuvanje snimaka izazvanih pokretom bez obzira na praćene objekte. Postavite na 0 ako želite da čuvate samo snimke upozorenja i detekcije.",
+ "days": {
+ "label": "Dane zadržavanja",
+ "description": "Dana za čuvanje snimaka."
+ }
+ },
+ "detections": {
+ "label": "Retencija detekcije",
+ "description": "Postavke retencije snimaka za događaje detekcije uključujući trajanje pre/post snimanja.",
+ "pre_capture": {
+ "label": "Sekundi pre snimanja",
+ "description": "Broj sekundi prije događaja detekcije koje treba uključiti u snimak."
+ },
+ "post_capture": {
+ "label": "Sekunde nakon snimanja",
+ "description": "Broj sekundi nakon događaja detekcije koje se uključuju u snimanje."
+ },
+ "retain": {
+ "label": "Zadržavanje događaja",
+ "description": "Postavke zadržavanja za snimke događaja detekcije.",
+ "days": {
+ "label": "Dane zadržavanja",
+ "description": "Broj dana za koje se zadržavaju snimke događaja detekcije."
+ },
+ "mode": {
+ "label": "Način zadržavanja",
+ "description": "Način zadržavanja: sve (sačuvati sve segmente), pokret (sačuvati segmente s pokretom), ili aktivni_objekti (sačuvati segmente s aktivnim objektima)."
+ }
+ }
+ },
+ "alerts": {
+ "label": "Retencija upozorenja",
+ "description": "Postavke retencije snimaka za događaje upozorenja uključujući trajanje pre/post snimanja.",
+ "pre_capture": {
+ "label": "Sekundi pre snimanja",
+ "description": "Broj sekundi prije događaja detekcije koje treba uključiti u snimak."
+ },
+ "post_capture": {
+ "label": "Sekunde nakon snimanja",
+ "description": "Broj sekundi nakon događaja detekcije koje se uključuju u snimanje."
+ },
+ "retain": {
+ "label": "Zadržavanje događaja",
+ "description": "Postavke zadržavanja za snimke događaja detekcije.",
+ "days": {
+ "label": "Dane zadržavanja",
+ "description": "Broj dana za koje se zadržavaju snimke događaja detekcije."
+ },
+ "mode": {
+ "label": "Način zadržavanja",
+ "description": "Način zadržavanja: sve (sačuvati sve segmente), pokret (sačuvati segmente s pokretom), ili aktivni_objekti (sačuvati segmente s aktivnim objektima)."
+ }
+ }
+ },
+ "export": {
+ "label": "Konfiguracija izvoza",
+ "description": "Postavke koje se koriste prilikom izvoza snimaka kao što su timelapse i ubrzavanje dretve.",
+ "hwaccel_args": {
+ "label": "Argumeti ubrzavanja dretve za izvoz",
+ "description": "Argumeti ubrzavanja dretve za operacije izvoza/prenosa."
+ },
+ "max_concurrent": {
+ "label": "Maksimalan broj istovremenih izvoza",
+ "description": "Maksimalan broj poslova izvoza koji se obrađuju istovremeno."
+ }
+ },
+ "preview": {
+ "label": "Konfiguracija pregleda",
+ "description": "Postavke koje kontrolišu kvalitet pregleda snimanja prikazanih u UI.",
+ "quality": {
+ "label": "Kvaliteta pregleda",
+ "description": "Nivo kvalitete pregleda (vrlo_nizak, nizak, srednji, visok, vrlo_visok)."
+ }
+ },
+ "enabled_in_config": {
+ "label": "Originalno stanje snimanja",
+ "description": "Pokazuje je li snimanje bilo omogućeno u originalnoj statičkoj konfiguraciji."
+ }
+ },
+ "review": {
+ "label": "Pregled",
+ "description": "Postavke koje kontrolišu upozorenja, detekcije i sažetke pregleda GenAI korišteni od strane UI i skladišta za ovu kameru.",
+ "alerts": {
+ "label": "Konfiguracija upozorenja",
+ "description": "Postavke za koje objekti praćeni generišu upozorenja i kako se upozorenja zadržavaju.",
+ "enabled": {
+ "label": "Omogući upozorenja",
+ "description": "Omogući ili onemogući generisanje upozorenja za ovu kameru."
+ },
+ "labels": {
+ "label": "Oznake upozorenja",
+ "description": "Lista oznaka objekata koje se smatraju upozorenjima (npr. automobil, osoba)."
+ },
+ "required_zones": {
+ "label": "Potrebne zone",
+ "description": "Zone koje objekt mora ući da bi se smatrao upozorenjem; ostavite prazno da omogućite bilo koju zonu."
+ },
+ "enabled_in_config": {
+ "label": "Originalno stanje upozorenja",
+ "description": "Pratiti je li upozorenja izvorno omogućena u statičkoj konfiguraciji."
+ },
+ "cutoff_time": {
+ "label": "Vrijeme prekida upozorenja",
+ "description": "Sekunde koje treba čekati nakon što nema aktivnosti koja uzrokuje upozorenje prije nego se prekine upozorenje."
+ }
+ },
+ "detections": {
+ "label": "Konfiguracija detekcija",
+ "description": "Postavke koje objekti koje se praćenje generišu detekcije (nepozornja) i kako se detekcije čuvaju.",
+ "enabled": {
+ "label": "Omogući detekcije",
+ "description": "Omogući ili onemogući događaje detekcije za ovu kameru."
+ },
+ "labels": {
+ "label": "Oznake detekcije",
+ "description": "Popis oznaka objekata koje kvalifikuju kao događaji detekcije."
+ },
+ "required_zones": {
+ "label": "Potrebne zone",
+ "description": "Zone koje objekt mora ući da bi se smatrao detekcijom; ostavite prazno da omogućite bilo koju zonu."
+ },
+ "cutoff_time": {
+ "label": "Vrijeme prekida detekcija",
+ "description": "Sekunde koje treba čekati nakon što nema aktivnosti koja uzrokuje detekciju prije nego se prekine detekcija."
+ },
+ "enabled_in_config": {
+ "label": "Originalno stanje detekcija",
+ "description": "Pratiti je li detekcije izvorno omogućene u statičkoj konfiguraciji."
+ }
+ },
+ "genai": {
+ "label": "Konfiguracija GenAI",
+ "description": "Kontrolira korištenje generativne AI za proizvodnju opisa i sažetaka stavki za pregled.",
+ "enabled": {
+ "label": "Omogući opise GenAI",
+ "description": "Omogući ili onemogući opise i sažetke generirane GenAI za stavke za pregled."
+ },
+ "alerts": {
+ "label": "Omogući GenAI za upozorenja",
+ "description": "Koristi GenAI za generiranje opisa stavki upozorenja."
+ },
+ "detections": {
+ "label": "Omogući GenAI za detekcije",
+ "description": "Koristite GenAI za generiranje opisa predmeta detekcije."
+ },
+ "image_source": {
+ "label": "Pregledajte izvor slike",
+ "description": "Izvor slika poslatih GenAIJ-u ('preview' ili 'recordings'); 'recordings' koristi kvalitetnije okvire, ali više tokena."
+ },
+ "additional_concerns": {
+ "label": "Dodatne brige",
+ "description": "Popis dodatnih briga ili napomena koje GenAI treba uzeti u obzir prilikom procjene aktivnosti na ovoj kameri."
+ },
+ "debug_save_thumbnails": {
+ "label": "Sačuvajte miniaturne slike",
+ "description": "Sačuvajte miniaturne slike koje se šalju GenAI provajderu za ispravljanje grešaka i pregled."
+ },
+ "enabled_in_config": {
+ "label": "Originalno stanje GenAI",
+ "description": "Pratiti je li pregled GenAI izvorno omogućen u statičkoj konfiguraciji."
+ },
+ "preferred_language": {
+ "label": "Preferirani jezik",
+ "description": "Preferirani jezik za zahtijevanje od GenAI provajdera za generirane odgovore."
+ },
+ "activity_context_prompt": {
+ "label": "Prompt konteksta aktivnosti",
+ "description": "Prilagođeni prompt koji opisuje što je i što nije sumnjivo ponašanje kako bi pružio kontekst za sažetke GenAI."
+ }
+ }
+ },
+ "semantic_search": {
+ "label": "Semantička pretraga",
+ "description": "Postavke za semantičku pretragu koja konstruira i upita uključivanje objekata kako bi pronašla slične stavke.",
+ "triggers": {
+ "label": "Pokretači",
+ "description": "Akcije i kriteriji za usklađivanje za pokretače semantičke pretrage specifične za kameru.",
+ "friendly_name": {
+ "label": "Prijateljsko ime",
+ "description": "Nepovlačno prijateljsko ime prikazano u korisničkom sučelju za ovaj pokretač."
+ },
+ "enabled": {
+ "label": "Omogući ovaj pokretač",
+ "description": "Omogući ili onemogući ovaj pokretač semantičke pretrage."
+ },
+ "type": {
+ "label": "Tip pokretača",
+ "description": "Tip pokretača: 'thumbnail' (uspoređivanje slikom) ili 'description' (uspoređivanje teksta)."
+ },
+ "data": {
+ "label": "Sadržaj pokretača",
+ "description": "Tekstualni izraz ili ID miniaturne slike za uspoređivanje s praćenim objektima."
+ },
+ "threshold": {
+ "label": "Prag aktivacije",
+ "description": "Minimalna ocjena sličnosti (0-1) potrebna za aktivaciju ovog izazivača."
+ },
+ "actions": {
+ "label": "Akcije izazivača",
+ "description": "Popis akcija koje se izvršavaju kada izazivač odgovara (obavijest, pod_naziv, atribute)."
+ }
+ }
+ },
+ "snapshots": {
+ "label": "Snimci",
+ "description": "Postavke za snimke generirane preko API-ja za praćene objekte za ovu kameru.",
+ "enabled": {
+ "label": "Omogući snimke",
+ "description": "Omogući ili onemogući snimanje snimaka za ovu kameru."
+ },
+ "timestamp": {
+ "label": "Preklapanje vremenske oznake",
+ "description": "Preklopiti vremensku oznaku na snimke iz API-ja."
+ },
+ "bounding_box": {
+ "label": "Preklapanje okvira",
+ "description": "Crtanje okvira za praćene objekte na snimke iz API-ja."
+ },
+ "crop": {
+ "label": "Izrezivanje snimke",
+ "description": "Izrezivanje snimki iz API-ja do okvira detektiranog objekta."
+ },
+ "required_zones": {
+ "label": "Potrebne zone",
+ "description": "Zone koje objekt mora ući da bi snimka bila sačuvana."
+ },
+ "height": {
+ "label": "Visina snimke",
+ "description": "Visina (pikseli) za promjenu veličine snimki iz API-ja; ostavite prazno da biste sačuvali originalnu veličinu."
+ },
+ "retain": {
+ "label": "Zadržavanje snimki",
+ "description": "Postavke zadržavanja snimki uključujući zadane dane i prekriženja po objektu.",
+ "default": {
+ "label": "Zadano zadržavanje",
+ "description": "Zadani broj dana za zadržavanje snimki."
+ },
+ "mode": {
+ "label": "Način zadržavanja",
+ "description": "Način zadržavanja: sve (sačuvati sve segmente), pokret (sačuvati segmente s pokretom), ili aktivni_objekti (sačuvati segmente s aktivnim objektima)."
+ },
+ "objects": {
+ "label": "Zadržavanje objekata",
+ "description": "Prekriženja po objektu za dane zadržavanja snimki."
+ }
+ },
+ "quality": {
+ "label": "Kvaliteta snimka",
+ "description": "Kvaliteta kodiranja za sačuvane snimke (0-100)."
+ }
+ },
+ "timestamp_style": {
+ "label": "Stil vremenske oznake",
+ "description": "Opcije stilizacije za vremenske oznake u snimcima i snimcima.",
+ "position": {
+ "label": "Pozicija vremenske oznake",
+ "description": "Pozicija vremenske oznake na slici (tl/tr/bl/br)."
+ },
+ "format": {
+ "label": "Format vremenske oznake",
+ "description": "String formata datuma i vremena korišten za vremenske oznake (Python format koda za datum i vrijeme)."
+ },
+ "color": {
+ "label": "Boja vremenske oznake",
+ "description": "RGB vrijednosti boja za tekst vremenske oznake (sve vrijednosti 0-255).",
+ "red": {
+ "label": "Crvena",
+ "description": "Crveni komponent (0-255) za boju vremenske oznake."
+ },
+ "green": {
+ "label": "Zelena",
+ "description": "Zeleni komponent (0-255) za boju vremenske oznake."
+ },
+ "blue": {
+ "label": "Plava",
+ "description": "Plavi komponent (0-255) za boju vremenske oznake."
+ }
+ },
+ "thickness": {
+ "label": "Debljina vremenske oznake",
+ "description": "Debljina linije teksta vremenske oznake."
+ },
+ "effect": {
+ "label": "Efekt vremenske oznake",
+ "description": "Vizualni efekt za tekst vremenske oznake (none, solid, shadow)."
+ }
+ },
+ "best_image_timeout": {
+ "label": "Vrijeme čekanja za najbolju sliku",
+ "description": "Koliko dugo čekati na sliku s najvišim stupnjem pouzdanosti."
+ },
+ "mqtt": {
+ "label": "MQTT",
+ "description": "Postavke objave slika preko MQTT.",
+ "enabled": {
+ "label": "Pošalji sliku",
+ "description": "Omogući objavljivanje snimaka slika za objekte na MQTT teme za ovu kameru."
+ },
+ "timestamp": {
+ "label": "Dodaj vremensku oznaku",
+ "description": "Preklopiti vremensku oznaku na slike objavljene preko MQTT."
+ },
+ "bounding_box": {
+ "label": "Dodaj okvir",
+ "description": "Crtaj okvire na slikama objavljenim preko MQTT."
+ },
+ "crop": {
+ "label": "Iscijepi sliku",
+ "description": "Iscijepi slike objavljene preko MQTT na okvir detektiranog objekta."
+ },
+ "height": {
+ "label": "Visina slike",
+ "description": "Visina (piksela) za promjenu veličine slika objavljenih preko MQTT."
+ },
+ "required_zones": {
+ "label": "Potrebne zone",
+ "description": "Zone koje objekt mora ući da bi se slika preko MQTT objavila."
+ },
+ "quality": {
+ "label": "Kvaliteta JPEG",
+ "description": "Kvaliteta JPEG za slike objavljene preko MQTT (0-100)."
+ }
+ },
+ "notifications": {
+ "label": "Obavještenja",
+ "description": "Postavke za omogućavanje i kontrolu obavijesti za ovu kameru.",
+ "enabled": {
+ "label": "Omogući obavijesti",
+ "description": "Omogući ili onemogući obavijesti za ovu kameru."
+ },
+ "email": {
+ "label": "E-mail za obavijesti",
+ "description": "Adresa e-maila koja se koristi za obavijesti putem push-a ili je potrebna određenim dobavljačima obavijesti."
+ },
+ "cooldown": {
+ "label": "Period hlađenja",
+ "description": "Period hlađenja (sekunde) između obavijesti kako bi se izbjeglo spaming primateljima."
+ },
+ "enabled_in_config": {
+ "label": "Originalno stanje obavijesti",
+ "description": "Pokazuje je li obavijesti bile omogućene u originalnoj statičkoj konfiguraciji."
+ }
+ },
+ "onvif": {
+ "label": "ONVIF",
+ "description": "Postavke povezivanja preko ONVIF i automatskog praćenja PTZ za ovu kameru.",
+ "host": {
+ "label": "Gost ONVIF",
+ "description": "Gost (i opcionalni shema) za uslugu ONVIF za ovu kameru."
+ },
+ "port": {
+ "label": "Port ONVIF",
+ "description": "Broj porta za uslugu ONVIF."
+ },
+ "user": {
+ "label": "Korisničko ime za ONVIF",
+ "description": "Korisničko ime za autentifikaciju ONVIF; neki uređaji zahtijevaju korisnika admin za ONVIF."
+ },
+ "password": {
+ "label": "Lozinka za ONVIF",
+ "description": "Lozinka za autentifikaciju ONVIF."
+ },
+ "tls_insecure": {
+ "label": "Onemogući provjeru TLS",
+ "description": "Preskoči provjeru TLS i onemogući digest autentifikaciju za ONVIF (nebezbedno; koristiti samo u sigurnim mrežama)."
+ },
+ "profile": {
+ "label": "ONVIF profil",
+ "description": "Specifičan ONVIF medij profil za korištenje za kontrolu PTZ, prilagođen tokenom ili imenom. Ako nije postavljen, prvi profil s važećom konfiguracijom PTZ automatski se odabire."
+ },
+ "autotracking": {
+ "label": "Autotračenje",
+ "description": "Automatski praćenje pokretanja objekata i držanje ih u sredini okvira korištenjem pokreta kamere PTZ.",
+ "enabled": {
+ "label": "Omogući automatsko praćenje",
+ "description": "Omogući ili onemogući automatsko praćenje kamere PTZ detektiranih objekata."
+ },
+ "calibrate_on_startup": {
+ "label": "Kalibriraj na početku",
+ "description": "Mjeri brzine motora PTZ pri pokretanju kako bi poboljšao preciznost praćenja. Frigate će ažurirati konfiguraciju s težinama pokreta nakon kalibracije."
+ },
+ "zooming": {
+ "label": "Režim zumiranja",
+ "description": "Kontrola ponašanja zumiranja: onemogućeno (samo pan/tilt), apsolutno (najkompatibilnije) ili relativno (konkurentno pan/tilt/zum)."
+ },
+ "zoom_factor": {
+ "label": "Faktor zumiranja",
+ "description": "Kontrola razine zumiranja na praćenim objektima. Niže vrijednosti drže više scene u pogledu; više vrijednosti zumiraju bliže, ali mogu izgubiti praćenje. Vrijednosti između 0.1 i 0.75."
+ },
+ "track": {
+ "label": "Praćeni objekti",
+ "description": "Popis vrsta objekata koji trebaju pokrenuti automatsko praćenje."
+ },
+ "required_zones": {
+ "label": "Potrebne zone",
+ "description": "Objekti moraju ući u jednu od ovih zona prije nego što započne automatsko praćenje."
+ },
+ "return_preset": {
+ "label": "Povratak na predpostavku",
+ "description": "Ime predpostavke konfigurirano u firmware kamere za povratak nakon završetka praćenja."
+ },
+ "timeout": {
+ "label": "Vrijeme čekanja povratka",
+ "description": "Čekajte ovaj broj sekundi nakon gubitka praćenja prije povratka kamere na predpostavljeno mjesto."
+ },
+ "movement_weights": {
+ "label": "Težine pokreta",
+ "description": "Vrijednosti kalibracije automatski generirane kroz kalibraciju kamere. Ne mijenjajte ručno."
+ },
+ "enabled_in_config": {
+ "label": "Originalni stanje autotračenja",
+ "description": "Unutarnje polje za praćenje je li autotračenje bilo omogućeno u konfiguraciji."
+ }
+ },
+ "ignore_time_mismatch": {
+ "label": "Zanemari razliku u vremenu",
+ "description": "Zanemari razlike u sinhronizaciji vremena između kamere i Frigate servera za komunikaciju ONVIF."
+ }
+ },
+ "type": {
+ "label": "Tip kamere",
+ "description": "Tip kamere"
+ },
+ "ui": {
+ "label": "Korisnički interfejs kamere",
+ "description": "Prikaz redoslijeda i vidljivosti za ovu kameru u UI. Redoslijed utječe na zadani nadzorno pločo. Za detaljniju kontrolu koristite grupe kamere.",
+ "order": {
+ "label": "Redoslijed UI",
+ "description": "Numerički redoslijed koristi se za sortiranje kamere u UI (zadani nadzorno pločo i popisi); veći brojevi pojavljuju se kasnije."
+ },
+ "dashboard": {
+ "label": "Prikaži u UI",
+ "description": "Prekidač je li ova kamera vidljiva svuda u UI Frigate. Onemogućavanje ovoga zahtijeva ručno uređivanje konfiguracije za ponovno prikazivanje ove kamere u UI."
+ }
+ },
+ "webui_url": {
+ "label": "URL kamere",
+ "description": "URL za pristup kamere izravno iz stranice sustava"
+ },
+ "profiles": {
+ "label": "Profili",
+ "description": "Imenovane konfiguracijske profile s parcijalnim preklopima koji se mogu aktivirati tijekom izvršavanja."
+ },
+ "enabled_in_config": {
+ "label": "Originalno stanje kamere",
+ "description": "Pratite originalno stanje kamere."
+ }
+}
diff --git a/web/public/locales/bs/config/global.json b/web/public/locales/bs/config/global.json
new file mode 100644
index 0000000000..84e370a6cc
--- /dev/null
+++ b/web/public/locales/bs/config/global.json
@@ -0,0 +1,1596 @@
+{
+ "version": {
+ "label": "Trenutna verzija konfiguracije",
+ "description": "Numerička ili string verzija aktivne konfiguracije za pomoć pri otkrivanju migracija ili promjena formata."
+ },
+ "audio": {
+ "label": "Audio događaji",
+ "enabled": {
+ "label": "Omogući detekciju zvuka",
+ "description": "Omogući ili onemogući detekciju zvučnih događaja za sve kamere; mogu se prekrivati po kameri."
+ },
+ "max_not_heard": {
+ "label": "Vrijeme trajanja do kraja",
+ "description": "Količina sekundi bez konfiguriranog tipa zvuka prije nego što se audio događaj završi."
+ },
+ "min_volume": {
+ "label": "Minimalna zapremina",
+ "description": "Minimalni prag RMS zapremine potreban za pokretanje detekcije zvuka; niže vrijednosti povećavaju osjetljivost (npr. 200 visoko, 500 srednje, 1000 nisko)."
+ },
+ "listen": {
+ "label": "Tipovi slušanja",
+ "description": "Popis tipova audio događaja za detekciju (npr. zavijanje, požarne zvona, vrisak, govorenje, vikanje)."
+ },
+ "filters": {
+ "label": "Audio filteri",
+ "description": "Postavke filtera po tipu zvuka kao što su pragovi pouzdanosti za smanjenje lažnih pozitiva."
+ },
+ "enabled_in_config": {
+ "label": "Originalno stanje zvuka",
+ "description": "Indikuje je li detekcija zvuka izvorno omogućena u statičkoj konfiguracijskoj datoteci."
+ },
+ "num_threads": {
+ "label": "Dretve detekcije",
+ "description": "Broj dretvi za korištenje za obradu detekcije zvuka."
+ },
+ "description": "Postavke za detekciju događaja na osnovu zvuka za sve kamere; mogu se prekrivati po kameri."
+ },
+ "audio_transcription": {
+ "label": "Transkripcija zvuka",
+ "description": "Postavke za transkripciju živog i govornog zvuka korištenih za događaje i žive podnaslove.",
+ "live_enabled": {
+ "label": "Uživo transkripcija",
+ "description": "Omogući streaming uživo transkripcije za audio dok se prima."
+ },
+ "enabled": {
+ "label": "Omogući transkripciju zvuka",
+ "description": "Omogući ili onemogući automatsku transkripciju zvuka za sve kamere; može se prekrimiti po kamere."
+ },
+ "language": {
+ "label": "Jezik za transkripciju",
+ "description": "Kod jezika korišten za transkripciju/prevod (npr. 'en' za engleski). Pogledajte https://whisper-api.com/docs/languages/ za podržane kodove jezika."
+ },
+ "device": {
+ "label": "Uređaj za transkripciju",
+ "description": "Ključ uređaja (CPU/GPU) za izvršavanje modela transkripcije. Trenutno se podržavaju samo NVIDIA CUDA GPU-ovi za transkripciju."
+ },
+ "model_size": {
+ "label": "Veličina modela",
+ "description": "Veličina modela za korištenje za offline transkripciju zvučnih događaja."
+ }
+ },
+ "birdseye": {
+ "label": "Birdseye",
+ "description": "Postavke za sastavni prikaz Birdseye koji kombinuje više snimke kamere u jedinstveni raspored.",
+ "enabled": {
+ "label": "Omogući Birdseye",
+ "description": "Omogući ili onemogući funkciju prikaza Birdseye."
+ },
+ "mode": {
+ "label": "Način praćenja",
+ "description": "Način uključivanja kamera u Birdseye: 'objekti', 'kretanje' ili 'kontinuirano'."
+ },
+ "order": {
+ "label": "Pozicija",
+ "description": "Numerička pozicija koja kontroliše redoslijed kamera u rasporedu Birdseye."
+ },
+ "restream": {
+ "label": "Ponovno prenos RTSP",
+ "description": "Ponovno prenos izlaza Birdseye kao RTSP tok; uključivanje ovoga će održavati Birdseye u neprekidnom radu."
+ },
+ "width": {
+ "label": "Širina",
+ "description": "Širina izlaza (piksela) sastavljenog okvira Birdseye."
+ },
+ "height": {
+ "label": "Visina",
+ "description": "Visina izlaza (piksela) sastavljenog okvira Birdseye."
+ },
+ "quality": {
+ "label": "Kvalitet kodiranja",
+ "description": "Kvalitet kodiranja za Birdseye mpeg1 tok (1 najviši kvalitet, 31 najniži)."
+ },
+ "inactivity_threshold": {
+ "label": "Prag neaktivnosti",
+ "description": "Sekunde neaktivnosti nakon kojih će kamera prestati da se prikazuje u Birdseye."
+ },
+ "layout": {
+ "label": "Razmještaj",
+ "description": "Opcije razmještaja za sastavljanje Birdseye.",
+ "scaling_factor": {
+ "label": "Faktor skaliranja",
+ "description": "Faktor skaliranja korišten od strane računala za razmještaj (opseg 1.0 do 5.0)."
+ },
+ "max_cameras": {
+ "label": "Maksimalan broj kamera",
+ "description": "Maksimalan broj kamera koje se mogu prikazati istovremeno u Birdseye; prikazuje najnovije kamere."
+ }
+ },
+ "idle_heartbeat_fps": {
+ "label": "Neaktivno srčanog udaraca FPS",
+ "description": "Broj okvira po sekundi za ponovno slanje posljednjeg sastavljenog Birdseye okvira kada je neaktivno; postavite na 0 za onemogućavanje."
+ }
+ },
+ "detect": {
+ "label": "Detekcija objekata",
+ "description": "Postavke za ulogu detekcije/detekcija koja se koristi za pokretanje detekcije objekata i inicijalizaciju praćenja.",
+ "enabled": {
+ "label": "Omogući detekciju objekata",
+ "description": "Omogući ili onemogući detekciju objekata za sve kamere; može se prekrimiti po kamere."
+ },
+ "height": {
+ "label": "Visina detekcije",
+ "description": "Visina (pikseli) okvira korištenih za detekciju stream-a; ostavite prazno za korištenje originalne rezolucije stream-a."
+ },
+ "width": {
+ "label": "Širina detekcije",
+ "description": "Širina (pikseli) okvira korištenih za detekciju stream-a; ostavite prazno za korištenje originalne rezolucije stream-a."
+ },
+ "fps": {
+ "label": "Detekcija FPS",
+ "description": "Željeni broj okvira po sekundi za pokretanje detekcije; niže vrijednosti smanjuju upotrebu CPU-a (preporučena vrijednost je 5, postavite više - najviše 10 - samo ako praćite vrlo brze objekte)."
+ },
+ "min_initialized": {
+ "label": "Minimalni broj okvira inicijalizacije",
+ "description": "Broj uzastopnih detekcija potreban prije stvaranja praćenog objekta. Povećajte da biste smanjili lažne inicijalizacije. Zadana vrijednost je fps podijeljeno sa 2."
+ },
+ "max_disappeared": {
+ "label": "Maksimalni broj okvira koji su nestali",
+ "description": "Broj okvira bez detekcije prije nego što se praćeni objekt smatra izgubljenim."
+ },
+ "stationary": {
+ "label": "Konfiguracija stacionarnih objekata",
+ "description": "Postavke za detekciju i upravljanje objektima koji ostaju stacionarni tokom određenog vremena.",
+ "interval": {
+ "label": "Stacionarni interval",
+ "description": "Kako često (u snimcima) pokretati provjeru detekcije da biste potvrdili stacionarni objekt."
+ },
+ "threshold": {
+ "label": "Stacionarni prag",
+ "description": "Broj snimaka bez promjene pozicije potreban da bi objekt bio označen kao stacionarni."
+ },
+ "max_frames": {
+ "label": "Maksimalni snimci",
+ "description": "Ograničava koliko dugo se stacionarni objekti praćaju prije nego što se odbacuju.",
+ "default": {
+ "label": "Zadani maksimalni snimci",
+ "description": "Zadani maksimalni broj snimaka za praćenje stacionarnog objekta prije prestanka."
+ },
+ "objects": {
+ "label": "Maksimalni snimci po objektu",
+ "description": "Podešavanja po objektu za maksimalni broj snimaka za praćenje stacionarnih objekata."
+ }
+ },
+ "classifier": {
+ "label": "Omogući vizualni klasifikator",
+ "description": "Koristi vizualni klasifikator za detekciju pravozadanih stacionarnih objekata čak i kada se okviri tresu."
+ }
+ },
+ "annotation_offset": {
+ "label": "Pomak oznake",
+ "description": "Milisekunde za pomak detektiranih oznaka kako bi se bolje poravnali vremenski okviri s snimcima; može biti pozitivan ili negativan."
+ }
+ },
+ "face_recognition": {
+ "label": "Prepoznavanje lica",
+ "enabled": {
+ "label": "Omogući prepoznavanje lica",
+ "description": "Omogući ili onemogući prepoznavanje lica za sve kamere; mogu se preklopiti po kameri."
+ },
+ "min_area": {
+ "label": "Minimalna površina lica",
+ "description": "Minimalna površina (pikseli) detektiranog okvira lica potrebna za pokušaj prepoznavanja."
+ },
+ "description": "Postavke za detekciju i prepoznavanje lica za sve kamere; mogu se preklopiti po kameri.",
+ "model_size": {
+ "label": "Veličina modela",
+ "description": "Veličina modela za korištenje za ugradnje lica (small/large); veće može zahtijevati GPU."
+ },
+ "unknown_score": {
+ "label": "Prag neznatnog rezultata",
+ "description": "Prag udaljenosti ispod kojeg se lice smatra potencijalnim odgovarajućim (viši = stroži)."
+ },
+ "detection_threshold": {
+ "label": "Prag detekcije",
+ "description": "Minimalni prag pouzdanosti potreban za razmatranje detekcije lica kao važeće."
+ },
+ "recognition_threshold": {
+ "label": "Prag prepoznavanja",
+ "description": "Prag udaljenosti ugradnje lica za razmatranje dva lica kao odgovarajuća."
+ },
+ "min_faces": {
+ "label": "Minimalan broj lica",
+ "description": "Minimalan broj prepoznavanja lica potreban prije nego što se primijeni prepoznati podnaziv za osobu."
+ },
+ "save_attempts": {
+ "label": "Pokušaji sačuvanja",
+ "description": "Broj pokušaja prepoznavanja lica koje se treba sačuvati za korisnički sučelje najnovijih prepoznavanja."
+ },
+ "blur_confidence_filter": {
+ "label": "Filter pouzdanosti za zamagljenost",
+ "description": "Prilagodite ocjene pouzdanosti na temelju zamagljenosti slike kako biste smanjili lažne pozitive za loše kvalitete lica."
+ },
+ "device": {
+ "label": "Uređaj",
+ "description": "Ovo je prekršaj, da biste ciljali specifičan uređaj. Pogledajte https://onnxruntime.ai/docs/execution-providers/ za više informacija"
+ }
+ },
+ "ffmpeg": {
+ "label": "FFmpeg",
+ "description": "Postavke FFmpeg uključuju putanju binarne datoteke, argumente, opcije hwaccel i izlazne argumente po ulozi.",
+ "path": {
+ "label": "Putanja do FFmpeg binarne datoteke",
+ "description": "Putanja do FFmpeg binarne datoteke ili verzija alias (\"5.0\" ili \"7.0\")."
+ },
+ "global_args": {
+ "label": "Globalni argumenti FFmpeg-a",
+ "description": "Globalni argumenti prebačeni na procese FFmpeg."
+ },
+ "hwaccel_args": {
+ "label": "Argumenti za ubrzanje hardvera",
+ "description": "Argumenti za ubrzanje hardvera za FFmpeg. Preporučuju se predložci specifični za dobavljača."
+ },
+ "input_args": {
+ "label": "Unos argumenata",
+ "description": "Ulazni argumenti primjenjeni na ulazne snimke FFmpeg."
+ },
+ "output_args": {
+ "label": "Izlazni argumenti",
+ "description": "Zadani izlazni argumenti korišteni za različite uloge FFmpeg-a poput detekcije i snimanja.",
+ "detect": {
+ "label": "Izlazni argumenti za detekciju",
+ "description": "Zadani izlazni argumenti za snimke uloga detekcije."
+ },
+ "record": {
+ "label": "Izlazni argumenti za snimanje",
+ "description": "Zadani izlazni argumenti za snimke uloga snimanja."
+ }
+ },
+ "retry_interval": {
+ "label": "Vrijeme ponovnog pokušaja FFmpeg-a",
+ "description": "Sekunde koje treba čekati prije nego što se pokuša ponovno uspostaviti veza s tokom kamere nakon neuspjeha. Zadano je 10."
+ },
+ "apple_compatibility": {
+ "label": "Kompatibilnost s Apple-om",
+ "description": "Omogući označavanje HEVC za bolju kompatibilnost s igračima Apple-a prilikom snimanja H.265."
+ },
+ "gpu": {
+ "label": "Indeks GPU-a",
+ "description": "Zadani indeks GPU-a korišten za ubrzanje hardvera ako je dostupan."
+ },
+ "inputs": {
+ "label": "Ulazni podaci kamere",
+ "description": "Popis definicija ulaznih tokova (putanje i uloge) za ovu kameru.",
+ "path": {
+ "label": "Putanja ulaza",
+ "description": "URL ili putanja ulaznog toka kamere."
+ },
+ "roles": {
+ "label": "Uloge ulaza",
+ "description": "Uloge za ovaj ulazni tok."
+ },
+ "global_args": {
+ "label": "Globalni argumenti FFmpeg-a",
+ "description": "Globalni argumenti FFmpeg-a za ovaj ulazni tok."
+ },
+ "hwaccel_args": {
+ "label": "Argumenti za ubrzanje hardvera",
+ "description": "Argumenti za ubrzanje hardvera za ovaj ulazni stream."
+ },
+ "input_args": {
+ "label": "Unos argumenata",
+ "description": "Argumeti unosa specifični za ovaj stream."
+ }
+ }
+ },
+ "live": {
+ "label": "Uživo prikaz",
+ "streams": {
+ "label": "Imena živih streamova",
+ "description": "Mapiranje konfiguriranih imena streamova na imena restream/go2rtc korишtena za uživo prikaz."
+ },
+ "height": {
+ "label": "Visina uživo",
+ "description": "Visina (piksela) za prikaz jsmpeg živog streama u Web UI; mora biti <= visina detektiranog streama."
+ },
+ "quality": {
+ "label": "Kvalitet uživo",
+ "description": "Kvalitet kodiranja za jsmpeg stream (1 najviši, 31 najniži)."
+ },
+ "description": "Postavke za kontrolu rezolucije i kvalitete žive struje jsmpeg. Ovo ne utiče na kamere koje koriste go2rtc za živi pregled."
+ },
+ "lpr": {
+ "label": "Prepoznavanje tablice vozila",
+ "description": "Postavke prepoznavanja tablice vozila uključujući pragovi detekcije, formatiranje i poznate tablice.",
+ "enabled": {
+ "label": "Omogući LPR",
+ "description": "Omogući ili onemogući prepoznavanje tablice za sve kamere; može se prekršiti po kamere."
+ },
+ "expire_time": {
+ "label": "Sekunde isteka",
+ "description": "Vrijeme u sekundama nakon kojeg nevidljiva tablica istječe iz praćenja (samo za dedikovane LPR kamere)."
+ },
+ "min_area": {
+ "label": "Minimalna površina tablice",
+ "description": "Minimalna površina tablice (piksela) potrebna za pokušaj prepoznavanja."
+ },
+ "enhancement": {
+ "label": "Nivo poboljšanja",
+ "description": "Nivo poboljšanja (0-10) za primjenu na isječke tablice prije OCR-a; veće vrijednosti ne moraju uvijek poboljšati rezultate, nivoi iznad 5 mogu raditi samo s tablicama u noćnom vremenu i trebaju se koristiti s oprezom."
+ },
+ "model_size": {
+ "label": "Veličina modela",
+ "description": "Veličina modela korištena za detekciju/pretvorbu teksta. Većina korisnika treba koristiti 'small'."
+ },
+ "detection_threshold": {
+ "label": "Prag detekcije",
+ "description": "Prag pouzdanosti detekcije za početak izvršavanja OCR na sumnjivim pločama."
+ },
+ "recognition_threshold": {
+ "label": "Prag prepoznavanja",
+ "description": "Prag pouzdanosti potreban za prepoznati tekst ploče da bi se priložio kao podnaziv."
+ },
+ "min_plate_length": {
+ "label": "Minimalna dužina ploče",
+ "description": "Minimalan broj znakova koje prepoznata ploča mora sadržavati da bi se smatrala važećom."
+ },
+ "format": {
+ "label": "Regex formata ploče",
+ "description": "Nepovlačen regex za provjeru prepoznatih nizova ploča protiv očekivanog formata."
+ },
+ "match_distance": {
+ "label": "Razlika u odgovaranju",
+ "description": "Broj nepravilnih znakova dopuštenih pri uspoređivanju detektiranih ploča s poznatim pločama."
+ },
+ "known_plates": {
+ "label": "Poznate ploče",
+ "description": "Popis ploča ili regexa za posebno praćenje ili upozorenje."
+ },
+ "debug_save_plates": {
+ "label": "Sačuvaj tablice za debagovanje",
+ "description": "Sačuvaj slike izrezaka tablica za debagovanje performansi LPR."
+ },
+ "device": {
+ "label": "Uređaj",
+ "description": "Ovo je preklop za ciljanje specifičnog uređaja. Vidi https://onnxruntime.ai/docs/execution-providers/ za više informacija"
+ },
+ "replace_rules": {
+ "label": "Pravila zamjene",
+ "description": "Pravila zamjene regex korишtena za normalizaciju detektiranih stringova ploča prije uspoređivanja.",
+ "pattern": {
+ "label": "Regex uzorak"
+ },
+ "replacement": {
+ "label": "Zamjenski string"
+ }
+ }
+ },
+ "motion": {
+ "label": "Detekcija pokreta",
+ "enabled": {
+ "label": "Omogući detekciju pokreta",
+ "description": "Omogući ili onemogući detekciju pokreta za sve kamere; može se prekrimiti po kamere."
+ },
+ "threshold": {
+ "label": "Prag pokreta",
+ "description": "Prag razlike piksela korišten za detektor pokreta; veće vrijednosti smanjuju osjetljivost (opseg 1-255)."
+ },
+ "lightning_threshold": {
+ "label": "Prag munje",
+ "description": "Prag za detekciju i zanemarivanje kratkih iskri svjetlosti (niže vrijednosti povećavaju osjetljivost, vrijednosti između 0.3 i 1.0). Ovo ne spriječava detekciju pokreta u potpunosti; jednostavno zaustavlja detektor da analizira dodatne okvire nakon što se prag premaši. Snimci temeljeni na pokretima i dalje se stvaraju tijekom ovih događaja."
+ },
+ "skip_motion_threshold": {
+ "label": "Preskoči prag pokreta",
+ "description": "Ako se postavi na vrijednost između 0.0 i 1.0, i ako se više od ovog udjela slike promijeni u jednom okviru, detektor neće vratiti kutije pokreta i odmah će se ponovno kalibrirati. Ovo može uštedjeti CPU i smanjiti lažne pozitive tijekom munje, oluje itd., ali može propustiti stvarne događaje kao što je automatsko praćenje objekta PTZ kamerom. Tržište je između izgube nekoliko megabajta snimaka i pregleda nekoliko kratkih zapisnika. Ostavite nepostavljeno (Nijedno) za onemogućavanje ove funkcije."
+ },
+ "improve_contrast": {
+ "label": "Poboljšaj kontrast",
+ "description": "Primijeni poboljšanje kontrasta na okvire prije analize pokreta kako bi pomoću detekcije."
+ },
+ "contour_area": {
+ "label": "Površina kontura",
+ "description": "Minimalna površina kontura u pikselima potrebna za brojanje kontura pokreta."
+ },
+ "delta_alpha": {
+ "label": "Delta alfa",
+ "description": "Faktor alfa spajanja korišten za razliku okvira za izračun pokreta."
+ },
+ "frame_alpha": {
+ "label": "Alfa okvira",
+ "description": "Vrijednost alfa korištena prilikom spajanja okvira za predobradbu pokreta."
+ },
+ "frame_height": {
+ "label": "Visina okvira",
+ "description": "Visina u pikselima na koju se skaliraju okviri prilikom izračuna pokreta."
+ },
+ "mask": {
+ "label": "Koordinate maska",
+ "description": "Uredno x,y koordinate koje definiraju poligon maska pokreta za uključivanje/isključivanje područja."
+ },
+ "mqtt_off_delay": {
+ "label": "MQTT zakasnjenje isključivanja",
+ "description": "Sekunde koje se čekaju nakon posljednjeg pokreta prije objave MQTT 'isključeno' stanje."
+ },
+ "enabled_in_config": {
+ "label": "Originalno stanje pokreta",
+ "description": "Indikira je li detekcija pokreta bila omogućena u originalnoj statičkoj konfiguraciji."
+ },
+ "raw_mask": {
+ "label": "Ručna maska"
+ },
+ "description": "Zadane postavke detekcije pokreta primjenjene na kamere osim ako se prekrivaju po kamere."
+ },
+ "objects": {
+ "label": "Objekti",
+ "description": "Zadani parametri praćenja objekata uključujući koje oznake praćenja i filtre po objektu.",
+ "track": {
+ "label": "Objekti za praćenje",
+ "description": "Popis oznaka objekata za praćenje za sve kamere; može se prekrimiti po kamere."
+ },
+ "filters": {
+ "label": "Filtar objekata",
+ "description": "Filtar primijenjen na detektirane objekte kako bi se smanjila broj lažnih pozitiva (površina, omjer, pouzdanost).",
+ "min_area": {
+ "label": "Minimalna površina objekta",
+ "description": "Minimalna površina okvira (pikseli ili postotak) potrebna za ovaj tip objekta. Može biti pikseli (cijeli broj) ili postotak (float između 0.000001 i 0.99)."
+ },
+ "max_area": {
+ "label": "Maksimalna površina objekta",
+ "description": "Maksimalna površina okvira (pikseli ili postotak) dozvoljena za ovaj tip objekta. Može biti pikseli (cijeli broj) ili postotak (float između 0.000001 i 0.99)."
+ },
+ "min_ratio": {
+ "label": "Minimalni omjer visine/širine",
+ "description": "Minimalni omjer širine/visine potreban da bi okvir bio prihvaćen."
+ },
+ "max_ratio": {
+ "label": "Maksimalni omjer visine/širine",
+ "description": "Maksimalni omjer širine/visine dozvoljen da bi okvir bio prihvaćen."
+ },
+ "threshold": {
+ "label": "Prag pouzdanosti",
+ "description": "Prosjek pragova pouzdanosti detekcije potreban da bi objekt bio smatravan pravim pozitivom."
+ },
+ "min_score": {
+ "label": "Minimalna pouzdanost",
+ "description": "Minimalna pouzdanost detekcije po okviru potrebna da bi objekt bio brojan."
+ },
+ "mask": {
+ "label": "Maska filtriranja",
+ "description": "Koordinate poligona koje definiraju područje na kojem se ovaj filter primjenjuje unutar okvira."
+ },
+ "raw_mask": {
+ "label": "Ručna maska"
+ }
+ },
+ "mask": {
+ "label": "Maska objekta",
+ "description": "Poligonalna maska korištena za spriječavanje detekcije objekta u određenim područjima."
+ },
+ "raw_mask": {
+ "label": "Ručna maska"
+ },
+ "genai": {
+ "label": "Konfiguracija GenAI objekta",
+ "description": "Opcije GenAI za opisivanje praćenih objekata i slanje okvira za generisanje.",
+ "enabled": {
+ "label": "Omogući GenAI",
+ "description": "Omogući generisanje opisa za praćene objekte po zadanim postavkama."
+ },
+ "use_snapshot": {
+ "label": "Koristi snimke",
+ "description": "Koristi snimke objekata umjesto miniaturnih slika za generisanje opisa GenAI."
+ },
+ "prompt": {
+ "label": "Naslovni prompt",
+ "description": "Zadani šablon upita korišten za generisanje opisa pomoću GenAI."
+ },
+ "object_prompts": {
+ "label": "Prompti za objekte",
+ "description": "Prompti po objektu za prilagođavanje izlaza GenAI za specifične oznake."
+ },
+ "objects": {
+ "label": "GenAI objekti",
+ "description": "Popis oznaka objekata koje se po defaultu šalju GenAI."
+ },
+ "required_zones": {
+ "label": "Potrebne zone",
+ "description": "Zone koje moraju biti unesene za objekte da bi se kvalifikovali za generisanje opisa GenAI."
+ },
+ "debug_save_thumbnails": {
+ "label": "Sačuvajte miniaturne slike",
+ "description": "Sačuvaj miniaturne slike koje se šalju GenAI za ispravljanje i pregled."
+ },
+ "send_triggers": {
+ "label": "GenAI izazivači",
+ "description": "Definiše kada bi se trebale slati okvir za GenAI (na kraju, nakon ažuriranja, itd.).",
+ "tracked_object_end": {
+ "label": "Pošalji na kraju",
+ "description": "Pošalji zahtjev GenAI kada praćeni objekt završi."
+ },
+ "after_significant_updates": {
+ "label": "Raniji GenAI izazivač",
+ "description": "Pošalji zahtjev GenAI nakon određenog broja značajnih ažuriranja za praćeni objekt."
+ }
+ },
+ "enabled_in_config": {
+ "label": "Originalno stanje GenAI",
+ "description": "Pokazuje je li GenAI bio omogućen u originalnoj statičkoj konfiguraciji."
+ }
+ }
+ },
+ "record": {
+ "label": "Snimanje",
+ "enabled": {
+ "label": "Omogući snimanje",
+ "description": "Omogući ili onemogući snimanje za sve kamere; može se prekrimiti po kamere."
+ },
+ "expire_interval": {
+ "label": "Interval čišćenja snimanja",
+ "description": "Minute između čišćenja koja uklanjaju istekle segmente snimaka."
+ },
+ "continuous": {
+ "label": "Neprekidna retencija",
+ "description": "Broj dana za čuvanje snimaka bez obzira na praćene objekte ili pokret. Postavite na 0 ako želite da čuvate samo snimke upozorenja i detekcije.",
+ "days": {
+ "label": "Dane zadržavanja",
+ "description": "Dana za čuvanje snimaka."
+ }
+ },
+ "motion": {
+ "label": "Retencija pokreta",
+ "description": "Broj dana za čuvanje snimaka izazvanih pokretom bez obzira na praćene objekte. Postavite na 0 ako želite da čuvate samo snimke upozorenja i detekcije.",
+ "days": {
+ "label": "Dane zadržavanja",
+ "description": "Dana za čuvanje snimaka."
+ }
+ },
+ "detections": {
+ "label": "Retencija detekcije",
+ "description": "Postavke retencije snimaka za događaje detekcije uključujući trajanje pre/post snimanja.",
+ "pre_capture": {
+ "label": "Sekundi pre snimanja",
+ "description": "Broj sekundi prije događaja detekcije koje treba uključiti u snimak."
+ },
+ "post_capture": {
+ "label": "Sekunde nakon snimanja",
+ "description": "Broj sekundi nakon događaja detekcije koje se uključuju u snimanje."
+ },
+ "retain": {
+ "label": "Zadržavanje događaja",
+ "description": "Postavke zadržavanja za snimke događaja detekcije.",
+ "days": {
+ "label": "Dane zadržavanja",
+ "description": "Broj dana za koje se zadržavaju snimke događaja detekcije."
+ },
+ "mode": {
+ "label": "Način zadržavanja",
+ "description": "Način zadržavanja: sve (sačuvati sve segmente), pokret (sačuvati segmente s pokretom), ili aktivni_objekti (sačuvati segmente s aktivnim objektima)."
+ }
+ }
+ },
+ "alerts": {
+ "label": "Retencija upozorenja",
+ "description": "Postavke retencije snimaka za događaje upozorenja uključujući trajanje pre/post snimanja.",
+ "pre_capture": {
+ "label": "Sekundi pre snimanja",
+ "description": "Broj sekundi prije događaja detekcije koje treba uključiti u snimak."
+ },
+ "post_capture": {
+ "label": "Sekunde nakon snimanja",
+ "description": "Broj sekundi nakon događaja detekcije koje se uključuju u snimanje."
+ },
+ "retain": {
+ "label": "Zadržavanje događaja",
+ "description": "Postavke zadržavanja za snimke događaja detekcije.",
+ "days": {
+ "label": "Dane zadržavanja",
+ "description": "Broj dana za koje se zadržavaju snimke događaja detekcije."
+ },
+ "mode": {
+ "label": "Način zadržavanja",
+ "description": "Način zadržavanja: sve (sačuvati sve segmente), pokret (sačuvati segmente s pokretom), ili aktivni_objekti (sačuvati segmente s aktivnim objektima)."
+ }
+ }
+ },
+ "export": {
+ "label": "Konfiguracija izvoza",
+ "description": "Postavke koje se koriste prilikom izvoza snimaka kao što su timelapse i ubrzavanje dretve.",
+ "hwaccel_args": {
+ "label": "Argumeti ubrzavanja dretve za izvoz",
+ "description": "Argumeti ubrzavanja dretve za operacije izvoza/prenosa."
+ },
+ "max_concurrent": {
+ "label": "Maksimalan broj istovremenih izvoza",
+ "description": "Maksimalan broj poslova izvoza koji se obrađuju istovremeno."
+ }
+ },
+ "preview": {
+ "label": "Konfiguracija pregleda",
+ "description": "Postavke koje kontrolišu kvalitet pregleda snimanja prikazanih u UI.",
+ "quality": {
+ "label": "Kvaliteta pregleda",
+ "description": "Nivo kvalitete pregleda (vrlo_nizak, nizak, srednji, visok, vrlo_visok)."
+ }
+ },
+ "enabled_in_config": {
+ "label": "Originalno stanje snimanja",
+ "description": "Pokazuje je li snimanje bilo omogućeno u originalnoj statičkoj konfiguraciji."
+ },
+ "description": "Postavke za snimanje i zadržavanje primjenjene na kamere osim ako se prekrivaju po kamere."
+ },
+ "review": {
+ "label": "Pregled",
+ "alerts": {
+ "label": "Konfiguracija upozorenja",
+ "description": "Postavke za koje objekti praćeni generišu upozorenja i kako se upozorenja zadržavaju.",
+ "enabled": {
+ "label": "Omogući upozorenja",
+ "description": "Omogući ili onemogući generisanje upozorenja za sve kamere; može se prekrimiti po kamere."
+ },
+ "labels": {
+ "label": "Oznake upozorenja",
+ "description": "Lista oznaka objekata koje se smatraju upozorenjima (npr. automobil, osoba)."
+ },
+ "required_zones": {
+ "label": "Potrebne zone",
+ "description": "Zone koje objekt mora ući da bi se smatrao upozorenjem; ostavite prazno da omogućite bilo koju zonu."
+ },
+ "enabled_in_config": {
+ "label": "Originalno stanje upozorenja",
+ "description": "Pratiti je li upozorenja izvorno omogućena u statičkoj konfiguraciji."
+ },
+ "cutoff_time": {
+ "label": "Vrijeme prekida upozorenja",
+ "description": "Sekunde koje treba čekati nakon što nema aktivnosti koja uzrokuje upozorenje prije nego se prekine upozorenje."
+ }
+ },
+ "detections": {
+ "label": "Konfiguracija detekcija",
+ "description": "Postavke koje objekti koje se praćenje generišu detekcije (nepozornja) i kako se detekcije čuvaju.",
+ "enabled": {
+ "label": "Omogući detekcije",
+ "description": "Omogući ili onemogući događaje detekcije za sve kamere; može se prekrimiti po kamere."
+ },
+ "labels": {
+ "label": "Oznake detekcije",
+ "description": "Popis oznaka objekata koje kvalifikuju kao događaji detekcije."
+ },
+ "required_zones": {
+ "label": "Potrebne zone",
+ "description": "Zone koje objekt mora ući da bi se smatrao detekcijom; ostavite prazno da omogućite bilo koju zonu."
+ },
+ "cutoff_time": {
+ "label": "Vrijeme prekida detekcija",
+ "description": "Sekunde koje treba čekati nakon što nema aktivnosti koja uzrokuje detekciju prije nego se prekine detekcija."
+ },
+ "enabled_in_config": {
+ "label": "Originalno stanje detekcija",
+ "description": "Pratiti je li detekcije izvorno omogućene u statičkoj konfiguraciji."
+ }
+ },
+ "genai": {
+ "label": "Konfiguracija GenAI",
+ "description": "Kontrolira korištenje generativne AI za proizvodnju opisa i sažetaka stavki za pregled.",
+ "enabled": {
+ "label": "Omogući opise GenAI",
+ "description": "Omogući ili onemogući opise i sažetke generirane GenAI za stavke za pregled."
+ },
+ "alerts": {
+ "label": "Omogući GenAI za upozorenja",
+ "description": "Koristi GenAI za generiranje opisa stavki upozorenja."
+ },
+ "detections": {
+ "label": "Omogući GenAI za detekcije",
+ "description": "Koristite GenAI za generiranje opisa predmeta detekcije."
+ },
+ "image_source": {
+ "label": "Pregledajte izvor slike",
+ "description": "Izvor slika poslatih GenAIJ-u ('preview' ili 'recordings'); 'recordings' koristi kvalitetnije okvire, ali više tokena."
+ },
+ "additional_concerns": {
+ "label": "Dodatne brige",
+ "description": "Popis dodatnih briga ili napomena koje GenAI treba uzeti u obzir prilikom procjene aktivnosti na ovoj kameri."
+ },
+ "debug_save_thumbnails": {
+ "label": "Sačuvajte miniaturne slike",
+ "description": "Sačuvajte miniaturne slike koje se šalju GenAI provajderu za ispravljanje grešaka i pregled."
+ },
+ "enabled_in_config": {
+ "label": "Originalno stanje GenAI",
+ "description": "Pratiti je li pregled GenAI izvorno omogućen u statičkoj konfiguraciji."
+ },
+ "preferred_language": {
+ "label": "Preferirani jezik",
+ "description": "Preferirani jezik za zahtijevanje od GenAI provajdera za generirane odgovore."
+ },
+ "activity_context_prompt": {
+ "label": "Prompt konteksta aktivnosti",
+ "description": "Prilagođeni prompt koji opisuje što je i što nije sumnjivo ponašanje kako bi pružio kontekst za sažetke GenAI."
+ }
+ },
+ "description": "Postavke koje kontrolišu upozorenja, detekcije i GenAI pregledne sažetke korišteni od strane UI i skladišta."
+ },
+ "semantic_search": {
+ "label": "Semantička pretraga",
+ "triggers": {
+ "label": "Pokretači",
+ "description": "Akcije i kriteriji za usklađivanje za pokretače semantičke pretrage specifične za kameru.",
+ "friendly_name": {
+ "label": "Prijateljsko ime",
+ "description": "Nepovlačno prijateljsko ime prikazano u korisničkom sučelju za ovaj pokretač."
+ },
+ "enabled": {
+ "label": "Omogući ovaj pokretač",
+ "description": "Omogući ili onemogući ovaj pokretač semantičke pretrage."
+ },
+ "type": {
+ "label": "Tip pokretača",
+ "description": "Tip pokretača: 'thumbnail' (uspoređivanje slikom) ili 'description' (uspoređivanje teksta)."
+ },
+ "data": {
+ "label": "Sadržaj pokretača",
+ "description": "Tekstualni izraz ili ID miniaturne slike za uspoređivanje s praćenim objektima."
+ },
+ "threshold": {
+ "label": "Prag aktivacije",
+ "description": "Minimalna ocjena sličnosti (0-1) potrebna za aktivaciju ovog izazivača."
+ },
+ "actions": {
+ "label": "Akcije izazivača",
+ "description": "Popis akcija koje se izvršavaju kada izazivač odgovara (obavijest, pod_naziv, atribute)."
+ }
+ },
+ "description": "Postavke za semantičku pretragu koja građi i upita objektne ugradnje da bi pronašla slične stavke.",
+ "enabled": {
+ "label": "Omogući semantičku pretragu",
+ "description": "Omogući ili onemogući funkciju semantičke pretrage."
+ },
+ "reindex": {
+ "label": "Ponovno indeksiranje pri pokretanju",
+ "description": "Pokrenite puno ponovno indeksiranje povijesnih praćenih objekata u bazu ugradnji."
+ },
+ "model": {
+ "label": "Ime modela za semantičku pretragu ili dobavljača GenAI",
+ "description": "Model ugradnje koji se koristi za semantičku pretragu (npr. 'jinav1'), ili ime dobavljača GenAI s ulogom ugradnje."
+ },
+ "model_size": {
+ "label": "Veličina modela",
+ "description": "Izaberite veličinu modela; 'small' radi na CPU i 'large' obično zahtijeva GPU."
+ },
+ "device": {
+ "label": "Uređaj",
+ "description": "Ovo je preklop za ciljanje specifičnog uređaja. Vidi https://onnxruntime.ai/docs/execution-providers/ za više informacija"
+ }
+ },
+ "snapshots": {
+ "label": "Snimci",
+ "enabled": {
+ "label": "Omogući snimke",
+ "description": "Omogući ili onemogući sačuvanje snimaka za sve kamere; može se prekrimiti po kamere."
+ },
+ "timestamp": {
+ "label": "Preklapanje vremenske oznake",
+ "description": "Preklopiti vremensku oznaku na snimke iz API-ja."
+ },
+ "bounding_box": {
+ "label": "Preklapanje okvira",
+ "description": "Crtanje okvira za praćene objekte na snimke iz API-ja."
+ },
+ "crop": {
+ "label": "Izrezivanje snimke",
+ "description": "Izrezivanje snimki iz API-ja do okvira detektiranog objekta."
+ },
+ "required_zones": {
+ "label": "Potrebne zone",
+ "description": "Zone koje objekt mora ući da bi snimka bila sačuvana."
+ },
+ "height": {
+ "label": "Visina snimke",
+ "description": "Visina (pikseli) za promjenu veličine snimki iz API-ja; ostavite prazno da biste sačuvali originalnu veličinu."
+ },
+ "retain": {
+ "label": "Zadržavanje snimki",
+ "description": "Postavke zadržavanja snimki uključujući zadane dane i prekriženja po objektu.",
+ "default": {
+ "label": "Zadano zadržavanje",
+ "description": "Zadani broj dana za zadržavanje snimki."
+ },
+ "mode": {
+ "label": "Način zadržavanja",
+ "description": "Način zadržavanja: sve (sačuvati sve segmente), pokret (sačuvati segmente s pokretom), ili aktivni_objekti (sačuvati segmente s aktivnim objektima)."
+ },
+ "objects": {
+ "label": "Zadržavanje objekata",
+ "description": "Prekriženja po objektu za dane zadržavanja snimki."
+ }
+ },
+ "quality": {
+ "label": "Kvaliteta snimka",
+ "description": "Kvaliteta kodiranja za sačuvane snimke (0-100)."
+ },
+ "description": "Postavke za API generisane snimke praćenih objekata za sve kamere; može se prekrimiti po kamere."
+ },
+ "timestamp_style": {
+ "label": "Stil vremenske oznake",
+ "position": {
+ "label": "Pozicija vremenske oznake",
+ "description": "Pozicija vremenske oznake na slici (tl/tr/bl/br)."
+ },
+ "format": {
+ "label": "Format vremenske oznake",
+ "description": "String formata datuma i vremena korišten za vremenske oznake (Python format koda za datum i vrijeme)."
+ },
+ "color": {
+ "label": "Boja vremenske oznake",
+ "description": "RGB vrijednosti boja za tekst vremenske oznake (sve vrijednosti 0-255).",
+ "red": {
+ "label": "Crvena",
+ "description": "Crveni komponent (0-255) za boju vremenske oznake."
+ },
+ "green": {
+ "label": "Zelena",
+ "description": "Zeleni komponent (0-255) za boju vremenske oznake."
+ },
+ "blue": {
+ "label": "Plava",
+ "description": "Plavi komponent (0-255) za boju vremenske oznake."
+ }
+ },
+ "thickness": {
+ "label": "Debljina vremenske oznake",
+ "description": "Debljina linije teksta vremenske oznake."
+ },
+ "effect": {
+ "label": "Efekt vremenske oznake",
+ "description": "Vizualni efekt za tekst vremenske oznake (none, solid, shadow)."
+ },
+ "description": "Opcije stilizacije vremenskih oznaka u toku prikaza primjenjene na debug prikaz i snimke."
+ },
+ "mqtt": {
+ "label": "MQTT",
+ "description": "Postavke za povezivanje i objavljivanje telemetrije, snimaka i detalja događaja na MQTT brokera.",
+ "enabled": {
+ "label": "Omogući MQTT",
+ "description": "Omogući ili onemogući integraciju MQTT za stanje, događaje i snimke."
+ },
+ "host": {
+ "label": "Gospodar MQTT",
+ "description": "Ime domene ili IP adresa MQTT brokera."
+ },
+ "port": {
+ "label": "Port MQTT",
+ "description": "Port MQTT brokera (obično 1883 za običan MQTT)."
+ },
+ "topic_prefix": {
+ "label": "Predfiks teme",
+ "description": "Predložak teme MQTT za sve teme Frigate; mora biti jedinstven ako pokrećete više instanci."
+ },
+ "client_id": {
+ "label": "ID klijenta",
+ "description": "Identifikator klijenta korišten pri povezivanju s MQTT brokerom; trebao bi biti jedinstven po instanci."
+ },
+ "stats_interval": {
+ "label": "Interval statistika",
+ "description": "Interval u sekundama za objavljivanje sustavnih i kamera statistika na MQTT."
+ },
+ "user": {
+ "label": "Korisničko ime MQTT",
+ "description": "Nepovlačno korisničko ime MQTT; može se pružiti putem varijabli okoline ili vjerodajnica."
+ },
+ "password": {
+ "label": "Lozinka MQTT",
+ "description": "Nepovlačna lozinka MQTT; može se pružiti putem varijabli okoline ili vjerodajnica."
+ },
+ "tls_ca_certs": {
+ "label": "TLS CA sertifikati",
+ "description": "Putanja do sertifikata CA za TLS povezivanje s brokerom (za samopotpisane sertifikate)."
+ },
+ "tls_client_cert": {
+ "label": "Klijent sertifikat",
+ "description": "Putanja do sertifikata klijenta za TLS međusobnu autentifikaciju; ne postavljajte korisničko ime/lozinku kada koristite sertifikate klijenta."
+ },
+ "tls_client_key": {
+ "label": "Klijent ključ",
+ "description": "Putanja do privatnog ključa za klijent sertifikat."
+ },
+ "tls_insecure": {
+ "label": "TLS nebezbedan",
+ "description": "Dozvoli nebezbedne TLS povezivanja preskačući provjeru imena domene (nije preporučeno)."
+ },
+ "qos": {
+ "label": "MQTT QoS",
+ "description": "Nivo kvaliteta usluge za MQTT objave/pretplate (0, 1 ili 2)."
+ }
+ },
+ "notifications": {
+ "label": "Obavještenja",
+ "enabled": {
+ "label": "Omogući obavijesti",
+ "description": "Omogući ili onemogući obavijesti za sve kamere; mogu se prekrivati po kamere."
+ },
+ "email": {
+ "label": "E-mail za obavijesti",
+ "description": "Adresa e-maila koja se koristi za obavijesti putem push-a ili je potrebna određenim dobavljačima obavijesti."
+ },
+ "cooldown": {
+ "label": "Period hlađenja",
+ "description": "Period hlađenja (sekunde) između obavijesti kako bi se izbjeglo spaming primateljima."
+ },
+ "enabled_in_config": {
+ "label": "Originalno stanje obavijesti",
+ "description": "Pokazuje je li obavijesti bile omogućene u originalnoj statičkoj konfiguraciji."
+ },
+ "description": "Postavke za omogućavanje i kontrolu obavijesti za sve kamere; mogu se prekrivati po kamere."
+ },
+ "onvif": {
+ "label": "ONVIF",
+ "description": "Postavke povezivanja preko ONVIF i automatskog praćenja PTZ za ovu kameru.",
+ "host": {
+ "label": "Gost ONVIF",
+ "description": "Gost (i opcionalni shema) za uslugu ONVIF za ovu kameru."
+ },
+ "port": {
+ "label": "Port ONVIF",
+ "description": "Broj porta za uslugu ONVIF."
+ },
+ "user": {
+ "label": "Korisničko ime za ONVIF",
+ "description": "Korisničko ime za autentifikaciju ONVIF; neki uređaji zahtijevaju korisnika admin za ONVIF."
+ },
+ "password": {
+ "label": "Lozinka za ONVIF",
+ "description": "Lozinka za autentifikaciju ONVIF."
+ },
+ "tls_insecure": {
+ "label": "Onemogući provjeru TLS",
+ "description": "Preskoči provjeru TLS i onemogući digest autentifikaciju za ONVIF (nebezbedno; koristiti samo u sigurnim mrežama)."
+ },
+ "profile": {
+ "label": "ONVIF profil",
+ "description": "Specifičan ONVIF medij profil za korištenje za kontrolu PTZ, prilagođen tokenom ili imenom. Ako nije postavljen, prvi profil s važećom konfiguracijom PTZ automatski se odabire."
+ },
+ "autotracking": {
+ "label": "Autotračenje",
+ "description": "Automatski praćenje pokretanja objekata i držanje ih u sredini okvira korištenjem pokreta kamere PTZ.",
+ "enabled": {
+ "label": "Omogući automatsko praćenje",
+ "description": "Omogući ili onemogući automatsko praćenje kamere PTZ detektiranih objekata."
+ },
+ "calibrate_on_startup": {
+ "label": "Kalibriraj na početku",
+ "description": "Mjeri brzine motora PTZ pri pokretanju kako bi poboljšao preciznost praćenja. Frigate će ažurirati konfiguraciju s težinama pokreta nakon kalibracije."
+ },
+ "zooming": {
+ "label": "Režim zumiranja",
+ "description": "Kontrola ponašanja zumiranja: onemogućeno (samo pan/tilt), apsolutno (najkompatibilnije) ili relativno (konkurentno pan/tilt/zum)."
+ },
+ "zoom_factor": {
+ "label": "Faktor zumiranja",
+ "description": "Kontrola razine zumiranja na praćenim objektima. Niže vrijednosti drže više scene u pogledu; više vrijednosti zumiraju bliže, ali mogu izgubiti praćenje. Vrijednosti između 0.1 i 0.75."
+ },
+ "track": {
+ "label": "Praćeni objekti",
+ "description": "Popis vrsta objekata koji trebaju pokrenuti automatsko praćenje."
+ },
+ "required_zones": {
+ "label": "Potrebne zone",
+ "description": "Objekti moraju ući u jednu od ovih zona prije nego što započne automatsko praćenje."
+ },
+ "return_preset": {
+ "label": "Povratak na predpostavku",
+ "description": "Ime predpostavke konfigurirano u firmware kamere za povratak nakon završetka praćenja."
+ },
+ "timeout": {
+ "label": "Vrijeme čekanja povratka",
+ "description": "Čekajte ovaj broj sekundi nakon gubitka praćenja prije povratka kamere na predpostavljeno mjesto."
+ },
+ "movement_weights": {
+ "label": "Težine pokreta",
+ "description": "Vrijednosti kalibracije automatski generirane kroz kalibraciju kamere. Ne mijenjajte ručno."
+ },
+ "enabled_in_config": {
+ "label": "Originalni stanje autotračenja",
+ "description": "Unutarnje polje za praćenje je li autotračenje bilo omogućeno u konfiguraciji."
+ }
+ },
+ "ignore_time_mismatch": {
+ "label": "Zanemari razliku u vremenu",
+ "description": "Zanemari razlike u sinhronizaciji vremena između kamere i Frigate servera za komunikaciju ONVIF."
+ }
+ },
+ "profiles": {
+ "label": "Profili",
+ "description": "Imenovane definicije profila s prijateljivim imenima. Profili kamera moraju se referirati na imena definirana ovdje.",
+ "friendly_name": {
+ "label": "Prijateljsko ime",
+ "description": "Prikazano ime za ovaj profil prikazano u UI-u."
+ }
+ },
+ "safe_mode": {
+ "label": "Sigurnosni režim",
+ "description": "Kada je omogućeno, pokrenite Frigate u sigurnosnom režimu s smanjenim funkcijama za uklanjanje problema."
+ },
+ "environment_vars": {
+ "label": "Okolinski varijable",
+ "description": "Parovi ključ/vrijednost okolinskih varijabli za postavljanje za proces Frigate u Home Assistant OS. Korisnici koji nisu HAOS moraju koristiti konfiguraciju okolinskih varijabli Docker umjesto toga."
+ },
+ "logger": {
+ "label": "Zapisi",
+ "description": "Kontrolira podrazumijevanu razinu detaljnosti zapisa i prekriženja razina detaljnosti po komponenti.",
+ "default": {
+ "label": "Razina zapisa",
+ "description": "Podrazumijevana globalna razina detaljnosti (debug, info, warning, error)."
+ },
+ "logs": {
+ "label": "Razina zapisa po procesu",
+ "description": "Prekriženja razina detaljnosti po komponenti za povećanje ili smanjenje detaljnosti za određene module."
+ }
+ },
+ "auth": {
+ "label": "Autentifikacija",
+ "description": "Postavke povezane s autentifikacijom i sesijama uključujući opcije kolačića i ograničenja brzine.",
+ "enabled": {
+ "label": "Omogući autentifikaciju",
+ "description": "Omogući nativnu autentifikaciju za korisnički sučelje Frigate."
+ },
+ "reset_admin_password": {
+ "label": "Ponovno postavljanje lozinke administratora",
+ "description": "Ako je tačno, ponovno postavite lozinku korisnika administratora pri pokretanju i ispišite novu lozinku u zapisima."
+ },
+ "cookie_name": {
+ "label": "Ime kolačića JWT",
+ "description": "Ime kolačića koji se koristi za pohranjivanje JWT tokena za nativnu autentifikaciju."
+ },
+ "cookie_secure": {
+ "label": "Sigurnosni flag kolačića",
+ "description": "Postavite sigurnosni flag na kolačić autentifikacije; trebalo bi biti tačno kada se koristi TLS."
+ },
+ "session_length": {
+ "label": "Trajanje sesije",
+ "description": "Trajanje sesije u sekundama za sesije temeljene na JWT."
+ },
+ "refresh_time": {
+ "label": "Prozor osvežavanja sesije",
+ "description": "Kada se sesija nalazi unutar ovih sekundi do isteka, ponovo je ažurirati na punu dužinu."
+ },
+ "failed_login_rate_limit": {
+ "label": "Ograničenja za neuspješne prijave",
+ "description": "Pravila ograničavanja brzine za neuspješne pokušaje prijave kako bi se smanjila napada silom."
+ },
+ "trusted_proxies": {
+ "label": "Povereni proxy-ovi",
+ "description": "Lista IP adresa poverenih proxy-ova korištena prilikom određivanja IP adrese klijenta za ograničavanje brzine."
+ },
+ "hash_iterations": {
+ "label": "Iteracije haširanja",
+ "description": "Broj iteracija PBKDF2-SHA256 koje se koriste za kriptiranje lozinki korisnika."
+ },
+ "roles": {
+ "label": "Mapiranja uloga",
+ "description": "Pridružiti uloge listama kamera. Prazna lista omogućava pristup svim kamerama za ulogu."
+ },
+ "admin_first_time_login": {
+ "label": "Zastavica za prvi put administrator",
+ "description": "Kada je istina, UI može prikazati poveznicu za pomoć na stranici prijave koja obavješćuje korisnike kako se prijaviti nakon ponovnog postavljanja lozinke administratora. "
+ }
+ },
+ "database": {
+ "label": "Baza podataka",
+ "description": "Postavke SQLite baze podataka korištene od strane Frigate za pohranjivanje metapodataka praćenih objekata i metapodataka snimaka.",
+ "path": {
+ "label": "Putanja do baze podataka",
+ "description": "Putanja datotečnog sustava gdje će se datoteka SQLite baze podataka Frigate pohraniti."
+ }
+ },
+ "go2rtc": {
+ "label": "go2rtc",
+ "description": "Postavke integrirane usluge go2rtc ponovnog prenošenja korištene za prenošenje živih streamova i prevodjenje."
+ },
+ "networking": {
+ "label": "Mrežno",
+ "description": "Postavke povezane s mrežom, kao što je omogućavanje IPv6 za Frigate krajeve.",
+ "ipv6": {
+ "label": "Konfiguracija IPv6",
+ "description": "IPv6-specifične postavke za mrežne usluge Frigate.",
+ "enabled": {
+ "label": "Omogući IPv6",
+ "description": "Omogući podršku za IPv6 za usluge Frigate (API i UI) gdje je primjenjivo."
+ }
+ },
+ "listen": {
+ "label": "Konfiguracija slušajućih porta",
+ "description": "Konfiguracija unutarnjih i vanjskih slušajućih porta. Ovo je za napredne korisnike. Za većinu slučajeva preporučuje se promijeniti sekciju porta u svojoj Docker compose datoteci.",
+ "internal": {
+ "label": "Unutarnji port",
+ "description": "Unutarnji slušajući port za Frigate (zadano 5000)."
+ },
+ "external": {
+ "label": "Vanjski port",
+ "description": "Vanjski slušajući port za Frigate (zadano 8971)."
+ }
+ }
+ },
+ "proxy": {
+ "label": "Proxy",
+ "description": "Postavke za integraciju Frigate iza obrnute proxy posrednike koji prenose zaglavlja autentificiranih korisnika.",
+ "header_map": {
+ "label": "Mapiranje zaglavlja",
+ "description": "Mapiraj dolazna zaglavlja proxy-a na polja korisnika i uloge Frigate za autentifikaciju baziranu na proxy-u.",
+ "user": {
+ "label": "Zaglavlje korisnika",
+ "description": "Zaglavlje koje sadrži autentificirano korisničko ime pruženo od strane nadolazećeg proxy-a."
+ },
+ "role": {
+ "label": "Zaglavlje uloge",
+ "description": "Zaglavlje koje sadrži ulogu ili grupe autentificiranog korisnika od strane nadolazećeg proxy-a."
+ },
+ "role_map": {
+ "label": "Mapiranje uloga",
+ "description": "Mapiraj vrijednosti grupe iznad na uloge Frigate (npr. mapiraj grupe administratora na ulogu administratora)."
+ }
+ },
+ "logout_url": {
+ "label": "URL za odjavu",
+ "description": "URL na koji će korisnici biti preusmjereni kada se odjave putem proxy-a."
+ },
+ "auth_secret": {
+ "label": "Tajna proxy",
+ "description": "Nepovlačena tajna provjeravana protiv zaglavlja X-Proxy-Secret za potvrdu pouzdanih proxy-a."
+ },
+ "default_role": {
+ "label": "Zadana uloga",
+ "description": "Zadana uloga dodijeljena korisnicima autentificiranim putem proxy-a kada neka mapiranja uloga ne vrijede (administrator ili pregledač)."
+ },
+ "separator": {
+ "label": "Znak separatora",
+ "description": "Karakter koristen za razdvajanje više vrijednosti navedenih u zaglavju proksi."
+ }
+ },
+ "telemetry": {
+ "label": "Telemetrija",
+ "description": "Opcije sistem telemetrije i statistika uključujući praćenje širine pojasa mreže i GPU.",
+ "network_interfaces": {
+ "label": "Mrežni sučelja",
+ "description": "Popis prefiksa imena mrežnih sučelja za praćenje statistika širine pojasa."
+ },
+ "stats": {
+ "label": "Sistem statistika",
+ "description": "Opcije za omogućavanje/onemogućavanje prikupljanja različitih sistem i GPU statistika.",
+ "amd_gpu_stats": {
+ "label": "AMD GPU statistika",
+ "description": "Omogući prikupljanje AMD GPU statistika ako je prisutan AMD GPU."
+ },
+ "intel_gpu_stats": {
+ "label": "Intel GPU statistika",
+ "description": "Omogući prikupljanje Intel GPU statistika ako je prisutan Intel GPU."
+ },
+ "network_bandwidth": {
+ "label": "Širina pojasa mreže",
+ "description": "Omogući praćenje širine pojasa mreže po procesu za procese kamere ffmpeg i detektore (zahtijeva mogućnosti)."
+ },
+ "intel_gpu_device": {
+ "label": "Intel GPU uređaj",
+ "description": "PCI adresa magistrale ili DRM putanja uređaja (npr. /dev/dri/card1) koja se koristi za vezivanje Intel GPU statistika za određeni uređaj kada je prisutno više njih."
+ }
+ },
+ "version_check": {
+ "label": "Provjera verzije",
+ "description": "Omogući ishodnu provjeru za otkrivanje ako je dostupnija verzija Frigate."
+ }
+ },
+ "tls": {
+ "label": "TLS",
+ "description": "Postavke TLS za web krajnje točke Frigate (port 8971).",
+ "enabled": {
+ "label": "Omogući TLS",
+ "description": "Omogući TLS za web UI i API Frigate na konfiguriranom TLS portu."
+ }
+ },
+ "ui": {
+ "label": "UI",
+ "description": "Postavke korisničkog sučelja poput vremenske zone, oblikovanja vremena/datuma i jedinica.",
+ "timezone": {
+ "label": "Vremenska zona",
+ "description": "Nepovlačena vremenska zona za prikaz kroz UI (podrazumijevano je lokalno vrijeme preglednika ako nije postavljeno)."
+ },
+ "time_format": {
+ "label": "Oblik vremena",
+ "description": "Oblik vremena za korištenje u UI (browser, 12hour, ili 24hour)."
+ },
+ "date_style": {
+ "label": "Oblik datuma",
+ "description": "Oblik datuma za korištenje u UI (full, long, medium, short)."
+ },
+ "time_style": {
+ "label": "Oblik vremena",
+ "description": "Oblik vremena za korištenje u UI (full, long, medium, short)."
+ },
+ "unit_system": {
+ "label": "Sustav jedinica",
+ "description": "Sustav jedinica za prikaz (metric ili imperial) korišten u UI i MQTT."
+ }
+ },
+ "detectors": {
+ "label": "Hardver detektora",
+ "description": "Konfiguracija za detektore objekata (CPU, GPU, ONNX backends) i bilo koje postavke modela specifične za detektor.",
+ "type": {
+ "label": "Tip"
+ },
+ "model": {
+ "label": "Konfiguracija modela specifične za detektor",
+ "description": "Opcije konfiguracije modela specifične za detektor (putanja, veličina ulaza, itd.).",
+ "path": {
+ "label": "Putanja za prilagođeni model detektora objekata",
+ "description": "Putanja do datoteke prilagođenog modela detekcije (ili plus://Kutije za pokret
Crvene kutije će biti prikazane na područjima okvira gdje se trenutno detektuje pokret
" + }, + "regions": { + "title": "Regije", + "desc": "Prikaži kutiju područja interesa poslatog objektu detektora", + "tips": "Kutije regija
Sjajno zelene kutije bit će preklopljene na područjima zanimanja u okviru koji se šalju detektoru objekata.
" + }, + "paths": { + "title": "Putanje", + "desc": "Prikaži značajne točke putanje praćenog objekta", + "tips": "Putanje
Linije i krugovi će pokazati značajne točke koje je praćeni objekt prešao tokom svojeg života.
" + }, + "objectShapeFilterDrawing": { + "title": "Crtanje filtera oblika objekta", + "desc": "Nacrtaj pravokutnik na slici da bi pogledao detalje površine i omjera", + "tips": "Omogući ovu opciju da nacrtate pravokutnik na slici kamere da biste prikazali njegovu površinu i omjer. Ove vrijednosti zatim mogu se koristiti za postavljanje parametara filtera oblika objekta u vašoj konfiguraciji.", + "score": "Rezultat", + "ratio": "Omjer", + "area": "Površina" + } + }, + "timestampPosition": { + "tl": "Gornji lijevo", + "tr": "Gornji desno", + "bl": "Donji lijevo", + "br": "Donji desno" + }, + "users": { + "title": "Korisnici", + "management": { + "title": "Upravljanje korisnicima", + "desc": "Upravljajte računima korisnika ove instance Frigate." + }, + "addUser": "Dodaj korisnika", + "updatePassword": "Ponovno postavi lozinku", + "toast": { + "success": { + "createUser": "Korisnik {{user}} uspješno stvoren", + "deleteUser": "Korisnik {{user}} uspješno obrisan", + "updatePassword": "Lozinka uspješno ažurirana.", + "roleUpdated": "Uloga ažurirana za {{user}}" + }, + "error": { + "setPasswordFailed": "Neuspješno spremanje lozinke: {{errorMessage}}", + "createUserFailed": "Neuspješno stvaranje korisnika: {{errorMessage}}", + "deleteUserFailed": "Neuspješno brisanje korisnika: {{errorMessage}}", + "roleUpdateFailed": "Neuspješno ažuriranje uloge: {{errorMessage}}" + } + }, + "table": { + "username": "Korisničko ime", + "actions": "Akcije", + "role": "Uloga", + "noUsers": "Nema pronađenih korisnika.", + "changeRole": "Promijeni ulogu korisnika", + "password": "Ponovno postavi lozinku", + "deleteUser": "Obriši korisnika" + }, + "dialog": { + "form": { + "user": { + "title": "Korisničko ime", + "desc": "Dozvoljeno su samo slova, brojevi, tačke i donje crte.", + "placeholder": "Unesite korisničko ime" + }, + "password": { + "title": "Lozinka", + "placeholder": "Unesite lozinku", + "show": "Prikaži lozinku", + "hide": "Sakrij lozinku", + "confirm": { + "title": "Potvrdite lozinku", + "placeholder": "Potvrdite lozinku" + }, + "strength": { + "title": "Jakoća lozinke: ", + "weak": "Slaba", + "medium": "Srednja", + "strong": "Jaka", + "veryStrong": "Veoma jaka" + }, + "requirements": { + "title": "Zahtjevi za lozinku:", + "length": "Bar 12 karaktera" + }, + "match": "Lozinke se poklapaju", + "notMatch": "Lozinke se ne poklapaju" + }, + "newPassword": { + "title": "Nova lozinka", + "placeholder": "Unesite novu lozinku", + "confirm": { + "placeholder": "Ponovite novu lozinku" + } + }, + "currentPassword": { + "title": "Trenutna lozinka", + "placeholder": "Unesite svoju trenutnu lozinku" + }, + "usernameIsRequired": "Korisničko ime je obavezno", + "passwordIsRequired": "Lozinka je obavezna" + }, + "createUser": { + "title": "Kreirajte novog korisnika", + "desc": "Dodajte novi korisnički račun i odredite ulogu za pristup područjima sučelja Frigate.", + "usernameOnlyInclude": "Korisničko ime može sadržavati samo slova, brojeve, . ili _", + "confirmPassword": "Molimo potvrdite svoju lozinku" + }, + "deleteUser": { + "title": "Obriši korisnika", + "desc": "Ova akcija ne može se poništiti. Ovo će trajno izbrisati korisnički račun i ukloniti sve povezane podatke.", + "warn": "Sigurni ste da želite izbrisati {{username}}?" + }, + "passwordSetting": { + "cannotBeEmpty": "Lozinka ne može biti prazna", + "doNotMatch": "Lozinke se ne podudaraju", + "currentPasswordRequired": "Trenutna lozinka je obavezna", + "incorrectCurrentPassword": "Trenutna lozinka je netočna", + "passwordVerificationFailed": "Neuspješno provjeravanje lozinke", + "updatePassword": "Ažurirajte lozinku za {{username}}", + "setPassword": "Postavi lozinku", + "desc": "Napravite jaku lozinku za sigurnost ovog računa.", + "multiDeviceWarning": "Bilo koje druge uređaje na kojima ste prijavljeni bit će potrebno ponovno se prijaviti unutar {{refresh_time}}.", + "multiDeviceAdmin": "Takođe možete obavezati sve korisnike da se odmah ponovno autentificiraju rotiranjem vaše tajne JWT." + }, + "changeRole": { + "title": "Promijenite ulogu korisnika", + "select": "Odaberite ulogu", + "desc": "Ažurirajte dozvole za {{username}}", + "roleInfo": { + "intro": "Odaberite odgovarajuću ulogu za ovog korisnika:", + "admin": "Administrator", + "adminDesc": "Pun pristup svim funkcijama.", + "viewer": "Pregledač", + "viewerDesc": "Ograničeno na Uživo tablo, pregled, istraživanje i izvoze.", + "customDesc": "Prilagođena uloga s određenim pristupom kamerama." + } + } + } + }, + "roles": { + "management": { + "title": "Upravljanje ulogama gledatelja", + "desc": "Upravljajte prilagođenim ulogama gledatelja i njihovim dozvolama za pristup kamerama za ovu instancu Frigate." + }, + "addRole": "Dodaj ulogu", + "table": { + "role": "Uloga", + "cameras": "Kamere", + "actions": "Akcije", + "noRoles": "Nisu pronađene prilagođene uloge.", + "editCameras": "Uredi Kamere", + "deleteRole": "Obriši ulogu" + }, + "toast": { + "success": { + "createRole": "Uloga {{role}} uspješno stvorena", + "updateCameras": "Kamere ažurirane za ulogu {{role}}", + "deleteRole": "Uloga {{role}} uspješno obrisana", + "userRolesUpdated_one": "{{count}} korisnik dodeljen ovoj ulogi je ažuriran na 'viewer', koji ima pristup svim kamerama.", + "userRolesUpdated_few": "{{count}} korisnici dodeljeni ovoj ulogi su ažurirani na 'viewer', koji ima pristup svim kamerama.", + "userRolesUpdated_other": "{{count}} korisnici dodeljeni ovoj ulogi su ažurirani na 'viewer', koji ima pristup svim kamerama." + }, + "error": { + "createRoleFailed": "Neuspješno stvaranje uloge: {{errorMessage}}", + "updateCamerasFailed": "Neuspješno ažuriranje kamera: {{errorMessage}}", + "deleteRoleFailed": "Neuspješno brisanje uloge: {{errorMessage}}", + "userUpdateFailed": "Neuspješno ažuriranje uloga korisnika: {{errorMessage}}" + } + }, + "dialog": { + "createRole": { + "title": "Stvori novu ulogu", + "desc": "Dodaj novu ulogu i specifično odredi dozvole za pristup kamerama." + }, + "editCameras": { + "title": "Uredi kamere uloge", + "desc": "Ažuriraj pristup kamerama za ulogu {{role}}." + }, + "deleteRole": { + "title": "Obriši ulogu", + "desc": "Ova akcija ne može biti poništena. Ovo će trajno izbrisati ulogu i dodeliti sve korisnike s ovom ulogom ulogi 'viewer', što će im dati pristup svim kamerama.", + "warn": "Da li ste sigurni da želite izbrisati {{role}}?", + "deleting": "Brisanje..." + }, + "form": { + "role": { + "title": "Ime uloge", + "placeholder": "Unesite ime uloge", + "desc": "Dozvoljeno su samo slova, brojevi, tačke i donje crte.", + "roleIsRequired": "Ime uloge je obavezno", + "roleOnlyInclude": "Ime uloge može sadržavati samo slova, brojeve, . ili _", + "roleExists": "Uloga s ovim imenom već postoji." + }, + "cameras": { + "title": "Kamere", + "desc": "Odaberite kamere kojima ova uloga ima pristup. Potreban je bar jedan pristup.", + "required": "Mora biti odabrana bar jedna kamera." + } + } + } + }, + "notification": { + "title": "Obavještenja", + "notificationSettings": { + "title": "Postavke obavijesti", + "desc": "Frigate može nativno slati obavijesti na vaš uređaj kada radi u pregledaču ili je instalirana kao PWA." + }, + "notificationUnavailable": { + "title": "Obavijesti nedostupne", + "desc": "Web obavijesti zahtijevaju sigurni kontekst (https://…). Ovo je ograničenje pregledača. Pristupite Frigate sigurno da biste koristili obavijesti."
+ },
+ "globalSettings": {
+ "title": "Globalne postavke",
+ "desc": "Privremeno zaustavi obavijesti za određene kamere na svim registrovanim uređajima."
+ },
+ "email": {
+ "title": "E-mail",
+ "placeholder": "npr. example@email.com",
+ "desc": "Potrebna je važeća e-mail adresa i koristit će se za obavijestavanje ako dođe do problema sa uslugom slanja obavijesti."
+ },
+ "cameras": {
+ "title": "Kamere",
+ "noCameras": "Nema dostupnih kamera",
+ "desc": "Odaberite koje kamere omogućiti za obavijesti."
+ },
+ "deviceSpecific": "Postavke specifične za uređaj",
+ "registerDevice": "Registrujte ovaj uređaj",
+ "unregisterDevice": "Deregistrujte ovaj uređaj",
+ "sendTestNotification": "Pošaljite test obavijest",
+ "unsavedRegistrations": "Nečuvane registracije obavijesti",
+ "unsavedChanges": "Nečuvane promjene obavijesti",
+ "active": "Obavijesti aktivne",
+ "suspended": "Obavijesti zaustavljene {{time}}",
+ "suspendTime": {
+ "suspend": "Zaustavi",
+ "5minutes": "Zaustavi za 5 minuta",
+ "10minutes": "Zaustavi za 10 minuta",
+ "30minutes": "Zaustavi za 30 minuta",
+ "1hour": "Zaustavi za 1 sat",
+ "12hours": "Zaustavi za 12 sati",
+ "24hours": "Odložiti za 24 sata",
+ "untilRestart": "Odložiti do ponovnog pokretanja"
+ },
+ "cancelSuspension": "Otkaži odloženje",
+ "toast": {
+ "success": {
+ "registered": "Uspješno registrovan za obaveštenja. Potrebno je ponovno pokrenuti Frigate prije nego što se mogu slati obaveštenja (uključujući test obaveštenje).",
+ "settingSaved": "Postavke obaveštenja su sačuvane."
+ },
+ "error": {
+ "registerFailed": "Neuspješno sačuvana registracija obaveštenja."
+ }
+ }
+ },
+ "frigatePlus": {
+ "title": "Postavke Frigate+",
+ "description": "Frigate+ je usluga pretplate koja pruža pristup dodatnim funkcijama i mogućnostima za vašu instancu Frigate, uključujući mogućnost korištenja prilagođenih modela detekcije objekata treniranih na vašim podacima. Ovdje možete upravljati postavkama modela Frigate+.",
+ "cardTitles": {
+ "api": "API",
+ "currentModel": "Trenutni model",
+ "otherModels": "Drugi modeli",
+ "configuration": "Konfiguracija"
+ },
+ "apiKey": {
+ "title": "Frigate+ API ključ",
+ "validated": "Frigate+ API ključ je detektovan i validiran",
+ "notValidated": "Frigate+ API ključ nije detektovan ili nije validiran",
+ "desc": "Frigate+ API ključ omogućava integraciju sa uslugom Frigate+.",
+ "plusLink": "Pročitajte više o Frigate+"
+ },
+ "snapshotConfig": {
+ "title": "Konfiguracija snimaka",
+ "desc": "Slanje na Frigate+ zahtijeva da su snimci omogućeni u vašoj konfiguraciji.",
+ "cleanCopyWarning": "Neki uređaji imaju isključene snimke",
+ "table": {
+ "camera": "Kamera",
+ "snapshots": "Snimci"
+ }
+ },
+ "modelInfo": {
+ "title": "Informacije o modelu",
+ "modelType": "Tip modela",
+ "trainDate": "Datum treniranja",
+ "baseModel": "Osnovni model",
+ "plusModelType": {
+ "baseModel": "Osnovni model",
+ "userModel": "Podeseno"
+ },
+ "supportedDetectors": "Podržani detektori",
+ "cameras": "Kamere",
+ "loading": "Učitavanje informacija o modelu…",
+ "error": "Neuspješno učitavanje informacija o modelu",
+ "availableModels": "Dostupni modeli",
+ "loadingAvailableModels": "Učitavanje dostupnih modela…",
+ "modelSelect": "Vaši dostupni modeli na Frigate+ mogu se odabrati ovdje. Napomena: samo modeli kompatibilni s vašom trenutnom konfiguracijom detektora mogu se odabrati."
+ },
+ "unsavedChanges": "Nespremljene promjene postavki Frigate+",
+ "restart_required": "Potrebno je ponovno pokretanje (model Frigate+ promijenjen)",
+ "toast": {
+ "success": "Postavke Frigate+ su spremljene. Ponovno pokrenite Frigate da biste primijenili promjene.",
+ "error": "Nije uspješno sačuvana promjena konfiguracije: {{errorMessage}}"
+ }
+ },
+ "detectionModel": {
+ "plusActive": {
+ "title": "Upravljanje modelima Frigate+",
+ "label": "Trenutni izvor modela",
+ "description": "Ova instanca pokreće model Frigate+. Odaberite ili promijenite svoj model u postavkama Frigate+.",
+ "goToFrigatePlus": "Idi na postavke Frigate+",
+ "showModelForm": "Ručno konfigurirajte model"
+ }
+ },
+ "triggers": {
+ "documentTitle": "Pokretači",
+ "semanticSearch": {
+ "title": "Semantička pretraga je onemogućena",
+ "desc": "Semantička pretraga mora biti omogućena da biste koristili izazivače."
+ },
+ "management": {
+ "title": "Pokretači",
+ "desc": "Upravljanje izazivačima za {{camera}}. Korištenjem tipa prikaznog slika, izazivači se mogu aktivirati za slične prikazne slike odabranom praćenom objektu, a tipom opisa za slične opise teksta koji navodite."
+ },
+ "addTrigger": "Dodaj izazivač",
+ "table": {
+ "name": "Ime",
+ "type": "Tip",
+ "content": "Sadržaj",
+ "threshold": "Prag",
+ "actions": "Akcije",
+ "noTriggers": "Nema konfiguriranih izazivača za ovu kameru.",
+ "edit": "Uredi",
+ "deleteTrigger": "Obriši izazivač",
+ "lastTriggered": "Zadnji put izazvan"
+ },
+ "type": {
+ "thumbnail": "Minijatura",
+ "description": "Opis"
+ },
+ "actions": {
+ "notification": "Pošalji obavijest",
+ "sub_label": "Dodaj podnaziv",
+ "attribute": "Dodaj atribut"
+ },
+ "dialog": {
+ "createTrigger": {
+ "title": "Kreiraj izazov",
+ "desc": "Kreiraj izazov za kameru {{camera}}"
+ },
+ "editTrigger": {
+ "title": "Uredi izazov",
+ "desc": "Uredi postavke za izazov na kameri {{camera}}"
+ },
+ "deleteTrigger": {
+ "title": "Obriši izazov",
+ "desc": "Da li ste sigurni da želite obrisati izazov {{triggerName}}? Ova akcija ne može biti poništena."
+ },
+ "form": {
+ "name": {
+ "title": "Ime",
+ "placeholder": "Daj ime ovom izazovu",
+ "description": "Unesite jedinstveno ime ili opis da biste identifikovali ovaj izazov",
+ "error": {
+ "minLength": "Polje mora imati najmanje 2 karaktera.",
+ "invalidCharacters": "Polje može sadržavati samo slova, brojeve, donje crte i crte.",
+ "alreadyExists": "Izazov sa ovim imenom već postoji za ovu kameru."
+ }
+ },
+ "enabled": {
+ "description": "Omogući ili onemogući ovaj izazov"
+ },
+ "type": {
+ "title": "Tip",
+ "placeholder": "Odaberite vrstu izazova",
+ "description": "Izazov kada se detektuje opis sličnog praćenog objekta",
+ "thumbnail": "Izazov kada se detektuje minijaturna slika sličnog praćenog objekta"
+ },
+ "content": {
+ "title": "Sadržaj",
+ "imagePlaceholder": "Odaberite minijaturnu sliku",
+ "textPlaceholder": "Unesite tekstualni sadržaj",
+ "imageDesc": "Prikazivaju se samo najnovije 100 minijaturnih slika. Ako ne možete pronaći željenu minijaturnu sliku, pregledajte ranije objekte u Pretraživanju i postavite izazov iz menija tamo.",
+ "textDesc": "Unesite tekst za izazivanje ove akcije kada se detektuje opis sličnog praćenog objekta.",
+ "error": {
+ "required": "Sadržaj je obavezan."
+ }
+ },
+ "threshold": {
+ "title": "Prag",
+ "desc": "Postavite prag sličnosti za ovaj izazov. Viši prag znači da je potrebno bliže podudaranje da bi se izazov aktivirao.",
+ "error": {
+ "min": "Prag mora biti bar 0",
+ "max": "Prag mora biti najviše 1"
+ }
+ },
+ "actions": {
+ "title": "Akcije",
+ "desc": "Po defaultu, Frigate šalje poruku MQTT za sve izazovnike. Podnošnici dodaju ime izazovnog događaja u oznaku objekta. Atributi su pretraživi metapodaci pohranjeni zasebno u metapodacima praćenih objekata.",
+ "error": {
+ "min": "Mora se odabrati bar jedna akcija."
+ }
+ }
+ }
+ },
+ "wizard": {
+ "title": "Kreiraj izazov",
+ "step1": {
+ "description": "Konfiguriraj osnovne postavke za tvoj izazov."
+ },
+ "step2": {
+ "description": "Postavi sadržaj koji će izazvati ovu akciju."
+ },
+ "step3": {
+ "description": "Konfiguriraj prag i akcije za ovaj izazov."
+ },
+ "steps": {
+ "nameAndType": "Ime i Tip",
+ "configureData": "Konfiguriraj podatke",
+ "thresholdAndActions": "Prag i Akcije"
+ }
+ },
+ "toast": {
+ "success": {
+ "createTrigger": "Izazov {{name}} uspješno kreiran.",
+ "updateTrigger": "Izazov {{name}} uspješno ažuriran.",
+ "deleteTrigger": "Izazov {{name}} uspješno obrisan."
+ },
+ "error": {
+ "createTriggerFailed": "Neuspješno kreiranje izazova: {{errorMessage}}",
+ "updateTriggerFailed": "Neuspješno ažuriranje izazova: {{errorMessage}}",
+ "deleteTriggerFailed": "Neuspješno brisanje izazova: {{errorMessage}}"
+ }
+ }
+ },
+ "maintenance": {
+ "title": "Održavanje",
+ "sync": {
+ "title": "Sinkronizacija medija",
+ "desc": "Frigate će periodično čistiti medije prema regularnom rasporedu u skladu s vašom konfiguracijom retencije. Normalno je da se vidi nekoliko orfaniranih datoteka dok Frigate radi. Koristite ovu funkciju za uklanjanje orfaniranih datoteka medija s diska koje više nisu referencirane u bazi podataka.",
+ "started": "Sinkronizacija započeta.",
+ "alreadyRunning": "Postoji već pokrenuta poslovna jedinica",
+ "error": "Neuspješno pokretanje sinkronizacije",
+ "currentStatus": "Status",
+ "jobId": "ID posla",
+ "startTime": "Vrijeme početka",
+ "endTime": "Vrijeme kraja",
+ "statusLabel": "Status",
+ "results": "Rezultati",
+ "errorLabel": "Greška",
+ "mediaTypes": "Tipovi medija",
+ "allMedia": "Svi mediji",
+ "dryRun": "Sušenje",
+ "dryRunEnabled": "Nijedna datoteka neće biti obrisana",
+ "dryRunDisabled": "Datoteke će biti obrisane",
+ "force": "Silovito",
+ "forceDesc": "Preskočiti prag sigurnosti i završiti sinkronizaciju čak i ako bi više od 50% datoteka bilo obrisano.",
+ "verbose": "Detaljan",
+ "verboseDesc": "Napisati pun popis siročića na disk za pregled.",
+ "running": "Sinkronizacija u toku...",
+ "start": "Pokreni sinkronizaciju",
+ "inProgress": "Sinkronizacija je u toku. Ova stranica je onemogućena.",
+ "status": {
+ "queued": "U redu",
+ "running": "Pokretanje",
+ "completed": "Završeno",
+ "failed": "Neuspešno",
+ "notRunning": "Nije u toku"
+ },
+ "resultsFields": {
+ "filesChecked": "Provjerene datoteke",
+ "orphansFound": "Nađeni siročići",
+ "orphansDeleted": "Obrisani siročići",
+ "aborted": "Prekinuto. Brisanje bi premašilo prag sigurnosti.",
+ "error": "Greška",
+ "totals": "Ukupno"
+ },
+ "event_snapshots": "Snimci praćenih objekata",
+ "event_thumbnails": "Minijature praćenih objekata",
+ "review_thumbnails": "Pregled minijatura",
+ "previews": "Pregledi",
+ "exports": "Izvozi",
+ "recordings": "Snimci"
+ },
+ "regionGrid": {
+ "title": "Mreža regija",
+ "desc": "Mreža regija je optimizacija koja uči gdje se objekti različitih veličina obično pojavljuju u svakoj kamere polju pogleda. Frigate koristi ove podatke da učinkovito postavi regije detekcije. Mreža se automatski gradi tokom vremena iz podataka o praćenim objektima.",
+ "clear": "Očisti rešetku područja",
+ "clearConfirmTitle": "Očisti Rešetku Područja",
+ "clearConfirmDesc": "Očišćavanje rešetke područja nije preporučeno osim ako ste nedavno promijenili veličinu modela detektora ili promijenili fizičku poziciju kamere i imate probleme s praćenjem objekata. Rešetka će se automatski ponovno izgraditi tokom vremena kada se objekti praćuju. Potreban je ponovni pokretanje Frigate-a za primjenu promjena.",
+ "clearSuccess": "Rešetka područja uspješno očišćena",
+ "clearError": "Neuspješno očišćavanje rešetke područja",
+ "restartRequired": "Potreban je ponovni pokretanje za primjenu promjena rešetke područja"
+ }
+ },
+ "configForm": {
+ "global": {
+ "title": "Globalne postavke",
+ "description": "Ove postavke se primjenjuju na sve kamere osim ako nisu prekrivene u postavkama specifičnim za kameru."
+ },
+ "camera": {
+ "title": "Postavke kamere",
+ "description": "Ove postavke se primjenjuju samo na ovu kameru i prekrivaju globalne postavke.",
+ "noCameras": "Nema dostupnih kamera"
+ },
+ "advancedSettingsCount": "Napredne postavke ({{count}})",
+ "advancedCount": "Napredno ({{count}})",
+ "showAdvanced": "Prikaži napredne postavke",
+ "tabs": {
+ "sharedDefaults": "Dijeljene zadane vrijednosti",
+ "system": "Sistem",
+ "integrations": "Integracije"
+ },
+ "additionalProperties": {
+ "keyLabel": "Ključ",
+ "valueLabel": "Vrijednost",
+ "keyPlaceholder": "Novi ključ",
+ "remove": "Ukloni"
+ },
+ "knownPlates": {
+ "namePlaceholder": "npr. Automobil supružnice",
+ "platePlaceholder": "Broj ploče ili regex"
+ },
+ "timezone": {
+ "defaultOption": "Koristi vremensku zonu pregledača"
+ },
+ "roleMap": {
+ "empty": "Nema mapiranja uloga",
+ "roleLabel": "Uloga",
+ "groupsLabel": "Grupe",
+ "addMapping": "Dodaj mapiranje uloga",
+ "remove": "Ukloni"
+ },
+ "ffmpegArgs": {
+ "preset": "Predefinisana postavka",
+ "manual": "Ručni argumenti",
+ "inherit": "Naslijeđuj iz postavke kamere",
+ "none": "Nijedan",
+ "useGlobalSetting": "Naslijeđuj iz globalne postavke",
+ "selectPreset": "Odaberite predpostavljeno",
+ "manualPlaceholder": "Unesite argumente FFmpeg",
+ "presetLabels": {
+ "preset-rpi-64-h264": "Raspberry Pi (H.264)",
+ "preset-rpi-64-h265": "Raspberry Pi (H.265)",
+ "preset-vaapi": "VAAPI (Intel/AMD GPU)",
+ "preset-intel-qsv-h264": "Intel QuickSync (H.264)",
+ "preset-intel-qsv-h265": "Intel QuickSync (H.265)",
+ "preset-nvidia": "NVIDIA GPU",
+ "preset-jetson-h264": "NVIDIA Jetson (H.264)",
+ "preset-jetson-h265": "NVIDIA Jetson (H.265)",
+ "preset-rkmpp": "Rockchip RKMPP",
+ "preset-http-jpeg-generic": "HTTP JPEG (Općenito)",
+ "preset-http-mjpeg-generic": "HTTP MJPEG (Općenito)",
+ "preset-http-reolink": "HTTP - Kamere Reolink",
+ "preset-rtmp-generic": "RTMP (Općenito)",
+ "preset-rtsp-generic": "RTSP (Općenito)",
+ "preset-rtsp-restream": "RTSP - Ponovno preusmjeravanje iz go2rtc",
+ "preset-rtsp-restream-low-latency": "RTSP - Ponovno preusmjeravanje iz go2rtc (Niska kašnjenja)",
+ "preset-rtsp-udp": "RTSP - UDP",
+ "preset-rtsp-blue-iris": "RTSP - Blue Iris",
+ "preset-record-generic": "Snimanje (Općenito, bez zvuka)",
+ "preset-record-generic-audio-copy": "Snimanje (Općenito + Kopiraj zvuk)",
+ "preset-record-generic-audio-aac": "Snimanje (Općenito + Zvuk u AAC)",
+ "preset-record-mjpeg": "Snimanje - Kamere MJPEG",
+ "preset-record-jpeg": "Snimanje - JPEG Kamere",
+ "preset-record-ubiquiti": "Snimanje - Ubiquiti Kamere"
+ }
+ },
+ "cameraInputs": {
+ "itemTitle": "Prijenos {{index}}"
+ },
+ "restartRequiredField": "Potrebno je ponovno pokretanje",
+ "restartRequiredFooter": "Konfiguracija promijenjena - Potrebno je ponovno pokretanje",
+ "sections": {
+ "detect": "Detekcija",
+ "record": "Snimanje",
+ "snapshots": "Snimci",
+ "motion": "Kretanje",
+ "objects": "Objekti",
+ "review": "Pregled",
+ "audio": "Audio",
+ "notifications": "Obavještenja",
+ "live": "Pregled uživo",
+ "timestamp_style": "Vremenske oznake",
+ "mqtt": "MQTT",
+ "database": "Baza podataka",
+ "telemetry": "Telemetrija",
+ "auth": "Autentifikacija",
+ "tls": "TLS",
+ "proxy": "Proxy",
+ "go2rtc": "go2rtc",
+ "ffmpeg": "FFmpeg",
+ "detectors": "Detektori",
+ "model": "Model",
+ "semantic_search": "Semantička pretraga",
+ "genai": "GenAI",
+ "face_recognition": "Prepoznavanje lica",
+ "lpr": "Prepoznavanje tablice vozila",
+ "birdseye": "Birdseye",
+ "masksAndZones": "Maskice / Zone"
+ },
+ "detect": {
+ "title": "Postavke detekcije"
+ },
+ "detectors": {
+ "title": "Postavke detektora",
+ "singleType": "Dozvoljen je samo jedan {{type}} detektor.",
+ "keyRequired": "Ime detektora je obavezno.",
+ "keyDuplicate": "Ime detektora već postoji.",
+ "noSchema": "Nema dostupnih šema detektora.",
+ "none": "Nema konfiguriranih instanci detektora.",
+ "add": "Dodaj detektor",
+ "addCustomKey": "Dodaj prilagođeni ključ"
+ },
+ "record": {
+ "title": "Postavke snimanja"
+ },
+ "snapshots": {
+ "title": "Postavke snimka"
+ },
+ "motion": {
+ "title": "Postavke pokreta"
+ },
+ "objects": {
+ "title": "Postavke objekta"
+ },
+ "audioLabels": {
+ "summary": "Odabrano {{count}} audio oznake",
+ "empty": "Nema dostupnih audio oznaka"
+ },
+ "objectLabels": {
+ "summary": "Odabrano {{count}} tipova objekata",
+ "empty": "Nema dostupnih oznaka objekata"
+ },
+ "reviewLabels": {
+ "summary": "Odabrano {{count}} oznaka",
+ "empty": "Nema dostupnih oznaka"
+ },
+ "filters": {
+ "objectFieldLabel": "{{field}} za {{label}}"
+ },
+ "zoneNames": {
+ "summary": "{{count}} odabrano",
+ "empty": "Nema dostupnih zona"
+ },
+ "inputRoles": {
+ "summary": "Odabrano {{count}} uloga",
+ "empty": "Nema dostupnih uloga",
+ "options": {
+ "detect": "Detektiraj",
+ "record": "Snimi",
+ "audio": "Audio"
+ }
+ },
+ "genaiRoles": {
+ "options": {
+ "embeddings": "Ugrađivanje",
+ "vision": "Vizija",
+ "tools": "Alati"
+ }
+ },
+ "semanticSearchModel": {
+ "placeholder": "Odaberi model…",
+ "builtIn": "Ugrađeni modeli",
+ "genaiProviders": "Dostavljatelji GenAI"
+ },
+ "review": {
+ "title": "Pregled postavki"
+ },
+ "audio": {
+ "title": "Postavke audija"
+ },
+ "notifications": {
+ "title": "Postavke obavijesti"
+ },
+ "live": {
+ "title": "Postavke pregleda uživo"
+ },
+ "timestamp_style": {
+ "title": "Postavke vremenske oznake"
+ },
+ "searchPlaceholder": "Pretraži...",
+ "addCustomLabel": "Dodaj prilagođenu oznaku...",
+ "genaiModel": {
+ "placeholder": "Odaberi model…",
+ "search": "Pretraži modele…",
+ "noModels": "Nema dostupnih modela"
+ }
+ },
+ "globalConfig": {
+ "title": "Globalna konfiguracija",
+ "description": "Konfigurirajte globalne postavke koje se primjenjuju na sve kamere osim ako nisu prekriveni.",
+ "toast": {
+ "success": "Globalne postavke uspješno sačuvane",
+ "error": "Neuspješno spremanje globalnih postavki",
+ "validationError": "Validacija neuspješna"
+ }
+ },
+ "cameraConfig": {
+ "title": "Konfiguracija kamere",
+ "description": "Konfigurirajte postavke za pojedinačne kamere. Postavke prekrivaju globalne podrazumijevane vrijednosti.",
+ "overriddenBadge": "Preklopljeno",
+ "resetToGlobal": "Vrati na globalno",
+ "toast": {
+ "success": "Postavke kamere uspješno sačuvane",
+ "error": "Neuspješno spremanje postavki kamere"
+ }
+ },
+ "toast": {
+ "success": "Postavke uspješno sačuvane",
+ "applied": "Postavke uspješno primijenjene",
+ "successRestartRequired": "Postavke uspješno sačuvane. Ponovo pokrenite Frigate da biste primijenili svoje promjene.",
+ "error": "Neuspješno spremanje postavki",
+ "validationError": "Validacija neuspješna: {{message}}",
+ "resetSuccess": "Poništi i vratiti se na globalne podrazumijevane vrijednosti",
+ "resetError": "Neuspješno poništavanje postavki",
+ "saveAllSuccess_one": "Uspješno sačuvan odjeljak {{count}}.",
+ "saveAllSuccess_few": "Svi odjeljci {{count}} uspješno sačuvani.",
+ "saveAllSuccess_other": "Svi odjeljci {{count}} uspješno sačuvani.",
+ "saveAllPartial_one": "{{successCount}} od {{totalCount}} odjeljka sačuvan. {{failCount}} neuspješno.",
+ "saveAllPartial_few": "{{successCount}} od {{totalCount}} odjeljaka sačuvanih. {{failCount}} neuspješno.",
+ "saveAllPartial_other": "{{successCount}} od {{totalCount}} odjeljaka sačuvanih. {{failCount}} neuspješno.",
+ "saveAllFailure": "Neuspješno spremanje svih odjeljaka."
+ },
+ "profiles": {
+ "title": "Profili",
+ "activeProfile": "Aktivni profil",
+ "noActiveProfile": "Nema aktivnog profila",
+ "active": "Aktivno",
+ "activated": "Profil '{{profile}}' aktiviran",
+ "activateFailed": "Neuspješno postavljanje profila",
+ "deactivated": "Profil deaktiviran",
+ "noProfiles": "Nema definisanih profila.",
+ "noOverrides": "Nema prekriženja",
+ "cameraCount_one": "kamera {{count}}",
+ "cameraCount_few": "{{count}} kamere",
+ "cameraCount_other": "{{count}} kamere",
+ "columnCamera": "Kamera",
+ "columnOverrides": "Prekriženja profila",
+ "baseConfig": "Bazna konfiguracija",
+ "addProfile": "Dodaj profil",
+ "newProfile": "Novi profil",
+ "profileNamePlaceholder": "npr. Opremljen, Odsutan, Noćni režim",
+ "friendlyNameLabel": "Ime profila",
+ "profileIdLabel": "ID profila",
+ "profileIdDescription": "Unutarnji identifikator korišten u konfiguraciji i automatizacijama",
+ "nameInvalid": "Dozvoljena su samo mala slova, brojevi i donje crte",
+ "nameDuplicate": "Profil s ovim imenom već postoji",
+ "error": {
+ "mustBeAtLeastTwoCharacters": "Mora imati najmanje 2 karaktera",
+ "mustNotContainPeriod": "Ne smije sadržavati tačke",
+ "alreadyExists": "Profil s ovim ID-om već postoji"
+ },
+ "renameProfile": "Preimenuj profil",
+ "renameSuccess": "Profil preimenovan u '{{profile}}'",
+ "deleteProfile": "Obriši profil",
+ "deleteProfileConfirm": "Obriši profil \"{{profile}}\" sa svih kamera? Ovo ne može biti poništeno.",
+ "deleteSuccess": "Profil '{{profile}}' obrisan",
+ "createSuccess": "Profil '{{profile}}' kreiran",
+ "removeOverride": "Ukloni prekrivanje profila",
+ "deleteSection": "Izbriši prekrivanja sekcije",
+ "deleteSectionConfirm": "Ukloni prekrivanja {{section}} za profil {{profile}} na {{camera}}?",
+ "deleteSectionSuccess": "Uklonjena prekrivanja {{section}} za {{profile}}",
+ "enableSwitch": "Omogući profile",
+ "enabledDescription": "Profilei su omogućeni. Napravite novi profil ispod, pređite na sekciju konfiguracije kamere da biste napravili promjene i sačuvajte da bi promjene bile primijenjene.",
+ "disabledDescription": "Profilei vam omogućavaju da definirate imenovane skupove prekrivanja konfiguracije kamere (npr., opremljen, odsutan, noć) koji se mogu aktivirati na zahtjev."
+ },
+ "unsavedChanges": "Imate nepohranjene promjene",
+ "confirmReset": "Potvrdi ponovno postavljanje",
+ "resetToDefaultDescription": "Ovo će ponovno postaviti sve postavke u ovoj sekciji na svoje zadane vrijednosti. Ova akcija ne može se povući.",
+ "resetToGlobalDescription": "Ovo će ponovno postaviti postavke u ovoj sekciji na globalne zadane vrijednosti. Ova akcija ne može se povući.",
+ "go2rtcStreams": {
+ "title": "go2rtc streamovi",
+ "description": "Upravljajte konfiguracijama go2rtc streamova za ponovno praćenje kamere. Svaki stream ima ime i jednu ili više izvornih URL-ova.",
+ "addStream": "Dodaj stream",
+ "addStreamDesc": "Unesite ime za novi stream. Ovo ime će se koristiti za referenciranje streama u vašoj konfiguraciji kamere.",
+ "addUrl": "Dodaj URL",
+ "streamName": "Ime streama",
+ "streamNamePlaceholder": "npr., front_door",
+ "streamUrlPlaceholder": "npr., rtsp://user:pass@192.168.1.100/stream",
+ "deleteStream": "Izbriši stream",
+ "deleteStreamConfirm": "Sigurni ste da želite izbrisati stream \"{{streamName}}\"? Kamere koje se referiraju na ovaj stream mogu prestati da rade.",
+ "noStreams": "Nema konfiguriranih go2rtc streamova. Dodajte stream da biste započeli.",
+ "validation": {
+ "nameRequired": "Ime streama je obavezno",
+ "nameDuplicate": "Stream s ovim imenom već postoji",
+ "nameInvalid": "Ime streama može sadržavati samo slova, brojeve, donje crte i crte za odvajanje",
+ "urlRequired": "Potrebna je bar jedna URL adresa"
+ },
+ "renameStream": "Preimenuj tok",
+ "renameStreamDesc": "Unesite novi naziv za ovaj tok. Preimenovanje toka može oštetiti kamere ili druge toke koji se reference na njega po nazivu.",
+ "newStreamName": "Novi naziv toka",
+ "ffmpeg": {
+ "useFfmpegModule": "Koristi režim kompatibilnosti (ffmpeg)",
+ "video": "Video",
+ "audio": "Audio",
+ "hardware": "Hardverska ubrzanja",
+ "videoCopy": "Kopiraj",
+ "videoH264": "Prevedi na H.264",
+ "videoH265": "Prevedi na H.265",
+ "videoExclude": "Izuzmi",
+ "audioCopy": "Kopiraj",
+ "audioAac": "Prevedi na AAC",
+ "audioOpus": "Prevedi na Opus",
+ "audioPcmu": "Prevedi na PCM μ-law",
+ "audioPcma": "Prevedi na PCM A-law",
+ "audioPcm": "Prevedi na PCM",
+ "audioMp3": "Prevedi na MP3",
+ "audioExclude": "Izuzmi",
+ "hardwareNone": "Bez hardverske ubrzanja",
+ "hardwareAuto": "Automatska hardverska ubrzanja"
+ }
+ },
+ "onvif": {
+ "profileAuto": "Automatski",
+ "profileLoading": "Učitavanje profila..."
+ },
+ "configMessages": {
+ "review": {
+ "recordDisabled": "Snimanje je onemogućeno, stavke za pregled neće biti generisane.",
+ "detectDisabled": "Detekcija objekata je onemogućena. Stavke za pregled zahtijevaju detektovane objekte za kategorizaciju upozorenja i detekcija.",
+ "allNonAlertDetections": "Sve aktivnosti koje nisu upozorenja bit će uključene kao detekcije."
+ },
+ "audio": {
+ "noAudioRole": "Nijedan tok nema definisan ulogu zvuka. Morate omogućiti ulogu zvuka da bi detekcija zvuka mogla da funkcioniše."
+ },
+ "audioTranscription": {
+ "audioDetectionDisabled": "Detekcija zvuka nije omogućena za ovu kameru. Transkripcija zvuka zahtijeva da detekcija zvuka bude aktivna."
+ },
+ "detect": {
+ "fpsGreaterThanFive": "Postavljanje vrijednosti detect FPS veće od 5 nije preporučljivo. Veće vrijednosti mogu uzrokovati probleme s performansama i neće pružiti nikakvu korist."
+ },
+ "faceRecognition": {
+ "globalDisabled": "Prepoznavanje lica nije omogućeno na globalnom nivou. Omogućite ga u Obogaćivanjima da bi prepoznavanje lica na nivou kamere funkcioniralo.",
+ "personNotTracked": "Prepoznavanje lica zahtijeva da se objekat 'osoba' praći. Osigurajte da je 'osoba' u listi praćenja objekata."
+ },
+ "lpr": {
+ "globalDisabled": "Prepoznavanje registarskih tablica nije omogućeno na globalnom nivou. Omogućite ga u Obogaćivanjima da bi LPR na nivou kamere funkcionirao.",
+ "vehicleNotTracked": "Prepoznavanje tablice zahtijeva da se praći 'automobil' ili 'motocikl'."
+ },
+ "record": {
+ "noRecordRole": "Nema streamova koji imaju definisanu ulogu snimanja. Snimanje neće funkcionišati."
+ },
+ "birdseye": {
+ "objectsModeDetectDisabled": "Birdseye je postavljen na režim 'objekti', ali je detekcija objekata onemogućena za ovu kameru. Kamera neće biti prikazana u Birdseye."
+ },
+ "snapshots": {
+ "detectDisabled": "Detekcija objekata je onemogućena. Snimci se generišu iz praćenih objekata i neće biti kreirani."
+ },
+ "detectors": {
+ "mixedTypes": "Svi detektori moraju koristiti isti tip. Uklonite postojet će detektore da biste koristili drugi tip.",
+ "mixedTypesSuggestion": "Svi detektori moraju koristiti isti tip. Uklonite postojet će detektore ili izaberite {{type}}."
+ }
+ }
+}
diff --git a/web/public/locales/bs/views/system.json b/web/public/locales/bs/views/system.json
new file mode 100644
index 0000000000..b36221ec36
--- /dev/null
+++ b/web/public/locales/bs/views/system.json
@@ -0,0 +1,256 @@
+{
+ "documentTitle": {
+ "cameras": "Statistika kamere - Frigate",
+ "storage": "Statistika skladišta - Frigate",
+ "general": "Opća statistika - Frigate",
+ "enrichments": "Statistika bogatstva - Frigate",
+ "logs": {
+ "frigate": "Zapisi Frigate - Frigate",
+ "go2rtc": "Zapisi Go2RTC - Frigate",
+ "nginx": "Zapisi Nginx - Frigate",
+ "websocket": "Zapisi poruka - Frigate"
+ }
+ },
+ "title": "Sistem",
+ "metrics": "Sistem metrike",
+ "logs": {
+ "websocket": {
+ "label": "Zapisi",
+ "pause": "Pauziraj",
+ "resume": "Nastavi",
+ "clear": "Očisti",
+ "filter": {
+ "all": "Svi temi",
+ "topics": "Teme",
+ "events": "Događaji",
+ "reviews": "Pregledi",
+ "classification": "Klasifikacija",
+ "face_recognition": "Prepoznavanje lica",
+ "lpr": "LPR",
+ "camera_activity": "Aktivnost kamere",
+ "system": "Sistem",
+ "camera": "Kamera",
+ "all_cameras": "Sve kamere",
+ "cameras_count_one": "{{count}} Kamera",
+ "cameras_count_other": "{{count}} Kamere"
+ },
+ "empty": "Nema još prihvaćenih poruka",
+ "count_one": "{{count}} poruka",
+ "count_other": "{{count}} poruke",
+ "expanded": {
+ "payload": "Opterećenje"
+ }
+ },
+ "download": {
+ "label": "Preuzimanje zapisa"
+ },
+ "copy": {
+ "label": "Kopiraj u clipboard",
+ "success": "Zapisi su kopirani u clipboard",
+ "error": "Nije moguće kopirati zapise u clipboard"
+ },
+ "type": {
+ "label": "Tip",
+ "timestamp": "Vremenski pečat",
+ "tag": "Oznaka",
+ "message": "Poruka"
+ },
+ "tips": "Zapisi se prenose sa servera",
+ "toast": {
+ "error": {
+ "fetchingLogsFailed": "Greška prilikom preuzimanja zapisa: {{errorMessage}}",
+ "whileStreamingLogs": "Greška prilikom prijenosa protokola: {{errorMessage}}"
+ }
+ }
+ },
+ "general": {
+ "title": "Općenito",
+ "detector": {
+ "title": "Detektori",
+ "inferenceSpeed": "Brzina zaključivanja detektora",
+ "temperature": "Temperatura detektora",
+ "cpuUsage": "Korištenje CPU detektora",
+ "cpuUsageInformation": "CPU korištena za pripremu ulaznih i izlaznih podataka za/iz modela detekcije. Ova vrijednost ne mjeri korištenje zaključivanja, čak i ako se koristi GPU ili ubrzivač.",
+ "memoryUsage": "Korištenje memorije detektora"
+ },
+ "hardwareInfo": {
+ "title": "Hardverske informacije",
+ "gpuUsage": "Korištenje GPU",
+ "gpuMemory": "Memorija GPU",
+ "gpuEncoder": "Kodiralo GPU",
+ "gpuCompute": "GPU Izračunavanje / Kodiranje",
+ "gpuDecoder": "Dekodiranje GPU",
+ "gpuTemperature": "Temperatura GPU",
+ "gpuInfo": {
+ "vainfoOutput": {
+ "title": "Vainfo Izlaz",
+ "returnCode": "Kod povratka: {{code}}",
+ "processOutput": "Izlaz procesa:",
+ "processError": "Greška procesa:"
+ },
+ "nvidiaSMIOutput": {
+ "title": "Nvidia SMI Izlaz",
+ "name": "Ime: {{name}}",
+ "driver": "Vozač: {{driver}}",
+ "cudaComputerCapability": "CUDA sposobnost izračunavanja: {{cuda_compute}}",
+ "vbios": "VBios informacije: {{vbios}}"
+ },
+ "closeInfo": {
+ "label": "Zatvori informacije GPU"
+ },
+ "copyInfo": {
+ "label": "Kopiraj informacije GPU"
+ },
+ "toast": {
+ "success": "Kopirano informacije GPU u međuspremnik"
+ }
+ },
+ "npuUsage": "Korišćenje NPU",
+ "npuMemory": "Memorija NPU",
+ "npuTemperature": "Temperatura NPU",
+ "intelGpuWarning": {
+ "title": "Upozorenje o statistikama Intel GPU",
+ "message": "Statistike GPU nedostupne",
+ "description": "Ovo je poznati bug u alatima za prikaz statistika Intel GPU (intel_gpu_top) gdje će se prekiniti i ponovo vratiti GPU korišćenje od 0% čak i u slučajevima kada se hardverska akceleracija i detekcija objekata ispravno izvršavaju na (i)GPU. Ovo nije bug Frigate. Možete ponovo pokrenuti host kako biste privremeno popravili problem i potvrdili da GPU radi ispravno. Ovo ne utiče na performanse."
+ }
+ },
+ "otherProcesses": {
+ "title": "Drugi procesi",
+ "processCpuUsage": "Korišćenje CPU procesa",
+ "processMemoryUsage": "Korišćenje memorije procesa",
+ "series": {
+ "go2rtc": "go2rtc",
+ "recording": "Snimanje",
+ "review_segment": "pregled segmenta",
+ "embeddings": "Ugrađivanja",
+ "audio_detector": "audio detektor"
+ }
+ }
+ },
+ "storage": {
+ "title": "Skladište",
+ "overview": "Pregled",
+ "recordings": {
+ "title": "Snimci",
+ "tips": "Ova vrijednost predstavlja ukupno skladište koje se koristi za snimke u bazi podataka Frigate. Frigate ne praćenje korišćenje skladišta za sve datoteke na vašem disku.",
+ "earliestRecording": "Najstariji dostupni snimak:"
+ },
+ "shm": {
+ "title": "Alokacija SHM (deljenja memorije)",
+ "warning": "Trenutna veličina SHM od {{total}}MB je prevelika. Povećajte je na najmanje {{min_shm}}MB.",
+ "frameLifetime": {
+ "title": "Vijek trajanja okvira",
+ "description": "Svaka kamera ima {{frames}} slotova za okvire u deljenoj memoriji. Na najbržoj brzini okvira kamere, svaki okvir je dostupan za približno {{lifetime}}s prije nego što se prepiše."
+ }
+ },
+ "cameraStorage": {
+ "title": "Skladište kamere",
+ "camera": "Kamera",
+ "unusedStorageInformation": "Informacije o neiskorišćenom skladištu",
+ "storageUsed": "Skladište",
+ "percentageOfTotalUsed": "Postotak ukupno",
+ "bandwidth": "Širina pojasa",
+ "unused": {
+ "title": "Neiskorišćeno",
+ "tips": "Ova vrijednost može nepravilno predstavljati slobodno prostor dostupan Frigate ako imate druge datoteke pohranjene na vašem disku izvan snimaka Frigate. Frigate ne praćenje korišćenje skladišta izvan svojih snimaka."
+ }
+ }
+ },
+ "cameras": {
+ "title": "Kamere",
+ "overview": "Pregled",
+ "info": {
+ "aspectRatio": "odnos stranica",
+ "cameraProbeInfo": "{{camera}} Informacije o ispitivanju kamere",
+ "streamDataFromFFPROBE": "Podaci o prijenosu se dobijaju pomoću ffprobe.",
+ "fetching": "Prenošenje podataka o kameri",
+ "stream": "Prijenos {{idx}}",
+ "video": "Video:",
+ "codec": "Kodek:",
+ "resolution": "Rješenje:",
+ "fps": "FPS:",
+ "unknown": "Nepoznato",
+ "audio": "Zvuk:",
+ "error": "Greška: {{error}}",
+ "tips": {
+ "title": "Informacije o ispitivanju kamere"
+ }
+ },
+ "framesAndDetections": "Okviri / Detekcije",
+ "label": {
+ "camera": "Kamera",
+ "detect": "detektirati",
+ "skipped": "preskočeno",
+ "ffmpeg": "FFmpeg",
+ "capture": "snimiti",
+ "overallFramesPerSecond": "ukupni okviri po sekundi",
+ "overallDetectionsPerSecond": "ukupne detekcije po sekundi",
+ "overallSkippedDetectionsPerSecond": "ukupno preskočene detekcije po sekundi",
+ "cameraFfmpeg": "{{camName}} FFmpeg",
+ "cameraCapture": "{{camName}} snimiti",
+ "cameraDetect": "{{camName}} detektirati",
+ "cameraGpu": "{{camName}} GPU",
+ "cameraFramesPerSecond": "{{camName}} okviri po sekundi",
+ "cameraDetectionsPerSecond": "{{camName}} detekcije po sekundi",
+ "cameraSkippedDetectionsPerSecond": "{{camName}} preskočenih detekcija u sekundi"
+ },
+ "connectionQuality": {
+ "title": "Kvaliteta veze",
+ "excellent": "Izuzetno dobra",
+ "fair": "Uredna",
+ "poor": "Loša",
+ "unusable": "Nepogodna",
+ "fps": "FPS",
+ "expectedFps": "Očekivani FPS",
+ "reconnectsLastHour": "Ponovne povezivanja (posljednje satu)",
+ "stallsLastHour": "Pauze (posljednje satu)"
+ },
+ "toast": {
+ "success": {
+ "copyToClipboard": "Podaci o testiranju kopirani u clipboard."
+ },
+ "error": {
+ "unableToProbeCamera": "Nemoguće testiranje kamere: {{errorMessage}}"
+ }
+ }
+ },
+ "lastRefreshed": "Posljednje ažuriranje: ",
+ "stats": {
+ "ffmpegHighCpuUsage": "{{camera}} ima visoku upotrebu CPU za FFmpeg ({{ffmpegAvg}}%)",
+ "detectHighCpuUsage": "{{camera}} ima visoku upotrebu CPU za detekciju ({{detectAvg}}%)",
+ "healthy": "Sistem je zdrav",
+ "reindexingEmbeddings": "Ponovno indeksiranje ugrađenih vjerodajnica ({{processed}}% završeno)",
+ "cameraIsOffline": "{{camera}} je offline",
+ "detectIsSlow": "{{detect}} je spor ({{speed}} ms)",
+ "detectIsVerySlow": "{{detect}} je vrlo spor ({{speed}} ms)",
+ "shmTooLow": "/dev/shm alokacija ({{total}} MB) treba povećati na najmanje {{min}} MB.",
+ "debugReplayActive": "Debug ponavljanje sesije je aktivno"
+ },
+ "enrichments": {
+ "title": "Obogaćivanja",
+ "infPerSecond": "Inferencije po sekundi",
+ "averageInf": "Prosjek vremena inferencije",
+ "embeddings": {
+ "image_embedding": "Slika ugrađenih vjerodajnica",
+ "text_embedding": "Tekst ugrađenih vjerodajnica",
+ "face_recognition": "Prepoznavanje lica",
+ "plate_recognition": "Prepoznavanje ploča",
+ "image_embedding_speed": "Brzina ugradnje slika",
+ "face_embedding_speed": "Brzina ugradnje lica",
+ "face_recognition_speed": "Brzina prepoznavanja lica",
+ "plate_recognition_speed": "Brzina prepoznavanja ploča",
+ "text_embedding_speed": "Brzina ugradnje teksta",
+ "yolov9_plate_detection_speed": "Brzina detekcije ploča YOLOv9",
+ "yolov9_plate_detection": "Detekcija ploča YOLOv9",
+ "review_description": "Pregled opisa",
+ "review_description_speed": "Brzina pregleda opisa",
+ "review_description_events_per_second": "Pregled opisa",
+ "object_description": "Opis objekta",
+ "object_description_speed": "Brzina opisa objekta",
+ "object_description_events_per_second": "Opis objekta",
+ "classification": "{{name}} Klasifikacija",
+ "classification_speed": "{{name}} Brzina klasifikacije",
+ "classification_events_per_second": "{{name}} Događaji klasifikacije po sekundi"
+ }
+ }
+}
diff --git a/web/public/locales/ca/common.json b/web/public/locales/ca/common.json
index 4efeea667d..a712459c3e 100644
--- a/web/public/locales/ca/common.json
+++ b/web/public/locales/ca/common.json
@@ -242,7 +242,7 @@
"done": "Fet",
"disabled": "Deshabilitat",
"disable": "Deshabilitar",
- "save": "Guardar",
+ "save": "Desa",
"copy": "Copiar",
"back": "Enrere",
"pictureInPicture": "Imatge en Imatge",
diff --git a/web/public/locales/ca/config/cameras.json b/web/public/locales/ca/config/cameras.json
index 090de49fb9..433bcf5ff6 100644
--- a/web/public/locales/ca/config/cameras.json
+++ b/web/public/locales/ca/config/cameras.json
@@ -13,7 +13,7 @@
"description": "Habilitat"
},
"audio": {
- "label": "Esdeveniments d'àudio",
+ "label": "Detecció d'àudio",
"description": "Configuració per a la detecció d'esdeveniments basats en àudio per a aquesta càmera.",
"enabled": {
"label": "Habilita la detecció d'àudio",
@@ -485,6 +485,10 @@
"hwaccel_args": {
"label": "Exporta els arguments de l'hwaccel",
"description": "Args d'acceleració de maquinari a utilitzar per a operacions d'exportació/transcodificació."
+ },
+ "max_concurrent": {
+ "label": "Màxim d'exportacions concurrents",
+ "description": "Nombre màxim de treballs d'exportació a processar al mateix temps."
}
},
"preview": {
diff --git a/web/public/locales/ca/config/global.json b/web/public/locales/ca/config/global.json
index 0e91613488..693e8c2840 100644
--- a/web/public/locales/ca/config/global.json
+++ b/web/public/locales/ca/config/global.json
@@ -341,6 +341,10 @@
"hwaccel_args": {
"label": "Exporta els arguments de l'hwaccel",
"description": "Args d'acceleració de maquinari a utilitzar per a operacions d'exportació/transcodificació."
+ },
+ "max_concurrent": {
+ "label": "Màxim d'exportacions concurrents",
+ "description": "Nombre màxim de treballs d'exportació a processar al mateix temps."
}
},
"preview": {
@@ -975,8 +979,8 @@
"description": "Habilita el monitoratge d'amplada de banda per procés per als processos i detectors de ffmpeg de càmera (requereix capacitats)."
},
"intel_gpu_device": {
- "label": "Dispositiu SR-IOV",
- "description": "Identificador de dispositiu utilitzat quan es tracten les GPU d'Intel com a SR-IOV per corregir les estadístiques de GPU."
+ "label": "Dispositiu GPU d'Intel",
+ "description": "Adreça de bus PCI o camí del dispositiu DRM (p. ex. /dev/dri/card1) utilitzat per fixar les estadístiques de GPU d'Intel a un dispositiu específic quan hi ha múltiples."
}
},
"version_check": {
@@ -1963,7 +1967,7 @@
}
},
"audio": {
- "label": "Esdeveniments d'àudio",
+ "label": "Detecció d'àudio",
"description": "Configuració per a la detecció d'esdeveniments basats en àudio per a totes les càmeres; es pot substituir per càmera.",
"enabled": {
"label": "Habilita la detecció d'àudio",
diff --git a/web/public/locales/ca/views/chat.json b/web/public/locales/ca/views/chat.json
new file mode 100644
index 0000000000..064c0d81bf
--- /dev/null
+++ b/web/public/locales/ca/views/chat.json
@@ -0,0 +1,46 @@
+{
+ "documentTitle": "Xat - Frigate",
+ "title": "Xat Frigate",
+ "subtitle": "El teu assistent d'AI per a gestionar càmeres i coneixements",
+ "placeholder": "Pregunta qualsevol cosa...",
+ "error": "Alguna cosa ha fallat. Torna-ho a provar.",
+ "processing": "Processant...",
+ "toolsUsed": "Usades: {{tools}}",
+ "showTools": "Mostra eines ({{count}})",
+ "hideTools": "Amaga eines",
+ "call": "Truca",
+ "result": "Resultat",
+ "arguments": "Variables:",
+ "response": "Resposta:",
+ "attachment_chip_label": "{{label}} a {{camera}}",
+ "attachment_chip_remove": "Elimina l'adjunt",
+ "open_in_explore": "Obre en l'explorador",
+ "attach_event_aria": "Adjunta l'esdeveniment {{eventId}}",
+ "attachment_picker_paste_label": "O enganxa l'ID de l'esdeveniment",
+ "attachment_picker_attach": "Adjunta",
+ "attachment_picker_placeholder": "Adjunta un esdeveniment",
+ "quick_reply_find_similar": "Troba albiraments similars",
+ "quick_reply_tell_me_more": "Explica'm més sobre això",
+ "quick_reply_when_else": "Quan més es va veure?",
+ "quick_reply_find_similar_text": "Troba albiraments similars a això.",
+ "quick_reply_tell_me_more_text": "Parla'm més d'aquest.",
+ "quick_reply_when_else_text": "Quan més es va veure això?",
+ "anchor": "Referència",
+ "similarity_score": "Similitud",
+ "no_similar_objects_found": "No s'ha trobat cap objecte similar.",
+ "semantic_search_required": "La cerca semàntica ha d'estar habilitada per trobar objectes similars.",
+ "send": "Envia",
+ "suggested_requests": "Proveu de preguntar:",
+ "starting_requests": {
+ "show_recent_events": "Mostra els esdeveniments recents",
+ "show_camera_status": "Mostra l'estat de la càmera",
+ "recap": "Què va passar mentre jo era fora?",
+ "watch_camera": "Observa una càmera per a l'activitat"
+ },
+ "starting_requests_prompts": {
+ "show_recent_events": "Mostra'm els esdeveniments recents de l'última hora",
+ "show_camera_status": "Quin és l'estat actual de les meves càmeres?",
+ "recap": "Què va passar mentre jo era fora?",
+ "watch_camera": "Vigila la porta d'entrada i fes-me saber si algú apareix"
+ }
+}
diff --git a/web/public/locales/ca/views/live.json b/web/public/locales/ca/views/live.json
index b40f02e35a..20db54905b 100644
--- a/web/public/locales/ca/views/live.json
+++ b/web/public/locales/ca/views/live.json
@@ -70,7 +70,8 @@
},
"recording": {
"enable": "Habilitar gravació",
- "disable": "Deshabilita l'enregistrament"
+ "disable": "Deshabilita l'enregistrament",
+ "disabledInConfig": "L'enregistrament primer s'ha d'habilitar a la configuració d'aquesta càmera."
},
"snapshots": {
"enable": "Habilita captura d'instantània",
diff --git a/web/public/locales/ca/views/motionSearch.json b/web/public/locales/ca/views/motionSearch.json
new file mode 100644
index 0000000000..cf41e934d1
--- /dev/null
+++ b/web/public/locales/ca/views/motionSearch.json
@@ -0,0 +1,77 @@
+{
+ "documentTitle": "Busca Deteccións - Frigate",
+ "title": "Búsqueda de Deteccions",
+ "selectCamera": "Búsqueda de Deteccions s'esta carregant",
+ "startSearch": "Començar Búsqueda",
+ "searchStarted": "Búsqueda inicada",
+ "searchCancelled": "Búsqueda cancel·lada",
+ "cancelSearch": "Cancel·lar",
+ "searching": "Búsqueda en progrés.",
+ "searchComplete": "Búsqueda completa",
+ "description": "Dibuixa un polígon per definir la regió d'interès, i especifica un interval de temps per cercar canvis de moviment dins d'aquesta regió.",
+ "noResultsYet": "Executa una cerca per a trobar canvis de moviment a la regió seleccionada",
+ "noChangesFound": "No s'ha detectat cap canvi de píxel a la regió seleccionada",
+ "changesFound_one": "S'ha trobat el canvi de moviment {{count}}",
+ "changesFound_many": "S'han trobat {{count}} canvis de moviment",
+ "changesFound_other": "S'han trobat {{count}} canvis de moviment",
+ "framesProcessed": "{{count}} fotogrames processats",
+ "jumpToTime": "Salta a aquesta hora",
+ "results": "Resultats",
+ "showSegmentHeatmap": "Mapa de calor",
+ "newSearch": "Cerca nova",
+ "clearResults": "Neteja els resultats",
+ "clearROI": "Neteja el polígon",
+ "polygonControls": {
+ "points_one": "{{count}} punt",
+ "points_many": "{{count}} punts",
+ "points_other": "{{count}} punts",
+ "undo": "Desfés l'últim punt",
+ "reset": "Restableix el polígon"
+ },
+ "motionHeatmapLabel": "Mapa de calor del moviment",
+ "dialog": {
+ "title": "Cerca de moviment",
+ "cameraLabel": "Càmara",
+ "previewAlt": "Vista prèvia de la càmera per a {{camera}}"
+ },
+ "timeRange": {
+ "title": "Interval de cerca",
+ "start": "Hora d'inici",
+ "end": "Hora final"
+ },
+ "settings": {
+ "title": "Configuració de la cerca",
+ "parallelMode": "Mode paral·lel",
+ "parallelModeDesc": "Escaneja múltiples segments d'enregistrament al mateix temps (més ràpid, però significativament més intensiu en CPU)",
+ "threshold": "Llindar de la sensibilitat",
+ "thresholdDesc": "Els valors més baixos detecten canvis més petits (1-255)",
+ "minArea": "Àrea de canvi mínim",
+ "minAreaDesc": "Percentatge mínim de la regió d'interès que s'ha de canviar per considerar-se significatiu",
+ "frameSkip": "Omet el fotograma",
+ "frameSkipDesc": "Processa cada N fotograma. Establiu això a la velocitat de fotogrames de la càmera per processar un fotograma per segon (p. ex. 5 per a una càmera de 5 FPS, 30 per a una càmera de 30 FPS). Els valors més alts seran més ràpids, però poden perdre els esdeveniments de curt moviment.",
+ "maxResults": "Resultats màxims",
+ "maxResultsDesc": "Atura després d'aquestes quantes marques horàries coincidents"
+ },
+ "errors": {
+ "noCamera": "Seleccioneu una càmera",
+ "noROI": "Dibuixeu una regió d'interès",
+ "noTimeRange": "Seleccioneu un interval de temps",
+ "invalidTimeRange": "L'hora de finalització ha de ser posterior a l'hora d'inici",
+ "searchFailed": "Ha fallat la cerca: {{message}}",
+ "polygonTooSmall": "El polígon ha de tenir almenys 3 punts",
+ "unknown": "Error desconegut"
+ },
+ "changePercentage": "{{percentage}}% canviat",
+ "metrics": {
+ "title": "Cerca les mètriques",
+ "segmentsScanned": "Segments escanejats",
+ "segmentsProcessed": "Processat",
+ "segmentsSkippedInactive": "S'ha omès (sense activitat)",
+ "segmentsSkippedHeatmap": "S'ha omès (sense superposició ROI)",
+ "fallbackFullRange": "Escaneig de rang complet alternatiu",
+ "framesDecoded": "Fotogrames descodificats",
+ "wallTime": "Temps de cerca",
+ "segmentErrors": "Errors del segment",
+ "seconds": "{{seconds}}s"
+ }
+}
diff --git a/web/public/locales/ca/views/replay.json b/web/public/locales/ca/views/replay.json
new file mode 100644
index 0000000000..36eccd8a6c
--- /dev/null
+++ b/web/public/locales/ca/views/replay.json
@@ -0,0 +1,59 @@
+{
+ "page": {
+ "startError": {
+ "back": "Torna a l'Historial",
+ "title": "No s'ha pogut iniciar la repetició de la depuració"
+ },
+ "sourceCamera": "Camera d'origen",
+ "replayCamera": "Reproduïr Càmera",
+ "initializingReplay": "Inicialitzant depurar repetició...",
+ "stoppingReplay": "Parant depurar repetició...",
+ "stopReplay": "Parar Repetició",
+ "confirmStop": {
+ "title": "Parar Depurar Repetició?",
+ "description": "Aixó pararà la sessió i netejarà les dades temporals. Estás segur?",
+ "confirm": "Parar Repetició",
+ "cancel": "Cancel·lar"
+ },
+ "activity": "Activitat",
+ "objects": "Llista d'Objectes",
+ "audioDetections": "Deteccions d'Audio",
+ "noActivity": "Sense activitat detectada",
+ "activeTracking": "Tracking Actiu",
+ "noActiveTracking": "Sense tracking actiu",
+ "configuration": "Configuració",
+ "configurationDesc": "Configuració d'ajust fi de detecció de moviment i tracking d'objectes per a la depuració de reproducció de càmera. Cap canvi es graba en el teu arxiu de configuració de Frigate.",
+ "noSession": "No hi ha una sessió activa de reproducció de depuració",
+ "noSessionDesc": "Inicia una reproducció de depuració des de la vista Historial fent clic al botó Accions a la barra d'eines i escollint Depura Repeteix.",
+ "goToRecordings": "Ves a l'historial",
+ "preparingClip": "S'està preparant el clip…",
+ "preparingClipDesc": "Frigate està cosint enregistraments per a l'interval de temps seleccionat. Això pot trigar un minut en intervals més llargs.",
+ "startingCamera": "S'està iniciant la repetició de la depuració…"
+ },
+ "title": "Repetició de depuració",
+ "websocket_messages": "Missatges",
+ "dialog": {
+ "title": "Iniciar Depuració de Repeticions",
+ "camera": "Càmera Font",
+ "timeRange": "Rang de Temps",
+ "preset": {
+ "1m": "Últim 1 Minut",
+ "5m": "Últims 5 Minuts",
+ "timeline": "Desde la Línia de Temps",
+ "custom": "Personalitzat"
+ },
+ "description": "Crea una càmera de reproducció temporal que fa bucles de metratge històric per depurar la detecció d'objectes i els problemes de seguiment. La càmera de reproducció tindrà la mateixa configuració de detecció que la càmera d'origen. Trieu un interval de temps per començar.",
+ "startButton": "Inicia la repetició",
+ "selectFromTimeline": "Selecciona",
+ "starting": "S'està iniciant la repetició...",
+ "startLabel": "Inici",
+ "endLabel": "Final",
+ "toast": {
+ "error": "No s'ha pogut iniciar la repetició de depuració: {{error}}",
+ "alreadyActive": "Ja hi ha activada una sessió de reproducció",
+ "stopError": "No s'ha pogut aturar la repetició de depuració: {{error}}",
+ "goToReplay": "Ves a la repetició"
+ }
+ },
+ "description": "Reprodueix els enregistraments de la càmera per a la depuració. La llista d'objectes mostra un resum retardat en el temps dels objectes detectats i la pestanya Missatges mostra un flux de missatges interns de la fragata a partir del metratge de reproducció."
+}
diff --git a/web/public/locales/ca/views/settings.json b/web/public/locales/ca/views/settings.json
index 05520db7d0..b540b05861 100644
--- a/web/public/locales/ca/views/settings.json
+++ b/web/public/locales/ca/views/settings.json
@@ -43,7 +43,7 @@
"globalMotion": "Detecció de moviment",
"globalObjects": "Objectes",
"globalReview": "Revisió",
- "globalAudioEvents": "Esdeveniments d'àudio",
+ "globalAudioEvents": "Detecció d'àudio",
"globalLivePlayback": "Reproducció en directe",
"globalTimestampStyle": "Estil de la marca horària",
"systemDatabase": "Base de dades",
@@ -73,7 +73,7 @@
"cameraMotion": "Detecció de moviment",
"cameraObjects": "Objectes",
"cameraConfigReview": "Revisió",
- "cameraAudioEvents": "Esdeveniments d'àudio",
+ "cameraAudioEvents": "Detecció d'àudio",
"cameraAudioTranscription": "Transcripció d'àudio",
"cameraNotifications": "Notificacions",
"cameraLivePlayback": "Reproducció en directe",
@@ -1354,6 +1354,14 @@
"inherit": "Hereta",
"enabled": "Habilitat",
"disabled": "Desactivat"
+ },
+ "cameraType": {
+ "title": "Tipus de càmera",
+ "label": "Tipus de càmera",
+ "description": "Estableix el tipus per a cada càmera. Les càmeres LPR dedicades són càmeres d'un sol ús amb un potent zoom òptic per capturar matrícules en vehicles distants. La majoria de les càmeres haurien d'utilitzar el tipus de càmera normal llevat que la càmera sigui específicament per a LPR i tingui una vista molt centrada en les matrícules.",
+ "dedicatedLpr": "LPR dedicat",
+ "saveSuccess": "Tipus de càmera actualitzat per {{cameraName}}. Reinicia la fragata per aplicar els canvis.",
+ "normal": "Normal"
}
},
"cameraReview": {
@@ -1720,7 +1728,22 @@
"overriddenGlobal": "Sobreescrit (Global)",
"overriddenGlobalTooltip": "Aquesta càmera anul·la la configuració global d'aquesta secció",
"overriddenBaseConfig": "Sobreescrit (Configuració base)",
- "overriddenBaseConfigTooltip": "El perfil {{profile}} substitueix la configuració d'aquesta secció"
+ "overriddenBaseConfigTooltip": "El perfil {{profile}} substitueix la configuració d'aquesta secció",
+ "overriddenInCameras": {
+ "label_one": "Sobreescrit a la càmera {{count}}",
+ "label_many": "Sobreescrit en {{count}} càmeres",
+ "label_other": "Sobreescrit en {{count}} càmeres",
+ "tooltip_one": "{{count}} la càmera anul·la els valors d'aquesta secció. Feu clic per veure els detalls.",
+ "tooltip_many": "{{count}} càmeres substitueixen els valors d'aquesta secció. Feu clic per veure els detalls.",
+ "tooltip_other": "{{count}} càmeres substitueixen els valors d'aquesta secció. Feu clic per veure els detalls.",
+ "heading_one": "Aquesta secció global té camps que estan sobreescrits a la càmera {{count}}.",
+ "heading_many": "Aquesta secció global té camps que estan sobreescrits en {{count}} càmeres.",
+ "heading_other": "Aquesta secció global té camps que estan sobreescrits en {{count}} càmeres.",
+ "othersField_one": "{{count}} altre",
+ "othersField_many": "{{count}} altres",
+ "othersField_other": "{{count}} altres",
+ "profilePrefix": "Perfil {{profile}}: {{fields}}"
+ }
},
"profiles": {
"title": "Perfils",
@@ -1821,7 +1844,8 @@
"review": {
"recordDisabled": "L'enregistrament està desactivat, els elements de revisió no es generaran.",
"detectDisabled": "La detecció d'objectes està desactivada. Els elements de revisió requereixen objectes detectats per categoritzar alertes i deteccions.",
- "allNonAlertDetections": "Totes les activitats no alertes s'inclouran com a deteccions."
+ "allNonAlertDetections": "Totes les activitats no alertes s'inclouran com a deteccions.",
+ "genaiImageSourceRecordingsRecordDisabled": "La font d'imatges està configurada com a 'enregistraments', però l'enregistrament està desactivat. La fragata tornarà a la vista prèvia de les imatges."
},
"audio": {
"noAudioRole": "Cap flux té definit el rol d'àudio. Heu d'habilitar el rol d'àudio per a la detecció d'àudio perquè funcioni."
@@ -1830,15 +1854,18 @@
"audioDetectionDisabled": "La detecció d'àudio no està activada per a aquesta càmera. La transcripció d'àudio requereix que la detecció d'àudio estigui activa."
},
"detect": {
- "fpsGreaterThanFive": "No es recomana establir el detect FPS superior a 5."
+ "fpsGreaterThanFive": "No es recomana establir el detect FPS superior a 5. Els valors més alts poden causar problemes de rendiment i no proporcionaran cap benefici.",
+ "disabled": "La detecció d'objectes està desactivada. Les instantànies, articles de revisió i enriquiments com el reconeixement de rostres, el reconeixement de matrícules i la IA Generativa no funcionaran."
},
"faceRecognition": {
- "globalDisabled": "El reconeixement de cares no està habilitat a nivell global. Habilita-ho en la configuració global per al reconeixement facial a nivell de càmera per funcionar.",
- "personNotTracked": "El reconeixement de cares requereix que l'objecte 'persona' sigui rastrejat. Assegureu-vos que «persona» estigui a la llista de seguiment d'objectes."
+ "globalDisabled": "L'enriquiment del reconeixement facial s'ha d'habilitar perquè les funcions de reconeixement facial funcionin en aquesta càmera.",
+ "personNotTracked": "El reconeixement de cares requereix que l'objecte 'persona' sigui rastrejat. Habilita «persona» en objectes per a aquesta càmera.",
+ "modelSizeLarge": "El model 'gran' requereix una GPU o NPU per a un rendiment raonable. Usa «petit» en sistemes només de CPU."
},
"lpr": {
- "globalDisabled": "El reconeixement de la matrícula no està habilitat a nivell global. Habilita-ho en la configuració global per al funcionament de LPR a nivell de càmera.",
- "vehicleNotTracked": "El reconeixement de la matrícula requereix que es faci un seguiment del 'cotxe' o de la 'motocicleta'."
+ "globalDisabled": "L'enriquiment de reconeixement de matrícules ha d'estar habilitat perquè les funcions LPR funcionin en aquesta càmera.",
+ "vehicleNotTracked": "El reconeixement de la matrícula requereix que es faci un seguiment del 'cotxe' o de la 'motocicleta'.",
+ "modelSizeLarge": "El model 'gran' està optimitzat per a matrícules multilínies. El model 'petit' proporciona un millor rendiment sobre 'gran' i s'ha d'utilitzar tret que la vostra regió utilitzi formats de placa multilínia."
},
"record": {
"noRecordRole": "Cap flux té el rol de registre definit. L'enregistrament no funcionarà."
@@ -1852,6 +1879,12 @@
"detectors": {
"mixedTypes": "Tots els detectors han d'utilitzar el mateix tipus. Elimina els detectors existents per utilitzar un tipus diferent.",
"mixedTypesSuggestion": "Tots els detectors han d'utilitzar el mateix tipus. Suprimiu detectors existents o seleccioneu {{type}}."
+ },
+ "objects": {
+ "genaiNoDescriptionsProvider": "Heu de configurar un proveïdor de GenAI amb el rol 'descripcions' per a les descripcions que es generaran."
+ },
+ "semanticSearch": {
+ "jinav2SmallModelSize": "La mida 'petita' amb el model Jina V2 té un alt cost de RAM i d'inferència. Es recomana el model 'gran' amb una GPU discreta."
}
}
}
diff --git a/web/public/locales/ca/views/system.json b/web/public/locales/ca/views/system.json
index 22ecd1fa81..595e7f8f60 100644
--- a/web/public/locales/ca/views/system.json
+++ b/web/public/locales/ca/views/system.json
@@ -213,6 +213,9 @@
"expectedFps": "FPS esperat",
"reconnectsLastHour": "Reconnecta (última hora)",
"stallsLastHour": "Parades (última hora)"
+ },
+ "noCameras": {
+ "title": "No s'ha trobat cap càmera"
}
},
"lastRefreshed": "Darrera actualització: ",
diff --git a/web/public/locales/cs/views/chat.json b/web/public/locales/cs/views/chat.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/web/public/locales/cs/views/chat.json
@@ -0,0 +1 @@
+{}
diff --git a/web/public/locales/cs/views/motionSearch.json b/web/public/locales/cs/views/motionSearch.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/web/public/locales/cs/views/motionSearch.json
@@ -0,0 +1 @@
+{}
diff --git a/web/public/locales/cs/views/replay.json b/web/public/locales/cs/views/replay.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/web/public/locales/cs/views/replay.json
@@ -0,0 +1 @@
+{}
diff --git a/web/public/locales/da/views/chat.json b/web/public/locales/da/views/chat.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/web/public/locales/da/views/chat.json
@@ -0,0 +1 @@
+{}
diff --git a/web/public/locales/da/views/motionSearch.json b/web/public/locales/da/views/motionSearch.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/web/public/locales/da/views/motionSearch.json
@@ -0,0 +1 @@
+{}
diff --git a/web/public/locales/da/views/replay.json b/web/public/locales/da/views/replay.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/web/public/locales/da/views/replay.json
@@ -0,0 +1 @@
+{}
diff --git a/web/public/locales/de/common.json b/web/public/locales/de/common.json
index 8924da381e..7f9848fe28 100644
--- a/web/public/locales/de/common.json
+++ b/web/public/locales/de/common.json
@@ -250,7 +250,8 @@
"classification": "Klassifizierung",
"actions": "Aktion",
"chat": "Chat",
- "profiles": "Profile"
+ "profiles": "Profile",
+ "features": "Funktionen"
},
"unit": {
"speed": {
diff --git a/web/public/locales/de/components/camera.json b/web/public/locales/de/components/camera.json
index e9f39cb8e7..a2b443bd66 100644
--- a/web/public/locales/de/components/camera.json
+++ b/web/public/locales/de/components/camera.json
@@ -66,7 +66,7 @@
"label": "Kameras",
"desc": "Wähle Kameras für diese Gruppe aus."
},
- "label": "Kameragruppen",
+ "label": "Kamera Gruppen",
"edit": "Kameragruppe bearbeiten",
"success": "Kameragruppe {{name}} wurde gespeichert."
},
diff --git a/web/public/locales/de/components/dialog.json b/web/public/locales/de/components/dialog.json
index 66aba17a69..59dac7aeda 100644
--- a/web/public/locales/de/components/dialog.json
+++ b/web/public/locales/de/components/dialog.json
@@ -178,6 +178,14 @@
"markAsReviewed": "Als geprüft markieren",
"deleteNow": "Jetzt löschen",
"markAsUnreviewed": "Als ungeprüft markieren"
+ },
+ "shareTimestamp": {
+ "label": "Zeitstempel teilen",
+ "title": "Zeitstempel teilen",
+ "description": "Teile eine URL mit Zeitstempel, die die aktuelle Position des Players angibt, oder wähle einen benutzerdefinierten Zeitstempel aus. Beachte, dass es sich hierbei nicht um eine öffentliche Freigabe-URL handelt und dass nur Benutzer Zugriff darauf haben, die Zugriff auf Frigate und diese Kamera haben.",
+ "custom": "Benutzerdefinierter Zeitstempel",
+ "button": "URL des Zeitstempels teilen",
+ "shareTitle": "Zeitstempel der Fregattenbewertung: {{camera}}"
}
},
"imagePicker": {
diff --git a/web/public/locales/de/components/player.json b/web/public/locales/de/components/player.json
index 56a1950539..ad56cf2ce4 100644
--- a/web/public/locales/de/components/player.json
+++ b/web/public/locales/de/components/player.json
@@ -3,7 +3,8 @@
"noPreviewFound": "Keine Vorschau gefunden",
"submitFrigatePlus": {
"title": "Dieses Bild an Frigate+ senden?",
- "submit": "Senden"
+ "submit": "Absenden",
+ "previewError": "Schnappschuss Vorschau konnte nicht geladen werden. Die Aufnahme ist möglicherweise derzeit nicht verfügbar."
},
"livePlayerRequiredIOSVersion": "iOS 17.1 oder höher ist für diesen Typ eines Live-Streams erforderlich.",
"streamOffline": {
diff --git a/web/public/locales/de/config/cameras.json b/web/public/locales/de/config/cameras.json
index 9a0ab8b174..11daeafb5d 100644
--- a/web/public/locales/de/config/cameras.json
+++ b/web/public/locales/de/config/cameras.json
@@ -537,6 +537,10 @@
"hwaccel_args": {
"label": "hwaccel-Argumente exportieren",
"description": "Argumente für die Hardwarebeschleunigung bei Export- und Transkodierungsvorgängen."
+ },
+ "max_concurrent": {
+ "label": "Maximale Anzahl gleichzeitiger Exporte",
+ "description": "Maximale Anzahl der gleichzeitig zu verarbeitenden Exportaufträge."
}
},
"preview": {
diff --git a/web/public/locales/de/config/global.json b/web/public/locales/de/config/global.json
index f284ab0389..2993469731 100644
--- a/web/public/locales/de/config/global.json
+++ b/web/public/locales/de/config/global.json
@@ -538,8 +538,8 @@
"description": "Aktivieren Sie die prozessbezogene Überwachung der Netzwerkbandbreite für Kamera-FFmpeg-Prozesse und Detektoren (erfordert entsprechende Funktionen)."
},
"intel_gpu_device": {
- "label": "SR-IOV-Gerät",
- "description": "Gerätekennung, die verwendet wird, wenn Intel-GPUs als SR-IOV behandelt werden, um die GPU-Statistiken zu korrigieren."
+ "label": "Intel GPU",
+ "description": "PCI-Bus-Adresse oder DRM-Gerätepfad (z. B. /dev/dri/card1), der verwendet wird, um die Intel-GPU-Statistiken einem bestimmten Gerät zuzuordnen, wenn mehrere vorhanden sind."
}
},
"version_check": {
@@ -1357,6 +1357,10 @@
"hwaccel_args": {
"label": "hwaccel-Argumente exportieren",
"description": "Argumente für die Hardwarebeschleunigung bei Export- und Transkodierungsvorgängen."
+ },
+ "max_concurrent": {
+ "label": "Maximale Anzahl gleichzeitiger Exporte",
+ "description": "Maximale Anzahl der gleichzeitig zu verarbeitenden Exportaufträge."
}
},
"preview": {
diff --git a/web/public/locales/de/views/chat.json b/web/public/locales/de/views/chat.json
new file mode 100644
index 0000000000..5a87ce9e10
--- /dev/null
+++ b/web/public/locales/de/views/chat.json
@@ -0,0 +1,46 @@
+{
+ "documentTitle": "Chat - Frigate",
+ "title": "Frigate Chat",
+ "subtitle": "Ihr KI-Assistent für die Kameraverwaltung und Analysen",
+ "placeholder": "Frag mich alles...",
+ "error": "Es ist ein Fehler aufgetreten. Bitte versuche es erneut.",
+ "processing": "Wird verarbeitet...",
+ "toolsUsed": "Verwendet: {{tools}}",
+ "showTools": "Werkzeuge anzeigen ({{count}})",
+ "hideTools": "Werkzeuge ausblenden",
+ "call": "Anruf",
+ "result": "Ergebnis",
+ "arguments": "Argumente:",
+ "response": "Antwort:",
+ "attachment_chip_label": "{{label}} auf der {{camera}}",
+ "attachment_chip_remove": "Anhang entfernen",
+ "open_in_explore": "In „Explore“ öffnen",
+ "attach_event_aria": "Ereignis {{eventId}} hinzufügen",
+ "attachment_picker_paste_label": "Oder fügen Sie die Ereignis-ID ein",
+ "attachment_picker_attach": "Anhängen",
+ "attachment_picker_placeholder": "Ereignis hinzufügen",
+ "quick_reply_find_similar": "Ähnliche Sichtungen finden",
+ "quick_reply_tell_me_more": "Erzähl mir mehr darüber",
+ "quick_reply_when_else": "Wann wurde es sonst noch gesehen?",
+ "quick_reply_find_similar_text": "Ähnliche Sichtungen finden.",
+ "quick_reply_tell_me_more_text": "Erzähl mir mehr darüber.",
+ "quick_reply_when_else_text": "Wann gab es das sonst noch?",
+ "anchor": "Referenz",
+ "similarity_score": "Ähnlichkeit",
+ "no_similar_objects_found": "Es wurden keine ähnlichen Objekte gefunden.",
+ "semantic_search_required": "Die semantische Suche muss aktiviert sein, um ähnliche Objekte zu finden.",
+ "send": "Senden",
+ "suggested_requests": "Versuchen Sie doch mal zu fragen:",
+ "starting_requests": {
+ "show_recent_events": "Aktuelle Ereignisse anzeigen",
+ "show_camera_status": "Kamerastatus anzeigen",
+ "recap": "Was ist passiert, während ich weg war?",
+ "watch_camera": "Beobachten Sie eine Kamera auf Bewegungen"
+ },
+ "starting_requests_prompts": {
+ "show_recent_events": "Zeige mir die Ereignisse der letzten Stunde",
+ "show_camera_status": "Wie ist der aktuelle Status meiner Kameras?",
+ "recap": "Was ist passiert, während ich weg war?",
+ "watch_camera": "Pass auf die Haustür auf und sag mir Bescheid, wenn jemand kommt"
+ }
+}
diff --git a/web/public/locales/de/views/events.json b/web/public/locales/de/views/events.json
index 589a6e1a16..c943bec24a 100644
--- a/web/public/locales/de/views/events.json
+++ b/web/public/locales/de/views/events.json
@@ -25,7 +25,9 @@
},
"documentTitle": "Überprüfung - Frigate",
"recordings": {
- "documentTitle": "Aufnahmen - Frigate"
+ "documentTitle": "Aufnahmen - Frigate",
+ "invalidSharedLink": "Der Link zur zeitgestempelten Aufzeichnung kann aufgrund eines Parsing-Fehlers nicht geöffnet werden.",
+ "invalidSharedCamera": "Der Link zur zeitgestempelten Aufzeichnung kann nicht geöffnet werden, da es sich um eine unbekannte oder nicht autorisierte Kamera handelt."
},
"calendarFilter": {
"last24Hours": "Letzte 24 Stunden"
diff --git a/web/public/locales/de/views/explore.json b/web/public/locales/de/views/explore.json
index 2e8a405988..071d887905 100644
--- a/web/public/locales/de/views/explore.json
+++ b/web/public/locales/de/views/explore.json
@@ -73,7 +73,7 @@
"label": "Schnappschuss Bewertung"
},
"score": {
- "label": "Ergebnis"
+ "label": "Treffer"
},
"editAttributes": {
"title": "Attribute bearbeiten",
diff --git a/web/public/locales/de/views/motionSearch.json b/web/public/locales/de/views/motionSearch.json
new file mode 100644
index 0000000000..3008f10d85
--- /dev/null
+++ b/web/public/locales/de/views/motionSearch.json
@@ -0,0 +1,75 @@
+{
+ "documentTitle": "Bewegungssuche - Frigate",
+ "title": "Bewegungssuche",
+ "description": "Zeichnen Sie ein Polygon, um den gewünschten Bereich zu definieren, und geben Sie einen Zeitbereich an, um innerhalb dieses Bereichs nach Bewegungsänderungen zu suchen.",
+ "selectCamera": "Die Bewegungssuche wird geladen",
+ "startSearch": "Suche starten",
+ "searchStarted": "Die Suche wurde gestartet",
+ "searchCancelled": "Suche abgebrochen",
+ "cancelSearch": "Abbrechen",
+ "searching": "Suche läuft.",
+ "searchComplete": "Suche abgeschlossen",
+ "noResultsYet": "Führen Sie eine Suche durch, um Bewegungsänderungen im ausgewählten Bereich zu finden",
+ "noChangesFound": "Im ausgewählten Bereich wurden keine Pixeländerungen festgestellt",
+ "changesFound_one": "Es wurde {{count}} Bewegungsänderungen gefunden",
+ "changesFound_other": "Es wurden {{count}} Bewegungsänderungen gefunden",
+ "framesProcessed": "{{count}} Bilder verarbeitet",
+ "jumpToTime": "Zu diesem Zeitpunkt springen",
+ "results": "Ergebnisse",
+ "showSegmentHeatmap": "Heatmap",
+ "newSearch": "Neue Suche",
+ "clearResults": "Eindeutige Ergebnisse",
+ "clearROI": "Polygon löschen",
+ "polygonControls": {
+ "points_one": "{{count}} Punkt",
+ "points_other": "{{count}} Punkte",
+ "undo": "Letzten Schritt rückgängig machen",
+ "reset": "Polygon zurücksetzen"
+ },
+ "motionHeatmapLabel": "Bewegungs-Heatmap",
+ "dialog": {
+ "title": "Bewegungssuche",
+ "cameraLabel": "Kamera",
+ "previewAlt": "Kamera-Vorschau für {{camera}}"
+ },
+ "timeRange": {
+ "title": "Suchbereich",
+ "start": "Startzeit",
+ "end": "Endzeit"
+ },
+ "settings": {
+ "title": "Sucheinstellungen",
+ "parallelMode": "Parallelbetrieb",
+ "parallelModeDesc": "Mehrere Aufzeichnungssegmente gleichzeitig scannen (schneller, aber deutlich rechenintensiver)",
+ "threshold": "Empfindlichkeitsschwelle",
+ "thresholdDesc": "Niedrigere Werte erkennen geringere Veränderungen (1–255)",
+ "minArea": "Mindestwechselbereich",
+ "minAreaDesc": "Mindestanteil der untersuchten Region, der sich ändern muss, damit die Veränderung als signifikant gilt",
+ "frameSkip": "Bild überspringen",
+ "frameSkipDesc": "Verarbeite jeden N-ten Frame. Stelle diesen Wert auf die Bildrate deiner Kamera ein, um einen Frame pro Sekunde zu verarbeiten (z. B. 5 für eine Kamera mit 5 FPS, 30 für eine Kamera mit 30 FPS). Höhere Werte sorgen für eine schnellere Verarbeitung, können jedoch kurze Bewegungsabläufe übersehen.",
+ "maxResults": "Maximale Ergebnisse",
+ "maxResultsDesc": "Nach dieser Anzahl übereinstimmender Zeitstempel anhalten"
+ },
+ "errors": {
+ "noCamera": "Bitte wählen Sie eine Kamera aus",
+ "noROI": "Bitte zeichnen Sie einen Bereich von Interesse ein",
+ "noTimeRange": "Bitte wählen Sie einen Zeitraum aus",
+ "invalidTimeRange": "Die Endzeit muss nach der Startzeit liegen",
+ "searchFailed": "Suche fehlgeschlagen: {{message}}",
+ "polygonTooSmall": "Ein Polygon muss mindestens 3 Punkte haben",
+ "unknown": "Unbekannter Fehler"
+ },
+ "changePercentage": "Um {{percentage}} % verändert",
+ "metrics": {
+ "title": "Suchmetriken",
+ "segmentsScanned": "Durchsuchte Segmente",
+ "segmentsProcessed": "Bearbeitet",
+ "segmentsSkippedInactive": "Übersprungen (keine Aktivität)",
+ "segmentsSkippedHeatmap": "Übersprungen (keine Überschneidung der ROI)",
+ "fallbackFullRange": "Ausweich-Vollbereichsscan",
+ "framesDecoded": "Rahmen decodiert",
+ "wallTime": "Suchzeit",
+ "segmentErrors": "Segmentfehler",
+ "seconds": "{{seconds}}s"
+ }
+}
diff --git a/web/public/locales/de/views/replay.json b/web/public/locales/de/views/replay.json
new file mode 100644
index 0000000000..6c28045baa
--- /dev/null
+++ b/web/public/locales/de/views/replay.json
@@ -0,0 +1,59 @@
+{
+ "title": "Debug-Wiedergabe",
+ "description": "Spielen Sie Kameraaufnahmen zur Fehlerbehebung ab. Die Objektliste zeigt eine zeitversetzte Übersicht der erkannten Objekte an, und auf der Registerkarte „Meldungen“ wird ein Stream der internen Meldungen von Frigate aus dem Wiedergabematerial angezeigt.",
+ "websocket_messages": "Nachrichten",
+ "dialog": {
+ "title": "Debug-Wiedergabe starten",
+ "description": "Erstellen Sie eine temporäre Wiedergabekamera, die historisches Bildmaterial in einer Schleife wiedergibt, um Probleme bei der Objekterkennung und -verfolgung zu beheben. Die Wiedergabekamera verfügt über dieselbe Erkennungskonfiguration wie die Quellkamera. Wählen Sie einen Zeitbereich aus, ab dem die Wiedergabe beginnen soll.",
+ "camera": "Quellkamera",
+ "timeRange": "Zeitraum",
+ "preset": {
+ "1m": "Letzte Minute",
+ "5m": "Die letzten 5 Minuten",
+ "timeline": "Aus der Zeitleiste",
+ "custom": "Benutzerdefiniert"
+ },
+ "startButton": "Wiedergabe starten",
+ "selectFromTimeline": "Auswählen",
+ "starting": "Wiedergabe wird gestartet...",
+ "startLabel": "Start",
+ "endLabel": "Ende",
+ "toast": {
+ "error": "Fehler beim Starten der Debug-Wiedergabe: {{error}}",
+ "alreadyActive": "Eine Wiederholungssitzung ist bereits aktiv",
+ "stopError": "Die Wiedergabe der Debug-Daten konnte nicht beendet werden: {{error}}",
+ "goToReplay": "Zur Aufzeichnung"
+ }
+ },
+ "page": {
+ "noSession": "Keine aktive Debug-Wiedergabesitzung",
+ "noSessionDesc": "Starten Sie eine Debug-Wiedergabe aus der Verlaufsansicht, indem Sie in der Symbolleiste auf die Schaltfläche „Aktionen“ klicken und „Debug-Wiedergabe“ auswählen.",
+ "goToRecordings": "Zur Historie",
+ "preparingClip": "Clip wird vorbereitet…",
+ "preparingClipDesc": "Frigate fasst die Aufzeichnungen für den ausgewählten Zeitraum zusammen. Bei längeren Zeiträumen kann dies eine Minute dauern.",
+ "startingCamera": "Debug-Wiedergabe wird gestartet…",
+ "startError": {
+ "title": "Debug Replay konnte nicht gestartet werden",
+ "back": "Zurück zur Übersicht"
+ },
+ "sourceCamera": "Quell Kamera",
+ "replayCamera": "Wiederholungskamera",
+ "initializingReplay": "Debug-Wiedergabe wird initialisiert...",
+ "stoppingReplay": "Debug-Wiedergabe wird angehalten...",
+ "stopReplay": "Stopp Wiederholung",
+ "confirmStop": {
+ "title": "Debug-Wiedergabe anhalten?",
+ "description": "Dadurch wird die Sitzung beendet und alle temporären Daten werden gelöscht. Sind Sie sicher?",
+ "confirm": "Anhalten Wiederholen",
+ "cancel": "Abbrechen"
+ },
+ "activity": "Aktivität",
+ "objects": "Objektliste",
+ "audioDetections": "Audioerkennungen",
+ "noActivity": "Es wurde keine Aktivität festgestellt",
+ "activeTracking": "Aktive Verfolgung",
+ "noActiveTracking": "Keine aktive Nachverfolgung",
+ "configuration": "Konfiguration",
+ "configurationDesc": "Passen Sie die Einstellungen für die Bewegungserkennung und die Objektverfolgung der Debug-Replay-Kamera an. Es werden keine Änderungen in Ihrer Frigate-Konfigurationsdatei gespeichert."
+ }
+}
diff --git a/web/public/locales/de/views/settings.json b/web/public/locales/de/views/settings.json
index 522b9c63b0..bb1ad25767 100644
--- a/web/public/locales/de/views/settings.json
+++ b/web/public/locales/de/views/settings.json
@@ -347,7 +347,7 @@
"object_mask": "Objektmaske"
},
"revertOverride": {
- "title": "Basis Konfiguration wiederherstellen",
+ "title": "Auf Standardkonfiguration zurücksetzen",
"desc": "Dadurch wird die Profilüberschreibung für {{type}}{{name}} aufgehoben und die Grundkonfiguration wiederhergestellt."
}
},
@@ -1333,7 +1333,8 @@
},
"hikvision": {
"substreamWarning": "Substream 1 ist auf eine niedrige Auflösung festgelegt. Viele Hikvision-Kameras unterstützen zusätzliche Substreams, die in den Kameraeinstellungen aktiviert werden müssen. Es wird empfohlen, diese Streams zu überprüfen und zu nutzen, sofern sie verfügbar sind."
- }
+ },
+ "resolutionUnknown": "Die Auflösung dieses Streams konnte nicht ermittelt werden. Sie sollten die Erkennungsauflösung manuell in den Einstellungen oder in Ihrer Konfiguration festlegen."
}
}
},
@@ -1350,7 +1351,13 @@
"enableDesc": "Eine aktivierte Kamera vorübergehend deaktivieren, bis Frigate neu gestartet wird. Durch das Deaktivieren einer Kamera wird die Verarbeitung der Streams dieser Kamera durch Frigate vollständig unterbrochen. Erkennung, Aufzeichnung und Fehlerbehebung stehen dann nicht mehr zur Verfügung.clean_copy",
"camera": "Kamera"
},
- "cleanCopyWarning": "Niektóre kamery mają włączone zrzuty ekranu, ale mają wyłączoną funkcję czystej kopii. Musisz włączyć clean_copy w konfiguracji zrzutów ekranu, aby móc przesyłać obrazy z tych kamer do Frigate+."
+ "cleanCopyWarning": "Niektóre kamery mają wyłączone migawki"
},
"modelInfo": {
"title": "Informacje o modelu",
diff --git a/web/public/locales/pt/views/chat.json b/web/public/locales/pt/views/chat.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/web/public/locales/pt/views/chat.json
@@ -0,0 +1 @@
+{}
diff --git a/web/public/locales/pt/views/motionSearch.json b/web/public/locales/pt/views/motionSearch.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/web/public/locales/pt/views/motionSearch.json
@@ -0,0 +1 @@
+{}
diff --git a/web/public/locales/pt/views/replay.json b/web/public/locales/pt/views/replay.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/web/public/locales/pt/views/replay.json
@@ -0,0 +1 @@
+{}
diff --git a/web/public/locales/pt_BR/views/chat.json b/web/public/locales/pt_BR/views/chat.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/web/public/locales/pt_BR/views/chat.json
@@ -0,0 +1 @@
+{}
diff --git a/web/public/locales/pt_BR/views/motionSearch.json b/web/public/locales/pt_BR/views/motionSearch.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/web/public/locales/pt_BR/views/motionSearch.json
@@ -0,0 +1 @@
+{}
diff --git a/web/public/locales/pt_BR/views/replay.json b/web/public/locales/pt_BR/views/replay.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/web/public/locales/pt_BR/views/replay.json
@@ -0,0 +1 @@
+{}
diff --git a/web/public/locales/ro/config/cameras.json b/web/public/locales/ro/config/cameras.json
index 01c256adf4..918598b0ad 100644
--- a/web/public/locales/ro/config/cameras.json
+++ b/web/public/locales/ro/config/cameras.json
@@ -13,7 +13,7 @@
"description": "Activată"
},
"audio": {
- "label": "Evenimente audio",
+ "label": "Detecție audio",
"description": "Setări pentru detectarea evenimentelor bazate pe sunet pentru această cameră.",
"enabled": {
"label": "Activare detecție audio",
@@ -485,6 +485,10 @@
"hwaccel_args": {
"label": "Argumente hwaccel export",
"description": "Argumente de accelerare hardware pentru operațiunile de export/transcodare."
+ },
+ "max_concurrent": {
+ "description": "Numărul maxim de sarcini de export de procesat în același timp.",
+ "label": "Număr maxim de exporturi simultane"
}
},
"preview": {
diff --git a/web/public/locales/ro/config/global.json b/web/public/locales/ro/config/global.json
index f5613dc371..f7207df758 100644
--- a/web/public/locales/ro/config/global.json
+++ b/web/public/locales/ro/config/global.json
@@ -1,6 +1,6 @@
{
"audio": {
- "label": "Evenimente audio",
+ "label": "Detecție audio",
"enabled": {
"label": "Activare detecție audio",
"description": "Activează sau dezactivează detecția audio pentru toate camerele."
@@ -594,6 +594,10 @@
"hwaccel_args": {
"label": "Argumente hwaccel export",
"description": "Argumente de accelerare hardware pentru operațiunile de export/transcodare."
+ },
+ "max_concurrent": {
+ "description": "Numărul maxim de sarcini de export de procesat în același timp.",
+ "label": "Număr maxim de exporturi simultane"
}
},
"preview": {
@@ -1161,8 +1165,8 @@
"description": "Activează monitorizarea lățimii de bandă a rețelei pe proces pentru procesele ffmpeg ale camerelor și detectoare (necesită capabilități)."
},
"intel_gpu_device": {
- "label": "Dispozitiv SR-IOV",
- "description": "Identificator de dispozitiv folosit când GPU-urile Intel sunt tratate ca SR-IOV pentru a repara statisticile GPU."
+ "label": "Dispozitiv GPU Intel",
+ "description": "Adresa magistralei PCI sau calea dispozitivului DRM (ex./dev/dri/card1) folosită pentru a fixa statisticile GPU Intel la un anumit dispozitiv când sunt prezente mai multe."
}
},
"version_check": {
diff --git a/web/public/locales/ro/views/chat.json b/web/public/locales/ro/views/chat.json
new file mode 100644
index 0000000000..b87ef2145f
--- /dev/null
+++ b/web/public/locales/ro/views/chat.json
@@ -0,0 +1,46 @@
+{
+ "documentTitle": "Chat - Frigate",
+ "title": "Chat Frigate",
+ "subtitle": "Asistentul tău AI pentru gestionarea camerelor și informații",
+ "placeholder": "Întreabă orice...",
+ "error": "Ceva a mers prost. Te rog încearcă din nou.",
+ "processing": "Procesare...",
+ "toolsUsed": "Folosit: {{tools}}",
+ "showTools": "Arată uneltele ({{count}})",
+ "hideTools": "Ascunde uneltele",
+ "call": "Apelează",
+ "result": "Rezultat",
+ "arguments": "Argumente:",
+ "response": "Răspuns:",
+ "attachment_chip_label": "{{label}} pe {{camera}}",
+ "attachment_chip_remove": "Elimină atașamentul",
+ "open_in_explore": "Deschide în Explorare",
+ "attach_event_aria": "Atașează evenimentul {{eventId}}",
+ "attachment_picker_paste_label": "Sau lipește ID-ul evenimentului",
+ "attachment_picker_attach": "Atașează",
+ "attachment_picker_placeholder": "Atașează un eveniment",
+ "quick_reply_find_similar": "Găsește apariții similare",
+ "quick_reply_tell_me_more": "Spune-mi mai multe despre asta",
+ "quick_reply_when_else": "Când a mai fost văzut?",
+ "quick_reply_find_similar_text": "Găsește apariții similare cu aceasta.",
+ "quick_reply_tell_me_more_text": "Spune-mi mai multe despre acesta.",
+ "quick_reply_when_else_text": "Când a mai fost văzut acesta?",
+ "anchor": "Referință",
+ "similarity_score": "Similaritate",
+ "no_similar_objects_found": "Nu au fost găsite obiecte similare.",
+ "semantic_search_required": "Căutarea semantică trebuie să fie activată pentru a găsi obiecte similare.",
+ "send": "Trimite",
+ "suggested_requests": "Încearcă să întrebi:",
+ "starting_requests": {
+ "show_recent_events": "Arată evenimentele recente",
+ "show_camera_status": "Arată starea camerei",
+ "recap": "Ce s-a întâmplat cât am fost plecat?",
+ "watch_camera": "Urmărește o cameră pentru activitate"
+ },
+ "starting_requests_prompts": {
+ "show_recent_events": "Arată-mi evenimentele recente din ultima oră",
+ "show_camera_status": "Care este starea actuală a camerelor mele?",
+ "recap": "Ce s-a întâmplat cât am fost plecat?",
+ "watch_camera": "Urmărește ușa din față și anunță-mă dacă apare cineva"
+ }
+}
diff --git a/web/public/locales/ro/views/live.json b/web/public/locales/ro/views/live.json
index 6b8c8c979e..59f9c34060 100644
--- a/web/public/locales/ro/views/live.json
+++ b/web/public/locales/ro/views/live.json
@@ -70,7 +70,8 @@
},
"recording": {
"enable": "Activează înregistrarea",
- "disable": "Dezactivează înregistrarea"
+ "disable": "Dezactivează înregistrarea",
+ "disabledInConfig": "Înregistrarea trebuie mai întâi activată în Setări pentru această cameră."
},
"snapshots": {
"disable": "Dezactivează snapshoturile",
diff --git a/web/public/locales/ro/views/motionSearch.json b/web/public/locales/ro/views/motionSearch.json
new file mode 100644
index 0000000000..0f12367484
--- /dev/null
+++ b/web/public/locales/ro/views/motionSearch.json
@@ -0,0 +1,77 @@
+{
+ "documentTitle": "Căutare mișcare - Frigate",
+ "title": "Căutare mișcare",
+ "description": "Desenează un poligon pentru a defini regiunea de interes și specifică un interval de timp pentru a căuta schimbări de mișcare în acea regiune.",
+ "selectCamera": "Căutarea de mișcare se încarcă",
+ "startSearch": "Începe căutarea",
+ "searchStarted": "Căutarea a început",
+ "searchCancelled": "Căutare anulată",
+ "cancelSearch": "Anulează",
+ "searching": "Căutare în curs.",
+ "searchComplete": "Căutare finalizată",
+ "noResultsYet": "Rulează o căutare pentru a găsi schimbări de mișcare în regiunea selectată",
+ "noChangesFound": "Nu au fost detectate schimbări de pixeli în regiunea selectată",
+ "changesFound_one": "Am găsit {{count}} schimbare de mișcare",
+ "changesFound_few": "Am găsit {{count}} schimbări de mișcare",
+ "changesFound_other": "Am găsit {{count}} de schimbări de mișcare",
+ "framesProcessed": "{{count}} cadre procesate",
+ "jumpToTime": "Sari la acest timp",
+ "results": "Rezultate",
+ "showSegmentHeatmap": "Hartă termică",
+ "newSearch": "Căutare nouă",
+ "clearResults": "Curăță rezultatele",
+ "clearROI": "Curăță poligonul",
+ "polygonControls": {
+ "points_one": "{{count}} punct",
+ "points_few": "{{count}} puncte",
+ "points_other": "{{count}} de puncte",
+ "undo": "Anulează ultimul punct",
+ "reset": "Resetează poligonul"
+ },
+ "motionHeatmapLabel": "Harta termică a mișcării",
+ "dialog": {
+ "title": "Căutare mișcare",
+ "cameraLabel": "Cameră",
+ "previewAlt": "Previzualizarea camerei pentru {{camera}}"
+ },
+ "timeRange": {
+ "title": "Interval de căutare",
+ "start": "Timp de început",
+ "end": "Timp de sfârșit"
+ },
+ "settings": {
+ "title": "Setări de căutare",
+ "parallelMode": "Mod paralel",
+ "parallelModeDesc": "Scanează mai multe segmente de înregistrare în același timp (mai rapid, dar consumă semnificativ mai mult procesorul)",
+ "threshold": "Prag de sensibilitate",
+ "thresholdDesc": "Valorile mai mici detectează schimbări mai mici (1-255)",
+ "minArea": "Arie minimă de schimbare",
+ "minAreaDesc": "Procentul minim din regiunea de interes care trebuie să se schimbe pentru a fi considerat semnificativ",
+ "frameSkip": "Omitere cadre",
+ "frameSkipDesc": "Procesează fiecare al N-lea cadru. Setează asta la rata de cadre a camerei tale pentru a procesa un cadru pe secundă (ex. 5 pentru o cameră de 5 FPS, 30 pentru o cameră de 30 FPS). Valorile mai mari vor fi mai rapide, dar pot rata evenimente scurte de mișcare.",
+ "maxResults": "Rezultate maxime",
+ "maxResultsDesc": "Oprește-te după acest număr de marcaje de timp potrivite"
+ },
+ "errors": {
+ "noCamera": "Te rog selectează o cameră",
+ "noROI": "Te rog desenează o regiune de interes",
+ "noTimeRange": "Te rog selectează un interval de timp",
+ "invalidTimeRange": "Timpul de sfârșit trebuie să fie după timpul de început",
+ "searchFailed": "Căutarea a eșuat: {{message}}",
+ "polygonTooSmall": "Poligonul trebuie să aibă cel puțin 3 puncte",
+ "unknown": "Eroare necunoscută"
+ },
+ "changePercentage": "{{percentage}}% schimbat",
+ "metrics": {
+ "title": "Metrici de căutare",
+ "segmentsScanned": "Segmente scanate",
+ "segmentsProcessed": "Procesat",
+ "segmentsSkippedInactive": "Omis (fără activitate)",
+ "segmentsSkippedHeatmap": "Omis (fără suprapunere ROI)",
+ "fallbackFullRange": "Scanare completă de rezervă",
+ "framesDecoded": "Cadre decodate",
+ "wallTime": "Timp de căutare",
+ "segmentErrors": "Erori segment",
+ "seconds": "{{seconds}}s"
+ }
+}
diff --git a/web/public/locales/ro/views/replay.json b/web/public/locales/ro/views/replay.json
new file mode 100644
index 0000000000..b3c854f742
--- /dev/null
+++ b/web/public/locales/ro/views/replay.json
@@ -0,0 +1,59 @@
+{
+ "title": "Reluare de depanare",
+ "description": "Redă înregistrările camerei pentru depanare. Lista de obiecte arată un rezumat decalat în timp al obiectelor detectate, iar tab-ul Mesaje arată un flux de mesaje interne ale Frigate din înregistrarea redată.",
+ "websocket_messages": "Mesaje",
+ "dialog": {
+ "title": "Pornește reluarea de depanare",
+ "description": "Creează o cameră temporară de reluare care rulează în buclă înregistrări istorice pentru depanarea problemelor de detecție și urmărire a obiectelor. Camera de reluare va avea aceeași configurație de detecție ca și camera sursă. Alege un interval de timp pentru a începe.",
+ "camera": "Cameră sursă",
+ "timeRange": "Interval de timp",
+ "preset": {
+ "1m": "Ultimul minut",
+ "5m": "Ultimele 5 minute",
+ "timeline": "Din cronologie",
+ "custom": "Personalizat"
+ },
+ "startButton": "Începe reluarea",
+ "selectFromTimeline": "Selectează",
+ "starting": "Pornire reluare...",
+ "startLabel": "Început",
+ "endLabel": "Sfârșit",
+ "toast": {
+ "error": "Pornirea reluării de depanare a eșuat: {{error}}",
+ "alreadyActive": "O sesiune de reluare este deja activă",
+ "stopError": "Oprirea reluării de depanare a eșuat: {{error}}",
+ "goToReplay": "Mergi la reluare"
+ }
+ },
+ "page": {
+ "noSession": "Nicio sesiune de reluare de depanare activă",
+ "noSessionDesc": "Pornește o reluare de depanare din vizualizarea Istoric dând click pe butonul Acțiuni din bara de instrumente și alegând Reluare depanare.",
+ "goToRecordings": "Mergi la istoric",
+ "preparingClip": "Pregătire clip…",
+ "preparingClipDesc": "Frigate îmbină înregistrările pentru intervalul de timp selectat. Acest lucru poate dura un minut pentru intervale mai mari.",
+ "startingCamera": "Pornire reluare depanare…",
+ "startError": {
+ "title": "Pornirea reluării de depanare a eșuat",
+ "back": "Înapoi la istoric"
+ },
+ "sourceCamera": "Camera sursă",
+ "replayCamera": "Camera de reluare",
+ "initializingReplay": "Inițializare reluare depanare...",
+ "stoppingReplay": "Oprire reluare depanare...",
+ "stopReplay": "Oprește reluarea",
+ "confirmStop": {
+ "title": "Oprești reluarea de depanare?",
+ "description": "Aceasta va opri sesiunea și va șterge toate datele temporare. Ești sigur?",
+ "confirm": "Oprește reluarea",
+ "cancel": "Anulează"
+ },
+ "activity": "Activitate",
+ "objects": "Listă de obiecte",
+ "audioDetections": "Detecții audio",
+ "noActivity": "Nicio activitate detectată",
+ "activeTracking": "Urmărire activă",
+ "noActiveTracking": "Nicio urmărire activă",
+ "configuration": "Configurație",
+ "configurationDesc": "Ajustează setările de detecție a mișcării și urmărire a obiectelor pentru camera de reluare de depanare. Nicio modificare nu este salvată în fișierul tău de configurare Frigate."
+ }
+}
diff --git a/web/public/locales/ro/views/settings.json b/web/public/locales/ro/views/settings.json
index dacf81a59a..4babba1d9e 100644
--- a/web/public/locales/ro/views/settings.json
+++ b/web/public/locales/ro/views/settings.json
@@ -44,7 +44,7 @@
"globalMotion": "Detecție mișcare",
"globalObjects": "Obiecte",
"globalReview": "Recenzie",
- "globalAudioEvents": "Evenimente audio",
+ "globalAudioEvents": "Detecție audio",
"globalLivePlayback": "Redare live",
"globalTimestampStyle": "Stil timestamp",
"systemDatabase": "Bază de date",
@@ -74,7 +74,7 @@
"cameraMotion": "Detecție mișcare",
"cameraObjects": "Obiecte",
"cameraConfigReview": "Recenzie",
- "cameraAudioEvents": "Evenimente audio",
+ "cameraAudioEvents": "Detecție audio",
"cameraAudioTranscription": "Transcriere audio",
"cameraNotifications": "Notificări",
"cameraLivePlayback": "Redare live",
@@ -1356,6 +1356,14 @@
"inherit": "Moștenire",
"enabled": "Activat",
"disabled": "Dezactivat"
+ },
+ "cameraType": {
+ "title": "Tip cameră",
+ "label": "Tip cameră",
+ "description": "Setează tipul pentru fiecare cameră. Camerele LPR dedicate sunt camere cu un singur scop, cu zoom optic puternic pentru a captura plăcuțele de înmatriculare ale vehiculelor aflate la distanță. Majoritatea camerelor ar trebui să folosească tipul normal de cameră, cu excepția cazului în care camera este special pentru LPR și are o vedere strâns focalizată pe plăcuțele de înmatriculare.",
+ "normal": "Normal",
+ "dedicatedLpr": "LPR dedicat",
+ "saveSuccess": "Tipul camerei a fost actualizat pentru {{cameraName}}. Repornește Frigate pentru a aplica modificările."
}
},
"cameraReview": {
@@ -1722,7 +1730,22 @@
"overriddenGlobal": "Suprascris (global)",
"overriddenGlobalTooltip": "Această cameră suprascrie setările globale de configurare din această secțiune",
"overriddenBaseConfig": "Suprascris (configurația de bază)",
- "overriddenBaseConfigTooltip": "Profilul {{profile}} suprascrie setările de configurare din această secțiune"
+ "overriddenBaseConfigTooltip": "Profilul {{profile}} suprascrie setările de configurare din această secțiune",
+ "overriddenInCameras": {
+ "label_one": "Suprascris în {{count}} cameră",
+ "label_few": "Suprascris în {{count}} camere",
+ "label_other": "Suprascris în {{count}} de camere",
+ "tooltip_one": "{{count}} cameră suprascrie valorile din această secțiune. Click pentru a vedea detaliile.",
+ "tooltip_few": "{{count}} camere suprascriu valorile din această secțiune. Click pentru a vedea detaliile.",
+ "tooltip_other": "{{count}} de camere suprascriu valorile din această secțiune. Click pentru a vedea detaliile.",
+ "heading_one": "Această secțiune globală are câmpuri care sunt suprascrise în {{count}} cameră.",
+ "heading_few": "Această secțiune globală are câmpuri care sunt suprascrise în {{count}} camere.",
+ "heading_other": "Această secțiune globală are câmpuri care sunt suprascrise în {{count}} de camere.",
+ "othersField_one": "{{count}} alta",
+ "othersField_few": "{{count}} alte",
+ "othersField_other": "{{count}} de alte",
+ "profilePrefix": "Profil {{profile}}: {{fields}}"
+ }
},
"profiles": {
"title": "Profile",
@@ -1823,7 +1846,8 @@
"review": {
"recordDisabled": "Înregistrarea este dezactivată, elementele de revizuire nu vor fi generate.",
"detectDisabled": "Detecția obiectelor este dezactivată. Elementele de revizuire necesită obiecte detectate pentru a categorisi alertele și detecțiile.",
- "allNonAlertDetections": "Toată activitatea fără alertă va fi inclusă ca detecții."
+ "allNonAlertDetections": "Toată activitatea fără alertă va fi inclusă ca detecții.",
+ "genaiImageSourceRecordingsRecordDisabled": "Sursa imaginii este setată pe 'recordings', dar înregistrarea este dezactivată. Frigate va reveni la imaginile de previzualizare."
},
"audio": {
"noAudioRole": "Niciun flux nu are rolul audio definit. Trebuie să activați rolul audio pentru ca detecția audio să funcționeze."
@@ -1832,15 +1856,18 @@
"audioDetectionDisabled": "Detecția audio nu este activată pentru această cameră. Transcrierea audio necesită ca detecția audio să fie activă."
},
"detect": {
- "fpsGreaterThanFive": "Setarea cadrelor pe secundă pentru detecție la o valoare mai mare de 5 nu este recomandată."
+ "fpsGreaterThanFive": "Setarea FPS-ului de detecție mai mare de 5 nu este recomandată. Valorile mai mari pot cauza probleme de performanță și nu vor oferi niciun beneficiu.",
+ "disabled": "Detecția de obiecte este dezactivată. Snapshot-urile, elementele de revizuire și îmbogățirile precum recunoașterea facială, recunoașterea plăcuțelor de înmatriculare și AI-ul generativ nu vor funcționa."
},
"faceRecognition": {
- "globalDisabled": "Recunoașterea facială nu este activată la nivel global. Activați-o în setările globale pentru ca recunoașterea facială la nivel de cameră să funcționeze.",
- "personNotTracked": "Recunoașterea facială necesită urmărirea obiectului „person”. Asigurați-vă că „person” este în lista de urmărire a obiectelor."
+ "globalDisabled": "Îmbogățirea pentru recunoaștere facială trebuie activată pentru ca funcțiile de recunoaștere facială să funcționeze pe această cameră.",
+ "personNotTracked": "Recunoașterea facială necesită ca obiectul 'person' să fie urmărit. Activează 'person' în Obiecte pentru această cameră.",
+ "modelSizeLarge": "Modelul 'large' necesită un GPU sau NPU pentru o performanță rezonabilă. Folosește 'small' pe sistemele doar cu CPU."
},
"lpr": {
- "globalDisabled": "Recunoașterea plăcuțelor de înmatriculare nu este activată la nivel global. Activați-o în setările globale pentru ca recunoașterea la nivel de cameră să funcționeze.",
- "vehicleNotTracked": "Recunoașterea plăcuțelor de înmatriculare necesită ca „car” sau „motorcycle” să fie urmărite."
+ "globalDisabled": "Îmbogățirea pentru recunoașterea plăcuțelor de înmatriculare trebuie activată pentru ca funcțiile LPR să funcționeze pe această cameră.",
+ "vehicleNotTracked": "Recunoașterea plăcuțelor de înmatriculare necesită ca „car” sau „motorcycle” să fie urmărite.",
+ "modelSizeLarge": "Modelul 'large' este optimizat pentru plăcuțele de înmatriculare pe mai multe rânduri. Modelul 'small' oferă o performanță mai bună decât 'large' și ar trebui folosit cu excepția cazului în care regiunea ta folosește formate de plăcuțe pe mai multe rânduri."
},
"record": {
"noRecordRole": "Niciun flux nu are rolul de înregistrare definit. Înregistrarea nu va funcționa."
@@ -1854,6 +1881,12 @@
"detectors": {
"mixedTypes": "Toți detectorii trebuie să folosească același tip. Șterge detectorii existenți pentru a folosi un alt tip.",
"mixedTypesSuggestion": "Toți detectorii trebuie să folosească același tip. Șterge detectorii existenți sau selectează {{type}}."
+ },
+ "objects": {
+ "genaiNoDescriptionsProvider": "Trebuie să configurezi un furnizor GenAI cu rolul 'descriptions' pentru ca descrierile să fie generate."
+ },
+ "semanticSearch": {
+ "jinav2SmallModelSize": "Dimensiunea 'small' cu modelul Jina V2 are un cost ridicat de RAM și inferență. Modelul 'large' cu un GPU dedicat este recomandat."
}
}
}
diff --git a/web/public/locales/ro/views/system.json b/web/public/locales/ro/views/system.json
index e829edd602..ef285da8b6 100644
--- a/web/public/locales/ro/views/system.json
+++ b/web/public/locales/ro/views/system.json
@@ -241,6 +241,9 @@
"expectedFps": "FPS așteptat",
"reconnectsLastHour": "Reconectări (ultima oră)",
"stallsLastHour": "Blocaje (ultima oră)"
+ },
+ "noCameras": {
+ "title": "Nicio cameră găsită"
}
},
"stats": {
diff --git a/web/public/locales/ru/views/chat.json b/web/public/locales/ru/views/chat.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/web/public/locales/ru/views/chat.json
@@ -0,0 +1 @@
+{}
diff --git a/web/public/locales/ru/views/motionSearch.json b/web/public/locales/ru/views/motionSearch.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/web/public/locales/ru/views/motionSearch.json
@@ -0,0 +1 @@
+{}
diff --git a/web/public/locales/ru/views/replay.json b/web/public/locales/ru/views/replay.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/web/public/locales/ru/views/replay.json
@@ -0,0 +1 @@
+{}
diff --git a/web/public/locales/sk/views/chat.json b/web/public/locales/sk/views/chat.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/web/public/locales/sk/views/chat.json
@@ -0,0 +1 @@
+{}
diff --git a/web/public/locales/sk/views/motionSearch.json b/web/public/locales/sk/views/motionSearch.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/web/public/locales/sk/views/motionSearch.json
@@ -0,0 +1 @@
+{}
diff --git a/web/public/locales/sk/views/replay.json b/web/public/locales/sk/views/replay.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/web/public/locales/sk/views/replay.json
@@ -0,0 +1 @@
+{}
diff --git a/web/public/locales/sl/views/chat.json b/web/public/locales/sl/views/chat.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/web/public/locales/sl/views/chat.json
@@ -0,0 +1 @@
+{}
diff --git a/web/public/locales/sl/views/motionSearch.json b/web/public/locales/sl/views/motionSearch.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/web/public/locales/sl/views/motionSearch.json
@@ -0,0 +1 @@
+{}
diff --git a/web/public/locales/sl/views/replay.json b/web/public/locales/sl/views/replay.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/web/public/locales/sl/views/replay.json
@@ -0,0 +1 @@
+{}
diff --git a/web/public/locales/sq/views/chat.json b/web/public/locales/sq/views/chat.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/web/public/locales/sq/views/chat.json
@@ -0,0 +1 @@
+{}
diff --git a/web/public/locales/sq/views/motionSearch.json b/web/public/locales/sq/views/motionSearch.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/web/public/locales/sq/views/motionSearch.json
@@ -0,0 +1 @@
+{}
diff --git a/web/public/locales/sq/views/replay.json b/web/public/locales/sq/views/replay.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/web/public/locales/sq/views/replay.json
@@ -0,0 +1 @@
+{}
diff --git a/web/public/locales/sr/views/chat.json b/web/public/locales/sr/views/chat.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/web/public/locales/sr/views/chat.json
@@ -0,0 +1 @@
+{}
diff --git a/web/public/locales/sr/views/motionSearch.json b/web/public/locales/sr/views/motionSearch.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/web/public/locales/sr/views/motionSearch.json
@@ -0,0 +1 @@
+{}
diff --git a/web/public/locales/sr/views/replay.json b/web/public/locales/sr/views/replay.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/web/public/locales/sr/views/replay.json
@@ -0,0 +1 @@
+{}
diff --git a/web/public/locales/sv/config/cameras.json b/web/public/locales/sv/config/cameras.json
index 0967ef424b..bfa6612cd2 100644
--- a/web/public/locales/sv/config/cameras.json
+++ b/web/public/locales/sv/config/cameras.json
@@ -1 +1,6 @@
-{}
+{
+ "label": "Kamera konfiguration",
+ "name": {
+ "label": "Kameranamn"
+ }
+}
diff --git a/web/public/locales/sv/config/global.json b/web/public/locales/sv/config/global.json
index 0967ef424b..f123fa26cf 100644
--- a/web/public/locales/sv/config/global.json
+++ b/web/public/locales/sv/config/global.json
@@ -1 +1,5 @@
-{}
+{
+ "version": {
+ "label": "Nuvarande konfigurationsversion"
+ }
+}
diff --git a/web/public/locales/sv/config/groups.json b/web/public/locales/sv/config/groups.json
index 0967ef424b..4a81abf8e8 100644
--- a/web/public/locales/sv/config/groups.json
+++ b/web/public/locales/sv/config/groups.json
@@ -1 +1,7 @@
-{}
+{
+ "audio": {
+ "global": {
+ "sensitivity": "Global känslighet"
+ }
+ }
+}
diff --git a/web/public/locales/sv/config/validation.json b/web/public/locales/sv/config/validation.json
index 0967ef424b..23e4d27483 100644
--- a/web/public/locales/sv/config/validation.json
+++ b/web/public/locales/sv/config/validation.json
@@ -1 +1,3 @@
-{}
+{
+ "minimum": "Måste minst vara {{limit}}"
+}
diff --git a/web/public/locales/sv/views/chat.json b/web/public/locales/sv/views/chat.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/web/public/locales/sv/views/chat.json
@@ -0,0 +1 @@
+{}
diff --git a/web/public/locales/sv/views/motionSearch.json b/web/public/locales/sv/views/motionSearch.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/web/public/locales/sv/views/motionSearch.json
@@ -0,0 +1 @@
+{}
diff --git a/web/public/locales/sv/views/replay.json b/web/public/locales/sv/views/replay.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/web/public/locales/sv/views/replay.json
@@ -0,0 +1 @@
+{}
diff --git a/web/public/locales/th/views/chat.json b/web/public/locales/th/views/chat.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/web/public/locales/th/views/chat.json
@@ -0,0 +1 @@
+{}
diff --git a/web/public/locales/th/views/motionSearch.json b/web/public/locales/th/views/motionSearch.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/web/public/locales/th/views/motionSearch.json
@@ -0,0 +1 @@
+{}
diff --git a/web/public/locales/th/views/replay.json b/web/public/locales/th/views/replay.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/web/public/locales/th/views/replay.json
@@ -0,0 +1 @@
+{}
diff --git a/web/public/locales/tr/views/chat.json b/web/public/locales/tr/views/chat.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/web/public/locales/tr/views/chat.json
@@ -0,0 +1 @@
+{}
diff --git a/web/public/locales/tr/views/motionSearch.json b/web/public/locales/tr/views/motionSearch.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/web/public/locales/tr/views/motionSearch.json
@@ -0,0 +1 @@
+{}
diff --git a/web/public/locales/tr/views/replay.json b/web/public/locales/tr/views/replay.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/web/public/locales/tr/views/replay.json
@@ -0,0 +1 @@
+{}
diff --git a/web/public/locales/uk/config/cameras.json b/web/public/locales/uk/config/cameras.json
index 0967ef424b..c0be2e59ac 100644
--- a/web/public/locales/uk/config/cameras.json
+++ b/web/public/locales/uk/config/cameras.json
@@ -1 +1,15 @@
-{}
+{
+ "name": {
+ "label": "Назва камери",
+ "description": "Потрібно вказати назву камери"
+ },
+ "label": "Конфігурація камери",
+ "friendly_name": {
+ "label": "Зрозуміле ім'я",
+ "description": "Зручна назва камери, що використовується в інтерфейсі Frigate"
+ },
+ "enabled": {
+ "label": "Увімкнено",
+ "description": "Увімкнено"
+ }
+}
diff --git a/web/public/locales/uk/views/chat.json b/web/public/locales/uk/views/chat.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/web/public/locales/uk/views/chat.json
@@ -0,0 +1 @@
+{}
diff --git a/web/public/locales/uk/views/motionSearch.json b/web/public/locales/uk/views/motionSearch.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/web/public/locales/uk/views/motionSearch.json
@@ -0,0 +1 @@
+{}
diff --git a/web/public/locales/uk/views/replay.json b/web/public/locales/uk/views/replay.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/web/public/locales/uk/views/replay.json
@@ -0,0 +1 @@
+{}
diff --git a/web/public/locales/ur/audio.json b/web/public/locales/ur/audio.json
index b6b532255a..6d7904e2b7 100644
--- a/web/public/locales/ur/audio.json
+++ b/web/public/locales/ur/audio.json
@@ -34,5 +34,20 @@
"train": "ٹرین",
"bicycle": "سائیکل",
"crying": "رونا",
- "sigh": "آہیں"
+ "sigh": "آہیں",
+ "choir": "کوئر",
+ "yodeling": "یوڈیلنگ",
+ "chant": "نعرہ لگانا",
+ "mantra": "منتر",
+ "child_singing": "چائلڈ گانا",
+ "synthetic_singing": "مصنوعی گانا",
+ "rapping": "ریپنگ",
+ "humming": "گنگنانا",
+ "groan": "کراہنا",
+ "grunt": "گرنٹ",
+ "whistling": "سیٹی بجانا",
+ "breathing": "سانس لینا",
+ "gasp": "ہانپنا",
+ "pant": "ہانپنا",
+ "snort": "خراٹے"
}
diff --git a/web/public/locales/ur/components/auth.json b/web/public/locales/ur/components/auth.json
index e7625b65c5..ab19b2e150 100644
--- a/web/public/locales/ur/components/auth.json
+++ b/web/public/locales/ur/components/auth.json
@@ -1,6 +1,6 @@
{
"form": {
- "user": "صارف نام",
+ "user": "اکاؤنٹ کا نام",
"password": "پاسورڈ",
"login": "لاگ ان",
"errors": {
diff --git a/web/public/locales/ur/views/chat.json b/web/public/locales/ur/views/chat.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/web/public/locales/ur/views/chat.json
@@ -0,0 +1 @@
+{}
diff --git a/web/public/locales/ur/views/classificationModel.json b/web/public/locales/ur/views/classificationModel.json
index 0967ef424b..7893f7d013 100644
--- a/web/public/locales/ur/views/classificationModel.json
+++ b/web/public/locales/ur/views/classificationModel.json
@@ -1 +1,3 @@
-{}
+{
+ "documentTitle": "درجہ بندی کے ماڈلز - فریگیٹ"
+}
diff --git a/web/public/locales/ur/views/faceLibrary.json b/web/public/locales/ur/views/faceLibrary.json
index cfb7dce625..9185231539 100644
--- a/web/public/locales/ur/views/faceLibrary.json
+++ b/web/public/locales/ur/views/faceLibrary.json
@@ -1,6 +1,6 @@
{
"description": {
- "addFace": "فیس لائبریری میں نئی کلیکشن شامل کرنے کا طریقہ بتائیں۔",
+ "addFace": "اپنی پہلی تصویر اپ لوڈ کرکے فیس لائبریری میں ایک نیا کلیکشن شامل کریں۔",
"placeholder": "اس مجموعہ کے لیے ایک نام درج کریں",
"invalidName": "غلط نام۔ ناموں میں صرف حروف، اعداد، فاصلے، اپوسٹروف، انڈر اسکور، اور ہائفن شامل ہو سکتے ہیں۔"
},
diff --git a/web/public/locales/ur/views/motionSearch.json b/web/public/locales/ur/views/motionSearch.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/web/public/locales/ur/views/motionSearch.json
@@ -0,0 +1 @@
+{}
diff --git a/web/public/locales/ur/views/replay.json b/web/public/locales/ur/views/replay.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/web/public/locales/ur/views/replay.json
@@ -0,0 +1 @@
+{}
diff --git a/web/public/locales/uz/views/chat.json b/web/public/locales/uz/views/chat.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/web/public/locales/uz/views/chat.json
@@ -0,0 +1 @@
+{}
diff --git a/web/public/locales/uz/views/motionSearch.json b/web/public/locales/uz/views/motionSearch.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/web/public/locales/uz/views/motionSearch.json
@@ -0,0 +1 @@
+{}
diff --git a/web/public/locales/uz/views/replay.json b/web/public/locales/uz/views/replay.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/web/public/locales/uz/views/replay.json
@@ -0,0 +1 @@
+{}
diff --git a/web/public/locales/vi/views/chat.json b/web/public/locales/vi/views/chat.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/web/public/locales/vi/views/chat.json
@@ -0,0 +1 @@
+{}
diff --git a/web/public/locales/vi/views/motionSearch.json b/web/public/locales/vi/views/motionSearch.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/web/public/locales/vi/views/motionSearch.json
@@ -0,0 +1 @@
+{}
diff --git a/web/public/locales/vi/views/replay.json b/web/public/locales/vi/views/replay.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/web/public/locales/vi/views/replay.json
@@ -0,0 +1 @@
+{}
diff --git a/web/public/locales/yue_Hant/views/chat.json b/web/public/locales/yue_Hant/views/chat.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/web/public/locales/yue_Hant/views/chat.json
@@ -0,0 +1 @@
+{}
diff --git a/web/public/locales/yue_Hant/views/motionSearch.json b/web/public/locales/yue_Hant/views/motionSearch.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/web/public/locales/yue_Hant/views/motionSearch.json
@@ -0,0 +1 @@
+{}
diff --git a/web/public/locales/yue_Hant/views/replay.json b/web/public/locales/yue_Hant/views/replay.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/web/public/locales/yue_Hant/views/replay.json
@@ -0,0 +1 @@
+{}
diff --git a/web/public/locales/zh-CN/config/cameras.json b/web/public/locales/zh-CN/config/cameras.json
index b057bad7d2..5bd976c693 100644
--- a/web/public/locales/zh-CN/config/cameras.json
+++ b/web/public/locales/zh-CN/config/cameras.json
@@ -13,7 +13,7 @@
"description": "开启"
},
"audio": {
- "label": "音频事件",
+ "label": "音频检测",
"description": "此摄像头的音频事件检测设置。",
"enabled": {
"label": "开启音频检测",
@@ -516,6 +516,10 @@
"hwaccel_args": {
"label": "导出硬件加速参数",
"description": "用于导出/转码操作的硬件加速参数。"
+ },
+ "max_concurrent": {
+ "label": "最大并发导出数",
+ "description": "同时可处理的最大导出任务数量。"
}
},
"preview": {
diff --git a/web/public/locales/zh-CN/config/global.json b/web/public/locales/zh-CN/config/global.json
index 5dbb98d74b..fed5425d7b 100644
--- a/web/public/locales/zh-CN/config/global.json
+++ b/web/public/locales/zh-CN/config/global.json
@@ -24,7 +24,7 @@
}
},
"audio": {
- "label": "音频事件",
+ "label": "音频检测",
"enabled": {
"label": "开启音频检测",
"description": "为所有摄像头启用或禁用音频事件检测;可按摄像头覆盖。"
@@ -522,8 +522,8 @@
"description": "为摄像头 ffmpeg 进程和检测器启用按进程网络带宽监控(需要权限)。"
},
"intel_gpu_device": {
- "label": "SR-IOV 设备",
- "description": "将 Intel GPU 视为 SR-IOV 时使用的设备标识符,用于修复 GPU 统计信息。"
+ "label": "Intel GPU 设备",
+ "description": "当系统存在多个 Intel 显卡时,用于将显卡运行数据绑定到指定设备的 PCI 总线地址或 DRM 设备路径(示例:/dev/dri/card1)。"
}
},
"version_check": {
@@ -1735,6 +1735,10 @@
"hwaccel_args": {
"label": "导出硬件加速参数",
"description": "用于导出/转码操作的硬件加速参数。"
+ },
+ "max_concurrent": {
+ "label": "最大并发导出数",
+ "description": "同时可处理的最大导出任务数量。"
}
},
"preview": {
diff --git a/web/public/locales/zh-CN/views/live.json b/web/public/locales/zh-CN/views/live.json
index 10b8641d3f..53688c6dfa 100644
--- a/web/public/locales/zh-CN/views/live.json
+++ b/web/public/locales/zh-CN/views/live.json
@@ -70,7 +70,8 @@
},
"recording": {
"enable": "开启录制",
- "disable": "关闭录制"
+ "disable": "关闭录制",
+ "disabledInConfig": "必须先在该摄像头的设置中开启录制功能。"
},
"snapshots": {
"enable": "开启快照",
diff --git a/web/public/locales/zh-CN/views/settings.json b/web/public/locales/zh-CN/views/settings.json
index 7889786823..3831dfc56c 100644
--- a/web/public/locales/zh-CN/views/settings.json
+++ b/web/public/locales/zh-CN/views/settings.json
@@ -45,7 +45,7 @@
"globalMotion": "画面变动检测",
"globalObjects": "目标",
"globalReview": "核查",
- "globalAudioEvents": "音频事件",
+ "globalAudioEvents": "音频检测",
"globalLivePlayback": "实时监控观看",
"globalTimestampStyle": "时间戳样式",
"systemDatabase": "数据库",
@@ -75,7 +75,7 @@
"cameraMotion": "画面变动检测",
"cameraObjects": "目标",
"cameraConfigReview": "核查",
- "cameraAudioEvents": "音频事件",
+ "cameraAudioEvents": "音频检测",
"cameraAudioTranscription": "音频转录",
"cameraNotifications": "通知",
"cameraLivePlayback": "实时监控观看",
@@ -1412,6 +1412,14 @@
"inherit": "继承",
"enabled": "开启",
"disabled": "关闭"
+ },
+ "cameraType": {
+ "title": "摄像头类型",
+ "label": "摄像头类型",
+ "description": "为每路摄像头设置类型。专用车牌识别(LPR)摄像头为单用途设备,配备高倍光学变焦,可抓拍远处车辆的车牌。绝大多数摄像头应选用通用类型;只有专为车牌识别部署、且画面聚焦对准车牌的摄像头,才需选择专用 LPR 类型。",
+ "normal": "通用",
+ "dedicatedLpr": "车牌识别专用",
+ "saveSuccess": "已更新 {{cameraName}} 的摄像头类型,请重启 Frigate 以使更改生效。"
}
},
"cameraReview": {
@@ -1773,7 +1781,14 @@
"overriddenGlobal": "已覆盖全局通用配置",
"overriddenGlobalTooltip": "当前摄像头配置,将优先覆盖全局通用设置",
"overriddenBaseConfigTooltip": "当前 {{profile}} 配置模板会覆盖本节所有设置",
- "overriddenBaseConfig": "已覆盖默认配置"
+ "overriddenBaseConfig": "已覆盖默认配置",
+ "overriddenInCameras": {
+ "label_other": "已在 {{count}} 个摄像头中单独配置",
+ "tooltip_other": "{{count}} 个摄像头在此项中存在单独配置,点击查看详情。",
+ "heading_other": "此全局设置项下有 {{count}} 个摄像头存在自定义单独配置。",
+ "othersField_other": "其余 {{count}} 个",
+ "profilePrefix": "{{profile}} 配置方案:{{fields}}"
+ }
},
"profiles": {
"title": "配置模板",
@@ -1872,11 +1887,13 @@
"review": {
"recordDisabled": "录制已禁用,不会生成核查记录项。",
"detectDisabled": "目标检测已禁用。核查记录需要依靠检测到的目标来对警报和检测事件进行分类。",
- "allNonAlertDetections": "所有非警报类活动都将被记录为检测事件。"
+ "allNonAlertDetections": "所有非警报类活动都将被记录为检测事件。",
+ "genaiImageSourceRecordingsRecordDisabled": "图像源虽然设置为“录制”,但录制功能已关闭。Frigate 将自动降级使用预览图片。"
},
"lpr": {
- "vehicleNotTracked": "车牌识别需要先开启对 “汽车” 或 “摩托车” 的目标追踪。",
- "globalDisabled": "车牌识别未在全局开启。请在全局设置中开启该功能,才能在摄像头下单独配置车牌识别是否开启。"
+ "vehicleNotTracked": "车牌识别需要先开启对 “汽车” 或 “摩托车” 的目标追踪。请在该摄像头的检测目标中添加“汽车”或“摩托车”。",
+ "globalDisabled": "要让该摄像头的车牌识别功能正常使用,必须先开启车牌识别增强功能。",
+ "modelSizeLarge": "大型模型针对多行格式车牌做了优化。小型模型的性能优于大型模型,而且只有小型模型才能支持中文车牌。除非你所在地区使用多行车牌格式,否则建议使用小型模型。"
},
"audio": {
"noAudioRole": "暂无任何流已开启音频(audio)功能(role)。必须在视频流上启用音频功能,音频检测才能正常工作。"
@@ -1885,11 +1902,13 @@
"audioDetectionDisabled": "该摄像头未开启音频检测功能。音频转录需要先开启音频检测。"
},
"detect": {
- "fpsGreaterThanFive": "不建议设置检测帧率高于 5。"
+ "fpsGreaterThanFive": "不建议设置检测帧率高于 5,数值设置过高可能引发性能问题,且不会带来任何增益。",
+ "disabled": "目标检测已禁用。快照、回放条目以及人脸识别、车牌识别、生成式 AI 等增强功能都将无法使用。"
},
"faceRecognition": {
- "globalDisabled": "人脸识别未在全局开启。请在全局设置中开启该功能,才能在摄像头下单独配置人脸识别是否开启。",
- "personNotTracked": "人脸识别需要检测到 “人”(person) 后才能工作。请确保 “person” 已添加到目标追踪列表中。"
+ "globalDisabled": "必须开启人脸识别增强功能,此摄像头的人脸识别相关功能才能正常使用。",
+ "personNotTracked": "人脸识别需要检测到 “人”(person) 后才能工作。请在该摄像头的检测目标设置中添加“人”。",
+ "modelSizeLarge": "大型模型需要 GPU 或 NPU 才能运行正常。仅使用 CPU 的设备请选用小型模型。"
},
"record": {
"noRecordRole": "暂无任何视频流已配置录制功能,录制功能将无法正常工作。"
@@ -1903,6 +1922,12 @@
"detectors": {
"mixedTypes": "所有检测器必须为同一类型。若要更换为其他类型,请先移除现有的检测器。",
"mixedTypesSuggestion": "所有检测器必须使用相同类型。请移除现有检测器,或选择 {{type}}。"
+ },
+ "objects": {
+ "genaiNoDescriptionsProvider": "必须配置具备“描述”功能的生成式 AI 服务商,才能自动生成事件描述。"
+ },
+ "semanticSearch": {
+ "jinav2SmallModelSize": "Jina V2 的大型模型版本内存占用与推理开销较高,建议搭配独立显卡使用大型模型。"
}
}
}
diff --git a/web/public/locales/zh-CN/views/system.json b/web/public/locales/zh-CN/views/system.json
index 6e406674a7..79882b6afe 100644
--- a/web/public/locales/zh-CN/views/system.json
+++ b/web/public/locales/zh-CN/views/system.json
@@ -213,6 +213,9 @@
"expectedFps": "预期帧率",
"reconnectsLastHour": "最近一小时重连次数",
"stallsLastHour": "最近一小时卡顿次数"
+ },
+ "noCameras": {
+ "title": "没有找到摄像头"
}
},
"lastRefreshed": "最后刷新时间: ",
diff --git a/web/public/locales/zh-Hans/views/motionSearch.json b/web/public/locales/zh-Hans/views/motionSearch.json
new file mode 100644
index 0000000000..af8874daf1
--- /dev/null
+++ b/web/public/locales/zh-Hans/views/motionSearch.json
@@ -0,0 +1,73 @@
+{
+ "documentTitle": "变动搜索 - Frigate",
+ "title": "画面变动搜索",
+ "description": "绘制一个多边形以划定感兴趣区域,并指定时间范围,检索该区域内的异动变化。",
+ "selectCamera": "画面变动搜索正在加载中",
+ "startSearch": "开始搜索",
+ "searchStarted": "搜索已开始",
+ "searchCancelled": "搜索已取消",
+ "cancelSearch": "取消",
+ "searching": "搜索进行中。",
+ "searchComplete": "搜索完成",
+ "noResultsYet": "在所选区域内执行搜索,查找异常变化",
+ "noChangesFound": "所选区域未检测到像素变化",
+ "changesFound_other": "检测到 {{count}} 处画面变化",
+ "framesProcessed": "已处理 {{count}} 帧画面",
+ "jumpToTime": "跳转到该时间",
+ "results": "结果",
+ "showSegmentHeatmap": "热力图",
+ "newSearch": "新的搜索",
+ "clearResults": "清除结果",
+ "clearROI": "清除多边形选区",
+ "polygonControls": {
+ "points_other": "{{count}} 个点位",
+ "undo": "撤销上一个点位",
+ "reset": "重置多边形"
+ },
+ "motionHeatmapLabel": "画面变动热力图",
+ "dialog": {
+ "title": "画面变动搜索",
+ "cameraLabel": "摄像头",
+ "previewAlt": "{{camera}} 摄像头实时预览"
+ },
+ "timeRange": {
+ "title": "搜索范围",
+ "start": "开始时间",
+ "end": "结束时间"
+ },
+ "settings": {
+ "title": "搜索设置",
+ "parallelMode": "并行模式",
+ "parallelModeDesc": "同时扫描多个录制片段(速度更快,但 CPU 占用会显著升高)",
+ "threshold": "灵敏度阈值",
+ "thresholdDesc": "数值越低,可检测到越小的变化(取值范围 1-255)",
+ "minArea": "最小变化区域",
+ "minAreaDesc": "最小感兴趣区域变化占比,达到该比例才会判定为有效变动",
+ "frameSkip": "帧跳过",
+ "frameSkipDesc": "每隔 N 帧进行一次处理。将该值设置为摄像头的帧率,即可实现每秒处理一帧画面(例如:5 帧 / 秒的摄像头设为 5,30 帧 / 秒的摄像头设为 30)。数值越高处理速度越快,但有可能遗漏短时移动侦测事件。",
+ "maxResults": "最大结果数",
+ "maxResultsDesc": "匹配到设定条数的录像事件后,就自动停止检索"
+ },
+ "errors": {
+ "noCamera": "请选择摄像头",
+ "noROI": "请绘制感兴趣的区域",
+ "noTimeRange": "请选择时间范围",
+ "invalidTimeRange": "结束时间必须在开始时间之后",
+ "searchFailed": "搜索失败:{{message}}",
+ "polygonTooSmall": "多边形至少需要 3 个顶点",
+ "unknown": "未知错误"
+ },
+ "changePercentage": "{{percentage}}% 已变化",
+ "metrics": {
+ "title": "搜索指标",
+ "segmentsScanned": "已扫描片段数",
+ "segmentsProcessed": "已处理",
+ "segmentsSkippedInactive": "已跳过(无活动)",
+ "segmentsSkippedHeatmap": "已跳过(不在感兴趣区域)",
+ "fallbackFullRange": "备用全范围扫描",
+ "framesDecoded": "画面已解码",
+ "wallTime": "搜索时间",
+ "segmentErrors": "片段异常",
+ "seconds": "{{seconds}} 秒"
+ }
+}
diff --git a/web/public/locales/zh-Hans/views/replay.json b/web/public/locales/zh-Hans/views/replay.json
new file mode 100644
index 0000000000..00634af5d7
--- /dev/null
+++ b/web/public/locales/zh-Hans/views/replay.json
@@ -0,0 +1,59 @@
+{
+ "title": "调试回放",
+ "description": "回放摄像头录像以供调试。目标列表会延时展示已检测目标的汇总信息,消息标签页则实时展示回放录像对应的 Frigate 内部日志信息流。",
+ "websocket_messages": "消息",
+ "dialog": {
+ "title": "开始调试回放",
+ "description": "创建临时回放摄像头,循环播放历史录制视频,用于调试目标检测与追踪相关问题。临时回放的摄像头将沿用原摄像头的检测配置。请选择一个时间范围开始。",
+ "camera": "原摄像头",
+ "timeRange": "时间范围",
+ "preset": {
+ "1m": "最后 1 分钟",
+ "5m": "最后 5 分钟",
+ "timeline": "从时间线",
+ "custom": "自定义"
+ },
+ "startButton": "开始回放",
+ "selectFromTimeline": "选择",
+ "starting": "开始回放…",
+ "startLabel": "开始",
+ "endLabel": "结束",
+ "toast": {
+ "error": "调试回放启动失败:{{error}}",
+ "alreadyActive": "已有回放会话正在运行",
+ "stopError": "调试回放停止失败:{{error}}",
+ "goToReplay": "进入回放"
+ }
+ },
+ "page": {
+ "noSession": "没有正在进行的调试回放会话",
+ "noSessionDesc": "从历史回放页面启动调试回放:点击工具栏中的操作按钮,选择调试回放即可。",
+ "goToRecordings": "查看历史记录",
+ "preparingClip": "正在准备片段…",
+ "preparingClipDesc": "Frigate 正在拼接所选时间范围的录像片段。时间跨度较大时,该过程可能需要一分钟左右。",
+ "startingCamera": "开始调试回放中…",
+ "startError": {
+ "title": "调试回放启动失败",
+ "back": "返回历史记录"
+ },
+ "sourceCamera": "源摄像头",
+ "replayCamera": "回放摄像头",
+ "initializingReplay": "初始化调试回放中…",
+ "stoppingReplay": "正在停止调试回放…",
+ "stopReplay": "停止回放",
+ "confirmStop": {
+ "title": "要停止调试回放吗?",
+ "description": "这将终止会话并清除所有临时数据。是否确定?",
+ "confirm": "停止回放",
+ "cancel": "取消"
+ },
+ "activity": "活动",
+ "objects": "目标列表",
+ "audioDetections": "音频检测",
+ "noActivity": "未检测到活动",
+ "activeTracking": "活动追踪中",
+ "noActiveTracking": "没有活动追踪",
+ "configuration": "配置",
+ "configurationDesc": "微调调试回放摄像头的移动侦测与目标追踪参数。本次调整不会保存到你的 Frigate 配置文件中。"
+ }
+}
diff --git a/web/public/locales/zh_Hans/views/chat.json b/web/public/locales/zh_Hans/views/chat.json
new file mode 100644
index 0000000000..894b3c6d50
--- /dev/null
+++ b/web/public/locales/zh_Hans/views/chat.json
@@ -0,0 +1,46 @@
+{
+ "documentTitle": "聊天 - Frigate",
+ "title": "Frigate 聊天",
+ "subtitle": "你的摄像头管理与智能分析 AI 助手",
+ "placeholder": "尝试问我任何事儿…",
+ "error": "出现错误,请稍后重试。",
+ "processing": "进行中…",
+ "toolsUsed": "使用:{{tools}}",
+ "showTools": "显示工具({{count}})",
+ "hideTools": "隐藏工具",
+ "call": "调用",
+ "result": "结果",
+ "arguments": "参数:",
+ "response": "响应:",
+ "attachment_chip_label": "在 {{camera}} 的 {{label}}",
+ "attachment_chip_remove": "移除附件",
+ "open_in_explore": "从浏览中打开",
+ "attach_event_aria": "关联事件 {{eventId}}",
+ "attachment_picker_paste_label": "或粘贴事件 ID",
+ "attachment_picker_attach": "关联",
+ "attachment_picker_placeholder": "关联一个事件",
+ "quick_reply_find_similar": "查找相似抓拍事件",
+ "quick_reply_tell_me_more": "了解更多详情",
+ "quick_reply_when_else": "还在哪些时段出现过?",
+ "quick_reply_find_similar_text": "查找与此相似的抓拍记录。",
+ "quick_reply_tell_me_more_text": "了解此条更多详情。",
+ "starting_requests": {
+ "show_recent_events": "查看近期事件",
+ "show_camera_status": "显示摄像头状态",
+ "recap": "我不在的时候发生了什么?",
+ "watch_camera": "监控摄像头活动"
+ },
+ "quick_reply_when_else_text": "还在哪些时间出现过?",
+ "anchor": "来源",
+ "similarity_score": "相似度",
+ "no_similar_objects_found": "未找到相似目标。",
+ "semantic_search_required": "必须启用语义搜索才能查找相似目标。",
+ "send": "发送",
+ "suggested_requests": "尝试问问:",
+ "starting_requests_prompts": {
+ "show_recent_events": "显示最近一小时的事件",
+ "show_camera_status": "我的摄像头当前状态如何?",
+ "recap": "我不在的时候发生了什么事?",
+ "watch_camera": "监控前门,有人出现就通知我"
+ }
+}
diff --git a/web/public/locales/zh_Hant/views/chat.json b/web/public/locales/zh_Hant/views/chat.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/web/public/locales/zh_Hant/views/chat.json
@@ -0,0 +1 @@
+{}
diff --git a/web/public/locales/zh_Hant/views/motionSearch.json b/web/public/locales/zh_Hant/views/motionSearch.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/web/public/locales/zh_Hant/views/motionSearch.json
@@ -0,0 +1 @@
+{}
diff --git a/web/public/locales/zh_Hant/views/replay.json b/web/public/locales/zh_Hant/views/replay.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/web/public/locales/zh_Hant/views/replay.json
@@ -0,0 +1 @@
+{}