diff --git a/web/public/locales/ar/audio.json b/web/public/locales/ar/audio.json index 4a155d696..5c6d14263 100644 --- a/web/public/locales/ar/audio.json +++ b/web/public/locales/ar/audio.json @@ -8,7 +8,7 @@ "chewing": "مَضْغ", "yodeling": "غناء متقلب", "howl": "عُوَاء", - "speech": "كلام", + "speech": "تحدث", "hiccup": "فُوَاق", "dog": "كَلْب", "yip": "نُبَيْحَة", @@ -67,5 +67,8 @@ "caterwaul": "صُرَاخ مُتَوَاصِل", "livestock": "مَاشِيَة", "horse": "حِصَان", - "clip_clop": "حَوَافِر الخَيْل" + "clip_clop": "حَوَافِر الخَيْل", + "car": "سيارة", + "motorcycle": "دراجة نارية", + "bicycle": "دراجة هوائية" } diff --git a/web/public/locales/ar/common.json b/web/public/locales/ar/common.json index 0967ef424..691643630 100644 --- a/web/public/locales/ar/common.json +++ b/web/public/locales/ar/common.json @@ -1 +1,8 @@ -{} +{ + "time": { + "untilForTime": "حتى {{time}}", + "untilForRestart": "حتى يعاد تشغيل فرايجيت.", + "untilRestart": "حتى إعادة التشغيل", + "ago": "منذ {{timeAgo}}" + } +} diff --git a/web/public/locales/ar/components/auth.json b/web/public/locales/ar/components/auth.json index 0967ef424..70379fe7f 100644 --- a/web/public/locales/ar/components/auth.json +++ b/web/public/locales/ar/components/auth.json @@ -1 +1,7 @@ -{} +{ + "form": { + "password": "كلمة السر", + "user": "أسم المستخدم", + "login": "تسجيل الدخول" + } +} diff --git a/web/public/locales/ar/components/camera.json b/web/public/locales/ar/components/camera.json index 0967ef424..daaddbfac 100644 --- a/web/public/locales/ar/components/camera.json +++ b/web/public/locales/ar/components/camera.json @@ -1 +1,10 @@ -{} +{ + "group": { + "label": "مجموعات الكاميرات", + "add": "إضافة مجموعة الكاميرات", + "edit": "تعديل مجموعة الكاميرات", + "delete": { + "label": "حذف مجموعة الكاميرات" + } + } +} diff --git a/web/public/locales/ar/components/dialog.json b/web/public/locales/ar/components/dialog.json index 0967ef424..2d3372caa 100644 --- a/web/public/locales/ar/components/dialog.json +++ b/web/public/locales/ar/components/dialog.json @@ -1 +1,9 @@ -{} +{ + "restart": { + "title": "هل أنت متأكد أنك تريد إعادة تشغيل فرايجيت؟", + "button": "إعادة التشغيل", + "restarting": { + "title": "يتم إعادة تشغيل فرايجيت" + } + } +} diff --git a/web/public/locales/ar/components/filter.json b/web/public/locales/ar/components/filter.json index 0967ef424..e55bedd66 100644 --- a/web/public/locales/ar/components/filter.json +++ b/web/public/locales/ar/components/filter.json @@ -1 +1,9 @@ -{} +{ + "filter": "ترشيح", + "labels": { + "label": "التسميات", + "all": { + "title": "كل التسميات" + } + } +} diff --git a/web/public/locales/ar/components/icons.json b/web/public/locales/ar/components/icons.json index 0967ef424..6002ba6ce 100644 --- a/web/public/locales/ar/components/icons.json +++ b/web/public/locales/ar/components/icons.json @@ -1 +1,8 @@ -{} +{ + "iconPicker": { + "selectIcon": "اختر أيقونة", + "search": { + "placeholder": "ابحث عن أيقونة…" + } + } +} diff --git a/web/public/locales/ar/components/input.json b/web/public/locales/ar/components/input.json index 0967ef424..f58f8be84 100644 --- a/web/public/locales/ar/components/input.json +++ b/web/public/locales/ar/components/input.json @@ -1 +1,10 @@ -{} +{ + "button": { + "downloadVideo": { + "label": "تحميل الفيديو", + "toast": { + "success": "تم بدأ تحميل فيديو عنصر المراجعة." + } + } + } +} diff --git a/web/public/locales/ar/components/player.json b/web/public/locales/ar/components/player.json index 0967ef424..ca92f2b96 100644 --- a/web/public/locales/ar/components/player.json +++ b/web/public/locales/ar/components/player.json @@ -1 +1,5 @@ -{} +{ + "noRecordingsFoundForThisTime": "لا يوجد تسجيلات في هذا التوقيت", + "noPreviewFound": "لا يوجد معاينة", + "noPreviewFoundFor": "لا يوجد معاينة لـ{{cameraName}}" +} diff --git a/web/public/locales/ar/objects.json b/web/public/locales/ar/objects.json index be6a702ac..bf0ac8737 100644 --- a/web/public/locales/ar/objects.json +++ b/web/public/locales/ar/objects.json @@ -3,5 +3,9 @@ "cat": "قِطّ", "horse": "حِصَان", "animal": "حَيَوَان", - "bark": "نُبَاح" + "bark": "نُبَاح", + "person": "شخص", + "bicycle": "دراجة هوائية", + "car": "سيارة", + "motorcycle": "دراجة نارية" } diff --git a/web/public/locales/ar/views/configEditor.json b/web/public/locales/ar/views/configEditor.json index 0967ef424..10e9cd739 100644 --- a/web/public/locales/ar/views/configEditor.json +++ b/web/public/locales/ar/views/configEditor.json @@ -1 +1,6 @@ -{} +{ + "documentTitle": "محرر الإعدادات - فرايجيت", + "configEditor": "محرر الإعدادات", + "copyConfig": "نسخ الإعدادات", + "saveAndRestart": "حفظ وإعادة تشغيل" +} diff --git a/web/public/locales/ar/views/events.json b/web/public/locales/ar/views/events.json index 0967ef424..e73e25438 100644 --- a/web/public/locales/ar/views/events.json +++ b/web/public/locales/ar/views/events.json @@ -1 +1,7 @@ -{} +{ + "detections": "الإكتشافات", + "alerts": "الإنذارات", + "motion": { + "label": "الحركة" + } +} diff --git a/web/public/locales/ar/views/explore.json b/web/public/locales/ar/views/explore.json index 0967ef424..200ed1927 100644 --- a/web/public/locales/ar/views/explore.json +++ b/web/public/locales/ar/views/explore.json @@ -1 +1,5 @@ -{} +{ + "exploreMore": "اكتشف المزيد من أجسام {{label}}", + "documentTitle": "اكتشف - فرايجيت", + "generativeAI": "ذكاء اصطناعي مولد" +} diff --git a/web/public/locales/ar/views/exports.json b/web/public/locales/ar/views/exports.json index 0967ef424..6d0c418d6 100644 --- a/web/public/locales/ar/views/exports.json +++ b/web/public/locales/ar/views/exports.json @@ -1 +1,5 @@ -{} +{ + "search": "بحث", + "noExports": "لا يوجد تصديرات", + "documentTitle": "التصدير - فرايجيت" +} diff --git a/web/public/locales/ar/views/faceLibrary.json b/web/public/locales/ar/views/faceLibrary.json index 0967ef424..cb515dde3 100644 --- a/web/public/locales/ar/views/faceLibrary.json +++ b/web/public/locales/ar/views/faceLibrary.json @@ -1 +1,10 @@ -{} +{ + "description": { + "addFace": "قم بإضافة مجموعة جديدة لمكتبة الأوجه.", + "invalidName": "أسم غير صالح. يجب أن يشمل الأسم فقط على الحروف، الأرقام، المسافات، الفاصلة العليا، الشرطة التحتية، والشرطة الواصلة.", + "placeholder": "أدخل أسم لهذه المجموعة" + }, + "details": { + "person": "شخص" + } +} diff --git a/web/public/locales/ar/views/live.json b/web/public/locales/ar/views/live.json index 0967ef424..d09f3ff04 100644 --- a/web/public/locales/ar/views/live.json +++ b/web/public/locales/ar/views/live.json @@ -1 +1,5 @@ -{} +{ + "documentTitle": "بث حي - فرايجيت", + "documentTitle.withCamera": "{{camera}} - بث حي - فرايجيت", + "lowBandwidthMode": "وضع موفر للبيانات" +} diff --git a/web/public/locales/ar/views/recording.json b/web/public/locales/ar/views/recording.json index 0967ef424..d79f0ed87 100644 --- a/web/public/locales/ar/views/recording.json +++ b/web/public/locales/ar/views/recording.json @@ -1 +1,5 @@ -{} +{ + "filter": "ترشيح", + "export": "إرسال", + "calendar": "التقويم" +} diff --git a/web/public/locales/ar/views/search.json b/web/public/locales/ar/views/search.json index 0967ef424..3ed3dc2b7 100644 --- a/web/public/locales/ar/views/search.json +++ b/web/public/locales/ar/views/search.json @@ -1 +1,5 @@ -{} +{ + "search": "بحث", + "savedSearches": "عمليات البحث المحفوظة", + "searchFor": "البحث عن {{inputValue}}" +} diff --git a/web/public/locales/ar/views/settings.json b/web/public/locales/ar/views/settings.json index 0967ef424..fb6f81760 100644 --- a/web/public/locales/ar/views/settings.json +++ b/web/public/locales/ar/views/settings.json @@ -1 +1,7 @@ -{} +{ + "documentTitle": { + "camera": "إعدادات الكاميرا - فرايجيت", + "default": "الإعدادات - فرايجيت", + "authentication": "إعدادات المصادقة - فرايجيت" + } +} diff --git a/web/public/locales/ar/views/system.json b/web/public/locales/ar/views/system.json index 0967ef424..581494cb1 100644 --- a/web/public/locales/ar/views/system.json +++ b/web/public/locales/ar/views/system.json @@ -1 +1,7 @@ -{} +{ + "documentTitle": { + "cameras": "إحصاءات الكاميرات - فرايجيت", + "storage": "إحصاءات التخزين - فرايجيت", + "general": "إحصاءات عامة - فرايجيت" + } +} diff --git a/web/public/locales/bg/audio.json b/web/public/locales/bg/audio.json index 0967ef424..05a8c8f8f 100644 --- a/web/public/locales/bg/audio.json +++ b/web/public/locales/bg/audio.json @@ -1 +1,3 @@ -{} +{ + "babbling": "Бърборене" +} diff --git a/web/public/locales/bg/common.json b/web/public/locales/bg/common.json index ea3bef9a5..c78855981 100644 --- a/web/public/locales/bg/common.json +++ b/web/public/locales/bg/common.json @@ -1,6 +1,64 @@ { "time": { "today": "Днес", - "yesterday": "Вчера" + "yesterday": "Вчера", + "month_one": "{{time}} месец", + "month_other": "{{time}} месеца", + "day_one": "{{time}} ден", + "day_other": "{{time}} дни", + "hour_one": "{{time}} час", + "hour_other": "{{time}} часа", + "minute_one": "{{time}} минута", + "minute_other": "{{time}} минути", + "second_one": "{{time}} секунда", + "second_other": "{{time}} секунди", + "year_one": "{{time}} година", + "year_other": "{{time}} години" + }, + "button": { + "apply": "Приложи", + "reset": "Нулиране", + "done": "Готово", + "disabled": "Деактивирано", + "save": "Запази", + "saving": "Запазване…", + "cancel": "Отказ", + "close": "Затвори", + "copy": "Копирай", + "edit": "Редактирай", + "copyCoordinates": "Копирай координати", + "delete": "Изтриване", + "yes": "Да", + "download": "Изтегляне", + "enabled": "Активирано", + "history": "История", + "back": "Назад", + "fullscreen": "Цял екран", + "exitFullscreen": "Излез от цял екран", + "pictureInPicture": "Картина в картина", + "twoWayTalk": "Двупосочни разговори", + "cameraAudio": "Аудио на камерата", + "on": "Включено", + "off": "Изключено", + "no": "Не", + "info": "Информация", + "suspended": "Спряно", + "unsuspended": "Възобновяване", + "play": "Пускане", + "unselect": "Демаркиране", + "export": "Експортиране", + "deleteNow": "Изтрии сега", + "next": "Следващ", + "disable": "Деактивирай", + "enable": "Активирай" + }, + "menu": { + "live": { + "title": "Наживо", + "cameras": { + "count_one": "{{count}} камера", + "count_other": "{{count}} камери" + } + } } } diff --git a/web/public/locales/bg/components/dialog.json b/web/public/locales/bg/components/dialog.json index 0967ef424..d58e72203 100644 --- a/web/public/locales/bg/components/dialog.json +++ b/web/public/locales/bg/components/dialog.json @@ -1 +1,12 @@ -{} +{ + "export": { + "name": { + "placeholder": "Име на експорта" + }, + "time": { + "lastHour_one": "Последният час", + "lastHour_other": "Последните {{count}} часа" + }, + "select": "Избери" + } +} diff --git a/web/public/locales/bg/components/filter.json b/web/public/locales/bg/components/filter.json index 0967ef424..3aa7b61ce 100644 --- a/web/public/locales/bg/components/filter.json +++ b/web/public/locales/bg/components/filter.json @@ -1 +1,34 @@ -{} +{ + "filter": "Филтър", + "cameras": { + "all": { + "title": "Всички камери", + "short": "Камери" + } + }, + "logSettings": { + "allLogs": "Всички логове" + }, + "subLabels": { + "all": "Всички подетикети", + "label": "Подетикети" + }, + "labels": { + "all": { + "title": "Всички етикети", + "short": "Етикети" + } + }, + "zones": { + "all": { + "title": "Всички зони", + "short": "Зони" + } + }, + "dates": { + "all": { + "title": "Всички дати", + "short": "Дати" + } + } +} diff --git a/web/public/locales/bg/components/player.json b/web/public/locales/bg/components/player.json index 0967ef424..39d9699d7 100644 --- a/web/public/locales/bg/components/player.json +++ b/web/public/locales/bg/components/player.json @@ -1 +1,51 @@ -{} +{ + "noPreviewFoundFor": "Не е намерен предварителен преглед за {{cameraName}}", + "stats": { + "latency": { + "short": { + "value": "{{seconds}} сек", + "title": "Закъснение" + }, + "title": "Закъснение:", + "value": "{{seconds}} секунди" + }, + "streamType": { + "title": "Тип поток:", + "short": "Тип" + }, + "bandwidth": { + "title": "Трафик:", + "short": "Трафик" + }, + "totalFrames": "Общо кадри:", + "droppedFrames": { + "title": "Пропуснати кадри:", + "short": { + "title": "Пропуснати", + "value": "{{droppedFrames}} кадри" + } + }, + "decodedFrames": "Декодирани кадри:", + "droppedFrameRate": "Честота на пропуснатати кадри:" + }, + "streamOffline": { + "desc": "Не са получени кадри в потока за разпознаване на {{cameraName}}, проверете лог файловете за грешки", + "title": "Потокът е офлайн" + }, + "submitFrigatePlus": { + "title": "Да се изпрати ли този кадър към Frigate+?", + "submit": "Изпрати" + }, + "noPreviewFound": "Не е намерен предварителен преглед", + "noRecordingsFoundForThisTime": "За това време не са намерени записи", + "livePlayerRequiredIOSVersion": "За този тип поток на живо се изисква iOS 17.1 или по-нова версия.", + "cameraDisabled": "Камерата е изключена", + "toast": { + "success": { + "submittedFrigatePlus": "Успешно изпратен кадър към Frigate+" + }, + "error": { + "submitFrigatePlusFailed": "Неуспешно изпратен кадър към Frigate+" + } + } +} diff --git a/web/public/locales/bg/views/events.json b/web/public/locales/bg/views/events.json index 0967ef424..c355c8bec 100644 --- a/web/public/locales/bg/views/events.json +++ b/web/public/locales/bg/views/events.json @@ -1 +1,13 @@ -{} +{ + "timeline.aria": "Избери хронология", + "timeline": "Хронология", + "calendarFilter": { + "last24Hours": "Последните 24 часа" + }, + "events": { + "label": "Събития", + "aria": "Избери събития", + "noFoundForTimePeriod": "Няма намерени събития за този времеви период." + }, + "allCameras": "Всички камери" +} diff --git a/web/public/locales/bg/views/explore.json b/web/public/locales/bg/views/explore.json index 0967ef424..ab04d4746 100644 --- a/web/public/locales/bg/views/explore.json +++ b/web/public/locales/bg/views/explore.json @@ -1 +1,12 @@ -{} +{ + "details": { + "item": { + "tips": { + "mismatch_one": "{{count}} недостъпен обект беше открит и включен в този елемент за преглед. Тези обекти или не са квалифицирани като предупреждение или откриване, или вече са били изчистени/изтрити.", + "mismatch_other": "{{count}} недостъпни обекта бяха открити и включени в този елемент за преглед. Тези обекти или не са квалифицирани като предупреждение или откриване, или вече са били изчистени/изтрити." + } + } + }, + "trackedObjectsCount_one": "{{count}} проследен обект ", + "trackedObjectsCount_other": "{{count}} проследени обекта " +} diff --git a/web/public/locales/bg/views/faceLibrary.json b/web/public/locales/bg/views/faceLibrary.json index 0967ef424..a461ee3df 100644 --- a/web/public/locales/bg/views/faceLibrary.json +++ b/web/public/locales/bg/views/faceLibrary.json @@ -1 +1,14 @@ -{} +{ + "deleteFaceAttempts": { + "desc_one": "Сигурни ли сте, че искате да изтриете {{count}} лице? Това действие не може да бъде отменено.", + "desc_other": "Сигурни ли сте, че искате да изтриете {{count}} лица? Това действие не може да бъде отменено." + }, + "toast": { + "success": { + "deletedFace_one": "Успешно изтрито {{count}} лице.", + "deletedFace_other": "Успешно изтрити {{count}} лица.", + "deletedName_one": "{{count}} лице бе изтрито успешно.", + "deletedName_other": "{{count}} лица бяха изтрити успешно." + } + } +} diff --git a/web/public/locales/bg/views/live.json b/web/public/locales/bg/views/live.json index 0967ef424..c1b6ac1dc 100644 --- a/web/public/locales/bg/views/live.json +++ b/web/public/locales/bg/views/live.json @@ -1 +1,67 @@ -{} +{ + "stream": { + "playInBackground": { + "tips": "Активирайте тази опция, за да продължите поточното предаване, когато плейърът е скрит." + } + }, + "cameraAudio": { + "enable": "Включи звука на камерата", + "disable": "Изключи звука на камерата" + }, + "twoWayTalk": { + "enable": "Включи двупосочен разговор", + "disable": "Изключи двупосочен разговор" + }, + "ptz": { + "move": { + "clickMove": { + "enable": "Включи кликване за преместване", + "disable": "Изключи кликване за преместване" + } + } + }, + "muteCameras": { + "enable": "Заглушаване на всички камери", + "disable": "Включване на звука на всички камери" + }, + "recording": { + "enable": "Включи запис", + "disable": "Изключи запис" + }, + "snapshots": { + "enable": "Включи моментни снимки", + "disable": "Изключи моментни снимки" + }, + "audioDetect": { + "enable": "Включи аудио разпознаване", + "disable": "Изключи аудио разпознаване" + }, + "camera": { + "enable": "Включи камера", + "disable": "Изключи камера" + }, + "detect": { + "enable": "Включи разпознаване", + "disable": "Изключи разпознаване" + }, + "autotracking": { + "enable": "Включи автоматично проследяване", + "disable": "Изключи автоматично проследяване" + }, + "streamStats": { + "enable": "Показване на статистика на потока", + "disable": "Скриване на статистиката на потока" + }, + "manualRecording": { + "playInBackground": { + "desc": "Активирайте тази опция, за да продължите поточното предаване, когато плейърът е скрит." + }, + "showStats": { + "desc": "Активирайте тази опция, за да покажете статистиката на потока като наслагване върху канала на камерата." + }, + "recordDisabledTips": "Тъй като записът е изключен или ограничен в конфигурацията за тази камера, ще бъде запазена само моментна снимка." + }, + "cameraSettings": { + "cameraEnabled": "Камерата е включена" + } +} diff --git a/web/public/locales/bg/views/recording.json b/web/public/locales/bg/views/recording.json index 0967ef424..e600636d4 100644 --- a/web/public/locales/bg/views/recording.json +++ b/web/public/locales/bg/views/recording.json @@ -1 +1,12 @@ -{} +{ + "filter": "Филтър", + "export": "Експорт", + "calendar": "Календар", + "filters": "Филтри", + "toast": { + "error": { + "noValidTimeSelected": "Не е избран валиден времеви диапазон", + "endTimeMustAfterStartTime": "Крайното време трябва да бъде след началеният час" + } + } +} diff --git a/web/public/locales/bg/views/search.json b/web/public/locales/bg/views/search.json index 0967ef424..8f710c14b 100644 --- a/web/public/locales/bg/views/search.json +++ b/web/public/locales/bg/views/search.json @@ -1 +1,5 @@ -{} +{ + "button": { + "save": "Запазване на търсенето" + } +} diff --git a/web/public/locales/bg/views/settings.json b/web/public/locales/bg/views/settings.json index 0967ef424..830e0ffe8 100644 --- a/web/public/locales/bg/views/settings.json +++ b/web/public/locales/bg/views/settings.json @@ -1 +1,16 @@ -{} +{ + "masksAndZones": { + "motionMasks": { + "point_one": "{{count}} точка", + "point_other": "{{count}} точки" + }, + "objectMasks": { + "point_one": "{{count}} точка", + "point_other": "{{count}} точки" + }, + "zones": { + "point_one": "{{count}} точка", + "point_other": "{{count}} точки" + } + } +} diff --git a/web/public/locales/bg/views/system.json b/web/public/locales/bg/views/system.json index 0967ef424..39c14cb20 100644 --- a/web/public/locales/bg/views/system.json +++ b/web/public/locales/bg/views/system.json @@ -1 +1,5 @@ -{} +{ + "stats": { + "healthy": "Системата е изправна" + } +} diff --git a/web/public/locales/ca/audio.json b/web/public/locales/ca/audio.json index 90c91b66e..dba3c5120 100644 --- a/web/public/locales/ca/audio.json +++ b/web/public/locales/ca/audio.json @@ -332,5 +332,98 @@ "cupboard_open_or_close": "Obertura o tancament d'armari", "drawer_open_or_close": "Obertura o tancament de calaix", "dishes": "Plats", - "cutlery": "Coberteria" + "cutlery": "Coberteria", + "rustling_leaves": "Sons de fulles", + "gurgling": "Borbolleig", + "crackle": "Cremoreig", + "motorboat": "Llanxa a motor", + "toot": "Botzinada", + "skidding": "Derrapada", + "reversing_beeps": "Bips de marxa enrere", + "jet_engine": "Motor a reacció", + "train_wheels_squealing": "Xiulet de rodes de tren", + "engine_knocking": "Cop de motor", + "chopping": "Tallant", + "frying": "Fregint", + "electric_shaver": "Afeitadora elèctrica", + "shuffling_cards": "Barrejar cartes", + "alarm": "Alarma", + "alarm_clock": "Despertador", + "siren": "Sirena", + "buzzer": "Brunzidor", + "gears": "Engranatges", + "pulleys": "Politges", + "glass": "Vidre", + "chop": "Tall", + "splinter": "Astella", + "scream": "Crit", + "field_recording": "Enregistrament de camp", + "tire_squeal": "Xiulet de rodes", + "explosion": "Explosió", + "wood": "Fusta", + "crack": "Esquerda", + "air_conditioning": "Aire condicionat", + "tick-tock": "Tic-tac", + "sewing_machine": "Màquina de cosir", + "writing": "Escrivint", + "telephone": "Telèfon", + "environmental_noise": "Soroll ambiental", + "zipper": "Cremallera", + "smoke_detector": "Detector de fums", + "sound_effect": "Efecte sonor", + "microwave_oven": "Forn microones", + "water_tap": "Aixeta d'aigua", + "toilet_flush": "Cisterna del vàter", + "electric_toothbrush": "Raspall de dents elèctric", + "vacuum_cleaner": "Aspiradora", + "keys_jangling": "Claus repicant", + "bathtub": "Banyera", + "coin": "Moneda", + "typing": "Mecanografia", + "computer_keyboard": "Teclat d'ordinador", + "telephone_dialing": "Marcatge telefònic", + "dial_tone": "To de marcatge", + "telephone_bell_ringing": "Timbre del telèfon sonant", + "typewriter": "Màquina d'escriure", + "ringtone": "To de trucada", + "busy_signal": "Senyal d'ocupat", + "fire_alarm": "Alarma d'incendis", + "civil_defense_siren": "Sirena de defensa civil", + "foghorn": "Bocina de boira", + "whistle": "Xiulet", + "steam_whistle": "Xiulet de vapor", + "mechanical_fan": "Ventall mecànic", + "cash_register": "Caixa registradora", + "single-lens_reflex_camera": "Càmera reflex de lent fixa", + "mechanisms": "Mecanismes", + "ratchet": "Trinquet", + "tick": "Tic", + "printer": "Impressora", + "tools": "Eines", + "hammer": "Martell", + "jackhammer": "Martell neumàtic", + "sawing": "Serratge", + "filing": "Llimar", + "sanding": "Poliment", + "power_tool": "Eina elèctrica", + "machine_gun": "Ametralladora", + "cap_gun": "Pistola de joguina", + "drill": "Trepant", + "gunshot": "Tret", + "fusillade": "Ràfega de trets", + "fireworks": "Focs artificials", + "firecracker": "Petard", + "chink": "Clinc", + "shatter": "Trencar", + "silence": "Silenci", + "static": "Estàtic", + "white_noise": "Soroll blanc", + "burst": "Explosió", + "eruption": "Erupció", + "boom": "Boom", + "television": "Televisió", + "radio": "Ràdio", + "pink_noise": "Soroll rosa", + "power_windows": "Finestres elèctriques", + "artillery_fire": "Foc d'artilleria" } diff --git a/web/public/locales/ca/common.json b/web/public/locales/ca/common.json index cee5b65d0..c981fd716 100644 --- a/web/public/locales/ca/common.json +++ b/web/public/locales/ca/common.json @@ -38,7 +38,9 @@ "uk": "Українська (Ucraïnès)", "da": "Dansk (Danès)", "sk": "Slovenčina (Eslovac)", - "ru": "Русский (Rus)" + "ru": "Русский (Rus)", + "th": "ไทย (Tailandès)", + "ca": "Català (Catalan)" }, "system": "Sistema", "systemMetrics": "Mètriques del sistema", @@ -193,6 +195,10 @@ "speed": { "mph": "mph", "kph": "km/h" + }, + "length": { + "feet": "peus", + "meters": "metres" } }, "label": { diff --git a/web/public/locales/ca/components/camera.json b/web/public/locales/ca/components/camera.json index 029c8ddce..b93a84a5f 100644 --- a/web/public/locales/ca/components/camera.json +++ b/web/public/locales/ca/components/camera.json @@ -53,7 +53,8 @@ "warning": "La transmissió contínua pot provocar problemes d'ús elevat d'amplada de banda i rendiment. Feu servir amb precaució." } } - } + }, + "placeholder": "Tria un mètode de transmissió" }, "compatibilityMode": { "label": "Mode de compatibilitat", diff --git a/web/public/locales/ca/components/filter.json b/web/public/locales/ca/components/filter.json index 81d5288de..aa02310f7 100644 --- a/web/public/locales/ca/components/filter.json +++ b/web/public/locales/ca/components/filter.json @@ -95,7 +95,7 @@ "title": "Confirmar la supressió", "desc": "En suprimir aquests {{objectLength}} objectes de seguiment, s'elimina la instatània, les incrustacions desades, i els registres de temps de vida. Les imatges gravades d'aquests objectes NO es suprimiran de l'historial.

Està segur que vol continuar?

Manteniu la tecla Shift per ometre aquest diàleg en el futur.", "toast": { - "success": "Els objected amb seguiment s'han suprimit correctament.", + "success": "Els objectes amb seguiment s'han suprimit correctament.", "error": "No s'han pogut suprimir els objectes de seguiment: {{errorMessage}}" } }, diff --git a/web/public/locales/ca/views/explore.json b/web/public/locales/ca/views/explore.json index 7ba68f65e..bedd5f721 100644 --- a/web/public/locales/ca/views/explore.json +++ b/web/public/locales/ca/views/explore.json @@ -32,7 +32,51 @@ "objectLifecycle": { "createObjectMask": "Crear màscara per a l'objecte", "title": "Cicle de vida de l'objecte", - "noImageFound": "No s'ha trobat cap imatge per a aquesta marca temporal." + "noImageFound": "No s'ha trobat cap imatge per a aquesta marca temporal.", + "adjustAnnotationSettings": "Ajustar els paràmetres de les anotacions", + "scrollViewTips": "Desplaça't per veure els moments significatius del cicle de vida d'aquest objecte.", + "lifecycleItemDesc": { + "entered_zone": "{{label}} ha entrat a {{zones}}", + "active": "{{label}} s'ha activat", + "stationary": "{{label}} ha esdevingut estacionari", + "attribute": { + "faceOrLicense_plate": "{{attribute}} detectat per a {{label}}", + "other": "{{label}} reconegut com a {{attribute}}" + }, + "header": { + "zones": "Zones", + "ratio": "Proporció", + "area": "Àrea" + }, + "heard": "{{label}} escoltat", + "external": "{{label}} detectat", + "gone": "{{label}} ha marxat", + "visible": "{{label}} detectat" + }, + "annotationSettings": { + "offset": { + "documentation": "Llegir la documentació ", + "label": "Desplaçament de l'anotació", + "desc": "Aquestes dades provenen de la detecció d'objectes, però se superposen a les imatges d’enregistrament. És poc probable que les dues transmissions estiguin perfectament sincronitzades. Per aquest motiu, la capsa delimitadora i les imatges poden no coincidir exactament. Tanmateix, es pot utilitzar el camp annotation_offset per ajustar-ho.", + "tips": "CONSELL: Imagina que hi ha la captura d'un esdeveniment on una persona camina d'esquerra a dreta. Si la caixa delimitadora de l'objecte està constantment a l'esquerra de la persona, llavors el valor s'hauria de disminuir. Si, per contra, la caixa delimitadora està constantment per davant de la persona (a la seva dreta en aquest exemple), llavors el valor s'hauria d'augmentar.", + "toast": { + "success": "El desplaçament d'anotació per {{camera}} s'ha guardat al fitxer de configuració. Reinicia Frigate per aplicar els canvis." + }, + "millisecondsToOffset": "Mil·lisegons a desplaçar les anotacions de detecció: Per Defecte: 0" + }, + "title": "Paràmetres de les anotacions", + "showAllZones": { + "title": "Mostra totes les zones", + "desc": "Mostra sempre les zones en fotogrames on hi hagin aparegut objectes." + } + }, + "carousel": { + "next": "Diapositiva següent", + "previous": "Diapositiva anterior" + }, + "autoTrackingTips": "Les posicions dels recuadres delimitadors seràn inexactes per a càmeres amb seguiment automàtic.", + "count": "{{first}} de {{second}}", + "trackedPoint": "Punt seguit" }, "exploreMore": "Explora més {{label}} objectes", "trackedObjectDetails": "Detalls de l'objecte rastrejat", @@ -43,6 +87,117 @@ "object_lifecycle": "cicle de vida de l'objecte" }, "details": { - "timestamp": "Marca temporal" - } + "timestamp": "Marca temporal", + "item": { + "button": { + "viewInExplore": "Veure a Explorar", + "share": "Comparteix aquest element de revisió" + }, + "toast": { + "success": { + "updatedSublabel": "Subetiqueta actualitzada amb èxit.", + "updatedLPR": "Matrícula actualitzada amb èxit." + }, + "error": { + "regenerate": "No s'ha pogut contactar amb {{provider}} per obtenir una nova descripció: {{errorMessage}}", + "updatedSublabelFailed": "No s'ha pogut actualitzar la subetiqueta: {{errorMessage}}", + "updatedLPRFailed": "No s'ha pogut actualitzar la matrícula: {{errorMessage}}" + } + }, + "title": "Revisar detalls de l'element", + "desc": "Revisar detalls de l'element", + "tips": { + "hasMissingObjects": "Ajusta la configuració si vols que Frigate guardi els objectes rastrejat de les seguents etiquetes: {{objects}}" + } + }, + "label": "Etiqueta", + "topScore": { + "label": "Puntuació màxima" + }, + "estimatedSpeed": "Velocitat estimada", + "button": { + "regenerate": { + "title": "Regenerar", + "label": "Regenerar descripció d'objecte rastrejat" + }, + "findSimilar": "Cercar similars" + }, + "expandRegenerationMenu": "Amplia el menú de regeneració", + "regenerateFromSnapshot": "Regenerar desde instantània", + "regenerateFromThumbnails": "Regenerar desde miniatures", + "tips": { + "descriptionSaved": "Descripció desada amb èxit", + "saveDescriptionFailed": "No s'ha pogut actualitzar la descripció: {{errorMessage}}" + }, + "description": { + "placeholder": "Descripció de l'objecte rastrejat", + "label": "Descripció", + "aiTips": "Frigate no sol·licitarà una descripció al teu proveïdor d'intel·ligència artificial generativa fins que el cicle de vida de l'objecte rastrejat hagi acabat." + }, + "objects": "Objectes", + "camera": "Càmera", + "editSubLabel": { + "title": "Editar subetiqueta", + "descNoLabel": "Introdueix una nova subetiqueta per a aquest objecte rastrejat", + "desc": "Introdueix una nova subetiqueta per a aquesta {{label}}" + }, + "zones": "Zones", + "recognizedLicensePlate": "Matrícula reconeguda", + "snapshotScore": { + "label": "Puntuació d'instantània" + }, + "editLPR": { + "title": "Editar matrícula", + "descNoLabel": "Introdueix un nou valor de matrícula per a aquest objecte rastrejat", + "desc": "Introdueix un nou valor per a la matrícula per aquesta {{label}}" + } + }, + "searchResult": { + "tooltip": "S'ha identificat {{type}} amb una confiança del {{confidence}}%", + "deleteTrackedObject": { + "toast": { + "success": "L'objectes amb seguiment s'ha suprimit correctament.", + "error": "No s'ha pogut suprimir l'objecte rastrejat: {{errorMessage}}" + } + } + }, + "itemMenu": { + "downloadVideo": { + "aria": "Descarregar vídeo", + "label": "Descarregar vídeo" + }, + "submitToPlus": { + "aria": "Enviar a Frigate Plus", + "label": "Enviar a Frigate+" + }, + "downloadSnapshot": { + "label": "Descarregar instantània", + "aria": "Descarregar instantània" + }, + "findSimilar": { + "label": "Cercar similars", + "aria": "Trobar objectes de seguiment similars" + }, + "viewObjectLifecycle": { + "label": "Veure el cicle de vida de l'objecte", + "aria": "Mostrar el cicle de vida de l'objecte" + }, + "viewInHistory": { + "label": "Veure a l'historial", + "aria": "Veure a l'historial" + }, + "deleteTrackedObject": { + "label": "Suprimeix aquest objecte rastrejat" + } + }, + "noTrackedObjects": "No s'han trobat objectes rastrejats", + "dialog": { + "confirmDelete": { + "title": "Confirmar la supressió" + } + }, + "fetchingTrackedObjectsFailed": "Error al obtenir objectes rastrejats: {{errorMessage}}", + "trackedObjectsCount_one": "{{count}} objecte rastrejat ", + "trackedObjectsCount_many": "{{count}} objectes rastrejats ", + "trackedObjectsCount_other": "{{count}} objectes rastrejats " } diff --git a/web/public/locales/ca/views/faceLibrary.json b/web/public/locales/ca/views/faceLibrary.json index 374900bda..356691315 100644 --- a/web/public/locales/ca/views/faceLibrary.json +++ b/web/public/locales/ca/views/faceLibrary.json @@ -39,5 +39,64 @@ "uploadFace": "Puja una imatge de {{name}} que mostri el seu rostre de cares. No cal que la imatge estigui retallada només al rostre." } }, - "selectFace": "Seleccionar rostre" + "selectFace": "Seleccionar rostre", + "deleteFaceLibrary": { + "desc": "Estàs segur que vols eliminar la col·lecció {{name}}? Això eliminarà permanentment tots els rostres associats.", + "title": "Suprimir nom" + }, + "renameFace": { + "desc": "Introduïu un nou nom per a {{name}}", + "title": "Canviar nom del rostre" + }, + "imageEntry": { + "dropActive": "Arrossegueu la imatge aquí…", + "validation": { + "selectImage": "Siusplau, selecciona un fixer d'imatge." + }, + "maxSize": "Mida màxima: {{size}}MB", + "dropInstructions": "Arrastra una imatge aquí, o fes clic per a selccionar-ne una" + }, + "button": { + "uploadImage": "Pujar imatge", + "addFace": "Afegir rostre", + "deleteFaceAttempts": "Suprimir rostres", + "renameFace": "Renombrar rostre", + "deleteFace": "Suprimeix rostre", + "reprocessFace": "Reprocessar rostre" + }, + "toast": { + "success": { + "trainedFace": "Rostre entrenat amb èxit.", + "updatedFaceScore": "Puntació de rostre actualitzada amb èxit.", + "uploadedImage": "Imatge pujada amb èxit.", + "addFaceLibrary": "{{name}} s'ha afegit amb èxit a la biblioteca de rostres!", + "deletedName_one": "{{count}} rostre s'ha suprimit amb èxit.", + "deletedName_many": "{{count}} rostres s'han suprimit amb èxit.", + "deletedName_other": "{{count}} rostres s'han suprimit amb èxit.", + "deletedFace_one": "{{count}} rostre suprimit amb èxit.", + "deletedFace_many": "{{count}} rostres suprimits amb èxit.", + "deletedFace_other": "{{count}} rostres suprimits amb èxit.", + "renamedFace": "Rostre renombrat amb èxit a {{name}}" + }, + "error": { + "uploadingImageFailed": "No s'ha pogut penjar la imatge: {{errorMessage}}", + "trainFailed": "No s'ha pogut entrenar: {{errorMessage}}", + "deleteFaceFailed": "No s'ha pogut suprimir: {{errorMessage}}", + "deleteNameFailed": "No s'ha pogut suprimir el nom: {{errorMessage}}", + "updateFaceScoreFailed": "No s'ha pogut actualitzar la puntuació de rostre: {{errorMessage}}", + "addFaceLibraryFailed": "No s'ha pogut establir el nom del rostre: {{errorMessage}}", + "renameFaceFailed": "No s'ha pogut renombrar el rostre: {{errorMessage}}" + } + }, + "nofaces": "No hi han rostres disponibles", + "deleteFaceAttempts": { + "title": "Suprimir rostres", + "desc_one": "Estàs segur que vols suprimir {{count}} rostre? Aquesta acció no es pot desfer.", + "desc_many": "Estàs segur que vols suprimir {{count}} rostres? Aquesta acció no es pot desfer.", + "desc_other": "Estàs segur que vols suprimir {{count}} rostres? Aquesta acció no es pot desfer." + }, + "pixels": "{{area}}px", + "trainFace": "Entrenar rostre", + "readTheDocs": "Llegir la documentació", + "trainFaceAs": "Entrenar rostre com a:" } diff --git a/web/public/locales/ca/views/live.json b/web/public/locales/ca/views/live.json index 9b32c6d1c..847d3e48e 100644 --- a/web/public/locales/ca/views/live.json +++ b/web/public/locales/ca/views/live.json @@ -62,6 +62,96 @@ "disable": "Deshabilita l'enregistrament" }, "snapshots": { - "enable": "Habilita captura d'instantània" + "enable": "Habilita captura d'instantània", + "disable": "Deshabilitar instantànies" + }, + "audioDetect": { + "enable": "Habilita la detecció d'àudio", + "disable": "Deshabilitar la detecció d'àudio" + }, + "autotracking": { + "enable": "Habilitar seguiment automàtic", + "disable": "Deshabilitar seguiment automàtic" + }, + "streamStats": { + "enable": "Mostrar les estadístiques de la transmissió", + "disable": "Amaga estadístiques de la transmissió" + }, + "manualRecording": { + "title": "Gravació sota demanda", + "tips": "Iniciar un event manual basat en els paràmetres de retenció de gravació per aquesta càmera.", + "playInBackground": { + "label": "Reproduir en segon pla", + "desc": "Habilita aquesta opció per a continuar la transmissió quan el reproductor està amagat." + }, + "showStats": { + "label": "Mostrar les estadístiques", + "desc": "Habilita aquesta opció per mostrar les estadístiques de transmissió com una superposició de la transmissió de la càmera." + }, + "start": "Iniciar enregistrament sota demanda", + "started": "Gravació sota demanda manual inciada.", + "ended": "Gravació sota demanda manual finalitzada.", + "debugView": "Vista de depuració", + "end": "Finalitzar gravació sota demanda", + "failedToStart": "No s'ha pogut iniciar la gravació manual sota demanda.", + "recordDisabledTips": "Com que la gravació està deshabilitada o restringida a la configuració d'aquesta càmera, només es guardarà una instantània.", + "failedToEnd": "No s'ha pogut acabar la gravació manual sota demanda." + }, + "notifications": "Notificacions", + "audio": "Àudio", + "stream": { + "title": "Transmissió", + "audio": { + "tips": { + "documentation": "Llegir la documentació ", + "title": "L'àudio ha de provenir de la càmera i estar configurat amb go2rtc per a aquesta transmissió." + }, + "available": "L'àudio està disponible per a aquesta transmissió", + "unavailable": "L'audio no està disponible per a aquesta transmissió" + }, + "twoWayTalk": { + "tips.documentation": "Llegir la documentació ", + "tips": "El teu dispositiu ha de suportar la funció i WebRTC ha d'estar configurat per a conversa bidireccional.", + "available": "La conversa bidireccional està disponible per a aquesta transmissió", + "unavailable": "La conversa bidireccional no està disponible per a aquesta transmissió" + }, + "lowBandwidth": { + "resetStream": "Restablir transmissió", + "tips": "La vista en directe està en mode de baix ample de banda a causa d'errors de transmissió o de buffering." + }, + "playInBackground": { + "label": "Reproduir en segon pla", + "tips": "Habilita aquesta opció per a contiuar la transmissió tot i que el reproductor estigui ocult." + } + }, + "streamingSettings": "Paràmetres de transmissió", + "suspend": { + "forTime": "Suspèn per: " + }, + "cameraSettings": { + "title": "{{camera}} Paràmetres", + "cameraEnabled": "Càmera habilitada", + "recording": "Gravació", + "snapshots": "Instantànies", + "autotracking": "Seguiment automàtic", + "objectDetection": "Detecció d'objectes", + "audioDetection": "Detecció d'àudio" + }, + "history": { + "label": "Mostrar gravacions històriques" + }, + "effectiveRetainMode": { + "modes": { + "all": "Tot", + "motion": "Moviment", + "active_objects": "Objectes actius" + } + }, + "editLayout": { + "label": "Editar el disseny", + "group": { + "label": "Editar grup de càmeres" + }, + "exitEdit": "Sortir de l'edició" } } diff --git a/web/public/locales/ca/views/search.json b/web/public/locales/ca/views/search.json index 28df71494..3f5940348 100644 --- a/web/public/locales/ca/views/search.json +++ b/web/public/locales/ca/views/search.json @@ -23,8 +23,31 @@ }, "toast": { "error": { - "beforeDateBeLaterAfter": "La data 'abans' ha de ser posterior a la data 'després'." + "beforeDateBeLaterAfter": "La data 'abans' ha de ser posterior a la data 'després'.", + "afterDatebeEarlierBefore": "La data 'després' ha de ser anterior a la data 'abans'.", + "minScoreMustBeLessOrEqualMaxScore": "La \"puntuació mínima\" ha de ser menor o igual que la \"puntuació màxima\".", + "maxScoreMustBeGreaterOrEqualMinScore": "La \"puntuació màxima\" ha de ser major o igual que la \"puntuació mínima\".", + "minSpeedMustBeLessOrEqualMaxSpeed": "La \"velocitat mínima\" ha de ser menor o igual que la \"velocitat màxima\".", + "maxSpeedMustBeGreaterOrEqualMinSpeed": "La \"velocitat màxima\" ha de ser major o igual que la \"velocitat mínima\"." } + }, + "tips": { + "title": "Com utilitzar filtres de text", + "desc": { + "step2": "Selecciona un valor de les suggerències o escriu-ne un de propi.", + "step3": "Utilitza múltiples filtres afegint-los un rere l'altre amb un espai entremig.", + "exampleLabel": "Exemple:", + "step1": "Escriviu un nom de clau de filtre seguit de dos punts (p. ex., \"càmeres:\").", + "text": "Els filtres t'ajuden a acotar els resultats de cerca. Aquí tens com utilitzar-los al camp d’entrada:", + "step4": "Els filtres de data {abans: i després:) fan servir el format {{DateFormat}}.", + "step5": "El filtre de rang de temps fa servir el format {{exampleTime}}.", + "step6": "Suprimeix els filtres fent clic a la 'x' que tenen al costat." + } + }, + "header": { + "noFilters": "Filtres", + "currentFilterType": "Valors del filtre", + "activeFilters": "Filtres actius" } }, "search": "Buscar", @@ -37,5 +60,13 @@ "filterInformation": "Informació de filtre", "filterActive": "Filtres actius" }, - "trackedObjectId": "ID d'objecte rastrejat" + "trackedObjectId": "ID d'objecte rastrejat", + "placeholder": { + "search": "Cercar…" + }, + "similaritySearch": { + "title": "Cerca per similitud", + "active": "Cerca per similitud habilitada", + "clear": "Netejar cerca per similitud" + } } diff --git a/web/public/locales/ca/views/settings.json b/web/public/locales/ca/views/settings.json index 9a69cf9ec..dd157c090 100644 --- a/web/public/locales/ca/views/settings.json +++ b/web/public/locales/ca/views/settings.json @@ -37,8 +37,559 @@ "liveDashboard": { "title": "Panell en directe", "automaticLiveView": { - "label": "Vista en directe automàtica" + "label": "Vista en directe automàtica", + "desc": "Canvia automàticament a la vista en directe d’una càmera quan es detecta activitat. Desactivar aquesta opció fa que les imatges estàtiques de la càmera al panell en directe s’actualitzin només un cop per minut." + }, + "playAlertVideos": { + "label": "Reproduir vídeos d’alerta", + "desc": "Per defecte, les alertes recents al tauler en directe es reprodueixen com a vídeos petits en bucle. Desactiva aquesta opció per mostrar només una imatge estàtica de les alertes recents en aquest dispositiu/navegador." + } + }, + "storedLayouts": { + "title": "Disposicions desades", + "desc": "La disposició de les càmeres en un grup es pot arrossegar i redimensionar. Les posicions es guarden a l’emmagatzematge local del teu navegador.", + "clearAll": "Esborra tots les disposicions" + }, + "cameraGroupStreaming": { + "desc": "La configuració de la transmissió per a cada grup de càmeres s'emmagatzema de manera local al vostre navegador.", + "title": "Parmàmetres de transmissió del grup de càmeres", + "clearAll": "Esborra tots els paràmetres de transmissió" + }, + "recordingsViewer": { + "title": "Visor d'enregistraments", + "defaultPlaybackRate": { + "label": "Velocitat de reproducció predeterminada", + "desc": "Velocitat de reproducció predeterminada per a la reproducció de gravacions." + } + }, + "calendar": { + "firstWeekday": { + "monday": "Dilluns", + "label": "Primer dia de la setmana", + "sunday": "Diumenge", + "desc": "El dia en que comencen les setmanes del calendari de revisions." + }, + "title": "Calendari" + }, + "toast": { + "success": { + "clearStoredLayout": "Disposició emmagatzemada esborrada per {{cameraName}}", + "clearStreamingSettings": "S'han suprimit els paràmetres de la transmissió per tots els grups de càmeres." + }, + "error": { + "clearStoredLayoutFailed": "Error en suprimir la disposició desada: {{errorMessage}}", + "clearStreamingSettingsFailed": "Error en esborrar els paràmetres de la transmissió: {{errorMessage}}" } } + }, + "masksAndZones": { + "form": { + "polygonDrawing": { + "snapPoints": { + "false": "No ajustar punts", + "true": "Punts d'ajust" + }, + "delete": { + "success": "{{name}} s'ha suprimit.", + "title": "Confirmar la supressió", + "desc": "Estas segur que vols suprimir el {{type}} {{name}}?" + }, + "removeLastPoint": "Eliminar l'últim punt", + "reset": { + "label": "Neteja tots els punts" + }, + "error": { + "mustBeFinished": "El dibuix del polígon s'ha d'acabar abans de desar." + } + }, + "zoneName": { + "error": { + "hasIllegalCharacter": "El nom de la zona conté caràcters il·legals.", + "mustBeAtLeastTwoCharacters": "El nom de la zona ha de contenir com a mínim 2 caràcters.", + "mustNotContainPeriod": "El nom de la zona no pot contenir punts.", + "alreadyExists": "Ja existeix una zona amb aquest nom per a aquesta càmera.", + "mustNotBeSameWithCamera": "El nom de la zona no pot ser el mateix que el nom de la càmera." + } + }, + "inertia": { + "error": { + "mustBeAboveZero": "L'inèrcia ha de ser superior a 0." + } + }, + "distance": { + "error": { + "text": "La distància ha de ser major o igual a 0.1.", + "mustBeFilled": "Cal omplir tots els camps de distància per poder utilitzar l’estimació de la velocitat." + } + }, + "speed": { + "error": { + "mustBeGreaterOrEqualTo": "El llindar de velocitat ha de ser major o igual a 0.1." + } + }, + "loiteringTime": { + "error": { + "mustBeGreaterOrEqualZero": "El temps de merodeig ha de ser mes gran o igual a 0." + } + } + }, + "zones": { + "objects": { + "title": "Objectes", + "desc": "Llista d'objectes que apliquen per aquesta zona." + }, + "speedEstimation": { + "lineDDistance": "Distància de la línia D ({{unit}})", + "title": "Estimació de velocitat", + "docs": "Llegir la documentació", + "lineADistance": "Distància de la línia A ({{unit}})", + "lineBDistance": "Distància de la línia B ({{unit}})", + "lineCDistance": "Distància de la línia C ({{unit}})", + "desc": "Habilita l'estimació de velocitat per a objectes dins d'aquesta zona. La zona ha de tenir exactament 4 punts." + }, + "inertia": { + "title": "Inèrcia" + }, + "point_one": "{{count}} punt", + "point_many": "{{count}} punts", + "point_other": "{{count}} punts", + "name": { + "inputPlaceHolder": "Introduïu un nom…", + "title": "Nom" + }, + "label": "Zones", + "desc": { + "documentation": "Documentació" + }, + "add": "Afegir Zona", + "edit": "Editar zona", + "loiteringTime": { + "title": "Temps de merodeig" + }, + "allObjects": "Tots els objectes", + "documentTitle": "Edita zona - Frigate", + "speedThreshold": { + "title": "Llindar de velocitat ({{unit}})", + "toast": { + "error": { + "loiteringTimeError": "Zones amb temps de merodeig superior a 0 no s'han d'utilitzar per a l'estimació de velocitat.", + "pointLengthError": "L'estimació de velocitat s'ha desactivat per a aquesta zona. Les zones amb estimació de velocitat han de tenir exactament 4 points." + } + }, + "desc": "Especifica una velocitat mínima dels objectes per ser considerats dins d'aquesta zona." + }, + "clickDrawPolygon": "Fes click per a dibuixar un polígon a la imatge.", + "toast": { + "success": "La zona {{zoneName}} ha estat desada. Reinicia Frigate per a aplicar els canvis." + } + }, + "filter": { + "all": "Totes les màscares i zones" + }, + "motionMasks": { + "desc": { + "documentation": "Documentació" + }, + "context": { + "documentation": "Llegir la documentació" + }, + "polygonAreaTooLarge": { + "documentation": "Llegir la documentació", + "tips": "Les màscares de moviment no impedeixen la detecció d'objectes. Hauries de fer servir una zona requerida en el seu lloc.", + "title": "La màscara de moviment cobreix el {{polygonArea}}% del camp de visió de la càmera. Les màscares de moviment molt grans no son recomanables." + }, + "point_one": "{{count}} punt", + "point_many": "", + "point_other": "{{count}} punts", + "label": "Màscara de moviment", + "add": "Nova màscara de moviment", + "edit": "Edita la màscara de moviment", + "documentTitle": "Editar la màscara de moviment - Frigate", + "clickDrawPolygon": "Fes click per a dibuixar un polígon a la imatge.", + "toast": { + "success": { + "title": "{{polygonName}} s'ha desat. Reinicia Frigate per a aplicar els canvis.", + "noName": "La màscara de moviment ha estat desada. Reinicia Frigate per aplicar els canvis." + } + } + }, + "objectMasks": { + "documentTitle": "Editar la màscara d'objecte - Frigate", + "label": "Màscares d'objecte", + "edit": "Editar la màscara d'objecte", + "point_one": "{{count}} punt", + "point_many": "{{count}} punts", + "point_other": "{{count}} punts", + "objects": { + "allObjectTypes": "Tots els tipus d’objecte", + "title": "Objectes", + "desc": "El tipus d'objecte que s'aplica a la màscara d'objectes." + }, + "add": "Afegir màscara d'objecte", + "desc": { + "documentation": "Documentació", + "title": "Les màscares de filtratge d’objectes s’utilitzen per descartar falsos positius d’un tipus d’objecte concret segons la seva ubicació." + }, + "clickDrawPolygon": "Fes click per a dibuixar un polígon a la imatge.", + "toast": { + "success": { + "title": "{{polygonName}} s'ha desat. Reinicia Frigate per a aplicar els canvis.", + "noName": "La màscara d'objectes ha estat desada. Reincia Frigate per a aplicar els canvis." + } + }, + "context": "Les màscares de filtratge d’objectes s’utilitzen per descartar falsos positius d’un tipus d’objecte concret segons la seva ubicació." + }, + "restart_required": "Reinici necessari (canvi de màscares o zones)", + "motionMaskLabel": "Màscara de moviment {{number}}", + "objectMaskLabel": "Màscara d'objecte {{number}} ({{label}})", + "toast": { + "success": { + "copyCoordinates": "S'han copiat les coordenades per a {{polyName}} al porta-retalls." + }, + "error": { + "copyCoordinatesFailed": "No s'han pogut copiar les coordenades al porta-retalls." + } + } + }, + "notification": { + "email": { + "title": "Correu electrònic", + "placeholder": "p. ex. exemple@email.com" + }, + "notificationSettings": { + "documentation": "Llegir la documentació", + "title": "Paràmetres de notificació" + }, + "deviceSpecific": "Paràmetres específics del dispositiu", + "registerDevice": "Registrar aquest dispositiu", + "unregisterDevice": "Desegistrar aquest dispositiu", + "cancelSuspension": "Cancel·la la suspensió", + "suspendTime": { + "untilRestart": "Suspendre fins al reinici", + "30minutes": "Suspèn durant 30 minuts", + "1hour": "Suspèn durant 1 hora", + "12hours": "Suspèn durant 12 hores", + "suspend": "Suspendre", + "24hours": "Suspèn durant 24 hores", + "10minutes": "Suspèn durant 10 minuts", + "5minutes": "Suspèn durant 5 minuts" + }, + "toast": { + "success": { + "settingSaved": "Els paràmetres de notificacions s'han desat." + }, + "error": { + "registerFailed": "No s'ha pogut desar el registre de notificacions." + } + }, + "cameras": { + "title": "Càmeres", + "noCameras": "Sense càmeres disponibles", + "desc": "Selecciona per a quines càmeres s'han d'habilitar les notificacions." + }, + "title": "Notificacions", + "notificationUnavailable": { + "title": "Notificacions no disponibles", + "documentation": "Llegir la documentació" + }, + "unsavedChanges": "Canvis de notificació no desats", + "globalSettings": { + "title": "Paràmetres globals", + "desc": "Suspendre temporalment les notificacions per a certes càmeres per tots els dispositius registrats." + }, + "active": "Notificacions actives", + "suspended": "Notificacions suspeses {{time}}", + "unsavedRegistrations": "Registres de notificació no desats", + "sendTestNotification": "Enviar una notificació de prova" + }, + "camera": { + "streams": { + "title": "Transmissions" + }, + "title": "Paràmetres de la càmera", + "reviewClassification": { + "title": "Revisar la classificació", + "readTheDocumentation": "Llegir la documentació", + "selectAlertsZones": "Seleccionar zones per alertes", + "limitDetections": "Limitar deteccions a zones específiques", + "selectDetectionsZones": "Seleccionar zones per deteccions", + "unsavedChanges": "Paràmetres de la revisió de classificació no guardats per a {{camera}}", + "noDefinedZones": "No s'han definit zones per a aquesta càmera.", + "objectAlertsTips": "Tots els objectes {{alertsLabels}} a {{cameraName}} es mostraràn com a Alertes.", + "zoneObjectAlertsTips": "Tots els objectes {{alertsLabels}} detectats a la {{zone}} de {{cameraName}} es mostraràn com a Alertes.", + "toast": { + "success": "S'ha desat la configuració de la classificació de revisió. Reinicia Frigate per aplicar els canvis." + }, + "zoneObjectDetectionsTips": { + "text": "Tots els objectes {{detectionsLabels}} no classificats a la {{zone}} de {{cameraName}} es mostraràn com a Deteccions." + } + }, + "review": { + "alerts": "Alertes ", + "detections": "Deteccions ", + "title": "Revisar" + } + }, + "motionDetectionTuner": { + "Threshold": { + "title": "Llindar" + }, + "contourArea": { + "title": "Àrea de contorn", + "desc": "El valor de l’àrea del contorn s’utilitza per decidir quins grups de píxels canviats es consideren moviment. Valor per defecte: 10" + }, + "desc": { + "documentation": "Llegeix la guia d'ajust de detecció de moviment" + }, + "improveContrast": { + "title": "Millorar contrast", + "desc": "Millora el contrast per les escenes fosques. Predeterminat: ACTIVAT" + }, + "title": "Afinador de detecció de moviment", + "toast": { + "success": "Els ajustos de la detecció de moviment s'han desat." + }, + "unsavedChanges": "Canvis no desats en l'ajust de moviment {{camera}}" + }, + "debug": { + "title": "Depuració", + "objectList": "Llista d'objectes", + "noObjects": "Cap objecte", + "debugging": "Depurant", + "mask": { + "title": "Màscares de moviment", + "desc": "Mostra els polígons de la màscara de moviment" + }, + "regions": { + "title": "Regions", + "desc": "Mostre un requadre de la regió d'interés enviat al detector d'objectes" + }, + "objectShapeFilterDrawing": { + "score": "Puntuació", + "document": "Llegir la documentació ", + "ratio": "Proporció", + "area": "Àrea", + "title": "Dibuix del filtre de forma de l'objecte", + "desc": "Dibuixa un rectangle a la imatge per veure detalls d'àrea i proporció" + }, + "zones": { + "title": "Zones", + "desc": "Mostra el contorn per a qualsevol zona definida" + }, + "timestamp": { + "title": "Marca temporal", + "desc": "Superposa una marca temporal a la imatge" + }, + "boundingBoxes": { + "title": "Caixes delimitadores", + "colors": { + "label": "Colors de la caixa delimitadora de l'objecte" + }, + "desc": "Mostra les caixes delimitadores al voltant dels objectes rastrejats" + }, + "motion": { + "title": "Caixes de moviment", + "desc": "Mostra requadres al voltant de les àrees on s'ha detectat moviment", + "tips": "

Caixes de moviment


Es sobreposaran requadres vermells a les àrees del fotograma on actualment s’estigui detectant moviment.

" + }, + "detectorDesc": "Frigate fa servir els teus detectors ({{detectors}}) per a detectar objectes a les imatges de la teva càmera." + }, + "users": { + "table": { + "username": "Nom d'usuari", + "password": "Contrasenya", + "deleteUser": "Suprimir usuari", + "noUsers": "No s'han trobat usuaris.", + "changeRole": "Canviar la funció d’usuari", + "actions": "Accions", + "role": "Rol" + }, + "toast": { + "error": { + "deleteUserFailed": "No s'ha pogut eliminar l'usuari: {{errorMessage}}", + "roleUpdateFailed": "No s'ha pogut actualitzar la funció: {{errorMessage}}", + "setPasswordFailed": "Error en guardar la contrasenya: {{errorMessage}}", + "createUserFailed": "No s'ha pogut crear l'usuari: {{errorMessage}}" + }, + "success": { + "deleteUser": "L'usuari {{user}} s'ha suprimit amb èxit", + "createUser": "L'Usuari {{user}} s'ha creat amb èxit", + "updatePassword": "Contrasenya actualitzada amb èxit.", + "roleUpdated": "Funció actualitzada per {{user}}" + } + }, + "dialog": { + "form": { + "user": { + "title": "Nom d'usuari", + "placeholder": "Introdueix el nom d'usuari", + "desc": "Només es permeten lletres, números, punts i guions baixos." + }, + "password": { + "confirm": { + "placeholder": "Confirma contrasenya", + "title": "Confirma contrasenya" + }, + "strength": { + "title": "Seguretat de la contrasenya: ", + "weak": "Dèbil", + "strong": "Fort", + "veryStrong": "Molt forta", + "medium": "Mitjana" + }, + "notMatch": "Les contrasenyes no coincideixen", + "match": "Les contrasenyes coincideixen", + "placeholder": "Introdueix la contrasenya", + "title": "Contrasenya" + }, + "newPassword": { + "title": "Nova contrasenya", + "placeholder": "Introduïu una nova contrasenya", + "confirm": { + "placeholder": "Re-entrar contrasenya nova" + } + }, + "usernameIsRequired": "El nom d'usuari és obligatori", + "passwordIsRequired": "La contrasenya és obligatoria" + }, + "passwordSetting": { + "updatePassword": "Contrasenya actualitzada per {{username}}", + "setPassword": "Estableix Contrasenya", + "cannotBeEmpty": "La contrasenya no pot ser buida", + "doNotMatch": "Les contrasenyes no coincideixen", + "desc": "Crea un nova contrasenya segura per protegir aquest compte." + }, + "deleteUser": { + "title": "Suprimir usuari", + "warn": "Estàs segur que vols suprimir {{username}}?", + "desc": "Aquesta acció no es pot desfer. Això eliminarà permanentment el compte d'usuari i suprimirà totes les dades associades." + }, + "changeRole": { + "roleInfo": { + "viewer": "Visualitzador", + "admin": "Administrador", + "adminDesc": "Accés complet a totes les funcionalitats.", + "intro": "Selecciona el rol adequat per a aquest usuari:", + "viewerDesc": "Limitat només a panells en directe, revisió, exporació i exportació." + }, + "title": "Canviar la funció d’usuari", + "desc": "Actualitzar permisos per a {{username}}", + "select": "Seleccioneu un paper" + }, + "createUser": { + "title": "Crear un nou usuari", + "confirmPassword": "Siusplau, confirma la contrasenya", + "usernameOnlyInclude": "El nom d'usuari només pot contenir lletres, números, . o _", + "desc": "Afegeix un nou compte d'usuari i especifica un rol per accedir a àrees de la interfície de Frigate." + } + }, + "title": "Usuaris", + "addUser": "Afegir usuari", + "management": { + "title": "Gestió d'usuaris", + "desc": "Gestioneu els comptes d'usuari d'aquesta instància de Frigate." + }, + "updatePassword": "Actualitzar contrasenya" + }, + "frigatePlus": { + "snapshotConfig": { + "table": { + "camera": "Càmera", + "snapshots": "Instantànies", + "cleanCopySnapshots": "clean_copy Instantànies" + }, + "title": "Configuració d'instantànies", + "documentation": "Llegir la documentació", + "desc": "Per a enviar a Frigate+ fa falta que tan la instantània com la instantània clean_copy estiguin habilitades a la configuració." + }, + "modelInfo": { + "baseModel": "Model base", + "modelType": "Tipus de model", + "trainDate": "Data d'entrenament", + "title": "Informació del model", + "supportedDetectors": "Detectors compatibles", + "availableModels": "Models disponibles", + "cameras": "Càmeres", + "plusModelType": { + "userModel": "Afinat", + "baseModel": "Model base" + }, + "loadingAvailableModels": "Carregant models disponibles…", + "loading": "Carregant informació del model…", + "error": "No s'ha pogut carregar la informació del model" + }, + "apiKey": { + "plusLink": "Llegeix més sobre Frigate+", + "title": "Clau API de Frigate+", + "validated": "La clau API de Frigate+ ha estat detectada i validada", + "notValidated": "La clau API de Frigate+ no ha estat detectada o no ha estat validada", + "desc": "La clau API de Frigate+ habilita la integració amb el servei Frigate+." + }, + "unsavedChanges": "Canvis dels paràmetres de Frigate+ sense desar", + "title": "Paràmetres de Frigate+", + "toast": { + "error": "No s'han pogut guardar els canvis de configuració: {{errorMessage}}", + "success": "Els paràmetres de Frigate+ han estat desats. Reincia Frigate per aplicar els canvis." + }, + "restart_required": "Es necessari un reinici (El model de Frigate+ ha cambiat)" + }, + "enrichments": { + "semanticSearch": { + "modelSize": { + "small": { + "title": "petit" + }, + "label": "Mida del model", + "large": { + "title": "gran", + "desc": "L’opció large fa servir el model complet de Jina i s’executarà automàticament a la GPU si està disponible." + }, + "desc": "La mida del model utilitzat per incrustacions de cerca semàntica." + }, + "reindexNow": { + "confirmButton": "Reindexar", + "success": "La reindexació ha començat amb èxit.", + "label": "Reindexar ara", + "confirmTitle": "Confirmar la reindexació", + "desc": "La reindexació regenerarà les incrustacions (embeddings) de tots els objectes seguits. Aquest procés s’executa en segon pla i pot arribar a saturar la CPU, així com trigar una bona estona depenent del nombre d’objectes seguits que tinguis.", + "confirmDesc": "Estàs segur que vols reindexar totes les incrustacions (embeddings) dels objectes seguits? Aquest procés s’executarà en segon pla, però pot arribar a saturar la CPU i trigar bastant temps. Pots seguir-ne el progrés a la pàgina d’Explora.", + "alreadyInProgress": "La reindexació ja està en curs.", + "error": "Error en iniciar la reindexació: {{errorMessage}}" + }, + "readTheDocumentation": "Llegir la documentació", + "title": "Cerca semàntica", + "desc": "La cerca semàntica a Frigate permet trobar objectes rastrejats dins dels elements de revisió utilitzant la pròpia imatge, una descripció de text definida per l'usuari o una de generada automàticament." + }, + "faceRecognition": { + "modelSize": { + "small": { + "title": "petit", + "desc": "Fer servir la opció petit fa servir un model d'embedding de rostre de FaceNet que d'executa de manera eficient a la majoria de les CPUs." + }, + "large": { + "title": "gran", + "desc": "L’opció large fa servir el model d'embedding de rostres d'ArcFace i s’executarà automàticament a la GPU si està disponible." + }, + "label": "Mida del model", + "desc": "La mida del model utilitzat per al reconeixement facial." + }, + "readTheDocumentation": "Llegir la documentació", + "title": "Reconeixement de rostres" + }, + "unsavedChanges": "Canvis dels paràmetres complementaris sense desar", + "licensePlateRecognition": { + "readTheDocumentation": "Llegir la documentació", + "title": "Reconeixement de matrícules" + }, + "birdClassification": { + "title": "Classificació d'ocells", + "desc": "La classificació d’ocells identifica ocells coneguts mitjançant un model TensorFlow quantitzat. Quan es reconeix un ocell conegut, el seu nom comú s’afegeix com a subetiqueta. Aquesta informació es mostra a la interfície d’usuari, als filtres i també a les notificacions." + }, + "title": "Parmàmetres complementaris", + "toast": { + "error": "No s'han pogut guardar els canvis de configuració: {{errorMessage}}", + "success": "Els paràmetres complementaris s'han desat. Reinicia Frigate per aplicar els canvis." + }, + "restart_required": "És necessari reiniciar (Han cambiat paràmetres complementaris)" } } diff --git a/web/public/locales/ca/views/system.json b/web/public/locales/ca/views/system.json index def3233c5..853fe348f 100644 --- a/web/public/locales/ca/views/system.json +++ b/web/public/locales/ca/views/system.json @@ -43,6 +43,137 @@ "cpuUsage": "Ús de CPU del detector", "temperature": "Temperatura del detector" }, - "title": "General" + "title": "General", + "hardwareInfo": { + "title": "Informació de maquinari", + "gpuUsage": "Ús de la GPU", + "gpuMemory": "Memòria de GPU", + "gpuDecoder": "Decodificador de GPU", + "gpuEncoder": "Codificador de GPU", + "gpuInfo": { + "vainfoOutput": { + "title": "Sortida de Vainfo", + "processOutput": "Sortida del procés:", + "processError": "Error de procés:", + "returnCode": "Codi de retorn: {{code}}" + }, + "nvidiaSMIOutput": { + "title": "Sortida de Nvidia SMI", + "vbios": "Informació de VBios: {{vbios}}", + "cudaComputerCapability": "Capacitat de càlcul CUDA: {{cuda_compute}}", + "name": "Nom: {{name}}", + "driver": "Controlador: {{driver}}" + }, + "closeInfo": { + "label": "Tancar informació de GPU" + }, + "copyInfo": { + "label": "Copiar informació de GPU" + }, + "toast": { + "success": "Informació de GPU copiada al porta-retalls" + } + }, + "npuUsage": "Ús de NPU", + "npuMemory": "Memòria de NPU" + }, + "otherProcesses": { + "title": "Altres processos", + "processMemoryUsage": "Ús de memòria de procés", + "processCpuUsage": "Ús de la CPU del procés" + } + }, + "storage": { + "title": "Emmagatzematge", + "recordings": { + "title": "Gravacions", + "earliestRecording": "Gravació més antiga disponible:", + "tips": "Aquest valor representa l'emmagatzematge total utilitzat per les gravacions a la base de dades de Frigate. Frigate no registre l'ús de tots els arxius del disc." + }, + "cameraStorage": { + "camera": "Càmera", + "unusedStorageInformation": "Informació d'emmagatzematge no utilitzat", + "bandwidth": "Ample de banda", + "storageUsed": "Emmagatzematge", + "title": "Emmagatzematge de càmera", + "unused": { + "title": "Sense utilitzar" + }, + "percentageOfTotalUsed": "Percentatge del total" + }, + "overview": "Visió general" + }, + "cameras": { + "framesAndDetections": "Fotogrames / Deteccions", + "label": { + "capture": "captura", + "cameraDetect": "{{camName}} detectar", + "cameraCapture": "{{camName}} captura", + "camera": "càmera", + "skipped": "omès", + "ffmpeg": "FFmpeg", + "detect": "detectar", + "overallFramesPerSecond": "Fotogrames per segon globals", + "overallDetectionsPerSecond": "Deteccions per segon globals", + "cameraFfmpeg": "{{camName}} FFmpeg", + "cameraFramesPerSecond": "{{camName}} fotogrames per segon", + "cameraDetectionsPerSecond": "{{camName}} deteccions per segon", + "overallSkippedDetectionsPerSecond": "Nombre total de deteccions descartades per segon", + "cameraSkippedDetectionsPerSecond": "Nombre de deteccions descartades per segon a {{camName}}" + }, + "info": { + "codec": "Còdec:", + "fps": "FPS:", + "resolution": "Resolució:", + "video": "Vídeo:", + "unknown": "Desconegut", + "stream": "Transmissió {{idx}}", + "error": "Error: {{error}}", + "fetching": "Obtenint dades de càmera", + "aspectRatio": "relació d'aspecte", + "tips": { + "title": "Informació del sondeig de la càmera" + }, + "audio": "Àudio:", + "cameraProbeInfo": "Informació del sondeig de la càmera {{camera}}", + "streamDataFromFFPROBE": "Les dades de la transmissió són obtingudes mitjançant ffprobe." + }, + "title": "Càmeres", + "overview": "Visió general", + "toast": { + "success": { + "copyToClipboard": "S'han copiat les dades de sondeig al porta-retalls." + }, + "error": { + "unableToProbeCamera": "No s'ha pogut sondejar la càmera: {{errorMessage}}" + } + } + }, + "lastRefreshed": "Darrera actualització: ", + "stats": { + "reindexingEmbeddings": "Reindexant incrustacions ({{processed}}% completat)", + "healthy": "El sistema és saludable", + "cameraIsOffline": "{{camera}} està fora de línia", + "ffmpegHighCpuUsage": "{{camera}} te un ús elevat de CPU per FFmpeg ({{ffmpegAvg}}%)", + "detectHighCpuUsage": "{{camera}} te un ús elevat de CPU per la detecció ({{detectAvg}}%)", + "detectIsVerySlow": "{{detect}} és molt lent ({{speed}} ms)", + "detectIsSlow": "{{detect}} és lent ({{speed}} ms)" + }, + "enrichments": { + "title": "Enriquiments", + "embeddings": { + "face_recognition_speed": "Velocitat de reconeixement facial", + "image_embedding": "Incrustació d'imatges", + "text_embedding": "Incrustació de text", + "face_recognition": "Reconeixement de rostres", + "plate_recognition": "Reconeixemnt de matrícules", + "image_embedding_speed": "Velocitat d'ncrustació d'imatges", + "face_embedding_speed": "Velocitat d'incrustació de rostres", + "plate_recognition_speed": "Velocitat de reconeixement de matrícules", + "text_embedding_speed": "Velocitat d'incrustació de text", + "yolov9_plate_detection": "Detecció de matrícules YOLOv9", + "yolov9_plate_detection_speed": "Velocitat de detecció de matrícules YOLOv9" + }, + "infPerSecond": "Inferències per segon" } } diff --git a/web/public/locales/cs/common.json b/web/public/locales/cs/common.json index 44c946ef8..08cff4992 100644 --- a/web/public/locales/cs/common.json +++ b/web/public/locales/cs/common.json @@ -124,6 +124,10 @@ "speed": { "kph": "Km/h", "mph": "míle/h" + }, + "length": { + "feet": "stopa", + "meters": "metry" } }, "selectItem": "Vyberte {{item}}", @@ -179,7 +183,9 @@ "fa": "فارسی (Perština)", "ro": "Română (Rumunština)", "hu": "Magyar (Maďarština)", - "pl": "Polski (Polština)" + "pl": "Polski (Polština)", + "th": "ไทย (Thaiština)", + "ca": "Català (Katalánština)" }, "theme": { "highcontrast": "Vysoký kontrast", diff --git a/web/public/locales/cs/components/camera.json b/web/public/locales/cs/components/camera.json index f8b0ae8cf..2c3f0d6c7 100644 --- a/web/public/locales/cs/components/camera.json +++ b/web/public/locales/cs/components/camera.json @@ -21,7 +21,8 @@ } } }, - "label": "Metoda streamování" + "label": "Metoda streamování", + "placeholder": "Vyberte metodu vysílání" }, "label": "Nastavení streamování kamery", "audioIsAvailable": "Audio je k dispozici pro tento stream", @@ -37,7 +38,9 @@ "desc": "Tuto možnost povolte pouze v případě, že živý přenos vaší kamery zobrazuje barevné artefakty a má na pravé straně obrazu diagonální čáru." }, "title": "Nastavení streamování {{cameraName}}", - "desc": "Změní možnosti živého vysílání pro dashboard této skupiny kamer. Tato nastavení jsou specifická pro zařízení/prohlížeč." + "desc": "Změní možnosti živého vysílání pro dashboard této skupiny kamer. Tato nastavení jsou specifická pro zařízení/prohlížeč.", + "stream": "Proud", + "placeholder": "Vyberte proud" } }, "delete": { diff --git a/web/public/locales/cs/views/configEditor.json b/web/public/locales/cs/views/configEditor.json index 8bc390802..55fbafb2c 100644 --- a/web/public/locales/cs/views/configEditor.json +++ b/web/public/locales/cs/views/configEditor.json @@ -11,5 +11,6 @@ "error": { "savingError": "Chyba ukládání konfigurace" } - } + }, + "confirm": "Opustit bez uložení?" } diff --git a/web/public/locales/cs/views/explore.json b/web/public/locales/cs/views/explore.json index af3b57e4a..1dba5c605 100644 --- a/web/public/locales/cs/views/explore.json +++ b/web/public/locales/cs/views/explore.json @@ -143,7 +143,10 @@ "documentation": "Přečtěte si dokumentaci ", "millisecondsToOffset": "Milisekundy pro posun zobrazení popisku detekce. Výchozí: 0", "desc": "Tato data pocházejí z detekčního zdroje vaší kamery, ale jsou překryta na snímcích ze záznamu. Je nepravděpodobné, že by tyto dva proudy byly dokonale synchronizované. Výsledkem je, že ohraničující rámeček a stopáž nebudou dokonale zarovnány. K nastavení však lze použít pole annotation_offset.", - "tips": "TIP: Představte si, že existuje klip události s osobou, která jde zleva doprava. Pokud je ohraničovací rámeček na časové ose události konzistentně vlevo od osoby, měla by být hodnota snížena. Podobně, pokud osoba chodí zleva doprava a ohraničující rámeček je trvale před osobou, měla by být hodnota zvýšena." + "tips": "TIP: Představte si, že existuje klip události s osobou, která jde zleva doprava. Pokud je ohraničovací rámeček na časové ose události konzistentně vlevo od osoby, měla by být hodnota snížena. Podobně, pokud osoba chodí zleva doprava a ohraničující rámeček je trvale před osobou, měla by být hodnota zvýšena.", + "toast": { + "success": "Posun anotace pro {{camera}} byl uložen do konfiguračního souboru. Restartujte Frigate, aby se změny projevily." + } }, "title": "Nastavení popisků" }, @@ -201,5 +204,6 @@ "object_lifecycle": "životní cyklus objektu" }, "noTrackedObjects": "Žádné sledované objekty nebyly nalezeny", - "fetchingTrackedObjectsFailed": "Chyba při načítání sledovaných objektů: {{errorMessage}}" + "fetchingTrackedObjectsFailed": "Chyba při načítání sledovaných objektů: {{errorMessage}}", + "exploreMore": "Prozkoumat více {{label}} objektů" } diff --git a/web/public/locales/cs/views/settings.json b/web/public/locales/cs/views/settings.json index 256344caa..065770762 100644 --- a/web/public/locales/cs/views/settings.json +++ b/web/public/locales/cs/views/settings.json @@ -9,7 +9,8 @@ "motionTuner": "Ladič detekce pohybu - Frigate", "object": "Ladění - Frigate", "general": "Obecné nastavení - Frigate", - "frigatePlus": "Frigate+ nastavení - Frigate" + "frigatePlus": "Frigate+ nastavení - Frigate", + "enrichments": "Nastavení obohacení - Frigate" }, "frigatePlus": { "toast": { @@ -122,7 +123,11 @@ "speedEstimation": { "docs": "Přečtěte si dokumentaci", "title": "Odhad rychlosti", - "desc": "Povolit odhad rychlosti pro objekty v této zóně. Zóna musí mít přesně 4 body." + "desc": "Povolit odhad rychlosti pro objekty v této zóně. Zóna musí mít přesně 4 body.", + "lineADistance": "Vzdálenost linky A ({{unit}})", + "lineBDistance": "Vzdálenost linky B ({{unit}})", + "lineCDistance": "Vzdálenost linky C ({{unit}})", + "lineDDistance": "Vzdálenost linky D ({{unit}})" }, "name": { "inputPlaceHolder": "Zadejte jméno…", @@ -252,6 +257,11 @@ "error": { "mustBeGreaterOrEqualZero": "Doba setrvání musí být větší nebo rovna nule." } + }, + "speed": { + "error": { + "mustBeGreaterOrEqualTo": "Prahová hodnota rychlosti musí být větší nebo rovna 0,1." + } } }, "objectMasks": { @@ -279,7 +289,9 @@ "point_one": "{{count}} bod", "point_few": "{{count}} body", "point_other": "{{count}} bodů" - } + }, + "motionMaskLabel": "Maska Detekce pohybu {{number}}", + "objectMaskLabel": "Maska Objektu {{number}} {{label}}" }, "menu": { "ui": "Uživatelské rozhraní", @@ -290,7 +302,8 @@ "debug": "Ladění", "users": "Uživatelé", "notifications": "Notifikace", - "frigateplus": "Frigate +" + "frigateplus": "Frigate +", + "enrichments": "Obohacení" }, "dialog": { "unsavedChanges": { @@ -402,10 +415,10 @@ "camera": { "streams": { "title": "Streamy", - "desc": "Deaktivace kamery zcela zastaví zpracování jejích streamů ve Frigate. Detekce, nahrávání ani ladění nebudou dostupné.
Poznámka: Tímto nedojde k deaktivaci restreamů v go2rtc." + "desc": "Dočasně zakáže kameru dokud Frigate nerestartuje. Deaktivace kamery zcela zastaví zpracování jejích streamů ve Frigate. Detekce, nahrávání ani ladění nebudou dostupné.
Poznámka: Tímto nedojde k deaktivaci restreamů v go2rtc." }, "review": { - "desc": "Povolte nebo zakažte upozornění a detekce pro tuto kameru. Pokud jsou vypnuté, nebudou se vytvářet žádné nové položky k přezkoumání.", + "desc": "Dočasně povolte nebo zakažte upozornění a detekce pro tuto kameru dokud Frigate nerestartuje. Pokud jsou vypnuté, nebudou se vytvářet žádné nové položky k přezkoumání. ", "detections": "Detekce ", "title": "Revize", "alerts": "Výstrahy " @@ -520,12 +533,14 @@ "title": "Uživatelské jméno", "desc": "Povolena jsou pouze písmena, čísla, tečky a podtržítka.", "placeholder": "Vložte uživatelské jméno" - } + }, + "passwordIsRequired": "Je vyžadováno heslo" }, "createUser": { "title": "Vytvořit nového uživatele", "desc": "Přidejte nový uživatelský účet a zadejte roli pro určení přístupu k jednotlivým částem uživatelského rozhraní Frigate.", - "usernameOnlyInclude": "Uživatelské jméno smí obsahovat pouze písmena, čísla, . nebo _" + "usernameOnlyInclude": "Uživatelské jméno smí obsahovat pouze písmena, čísla, . nebo _", + "confirmPassword": "Potvrďte prosím heslo" }, "deleteUser": { "title": "Smazat Uživatele", @@ -541,12 +556,15 @@ "viewerDesc": "Omezení pouze na Živé dashboardy, Revize, Průzkumníka a Exporty." }, "title": "Změnit Roli Uživatele", - "desc": "Aktualizovat oprávnění pro {{username}}" + "desc": "Aktualizovat oprávnění pro {{username}}", + "select": "Vyberte roli" }, "passwordSetting": { "updatePassword": "Aktualizovat heslo pro uživatele {{username}}", "setPassword": "Nastavit Heslo", - "desc": "Vytvořte silné heslo pro zabezpečení tohoto účtu." + "desc": "Vytvořte silné heslo pro zabezpečení tohoto účtu.", + "cannotBeEmpty": "Heslo nemůže být prázdné", + "doNotMatch": "Hesla nesouhlasí" } }, "table": { @@ -602,5 +620,67 @@ "title": "Obrysová Oblast", "desc": "Hodnota plochy obrysu se používá k rozhodnutí, které skupiny změněných pixelů se kvalifikují jako pohyb. Výchozí: 10" } + }, + "enrichments": { + "title": "Nastavení obohacení", + "faceRecognition": { + "title": "Rozpoznání Obličeje", + "desc": "Rozpoznávání obličeje umožňuje přiřadit lidem jména a po rozpoznání jejich obličeje. Frigate přiřadí jméno osoby jako podštítek. Tyto informace jsou zahrnuty v uživatelském rozhraní, filtrech a také v oznámeních.", + "readTheDocumentation": "Přečtěte si Dokumentaci", + "modelSize": { + "label": "Velikost Modelu", + "desc": "Velikost modelu použitého pro rozpoznání obličeje.", + "small": { + "title": "malý", + "desc": "Použití metody malý využívá model vkládání obličejů FaceNet, který efektivně běží na většině procesorů." + }, + "large": { + "title": "velký", + "desc": "Použití metody velký využívá model vkládání obličejů ArcFace a v případě potřeby se automaticky spustí na GPU." + } + } + }, + "semanticSearch": { + "reindexNow": { + "confirmDesc": "Jste si jisti, že chcete znovu indexovat všechny vložené sledované objekty? Tento proces poběží na pozadí, ale může maximálně zatížit váš procesor a trvat poměrně dlouho. Průběh můžete sledovat na stránce Prozkoumat.", + "confirmTitle": "Potvrdit Reindexování", + "label": "Přeindexovat nyní", + "desc": "Reindexování regeneruje vložení pro všechny sledované objekty. Tento proces běží na pozadí a může maximálně zatížit váš procesor a trvat poměrně dlouho v závislosti na počtu sledovaných objektů.", + "confirmButton": "Přeindexovat", + "success": "Přeindexování úspěšně spuštěno.", + "alreadyInProgress": "Přeindexování je již spuštěno.", + "error": "Chyba spuštění přeindexování: {{errorMessage}}" + }, + "title": "Sémantické Vyhledávání", + "desc": "Sémantické vyhledávání ve Frigate umožňuje najít sledované objekty v rámci vašich zkontrolovaných položek pomocí samotného obrázku, uživatelem definovaného textového popisu nebo automaticky generovaného popisu.", + "readTheDocumentation": "Přečtěte si Dokumentaci", + "modelSize": { + "label": "Velikost Modelu", + "desc": "Velikost modelu použitého pro vkládání sémantického vyhledávání.", + "small": { + "title": "malý", + "desc": "Použitím malého modelu se využívá kvantizovaná verze modelu, která spotřebovává méně RAM a běží rychleji na CPU s velmi zanedbatelným rozdílem v kvalitě vkládání." + }, + "large": { + "title": "velký", + "desc": "Použití parametru velký využívá celý model Jina a v případě potřeby se automaticky spustí na GPU." + } + } + }, + "birdClassification": { + "desc": "Klasifikace ptáků identifikuje známé ptáky pomocí kvantovaného modelu Tensorflow. Po rozpoznání známého ptáka se jeho běžný název přidá jako sub_label. Tato informace je zahrnuta v uživatelském rozhraní, filtrech a také v oznámeních.", + "title": "Klasifikace Ptáků" + }, + "unsavedChanges": "Neuložené změny nastavení Obohacení", + "licensePlateRecognition": { + "title": "Rozpoznání SPZ", + "desc": "Frigate dokáže rozpoznávat SPZ vozidel a automaticky přidávat detekované znaky do pole recognized_license_plate nebo název známé SPZ jako sub_label k objektům typu auto. Běžným případem použití může být čtení SPZ aut vjíždějících na příjezdovou cestu nebo aut projíždějících po ulici.", + "readTheDocumentation": "Přečtěte si Dokumentaci" + }, + "restart_required": "Nutný restart (nastavení Obohacení změněno)", + "toast": { + "success": "Nastavení Obohacení uloženo. Restartujte Frigate aby se změny aplikovaly.", + "error": "Chyba ukládání změn konfigurace: {{errorMessage}}" + } } } diff --git a/web/public/locales/cs/views/system.json b/web/public/locales/cs/views/system.json index 7b0a7c737..fca20986f 100644 --- a/web/public/locales/cs/views/system.json +++ b/web/public/locales/cs/views/system.json @@ -14,7 +14,8 @@ "title": "Informace o sondování kamery" }, "streamDataFromFFPROBE": "Data ze streamu jsou získávána pomocí ffprobe.", - "cameraProbeInfo": "{{camera}} Informace o sondování kamery" + "cameraProbeInfo": "{{camera}} Informace o sondování kamery", + "aspectRatio": "zachovat poměr stran" }, "label": { "camera": "kamera", diff --git a/web/public/locales/de/audio.json b/web/public/locales/de/audio.json index 4462c30a6..0e0e50935 100644 --- a/web/public/locales/de/audio.json +++ b/web/public/locales/de/audio.json @@ -4,7 +4,7 @@ "laughter": "Gelächter", "bellow": "Gebrüll", "whoop": "Jubel", - "whispering": "Gerede", + "whispering": "Flüstern", "crying": "Weinen", "bark": "Bellen", "goat": "Ziege", diff --git a/web/public/locales/de/common.json b/web/public/locales/de/common.json index 1cd8e1f9b..8a3eff88c 100644 --- a/web/public/locales/de/common.json +++ b/web/public/locales/de/common.json @@ -159,11 +159,12 @@ "he": "Hebräisch", "sk": "Slowakisch", "yue": "粵語 (Kantonesisch)", - "th": "ไทย (Thailändisch)" + "th": "ไทย (Thailändisch)", + "ca": "Català (Katalanisch)" }, "appearance": "Erscheinung", "theme": { - "label": "Thema", + "label": "Design-Thema", "blue": "Blau", "green": "Grün", "default": "Standard", diff --git a/web/public/locales/de/views/settings.json b/web/public/locales/de/views/settings.json index d831ff179..04a6eb60a 100644 --- a/web/public/locales/de/views/settings.json +++ b/web/public/locales/de/views/settings.json @@ -170,13 +170,13 @@ }, "streams": { "title": "Streams", - "desc": "Das Deaktivieren einer Kamera stoppt die Verarbeitung der Streams dieser Kamera durch Frigate vollständig. Erkennung, Aufzeichnung und Debugging sind dann nicht mehr möglich.
Hinweis: Go2RTC-Restreams werden dadurch nicht deaktiviert." + "desc": "Deaktiviere eine Kamera vorübergehend, bis Frigate neu gestartet wird. Das Deaktivieren einer Kamera stoppt die Verarbeitung der Streams dieser Kamera durch Frigate vollständig. Erkennung, Aufzeichnung und Debugging sind dann nicht mehr möglich.
Hinweis: Go2RTC-Restreams werden dadurch nicht deaktiviert." }, "review": { "title": "Überprüfung", "alerts": "Warnungen ", "detections": "Erkennungen ", - "desc": "Aktivieren/Deaktivieren Sie Warnungen und Erkennungen für diese Kamera. Wenn diese Option deaktiviert ist, werden keine neuen Überprüfungselemente generiert." + "desc": "Aktiviere/deaktiviere Benachrichtigungen und Erkennungen für diese Kamera vorübergehend, bis Frigate neu gestartet wird. Wenn deaktiviert, werden keine neuen Überprüfungseinträge erstellt. " }, "title": "Kamera-Einstellungen" }, diff --git a/web/public/locales/es/common.json b/web/public/locales/es/common.json index c435b708c..bf6a735fa 100644 --- a/web/public/locales/es/common.json +++ b/web/public/locales/es/common.json @@ -140,7 +140,8 @@ "nl": "Nederlands (Neerlandés)", "fr": "Français (Frances)", "yue": "粵語 (Cantonés)", - "th": "ไทย (Tailandés)" + "th": "ไทย (Tailandés)", + "ca": "Català (Catalan)" }, "appearance": "Apariencia", "darkMode": { diff --git a/web/public/locales/es/views/settings.json b/web/public/locales/es/views/settings.json index 441b18ef8..6950c7999 100644 --- a/web/public/locales/es/views/settings.json +++ b/web/public/locales/es/views/settings.json @@ -149,7 +149,7 @@ "camera": { "review": { "alerts": "Alertas ", - "desc": "Habilitar/deshabilitar alertas y detecciones para esta cámara. Cuando está deshabilitado, no se generarán nuevos elementos de revisión.", + "desc": "Activar/desactivar temporalmente las alertas y detecciones para esta cámara hasta que Frigate se reinicie. Cuando está desactivado, no se generarán nuevos elementos de revisión. ", "detections": "Detecciones ", "title": "Revisar" }, @@ -177,7 +177,7 @@ "title": "Ajustes de la cámara", "streams": { "title": "Transmisiones", - "desc": "Deshabilitar una cámara detiene completamente el procesamiento de las transmisiones de esta cámara por parte de Frigate. La detección, la grabación y la depuración no estarán disponibles.
Nota: Esto no deshabilita las retransmisiones de go2rtc." + "desc": "Desactivar temporalmente una cámara hasta que Frigate se reinicie. Desactivar una cámara detiene por completo el procesamiento de las transmisiones de esta cámara por parte de Frigate. La detección, grabación y depuración no estarán disponibles.
Nota: Esto no desactiva las retransmisiones de go2rtc." } }, "masksAndZones": { diff --git a/web/public/locales/fa/audio.json b/web/public/locales/fa/audio.json index 70bd5d4de..965460f7f 100644 --- a/web/public/locales/fa/audio.json +++ b/web/public/locales/fa/audio.json @@ -5,7 +5,7 @@ "bellow": "صدای نعره", "whoop": "ضجه", "whispering": "غیبت کردن", - "laughter": "خنذه بلند", + "laughter": "خنده", "snicker": "پوزخند", "crying": "گریه کردن", "sigh": "حسرت", @@ -13,5 +13,15 @@ "choir": "آواز گروهی", "yodeling": "عیاشی", "chant": "مناجات", - "mantra": "مانترا" + "mantra": "مانترا", + "cat": "گربه", + "dog": "سگ", + "horse": "اسب", + "bird": "پرنده", + "boat": "قایق", + "car": "ماشین", + "bus": "اتوبوس", + "motorcycle": "موتور سیکلت", + "train": "قطار", + "bicycle": "دوچرخه" } diff --git a/web/public/locales/fa/objects.json b/web/public/locales/fa/objects.json index 0967ef424..278086db2 100644 --- a/web/public/locales/fa/objects.json +++ b/web/public/locales/fa/objects.json @@ -1 +1,20 @@ -{} +{ + "person": "شخص", + "bicycle": "دوچرخه", + "car": "ماشین", + "airplane": "هواپیما", + "bus": "اتوبوس", + "train": "قطار", + "boat": "قایق", + "traffic_light": "چراغ راهنمایی", + "motorcycle": "موتور سیکلت", + "fire_hydrant": "شیر آتش‌نشانی", + "street_sign": "تابلو راهنمایی رانندگی", + "stop_sign": "تابلو ایست", + "parking_meter": "پارکومتر", + "bench": "نیمکت", + "bird": "پرنده", + "cat": "گربه", + "dog": "سگ", + "horse": "اسب" +} diff --git a/web/public/locales/fi/audio.json b/web/public/locales/fi/audio.json index aa288ae14..f5cdad670 100644 --- a/web/public/locales/fi/audio.json +++ b/web/public/locales/fi/audio.json @@ -13,5 +13,29 @@ "bus": "Bussi", "train": "Juna", "bicycle": "Pyörä", - "skateboard": "Rullalauta" + "skateboard": "Rullalauta", + "bellow": "Karjua", + "whoop": "Huutaa", + "whispering": "Kuiskaus", + "laughter": "Nauru", + "snicker": "Hihittää", + "crying": "Itku", + "sigh": "Huokaus", + "singing": "Laulu", + "choir": "Kuoro", + "yodeling": "Jodlata", + "camera": "Kamera", + "animal": "Eläin", + "goat": "Vuohi", + "mouse": "Hiiri", + "keyboard": "Näppäimistö", + "vehicle": "Ajoneuvo", + "door": "Ovi", + "sink": "Lavuaari", + "blender": "Tehosekoitin", + "scissors": "Sakset", + "hair_dryer": "Hiustenkuivaaja", + "toothbrush": "Hammasharja", + "clock": "Kello", + "bark": "Haukku" } diff --git a/web/public/locales/fi/common.json b/web/public/locales/fi/common.json index c45340fee..f76eb0e67 100644 --- a/web/public/locales/fi/common.json +++ b/web/public/locales/fi/common.json @@ -40,5 +40,133 @@ "minute_other": "{{time}}minuuttia", "second_one": "{{time}}sekuntti", "second_other": "{{time}}sekunttia" + }, + "pagination": { + "next": { + "title": "Seuraava", + "label": "Mene seuraavalle sivulle" + }, + "more": "Lisää sivuja", + "previous": { + "title": "Edellinen", + "label": "Mene edelliselle sivulle" + }, + "label": "sivutus" + }, + "accessDenied": { + "documentTitle": "Pääsy kielletty - Frigate", + "title": "Pääsy kielletty", + "desc": "Sinulla ei ole oikeuksia tarkastella tätä sivua." + }, + "role": { + "admin": "Järjestelmänvalvoja", + "viewer": "Katselija", + "desc": "Järjestelmänvalvojalla on täysi käyttöoikeus kaikkiin Frigaten käyttöliittymän toimintoihin. Katselijoiden oikeudet on rajoitettu kameroiden katseluun, kohteiden arviointiin ja historian tarkasteluun.", + "title": "Rooli" + }, + "notFound": { + "documentTitle": "Ei löytynyt - Frigate", + "title": "404", + "desc": "Sivua ei löytynyt" + }, + "selectItem": "Valitse {{item}}", + "menu": { + "live": { + "title": "Suora", + "cameras": { + "title": "Kamerat", + "count_one": "{{count}} kamera", + "count_other": "{{count}} kameraa" + }, + "allCameras": "Kaikki kamerat" + }, + "explore": "Selaa", + "export": "Vienti", + "uiPlayground": "UI-leikkikenttä", + "user": { + "account": "Tili", + "current": "Nykyinen käyttäjä: {{user}}", + "anonymous": "anonyymi", + "title": "Käyttäjä", + "logout": "Kirjaudu ulos", + "setPassword": "Aseta salasana" + }, + "appearance": "Ulkonäkö", + "darkMode": { + "label": "Tumma tila", + "light": "Valoisa", + "dark": "Tumma", + "withSystem": { + "label": "Käytä järjestelmän asetuksia valoisalle tai tummalle tilalle" + } + }, + "faceLibrary": "Kasvokirjasto", + "language": { + "ca": "Katalaani", + "withSystem": { + "label": "Käytä järjestelmän asetuksia kielelle" + } + }, + "review": "Esikatselu", + "theme": { + "highcontrast": "Korkea resoluutio", + "blue": "Sininen", + "green": "Vihreä", + "default": "Oletus", + "nord": "Pohjoismainen", + "red": "Punainen", + "label": "Teema" + }, + "withSystem": "Järjestelmä", + "help": "Apua", + "documentation": { + "title": "Dokumentaatio", + "label": "Frigaten dokumentaatio" + }, + "restart": "Käynnistä uudelleen", + "languages": "Kielet", + "system": "Järjestelmä", + "settings": "Asetukset", + "configuration": "Konfiguraatio" + }, + "toast": { + "copyUrlToClipboard": "URL kopioitu leikepöydälle.", + "save": { + "title": "Tallenna", + "error": { + "title": "Konfiguraatiomuutosten tallennus epäonnistui: {{errorMessage}}", + "noMessage": "Konfiguraatiomuutosten tallennus epäonnistui" + } + } + }, + "button": { + "on": "ON", + "disabled": "Pois käytöstä", + "done": "Valmis", + "enabled": "Käytössä", + "enable": "Ota käyttöön", + "disable": "Poista käytöstä", + "save": "Tallenna", + "saving": "Tallennetaan…", + "cancel": "Peruuta", + "reset": "Nollaa", + "close": "Sulje", + "off": "OFF", + "edit": "Muokkaa", + "yes": "Kyllä", + "copy": "Kopioi", + "no": "Ei", + "download": "Lataa", + "back": "Takaisin", + "history": "Historia", + "play": "Toista", + "next": "Seuraava", + "delete": "Poista", + "info": "Info" + }, + "unit": { + "length": { + "feet": "jalka" + } } } diff --git a/web/public/locales/fi/components/dialog.json b/web/public/locales/fi/components/dialog.json index c248f48b1..18504c10d 100644 --- a/web/public/locales/fi/components/dialog.json +++ b/web/public/locales/fi/components/dialog.json @@ -13,7 +13,28 @@ "submitToPlus": { "label": "Lähetä Frigate+:lle", "desc": "Välttämissäsi paikoissa olevat kohteet eivät ole vääriä positiivisia. Niiden lähettäminen väärinä positiivisina sekoittaa mallia." + }, + "review": { + "question": { + "label": "Vahvista tämä nimike Frigate Plussalle", + "ask_a": "Onko kohde {{label}}?", + "ask_an": "Onko tämä kohde {{label}}?", + "ask_full": "Onko tämä kohde {{untranslatedLabel}} ({{translatedLabel}})?" + }, + "state": { + "submitted": "Lähetetty" + } } + }, + "video": { + "viewInHistory": "Katso historiaa" + } + }, + "export": { + "time": { + "fromTimeline": "Valitse aikajanalta", + "lastHour_one": "Viimeinen tunti", + "lastHour_other": "Viimeiset {{count}} tuntia" } } } diff --git a/web/public/locales/fi/components/filter.json b/web/public/locales/fi/components/filter.json index b254e27e1..0a0d999c9 100644 --- a/web/public/locales/fi/components/filter.json +++ b/web/public/locales/fi/components/filter.json @@ -1,3 +1,30 @@ { - "filter": "Suodatin" + "filter": "Suodatin", + "dates": { + "selectPreset": "Valitse esiasettelu…", + "all": { + "title": "Kaikki päivämäärät", + "short": "Päivämäärät" + } + }, + "more": "Lisää suodattimia", + "reset": { + "label": "Palauta suodattimet oletusarvoihin" + }, + "labels": { + "count_one": "{{count}} nimike", + "label": "Nimikkeet", + "all": { + "title": "Kaikki nimikkeet", + "short": "Nimikkeet" + }, + "count_other": "{{count}} nimikettä" + }, + "zones": { + "label": "Alueet", + "all": { + "title": "Kaikki alueet", + "short": "Alueet" + } + } } diff --git a/web/public/locales/fi/components/icons.json b/web/public/locales/fi/components/icons.json index 6bdca5563..20fea8f3d 100644 --- a/web/public/locales/fi/components/icons.json +++ b/web/public/locales/fi/components/icons.json @@ -1,5 +1,8 @@ { "iconPicker": { - "selectIcon": "Valitse kuvake" + "selectIcon": "Valitse kuvake", + "search": { + "placeholder": "Etsi kuvaketta…" + } } } diff --git a/web/public/locales/fi/components/input.json b/web/public/locales/fi/components/input.json index ecf46eb6a..59083d62a 100644 --- a/web/public/locales/fi/components/input.json +++ b/web/public/locales/fi/components/input.json @@ -1,7 +1,10 @@ { "button": { "downloadVideo": { - "label": "Lataa Video" + "label": "Lataa Video", + "toast": { + "success": "Tarkistettavan kohteen videon lataus on aloitettu." + } } } } diff --git a/web/public/locales/fi/components/player.json b/web/public/locales/fi/components/player.json index 285c8432f..90260f7df 100644 --- a/web/public/locales/fi/components/player.json +++ b/web/public/locales/fi/components/player.json @@ -1,5 +1,28 @@ { "noPreviewFound": "Esikatselua ei löytynyt", "noPreviewFoundFor": "Ei esikatselua {{cameraName}}lle", - "noRecordingsFoundForThisTime": "Ei tallenteita valitulta ajalta" + "noRecordingsFoundForThisTime": "Ei tallenteita valitulta ajalta", + "submitFrigatePlus": { + "title": "Lähetä tämä kuva Frigate+:aan?", + "submit": "Lähetä" + }, + "livePlayerRequiredIOSVersion": "iOS 17.1 tai uudempi vaaditaan tälle suoratoistotyypille.", + "streamOffline": { + "title": "Kamera poissa verkosta", + "desc": "Kuvaruutuja ei vastaanotettu kameran {{cameraName}} detect-kuvavirrasta, tarkista virhelogit" + }, + "cameraDisabled": "Kamera on poistettu käytöstä", + "stats": { + "streamType": { + "title": "Kuvavirran tyyppi:", + "short": "Tyyppi" + }, + "bandwidth": { + "title": "Kaistanleveys:", + "short": "Kaistanleveys" + }, + "latency": { + "title": "Latenssi:" + } + } } diff --git a/web/public/locales/fi/objects.json b/web/public/locales/fi/objects.json index 10ca41476..524350ef8 100644 --- a/web/public/locales/fi/objects.json +++ b/web/public/locales/fi/objects.json @@ -51,5 +51,70 @@ "bowl": "Malja", "banana": "Banaani", "apple": "Omena", - "couch": "Sohva" + "couch": "Sohva", + "keyboard": "Näppäimistö", + "book": "Kirja", + "microwave": "Mikroaaltouuni", + "toaster": "Leivänpaahdin", + "refrigerator": "Jääkaappi", + "sink": "Lavuaari", + "blender": "Tehosekoitin", + "deer": "Peura", + "oven": "Uuni", + "sandwich": "Voileipä", + "orange": "Appelsiini", + "broccoli": "Parsakaali", + "carrot": "Porkkana", + "hot_dog": "Nakkisämpylä", + "pizza": "Pizza", + "donut": "Donitsi", + "cake": "Kakku", + "chair": "Tuoli", + "potted_plant": "Ruukkukasvi", + "bed": "Sänky", + "mirror": "Peili", + "dining_table": "Ruokapöytä", + "window": "Ikkuna", + "desk": "Pöytä", + "toilet": "Vessanpönttö", + "door": "Ovi", + "tv": "TV", + "mouse": "Hiiri", + "laptop": "Kannettava tietokone", + "remote": "Kaukosäädin", + "cell_phone": "Matkapuhelin", + "clock": "Kello", + "vase": "Maljakko", + "scissors": "Sakset", + "teddy_bear": "Nallekarhu", + "hair_dryer": "Hiustenkuivaaja", + "hair_brush": "Hiusharja", + "toothbrush": "Hammasharja", + "vehicle": "Ajoneuvo", + "squirrel": "Orava", + "animal": "Eläin", + "fox": "Kettu", + "goat": "Vuohi", + "bark": "Haukku", + "rabbit": "Kaniini", + "raccoon": "Pesukarhu", + "robot_lawnmower": "Robotti ruohonleikkuri", + "waste_bin": "Jäteastia", + "package": "Paketti", + "bbq_grill": "Grilli", + "amazon": "Amazon", + "usps": "USPS", + "ups": "UPS", + "fedex": "FedEx", + "gls": "GLS", + "dpd": "DPD", + "postnord": "PostNord", + "nzpost": "NZPost", + "postnl": "PostNL", + "dhl": "DHL", + "purolator": "Purolator", + "an_post": "An Post", + "license_plate": "Rekisterikilpi", + "face": "Kasvot", + "on_demand": "Pyynnöstä" } diff --git a/web/public/locales/fi/views/configEditor.json b/web/public/locales/fi/views/configEditor.json index a988ad06e..472c59e37 100644 --- a/web/public/locales/fi/views/configEditor.json +++ b/web/public/locales/fi/views/configEditor.json @@ -1,3 +1,16 @@ { - "documentTitle": "Frigaten konfiguraatioeditori" + "documentTitle": "Frigaten konfiguraatioeditori", + "confirm": "Poistu tallentamatta?", + "saveOnly": "Vain tallennus", + "toast": { + "error": { + "savingError": "Virhe tallennettaessa konfiguraatiota" + }, + "success": { + "copyToClipboard": "Konfiguraatio kopioitu leikepöydälle." + } + }, + "configEditor": "Konfiguraatioeditori", + "copyConfig": "Kopioi konfiguraatio", + "saveAndRestart": "Tallenna & uudelleenkäynnistä" } diff --git a/web/public/locales/fi/views/events.json b/web/public/locales/fi/views/events.json index 9997f0341..638a05f7a 100644 --- a/web/public/locales/fi/views/events.json +++ b/web/public/locales/fi/views/events.json @@ -1,3 +1,38 @@ { - "alerts": "Hälytyset" + "alerts": "Hälytyset", + "empty": { + "detection": "Ei havaintoja tarkastettavaksi", + "motion": "Ei liiketietoja", + "alert": "Ei hälyytyksiä tarkastettavaksi" + }, + "detections": "Havainnot", + "motion": { + "label": "Liike", + "only": "Vain liike" + }, + "allCameras": "Kaikki kamerat", + "timeline": "Aikajana", + "timeline.aria": "Valitse aikajana", + "events": { + "label": "Tapahtumat", + "aria": "Valitse tapahtumat", + "noFoundForTimePeriod": "Tapahtumia ei löydetty tältä ajanjaksolta." + }, + "documentTitle": "Tarkastelu - Frigate", + "detected": "havaittu", + "selected_one": "{{count}} valittu", + "selected_other": "{{count}} valittu", + "recordings": { + "documentTitle": "Tallenteet - Frigate" + }, + "calendarFilter": { + "last24Hours": "Viimeiset 24 tuntia" + }, + "markAsReviewed": "Merkitse katselmoiduksi", + "markTheseItemsAsReviewed": "Merkitse nämä kohteet katselmoiduksi", + "newReviewItems": { + "label": "Näytä uudet katselmoitavat kohteet", + "button": "Uudet katselmoitavat kohteet" + }, + "camera": "Kamera" } diff --git a/web/public/locales/fi/views/explore.json b/web/public/locales/fi/views/explore.json index ccecb907f..6773473e1 100644 --- a/web/public/locales/fi/views/explore.json +++ b/web/public/locales/fi/views/explore.json @@ -1,3 +1,85 @@ { - "documentTitle": "Etsi" + "documentTitle": "Etsi", + "details": { + "timestamp": "Aikaleima", + "item": { + "title": "Tarkastele kohteen tietoja", + "desc": "Tarkastele kohteen tietoja", + "button": { + "share": "Jaa tämä tarkasteltu kohde" + } + } + }, + "exploreIsUnavailable": { + "title": "Selaus on tavoittamattomissa", + "embeddingsReindexing": { + "startingUp": "Käynnistytään…", + "estimatedTime": "Arvioitu aika jäljellä:", + "finishingShortly": "Valmista pian", + "step": { + "trackedObjectsProcessed": "Käsitellyt seuratut objektit: ", + "thumbnailsEmbedded": "Kuvakkeet sisällytetty: ", + "descriptionsEmbedded": "Kuvaukset sisällytetty: " + } + }, + "downloadingModels": { + "context": "Frigate lataa semanttista hakua varten vaadittavat upotusmallit. Tämä saattaa viedä useamman minuutin, riippuen yhteytesi nopeudesta.", + "setup": { + "visionModel": "Vision-malli", + "textModel": "Tekstimalli" + }, + "tips": { + "documentation": "Lue dokumentaatio" + }, + "error": "Tapahtui virhe. Tarkista Frigaten lokit." + } + }, + "exploreMore": "Selaa lisää {{label}}-tyyppisiä kohteita", + "generativeAI": "Generatiivinen AI", + "objectLifecycle": { + "annotationSettings": { + "offset": { + "documentation": "Lue dokumentaatio " + }, + "showAllZones": { + "title": "Näytä kaikki vyöhykkeet" + } + }, + "lifecycleItemDesc": { + "header": { + "zones": "Vyöhykkeet", + "ratio": "Suhde", + "area": "Alue" + }, + "active": "{{label}} aktivoitui", + "stationary": "{{label}} pysähtyi", + "attribute": { + "faceOrLicense_plate": "{{attribute}} havaittiin nimikkeelle {{label}}", + "other": "{{label}} tunnistettu {{attribute}}:na" + }, + "gone": "{{label}} poistui", + "entered_zone": "{{label}} ilmestyi vyöhykkeelle {{zones}}", + "visible": "{{label}} havaittu", + "heard": "{{label}} kuului", + "external": "{{label}} havaittiin" + }, + "trackedPoint": "Seurattu piste", + "carousel": { + "previous": "Edellinen", + "next": "Seuraava" + }, + "count": "{{first}} / {{second}}", + "title": "Kohteen elinkaari", + "noImageFound": "Tältä aikaleimalta ei löytynyt kuvia.", + "createObjectMask": "Luo kohdemaski", + "scrollViewTips": "Vieritä katsoaksesi merkittäviä hetkiä kohteen elinkaarelta.", + "autoTrackingTips": "Kohteen rajojen sijainti on epätarkka automaattisesti seuraaville kameroille." + }, + "trackedObjectDetails": "Seurattavien kohteiden tiedot", + "type": { + "details": "tiedot", + "snapshot": "kuvankaappaus", + "video": "video", + "object_lifecycle": "kohteen elinkaari" + } } diff --git a/web/public/locales/fi/views/exports.json b/web/public/locales/fi/views/exports.json index 3d8722adb..5ee8e88eb 100644 --- a/web/public/locales/fi/views/exports.json +++ b/web/public/locales/fi/views/exports.json @@ -1,4 +1,17 @@ { "search": "Etsi", - "documentTitle": "Vie" + "documentTitle": "Vie", + "deleteExport.desc": "Oletko varma että haluat poistaa kohteen {{exportName}}?", + "toast": { + "error": { + "renameExportFailed": "Viedyn kohteen uudelleennimeäminen epäonnistui: {{errorMessage}}" + } + }, + "noExports": "Ei vietyjä kohteita", + "deleteExport": "Poista viety kohde", + "editExport": { + "title": "Nimeä uudelleen", + "desc": "Anna uusi nimi viedylle kohteelle.", + "saveExport": "Tallenna vienti" + } } diff --git a/web/public/locales/fi/views/faceLibrary.json b/web/public/locales/fi/views/faceLibrary.json index 5e7f98c49..48b4fffcf 100644 --- a/web/public/locales/fi/views/faceLibrary.json +++ b/web/public/locales/fi/views/faceLibrary.json @@ -1,5 +1,31 @@ { "description": { - "addFace": "Opastus: Uuden kokoelman lisääminen Kasvokirjastoon." - } + "addFace": "Opastus: Uuden kokoelman lisääminen Kasvokirjastoon.", + "invalidName": "Virheellinen nimi. Nimi voi sisältää vain merkkejä, numeroita, välejä, heittomerkkejä, alaviivoja ja väliviivoja.", + "placeholder": "Anna nimi kokoelmalle" + }, + "uploadFaceImage": { + "desc": "Lähetä kuva kasvojen tunnistukseen ja lisää se sivulle {{pageToggle}}", + "title": "Lähetä kasvokuva" + }, + "details": { + "unknown": "Tuntematon", + "faceDesc": "Lisätiedot kohteesta, josta tämä kasvokuva tallennettiin", + "person": "Henkilö", + "timestamp": "Aikaleima", + "subLabelScore": "", + "face": "" + }, + "documentTitle": "Kasvokirjasto - Frigate", + "deleteFaceAttempts": { + "desc_one": "Oletko varma, että haluat poistaa {{count}} kasvon? Tätä toimintoa ei voi perua.", + "desc_other": "Oletko varma, että haluat poistaa {{count}} kasvoa? Tätä toimintoa ei voi perua." + }, + "toast": { + "success": { + "deletedFace_one": "{{count}} kasvo poistettu onnistuneesti.", + "deletedFace_other": "{{count}} kasvoa poistettu onnistuneesti." + } + }, + "selectItem": "Valitse {{item}}" } diff --git a/web/public/locales/fi/views/search.json b/web/public/locales/fi/views/search.json index a35ffc2f7..67440629a 100644 --- a/web/public/locales/fi/views/search.json +++ b/web/public/locales/fi/views/search.json @@ -1,3 +1,21 @@ { - "search": "Etsi" + "search": "Etsi", + "savedSearches": "Tallennetut haut", + "searchFor": "Etsi {{inputValue}}", + "button": { + "clear": "Tyhjennä haku", + "save": "Tallenna haku", + "delete": "Poista tallennettu haku", + "filterInformation": "Suodattimen tiedot", + "filterActive": "Suodattimia valittuina" + }, + "trackedObjectId": "Seuratun kohteen ID", + "filter": { + "label": { + "cameras": "Kamerat", + "labels": "Nimikkeet", + "zones": "Alueet", + "sub_labels": "Alinimikkeet" + } + } } diff --git a/web/public/locales/fi/views/settings.json b/web/public/locales/fi/views/settings.json index cc982214d..23b910dda 100644 --- a/web/public/locales/fi/views/settings.json +++ b/web/public/locales/fi/views/settings.json @@ -7,8 +7,10 @@ "default": "Asetukset - Frigate", "general": "Yleiset asetukset - Frigate", "frigatePlus": "Frigate+ asetukset - Frigate", - "object": "Objektiasetukset - Frigate", - "authentication": "Autentikointiuasetukset - Frigate" + "object": "Virheenjäljitys - Frigate", + "authentication": "Autentikointiuasetukset - Frigate", + "notifications": "Ilmoitusasetukset - Frigate", + "enrichments": "Laajennusasetukset – Frigate" }, "menu": { "ui": "Käyttöliittymä", @@ -19,7 +21,8 @@ "masksAndZones": "Maskit / alueet", "debug": "Debuggaus", "motionTuner": "Liikesäädin", - "notifications": "Ilmoitukset" + "notifications": "Ilmoitukset", + "enrichments": "Rikasteet" }, "dialog": { "unsavedChanges": { @@ -146,11 +149,11 @@ "title": "Kamera-asetukset", "streams": { "title": "Striimit", - "desc": "Kameran poiskytkeminen lopettaa kameran videostriimien käsittelyn. Havainnot, tallennus ja debuggaus ovat pois käytöstä.
Huom: tämä ei poista käytöstä go2rtc uusinta striimejä." + "desc": "Poista kamera käytöstä väliaikaisesti, kunnes Frigate uudelleenkäynnistetään. Kameran poiskytkeminen lopettaa kameran videostriimien käsittelyn. Havainnot, tallennus ja debuggaus ovat pois käytöstä.
Huom: tämä ei poista käytöstä go2rtc uusinta striimejä." }, "review": { "title": "Katselu", - "desc": "Kytke päälle/pois hälytykset ja tunnistus tälle kameralle. Kun ne ovat pois päältä, uusia katseltavia tapahtumia ei luoda.", + "desc": "Kytke väliaikaisesti päälle/pois hälytykset ja tunnistus tälle kameralle, kunnes Frigate käynnistetään uudelleen. Kun ne ovat pois päältä, uusia katseltavia tapahtumia ei luoda. ", "alerts": "Hälytykset ", "detections": "Tunnistukset " }, diff --git a/web/public/locales/fi/views/system.json b/web/public/locales/fi/views/system.json index e7dae6f5e..7b6988bd3 100644 --- a/web/public/locales/fi/views/system.json +++ b/web/public/locales/fi/views/system.json @@ -3,10 +3,52 @@ "type": { "timestamp": "Aikaleima", "tag": "Tagi", - "message": "Viesti" + "message": "Viesti", + "label": "Tyyppi" + }, + "copy": { + "label": "Kopioi leikepöydälle", + "success": "Lokit kopioitu leikepöydälle", + "error": "Lokeja ei voitu kopioida leikepöydälle" + }, + "download": { + "label": "Lataa lokit" } }, "documentTitle": { - "cameras": "Kameroiden tilastot - Frigate" + "cameras": "Kameroiden tilastot - Frigate", + "storage": "Tallenteiden tilastot - Fgirage", + "general": "Yleiset tilastot - Frigate", + "enrichments": "Rikastetut tilastot - Frigate", + "logs": { + "frigate": "Frigaten lokit - Frigate", + "go2rtc": "Go2RTC lokit - Frigate", + "nginx": "Nginx lokit - Frigate" + } + }, + "title": "Järjestelmä", + "metrics": "Järjestelmämittarit", + "general": { + "hardwareInfo": { + "title": "Laitteiston tiedot", + "gpuUsage": "GPU:n käyttö", + "gpuMemory": "GPU:n muisti", + "gpuEncoder": "GPU-enkooderi", + "gpuDecoder": "GPU-dekooderi", + "gpuInfo": { + "vainfoOutput": { + "title": "Vainfon tulostus" + }, + "toast": { + "success": "Kopioi GPU:n tiedot leikepöydälle" + }, + "copyInfo": { + "label": "Kopioi GPU:n tiedot" + }, + "closeInfo": { + "label": "Sulje GPU:n tiedot" + } + } + } } } diff --git a/web/public/locales/fr/audio.json b/web/public/locales/fr/audio.json index 9388b1307..b773f026b 100644 --- a/web/public/locales/fr/audio.json +++ b/web/public/locales/fr/audio.json @@ -22,7 +22,7 @@ "mantra": "Mantra", "child_singing": "Chant d'enfant", "bird": "Oiseau", - "cat": "Chat", + "cat": "chat", "synthetic_singing": "Chant synthétique", "rapping": "Rap", "horse": "Cheval", diff --git a/web/public/locales/fr/common.json b/web/public/locales/fr/common.json index 4ff75d808..5ed9f65a9 100644 --- a/web/public/locales/fr/common.json +++ b/web/public/locales/fr/common.json @@ -18,22 +18,22 @@ "5minutes": "5 minutes", "30minutes": "30 minutes", "12hours": "12 heures", - "h": "{{time}}h", + "h": "{{time}} h", "pm": "PM", "am": "AM", - "yr": "{{time}}a", + "yr": "{{time}} a", "year_one": "{{time}} année", "year_many": "{{time}} années", "year_other": "{{time}} années", - "mo": "{{time}}m", + "mo": "{{time}} m", "month_one": "{{time}} mois", "month_many": "{{time}} mois", "month_other": "{{time}} mois", - "s": "{{time}}s", + "s": "{{time}} s", "second_one": "{{time}} seconde", "second_many": "{{time}} secondes", "second_other": "{{time}} secondes", - "m": "{{time}}m", + "m": "{{time}} mn", "hour_one": "{{time}} heure", "hour_many": "{{time}} heures", "hour_other": "{{time}} heures", @@ -41,7 +41,7 @@ "minute_one": "{{time}} minute", "minute_many": "{{time}} minutes", "minute_other": "{{time}} minutes", - "d": "{{time}}j", + "d": "{{time}} j", "day_one": "{{time}} jour", "day_many": "{{time}} jours", "day_other": "{{time}} jours", @@ -65,28 +65,28 @@ }, "formattedTimestampHourMinute": { "24hour": "HH:mm", - "12hour": "HH:mm" + "12hour": "HH:mm aaa" }, "formattedTimestampMonthDay": "d MMM", "formattedTimestampFilename": { - "12hour": "dd-MM-yy-HH-mm-ss", + "12hour": "dd-MM-yy-HH-mm-ss-a", "24hour": "dd-MM-yy-HH-mm-ss" }, "formattedTimestampMonthDayHourMinute": { - "12hour": "d MMM HH:mm", - "24hour": "d MMM HH:mm" + "12hour": "d MMM, HH:mm aaa", + "24hour": "d MMM, HH:mm" }, "formattedTimestampHourMinuteSecond": { "24hour": "HH:mm:ss", - "12hour": "HH:mm:ss" + "12hour": "HH:mm:ss aaa" }, "formattedTimestampMonthDayYearHourMinute": { - "12hour": "d MMM yyyy, HH:mm", - "24hour": "d MMM yyyy HH:mm" + "12hour": "d MMM yyyy, HH:mm aaa", + "24hour": "d MMM yyyy, HH:mm" }, "formattedTimestampMonthDayYear": { "12hour": "d MMM, yyyy", - "24hour": "d MMM,yyuy" + "24hour": "d MMM,yyyy" } }, "button": { @@ -129,7 +129,7 @@ "menu": { "configuration": "Configuration", "language": { - "en": "Anglais (Anglais)", + "en": "English (Anglais)", "withSystem": { "label": "Utiliser les paramètres système pour la langue" }, @@ -161,7 +161,8 @@ "uk": "Українська (Ukrainien)", "vi": "Tiếng Việt (Vietnamien)", "yue": "粵語 (Cantonais)", - "th": "ไทย (Thai)" + "th": "ไทย (Thai)", + "ca": "Català (Catalan)" }, "appearance": "Apparence", "darkMode": { @@ -172,7 +173,7 @@ }, "label": "Mode sombre" }, - "review": "Passer en revue", + "review": "Revue d'événements", "explore": "Explorer", "export": "Exporter", "user": { @@ -207,16 +208,16 @@ "restart": "Redémarrer Frigate", "live": { "cameras": { - "count_one": "{{count}} Caméra", - "count_many": "{{count}} Caméras", - "count_other": "{{count}} Caméras", + "count_one": "{{count}} caméra", + "count_many": "{{count}} caméras", + "count_other": "{{count}} caméras", "title": "Caméras" }, "allCameras": "Toutes les caméras", "title": "Direct" }, "uiPlayground": "Gestion de l'interface", - "faceLibrary": "Librairie des visages", + "faceLibrary": "Bibliothèque de visages", "languages": "Langues" }, "toast": { @@ -233,7 +234,7 @@ "title": "Rôle", "viewer": "Observateur", "admin": "Administrateur", - "desc": "Les administrateurs accèdent à l'ensemble des fonctionnalités de l'interface Frigate. Les observateurs sont limités à la consultation des caméras, des revues d'éléments, et à l'historique des enregistrements dans l'interface utilisateur." + "desc": "Les administrateurs accèdent à l'ensemble des fonctionnalités de l'interface Frigate. Les observateurs sont limités à la consultation des caméras, de la revue d'événements, et à l'historique des enregistrements dans l'interface utilisateur." }, "pagination": { "next": { diff --git a/web/public/locales/fr/components/auth.json b/web/public/locales/fr/components/auth.json index c6ff47c87..65e26691b 100644 --- a/web/public/locales/fr/components/auth.json +++ b/web/public/locales/fr/components/auth.json @@ -9,7 +9,7 @@ "passwordRequired": "Un mot de passe est requis", "loginFailed": "Échec de l'authentification", "usernameRequired": "Un nom d'utilisateur est requis", - "rateLimit": "Limite de débit dépassée. Réessayez plus tard." + "rateLimit": "Nombre d'essais dépassé. Réessayez plus tard." } } } diff --git a/web/public/locales/fr/components/camera.json b/web/public/locales/fr/components/camera.json index c0e1b6954..582b211b5 100644 --- a/web/public/locales/fr/components/camera.json +++ b/web/public/locales/fr/components/camera.json @@ -7,7 +7,7 @@ "label": "Supprimer le groupe de caméras", "confirm": { "title": "Confirmer la suppression", - "desc": "Êtes-vous sûr de vouloir supprimer le groupe de caméras {{name}}?" + "desc": "Êtes-vous sûr de vouloir supprimer le groupe de caméras {{name}} ?" } }, "name": { @@ -29,7 +29,7 @@ "camera": { "setting": { "label": "Paramètres de flux de caméra", - "title": "{{cameraName}} Paramètres de flux", + "title": "Paramètres de flux de {{cameraName}}", "audioIsUnavailable": "L'audio n'est pas disponible pour ce flux", "audioIsAvailable": "L'audio est disponible pour ce flux", "desc": "Modifie les options du flux temps réel pour le tableau de bord de ce groupe de caméras. Ces paramètres sont spécifiques à un périphérique et/ou navigateur.", @@ -43,18 +43,18 @@ "label": "Méthode de streaming", "method": { "noStreaming": { - "label": "Pas de streaming", + "label": "Pas de diffusion", "desc": "Les images provenant de la caméra ne seront mises à jour qu'une fois par minute et il n'y aura pas de diffusion en direct." }, "smartStreaming": { - "label": "Streaming intelligent (recommandé)", - "desc": "Le streaming intelligent mettra à jour les images de la caméra une fois par minute lorsqu'aucune activité n'est détectée afin de conserver la bande-passante et les ressources. Quand une activité est détectée, le flux bascule automatiquement en diffusion temps réel." + "label": "Diffusion intelligente (recommandé)", + "desc": "La diffusion intelligente mettra à jour les images de la caméra une fois par minute lorsqu'aucune activité n'est détectée afin de conserver la bande-passante et les ressources. Quand une activité est détectée, le flux bascule automatiquement en diffusion temps réel." }, "continuousStreaming": { - "label": "Streaming continu", + "label": "Diffusion en continu", "desc": { "title": "L'image de la caméra sera toujours un flux temps réel lorsqu'elle est visible dans le tableau de bord, même si aucune activité n'est détectée.", - "warning": "Le streaming continu peut engendrer une bande-passante élevée et des problèmes de performance. A utiliser avec précaution." + "warning": "La diffusion en continu peut engendrer une bande-passante élevée et des problèmes de performance. A utiliser avec précaution." } } }, diff --git a/web/public/locales/fr/components/dialog.json b/web/public/locales/fr/components/dialog.json index f2c160259..d92e3ff72 100644 --- a/web/public/locales/fr/components/dialog.json +++ b/web/public/locales/fr/components/dialog.json @@ -3,8 +3,8 @@ "title": "Êtes-vous sûr de vouloir redémarrer Frigate ?", "restarting": { "title": "Frigate redémarre", - "content": "Cette page sera rechargée dans {{countdown}} secondes.", - "button": "Forcer le rechargement maintenant" + "content": "Actualisation de la page dans {{countdown}} secondes.", + "button": "Forcer l'actualisation maintenant" }, "button": "Redémarrer" }, @@ -12,7 +12,7 @@ "plus": { "submitToPlus": { "label": "Soumettre à Frigate+", - "desc": "Les objets situés dans des endroits que vous souhaitez éviter ne sont pas des faux positifs. Les soumettre comme faux positifs perturberait le modèle." + "desc": "Les objets situés dans des zones à ignorer ne doivent pas être signalés comme de faux positifs, car cela nuirait à la précision du modèle." }, "review": { "true": { @@ -31,15 +31,15 @@ "submitted": "Soumis" }, "question": { - "label": "Confirmez ce libellé pour Frigate Plus", - "ask_an": "Est-ce que cet objet est un {{label}} ?", - "ask_a": "Est-ce que cet objet est un {{label}} ?", - "ask_full": "Est-ce-que cet objet est un(e) {{untranslatedLabel}} ({{translatedLabel}}) ?" + "label": "Confirmez ce libellé pour Frigate+", + "ask_an": "Est-ce que cet objet est un(e) {{label}} ?", + "ask_a": "Est-ce que cet objet est un(e) {{label}} ?", + "ask_full": "Est-ce-que cet objet est un(e) {{translatedLabel}}  ?" } } }, "video": { - "viewInHistory": "Afficher dans l'historique" + "viewInHistory": "Afficher dans la chronologie" } }, "export": { @@ -50,7 +50,7 @@ "lastHour_many": "{{count}} dernières heures", "lastHour_other": "{{count}} dernières heures", "end": { - "label": "Sélectionner l'heure de fin", + "label": "Sélectionner une heure de fin", "title": "Heure de fin" }, "start": { @@ -58,14 +58,14 @@ "title": "Heure de début" } }, - "selectOrExport": "Sélectionner ou Exporter", + "selectOrExport": "Sélectionner ou exporter", "toast": { "error": { "failed": "Échec du démarrage de l'export : {{error}}", - "endTimeMustAfterStartTime": "L'heure de fin doit être après l'heure de début", + "endTimeMustAfterStartTime": "L'heure de fin doit être postérieure à l'heure de début", "noVaildTimeSelected": "La plage horaire sélectionnée n'est pas valide" }, - "success": "Exportation démarrée. Consulter le fichier dans le dossier /exports." + "success": "Exportation démarrée avec succès. Consultez le fichier dans le dossier /exports." }, "select": "Sélectionner", "name": { @@ -79,7 +79,7 @@ }, "search": { "saveSearch": { - "desc": "Fournissez un nom pour cette recherche enregistrée.", + "desc": "Donnez un nom à cette recherche enregistrée.", "label": "Enregistrer la recherche", "success": "La recherche ({{searchName}}) a été enregistrée.", "button": { @@ -88,32 +88,32 @@ } }, "overwrite": "{{searchName}} existe déjà. L'enregistrement écrasera la recherche existante.", - "placeholder": "Renseignez un nom pour votre recherche" + "placeholder": "Saisissez un nom pour votre recherche" } }, "streaming": { "label": "Flux", "restreaming": { - "disabled": "Le renvoi du flux n'est pas activé pour cette caméra.", + "disabled": "La rediffusion n'est pas activée pour cette caméra.", "desc": { "readTheDocumentation": "Lire la documentation", - "title": "Installer go2rtc pour accéder à des options supplémentaires de visionnage en direct et l'audio pour cette caméra." + "title": "Configurez go2rtc pour bénéficier d'options de visualisation en direct supplémentaires et de l'audio pour cette caméra." } }, "showStats": { - "label": "Afficher les statistiques de flux", - "desc": "Activer cette option pour afficher les statistiques des flux en surimpression sur le flux de la caméra." + "label": "Afficher les statistiques du flux", + "desc": "Activez cette option pour montrer les statistiques de diffusion en incrustation sur le flux vidéo de la caméra." }, - "debugView": "Vue de débogage" + "debugView": "Affichage de débogage" }, "recording": { "confirmDelete": { "desc": { - "selected": "Êtes-vous certain de vouloir supprimer toutes les vidéos enregistrées associées à cet élément de revue ?

Pressez la touche Maj pour éviter cette boîte de dialogue dans le futur." + "selected": "Êtes-vous sûr(e) de vouloir supprimer toutes les vidéos enregistrées associées à cet élément de la revue d'événements ?

Maintenez la touche Maj enfoncée pour éviter cette boîte de dialogue à l'avenir." }, "title": "Confirmer la suppression", "toast": { - "success": "Les séquences vidéo associées aux éléments de revue sélectionnés ont été supprimées avec succès.", + "success": "Les vidéos associées aux éléments de revue d'événements sélectionnés ont été supprimées.", "error": "Échec de la suppression : {{error}}" } }, diff --git a/web/public/locales/fr/components/filter.json b/web/public/locales/fr/components/filter.json index e8ff74265..567cf81f5 100644 --- a/web/public/locales/fr/components/filter.json +++ b/web/public/locales/fr/components/filter.json @@ -39,10 +39,10 @@ "label": "Tri", "dateDesc": "Date (ordre chronologique inverse)", "dateAsc": "Date (ordre chronologique)", - "scoreDesc": "Score d'objet (Descendant)", - "scoreAsc": "Score d'objet (Ascendant)", - "speedAsc": "Vitesse estimée (Ascendant)", - "speedDesc": "Vitesse estimée (Descendant)", + "scoreDesc": "Score d'objet (décroissant)", + "scoreAsc": "Score d'objet (croissant)", + "speedAsc": "Vitesse estimée (croissant)", + "speedDesc": "Vitesse estimée (décroissant)", "relevance": "Pertinence" }, "features": { @@ -52,7 +52,7 @@ }, "hasVideoClip": "A un clip vidéo", "hasSnapshot": "A un instantané", - "label": "Caractéristiques" + "label": "Fonctionnalités" }, "explore": { "settings": { @@ -70,15 +70,15 @@ "searchSource": { "label": "Source de recherche", "options": { - "thumbnailImage": "Image de la vignette", + "thumbnailImage": "Image de miniature", "description": "Description" }, - "desc": "Choisissez si vous souhaitez rechercher les vignettes ou les descriptions de vos objets suivis." + "desc": "Choisissez si vous souhaitez rechercher les miniatures ou les descriptions de vos objets suivis." } }, "date": { "selectDateBy": { - "label": "Sélectionner une date pour filtrer par" + "label": "Sélectionner une date pour filtrer" } } }, @@ -89,19 +89,19 @@ "label": "Filtre des caméras", "all": { "short": "Caméras", - "title": "Toutes les Caméras" + "title": "Toutes les caméras" } }, "motion": { "showMotionOnly": "Afficher uniquement le mouvement" }, "logSettings": { - "filterBySeverity": "Filtrer les journaux par sévérité", + "filterBySeverity": "Filtrer les journaux par gravité", "loading": { "title": "Chargement", - "desc": "Lorsque le volet des journaux est défilé jusqu'en bas, les nouveaux enregistrements sont automatiquement diffusées au fur et à mesure de leur ajout." + "desc": "Lorsque le volet de journalisation est défilé jusqu'en bas, les nouveaux enregistrements s'affichent automatiquement au fur et à mesure qu'ils sont ajoutés." }, - "label": "Niveau de journal du filtre", + "label": "Niveau de journalisation du filtre", "disableLogStreaming": "Désactiver la diffusion des journaux", "allLogs": "Tous les journaux" }, @@ -119,7 +119,7 @@ "success": "Les objets suivis ont été supprimés avec succès.", "error": "Échec de la suppression des objets suivis : {{errorMessage}}" }, - "desc": "La suppression de ces objets suivis {{objectLength}} supprime l'instantané, les plongements vectoriels enregistrées et les entrées du cycle de vie de l'objet associées. Les séquences enregistrées de ces objets suivis dans la vue Historique NE seront PAS supprimées.

Voulez-vous vraiment continuer ?

Maintenez la touche Maj enfoncée pour ignorer cette boîte de dialogue à l'avenir." + "desc": "Supprimer ces objets suivis {{objectLength}} retirera l'instantané, les représentations numériques enregistrées et les entrées du cycle de vie de l'objet associées. Les séquences enregistrées de ces objets suivis dans la vue Historique NE seront PAS supprimées.

Voulez-vous vraiment continuer ?

Maintenez la touche Maj enfoncée pour ignorer cette boîte de dialogue à l'avenir." }, "zoneMask": { "filterBy": "Filtrer par masque de zone" diff --git a/web/public/locales/fr/components/icons.json b/web/public/locales/fr/components/icons.json index 90ce0bb1f..f713f2f52 100644 --- a/web/public/locales/fr/components/icons.json +++ b/web/public/locales/fr/components/icons.json @@ -1,7 +1,7 @@ { "iconPicker": { "search": { - "placeholder": "Chercher une icône…" + "placeholder": "Rechercher une icône…" }, "selectIcon": "Sélectionnez une icône" } diff --git a/web/public/locales/fr/components/input.json b/web/public/locales/fr/components/input.json index 6a79afa25..36874788e 100644 --- a/web/public/locales/fr/components/input.json +++ b/web/public/locales/fr/components/input.json @@ -3,7 +3,7 @@ "downloadVideo": { "label": "Télécharger la vidéo", "toast": { - "success": "Le téléchargement de votre vidéo de revue a commencé." + "success": "Le téléchargement de la vidéo de votre élément de la revue d'événements a commencé." } } } diff --git a/web/public/locales/fr/components/player.json b/web/public/locales/fr/components/player.json index 90c1a4551..7dd7346e5 100644 --- a/web/public/locales/fr/components/player.json +++ b/web/public/locales/fr/components/player.json @@ -3,14 +3,14 @@ "noPreviewFoundFor": "Aucun aperçu trouvé pour {{cameraName}}", "noPreviewFound": "Aucun aperçu trouvé", "submitFrigatePlus": { - "title": "Soumettre cette image à Frigate+?", + "title": "Soumettre cette image à Frigate+ ?", "submit": "Soumettre" }, "streamOffline": { "title": "Flux hors ligne", - "desc": "Aucune image n'a été reçue sur le flux de détection de la caméra {{cameraName}}, vérifiez le journal d'erreurs" + "desc": "Aucune image n'a été reçue sur le flux de détection de la caméra {{cameraName}}. Vérifiez le journal d'erreurs." }, - "livePlayerRequiredIOSVersion": "iOS 17.1 ou une version ultérieure est requis pour ce type de flux en direct.", + "livePlayerRequiredIOSVersion": "iOS 17.1 ou une version supérieure est requis pour ce type de flux en direct.", "cameraDisabled": "La caméra est désactivée", "stats": { "streamType": { @@ -26,7 +26,7 @@ "value": "{{seconds}} secondes", "short": { "title": "Latence", - "value": "{{seconds}} sec" + "value": "{{seconds}} s" } }, "droppedFrames": { diff --git a/web/public/locales/fr/objects.json b/web/public/locales/fr/objects.json index db7b3458b..d959a8e42 100644 --- a/web/public/locales/fr/objects.json +++ b/web/public/locales/fr/objects.json @@ -13,7 +13,7 @@ "parking_meter": "Parcmètre", "bench": "Banc", "bird": "Oiseau", - "cat": "Chat", + "cat": "chat", "stop_sign": "Panneau de stop", "dog": "Chien", "horse": "Cheval", diff --git a/web/public/locales/fr/views/configEditor.json b/web/public/locales/fr/views/configEditor.json index 709beec71..5f88fb94f 100644 --- a/web/public/locales/fr/views/configEditor.json +++ b/web/public/locales/fr/views/configEditor.json @@ -3,10 +3,10 @@ "documentTitle": "Éditeur de configuration - Frigate", "copyConfig": "Copier la configuration", "saveOnly": "Enregistrer seulement", - "saveAndRestart": "Enregistrer & redémarrer", + "saveAndRestart": "Enregistrer et redémarrer", "toast": { "success": { - "copyToClipboard": "Configuration copiée dans le presse-papiers." + "copyToClipboard": "Configuration copiée dans le presse-papiers" }, "error": { "savingError": "Erreur lors de l'enregistrement de la configuration" diff --git a/web/public/locales/fr/views/events.json b/web/public/locales/fr/views/events.json index ea4c5c96d..d8d58332c 100644 --- a/web/public/locales/fr/views/events.json +++ b/web/public/locales/fr/views/events.json @@ -17,7 +17,7 @@ "aria": "Sélectionner les événements", "noFoundForTimePeriod": "Aucun événement trouvé pour cette plage de temps." }, - "documentTitle": "Revue - Frigate", + "documentTitle": "Revue d'événements -Frigate", "recordings": { "documentTitle": "Enregistrements - Frigate" }, @@ -28,7 +28,7 @@ "markAsReviewed": "Marqué comme passé en revue", "newReviewItems": { "button": "Nouveaux éléments à passer en revue", - "label": "Afficher les nouveaux éléments à passer en revue" + "label": "Afficher les nouveaux éléments de la revue d'événements" }, "camera": "Caméra", "markTheseItemsAsReviewed": "Marquer ces éléments comme passés en revue", diff --git a/web/public/locales/fr/views/explore.json b/web/public/locales/fr/views/explore.json index 59cf7e5a1..b42cb5f38 100644 --- a/web/public/locales/fr/views/explore.json +++ b/web/public/locales/fr/views/explore.json @@ -6,16 +6,16 @@ "embeddingsReindexing": { "estimatedTime": "Temps restant estimé :", "finishingShortly": "Termine bientôt", - "context": "L'exploration peut être utilisée une fois la réindexation des plongements des objets suivis terminée.", + "context": "L'exploration peut être utilisée une fois la réindexation des représentations numériques des objets suivis terminée.", "startingUp": "Démarrage…", "step": { - "thumbnailsEmbedded": "Vignettes intégrées : ", + "thumbnailsEmbedded": "Miniatures intégrées : ", "descriptionsEmbedded": "Descriptions intégrées : ", "trackedObjectsProcessed": "Objets suivis traités : " } }, "downloadingModels": { - "context": "Frigate télécharge les modèles de plongements vectoriels nécessaires pour prendre en charge la fonctionnalité de recherche sémantique. Cette opération peut prendre plusieurs minutes selon la vitesse de votre connexion réseau.", + "context": "Frigate télécharge les modèles de représentations numériques nécessaires pour prendre en charge la fonctionnalité de recherche sémantique. Cette opération peut prendre plusieurs minutes selon la vitesse de votre connexion réseau.", "setup": { "visionModelFeatureExtractor": "Extracteur de caractéristiques de modèle de vision", "textTokenizer": "Tokeniseur de texte", @@ -24,7 +24,7 @@ }, "tips": { "documentation": "Lire la documentation", - "context": "Vous souhaiterez peut-être réindexer les plongements de vos objets suivis une fois les modèles téléchargés." + "context": "Une fois les modèles téléchargés, il est conseillé de réindexer vos objets suivis." }, "error": "Une erreur est survenue. Vérifier les journaux Frigate." } @@ -32,9 +32,9 @@ "details": { "timestamp": "Horodatage", "item": { - "title": "Passer en revue les détails de l'élément", + "title": "Détails de l'élément de la revue d'événements", "button": { - "share": "Partager cet élément de revue", + "share": "Partager cet élément de la revue d'événements", "viewInExplore": "Afficher dans Explorer" }, "toast": { @@ -46,45 +46,45 @@ "error": { "regenerate": "Échec de l'appel de {{provider}} pour une nouvelle description : {{errorMessage}}", "updatedSublabelFailed": "Échec de la mise à jour du sous-libellé : {{errorMessage}}", - "updatedLPRFailed": "Échec à la mise à jour de la plaque d'immatriculation : {{errorMessage}}" + "updatedLPRFailed": "Échec de la mise à jour de la plaque d'immatriculation : {{errorMessage}}" } }, "tips": { - "mismatch_one": "{{count}} objet indisponible a été détecté et inclus dans cet élément de revue. Cet objet n'a pas été considéré comme une alerte ou une détection, ou a déjà été nettoyé/supprimé.", - "mismatch_many": "{{count}} objets indisponibles ont été détectés et inclus dans cet élément de revue. Ces objets n'ont pas été considérés comme une alerte ou une détection, ou ont déjà été nettoyés/supprimés.", - "mismatch_other": "{{count}} objets indisponibles ont été détectés et inclus dans cet élément de revue. Ces objets n'ont pas été considérés comme une alerte ou une détection, ou ont déjà été nettoyés/supprimés.", + "mismatch_one": "{{count}} objet indisponible a été détecté et intégré dans cet élément de la revue d'événements. Cet objet n'a pas été qualifié comme une alerte ou une détection, ou a déjà été nettoyé / supprimé.", + "mismatch_many": "{{count}} objets indisponibles ont été détectés et intégrés dans cet élément de la revue d'événements. Ces objets n'ont pas été qualifiés comme une alerte ou une détection, ou ont déjà été nettoyés / supprimés.", + "mismatch_other": "{{count}} objets indisponibles ont été détectés et intégrés dans cet élément de la revue d'événements. Ces objets n'ont pas été qualifiés comme une alerte ou une détection, ou ont déjà été nettoyés / supprimés.", "hasMissingObjects": "Ajustez votre configuration si vous souhaitez que Frigate enregistre les objets suivis pour les libellés suivants : {{objects}}" }, - "desc": "Passer en revue les détails de l'élément" + "desc": "Détails de l'élément de la revue d'événements" }, "label": "Libellé", "editSubLabel": { "title": "Modifier le sous-libellé", - "desc": "Saisissez un nouveau sous-libellé pour ce {{label}}", + "desc": "Saisissez un nouveau sous-libellé pour {{label}}", "descNoLabel": "Entrer un nouveau sous-libellé pour cet objet suivi" }, "topScore": { "label": "Meilleur score", - "info": "Le meilleur score est le score médian le plus élevé pour l'objet suivi, il peut donc différer du score affiché sur la vignette des résultats de recherche." + "info": "Le score le plus élevé est le score médian le plus haut pour l'objet suivi ; il peut donc différer du score affiché sur la miniature du résultat de recherche." }, "objects": "Objets", "button": { "regenerate": { - "label": "Régénérer la description de l'objet suivi", - "title": "Regénérer" + "label": "Générer à nouveau la description de l'objet suivi", + "title": "Générer à nouveau" }, - "findSimilar": "Trouver similaire" + "findSimilar": "Trouver des éléments similaires" }, "description": { "label": "Description", "placeholder": "Description de l'objet suivi", "aiTips": "Frigate ne demandera pas de description à votre fournisseur d'IA générative tant que le cycle de vie de l'objet suivi ne sera pas terminé." }, - "regenerateFromSnapshot": "Régénérer à partir d'un instantané", - "regenerateFromThumbnails": "Régénérer à partir des vignettes", + "regenerateFromSnapshot": "Générer à nouveau à partir d'un instantané", + "regenerateFromThumbnails": "Générer à nouveau à partir des miniatures", "editLPR": { "title": "Modifier la plaque d'immatriculation", - "desc": "Saisissez une nouvelle valeur de plaque d'immatriculation pour ce {{label}}", + "desc": "Saisissez une nouvelle valeur de plaque d'immatriculation pour {{label}}", "descNoLabel": "Saisir une nouvelle valeur de plaque d'immatriculation pour cet objet suivi" }, "recognizedLicensePlate": "Plaque d'immatriculation reconnue", @@ -97,7 +97,7 @@ "saveDescriptionFailed": "Échec de la mise à jour de la description : {{errorMessage}}" }, "snapshotScore": { - "label": "Score du cliché" + "label": "Score de l'instantané" } }, "type": { @@ -108,11 +108,11 @@ }, "objectLifecycle": { "title": "Cycle de vie de l'objet", - "noImageFound": "Aucune image trouvée pour cet horodatage.", + "noImageFound": "Aucune image trouvée pour cet horodatage", "createObjectMask": "Créer un masque d'objet", - "scrollViewTips": "Faites défiler pour voir les moments importants du cycle de vie de cet objet.", + "scrollViewTips": "Faites défiler pour voir les moments clés du cycle de vie de cet objet.", "adjustAnnotationSettings": "Ajuster les paramètres d'annotation", - "autoTrackingTips": "Les positions de la zone de délimitation seront inexactes pour les caméras de suivi automatique.", + "autoTrackingTips": "Les positions des cadres englobants seront imprécises pour les caméras à suivi automatique.", "lifecycleItemDesc": { "visible": "{{label}} détecté", "entered_zone": "{{label}} est entré dans {{zones}}", @@ -135,14 +135,14 @@ "title": "Paramètres d'annotation", "showAllZones": { "title": "Montrer toutes les zones", - "desc": "Afficher toujours les zones sur les images où les objets sont entrés dans une zone." + "desc": "Afficher systématiquement les zones sur les images quand des objets y sont entrés" }, "offset": { "label": "Décalage de l'annotation", "documentation": "Lire la documentation ", - "desc": "Ces données proviennent du flux de détection de votre caméra, mais sont superposées aux images du flux d'enregistrement. Il est peu probable que les deux flux soient parfaitement synchronisés. Par conséquent, le cadre de délimitation et la séquence ne seront pas parfaitement alignés. Cependant, le champ annotation_offset peut être utilisé pour ajuster ce décalage.", - "millisecondsToOffset": "Millisecondes pour décaler les annotations détectées. Par défaut : 0", - "tips": "ASTUCE : Imaginez un clip d'événement avec une personne marchant de gauche à droite. Si le cadre de la chronologie de l'événement est constamment à gauche de la personne, la valeur doit être diminuée. De même, si une personne marche de gauche à droite et que le cadre de la chronologie est constamment devant elle, la valeur doit être augmentée.", + "desc": "Ces données, issues du flux de détection de votre caméra, sont incrustées dans les images du flux d'enregistrement. Cependant, une synchronisation parfaite entre ces deux flux est rarement garantie. Il est donc possible que le cadre englobant et la séquence ne soient pas parfaitement alignés. Pour corriger ce décalage, vous pouvez utiliser le champ annotation_offset.", + "millisecondsToOffset": "Décalage des annotations de détection en millisecondes. Par défaut : 0", + "tips": "Astuce : Pour mieux comprendre, visualisez un clip où une personne se déplace de gauche à droite. Si le cadre englobant affiché sur la ligne de temps de l'événement se trouve constamment à gauche de la personne, cela signifie que vous devriez réduire la valeur. À l'inverse, si ce même cadre englobant apparaît systématiquement en avance sur la personne qui marche de gauche à droite, alors vous devrez l'augmenter.", "toast": { "success": "Le décalage d'annotation pour {{camera}} a été enregistré dans le fichier de configuration. Redémarrez Frigate pour appliquer vos modifications." } @@ -152,7 +152,7 @@ "next": "Diapositive suivante", "previous": "Diapositive précédente" }, - "trackedPoint": "Point suivi", + "trackedPoint": "Point de suivi", "count": "{{first}} de {{second}}" }, "trackedObjectDetails": "Détails de l'objet suivi", @@ -162,7 +162,7 @@ "aria": "Télécharger l'instantané" }, "findSimilar": { - "label": "Trouver similaire", + "label": "Trouver des éléments similaires", "aria": "Trouver des objets suivis similaires" }, "viewObjectLifecycle": { @@ -179,7 +179,7 @@ }, "submitToPlus": { "label": "Soumettre à Frigate+", - "aria": "Soumettre à Frigate Plus" + "aria": "Soumettre à Frigate+" }, "deleteTrackedObject": { "label": "Supprimer cet objet suivi" @@ -188,7 +188,7 @@ "dialog": { "confirmDelete": { "title": "Confirmer la suppression", - "desc": "La suppression de cet objet suivi supprime l'instantané, les plongements vectoriels enregistrées et les entrées du cycle de vie de l'objet associé. Les images enregistrées de cet objet suivi dans la vue Historique NE seront PAS supprimées.

Êtes-vous sûr de vouloir continuer ?" + "desc": "La suppression de cet objet suivi supprime l'instantané, les représentations numériques enregistrées et les entrées du cycle de vie de l'objet associé. Les images enregistrées de cet objet suivi dans la vue Historique NE seront PAS supprimées.

Êtes-vous sûr de vouloir continuer ?" } }, "noTrackedObjects": "Aucun objet suivi trouvé", @@ -203,7 +203,7 @@ "error": "Échec de la suppression de l'objet suivi : {{errorMessage}}" } }, - "tooltip": "Identifié comme {{type}} à {{confidence}}%" + "tooltip": "Correspondance : {{type}} à {{confidence}}%" }, "exploreMore": "Explorer plus d'objets {{label}}" } diff --git a/web/public/locales/fr/views/exports.json b/web/public/locales/fr/views/exports.json index 7eab408b9..ff8275a50 100644 --- a/web/public/locales/fr/views/exports.json +++ b/web/public/locales/fr/views/exports.json @@ -1,6 +1,6 @@ { "documentTitle": "Exporter - Frigate", - "search": "Chercher", + "search": "Rechercher", "noExports": "Aucun export trouvé", "deleteExport": "Supprimer l'export", "deleteExport.desc": "Êtes-vous sûr de vouloir supprimer {{exportName}}?", diff --git a/web/public/locales/fr/views/faceLibrary.json b/web/public/locales/fr/views/faceLibrary.json index 256989ae6..fa5de03b2 100644 --- a/web/public/locales/fr/views/faceLibrary.json +++ b/web/public/locales/fr/views/faceLibrary.json @@ -1,6 +1,6 @@ { "description": { - "addFace": "Parcourez la procédure d’ajout d’une nouvelle collection à la bibliothèque de visages.", + "addFace": "Guide pour ajouter une nouvelle collection à la bibliothèque de visages", "placeholder": "Saisissez un nom pour cette collection", "invalidName": "Nom invalide. Les noms ne peuvent contenir que des lettres, des chiffres, des espaces, des apostrophes, des traits de soulignement et des tirets." }, @@ -11,7 +11,7 @@ "timestamp": "Horodatage", "faceDesc": "Détails de l'objet suivi qui a généré ce visage", "subLabelScore": "Score de sous-libellé", - "scoreInfo": "Le score de sous-libellé est le score pondéré de tous les scores de confiances des visages reconnus. Il peut donc différer du score affiché sur l'instantané.", + "scoreInfo": "Le score du sous-libellé correspond au score pondéré de tous les scores de confiance des visages reconnus. Il est donc possible qu'il ne corresponde pas au score affiché sur l'instantané.", "unknown": "Inconnu" }, "documentTitle": "Bibliothèque de visages - Frigate", @@ -23,7 +23,7 @@ "title": "Créer une collection", "desc": "Créer une nouvelle collection", "new": "Créer un nouveau visage", - "nextSteps": "Pour construire une base solide :
  • Utilisez l’onglet Entraîner pour sélectionner et entraîner le modèle sur des images pour chaque personne détectée.
  • Concentrez-vous sur des images de face pour de meilleurs résultats ; évitez d’entraîner le modèle des images qui capturent des visages de biais.
  • " + "nextSteps": "Pour construire une base solide :
  • Utilisez l'onglet Entraîner pour sélectionner et entraîner des images pour chaque personne détectée.
  • Privilégiez les images de face pour de meilleurs résultats ; évitez d'utiliser des images d'entraînement où les visages sont capturés de biais.
  • " }, "train": { "title": "Entraîner", @@ -35,7 +35,7 @@ "addFace": "Ajouter un visage", "uploadImage": "Téléverser une image", "deleteFaceAttempts": "Supprimer les visages", - "reprocessFace": "Réanalyser le visage", + "reprocessFace": "Retraiter le visage", "renameFace": "Renommer le visage", "deleteFace": "Supprimer le visage" }, @@ -77,10 +77,10 @@ "renameFaceFailed": "Échec du renommage du visage : {{errorMessage}}" } }, - "trainFaceAs": "Entraîner un visage comme :", - "trainFace": "Entraîner visage", + "trainFaceAs": "Entraîner le visage comme :", + "trainFace": "Entraîner un visage", "steps": { - "uploadFace": "Téléverser l'image de visage", + "uploadFace": "Téléverser une image de visage", "faceName": "Entrer un nom pour le visage", "nextSteps": "Prochaines étapes", "description": { @@ -98,6 +98,6 @@ "desc_many": "Êtes-vous sûr de vouloir supprimer {{count}} visages ? Cette action est irréversible.", "desc_other": "Êtes-vous sûr de vouloir supprimer {{count}} visages ? Cette action est irréversible." }, - "nofaces": "Pas de visages disponibles", + "nofaces": "Pas de visage disponible", "pixels": "{{area}} pixels" } diff --git a/web/public/locales/fr/views/search.json b/web/public/locales/fr/views/search.json index b4cb135e5..b656ab889 100644 --- a/web/public/locales/fr/views/search.json +++ b/web/public/locales/fr/views/search.json @@ -1,6 +1,6 @@ { "savedSearches": "Recherches enregistrées", - "search": "Chercher", + "search": "Rechercher", "searchFor": "Chercher {{inputValue}}", "button": { "clear": "Effacer la recherche", @@ -29,7 +29,7 @@ "max_score": "Score maximum" }, "searchType": { - "thumbnail": "Vignette", + "thumbnail": "Miniature", "description": "Description" }, "toast": { diff --git a/web/public/locales/fr/views/settings.json b/web/public/locales/fr/views/settings.json index edc94c7f0..67bd50933 100644 --- a/web/public/locales/fr/views/settings.json +++ b/web/public/locales/fr/views/settings.json @@ -10,7 +10,7 @@ "object": "Débogage - Frigate", "frigatePlus": "Paramètres Frigate+ - Frigate", "notifications": "Paramètres de notification - Frigate", - "enrichments": "Paramètres d'enrichissements - Frigate" + "enrichments": "Paramètres de données augmentées - Frigate" }, "menu": { "ui": "Interface utilisateur", @@ -22,7 +22,7 @@ "users": "Utilisateurs", "notifications": "Notifications", "frigateplus": "Frigate+", - "enrichments": "Enrichissements" + "enrichments": "Données augmentées" }, "dialog": { "unsavedChanges": { @@ -67,7 +67,7 @@ "calendar": { "firstWeekday": { "label": "Premier jour de la semaine", - "desc": "Le jour du début de semaine du calendrier de revue.", + "desc": "Le jour du début de semaine du calendrier de la revue d'évènements.", "sunday": "Dimanche", "monday": "Lundi" }, @@ -249,13 +249,13 @@ "camera": { "title": "Paramètres de la caméra", "review": { - "title": "Revue", + "title": "Revue d'événements", "detections": "Détections ", "alerts": "Alertes ", - "desc": "Activer/désactiver les alertes et les détections pour cette caméra. Si cette option est désactivée, aucun nouvel élément de revue ne sera généré." + "desc": "Activer/désactiver temporairement les alertes et les détections pour cette caméra jusqu'au redémarrage de Frigate. Si cette option est désactivée, aucun nouvel élément ne sera généré dans la revue d'événements. " }, "reviewClassification": { - "title": "Classification de la revue", + "title": "Catégorisation de la revue d'évènements", "objectDetectionsTips": "Tous les objets {{detectionsLabels}} non classés sur {{cameraName}} seront affichés comme des détections, quelle que soit la zone dans laquelle ils se trouvent.", "zoneObjectDetectionsTips": { "text": "Tous les objets {{detectionsLabels}} non classés dans {{zone}} sur {{cameraName}} seront affichés comme des détections.", @@ -264,7 +264,7 @@ }, "selectDetectionsZones": "Sélectionner les zones pour les détections", "toast": { - "success": "La configuration de la classification des revues a été enregistrée. Redémarrez Frigate pour appliquer les modifications." + "success": "La configuration de la classification de la revue d'événements a été enregistrée. Redémarrez Frigate pour appliquer les modifications." }, "readTheDocumentation": "Lire la documentation", "objectAlertsTips": "Tous les objets {{alertsLabels}} sur {{cameraName}} seront affichés sous forme d'alertes.", @@ -272,12 +272,12 @@ "zoneObjectAlertsTips": "Tous les objets {{alertsLabels}} détectés dans {{zone}} sur {{cameraName}} seront affichés sous forme d'alertes.", "noDefinedZones": "Aucune zone n'est définie pour cette caméra.", "selectAlertsZones": "Sélectionner les zones pour les alertes", - "desc": "Frigate catégorise les éléments de revues en alertes et détections. Par défaut, tous les objets personne et voiture sont considérés comme des alertes. Vous pouvez affiner la catégorisation de vos éléments de revues en configurant les zones requises pour ces éléments.", - "unsavedChanges": "Paramètres de classification de revue pour {{camera}} non enregistrés" + "desc": "Frigate classe les éléments de la revue d'événements en alertes et détections. Par défaut, toutes les détections de personnes et de voitures sont qualifiées d'alertes. Vous avez la possibilité d'affiner cette catégorisation en configurant des zones spécifiques pour ces éléments.", + "unsavedChanges": "Paramètres de classification de la revue d'événements pour {{camera}} non enregistrés" }, "streams": { "title": "Flux", - "desc": "La désactivation complète d'une caméra interrompt le traitement des flux de cette caméra par Frigate. La détection, l'enregistrement et le débogage seront indisponibles.
    Remarque : cela ne désactive pas les rediffusions go2rtc." + "desc": "Désactive temporairement une caméra jusqu'au redémarrage de Frigate. La désactivation complète d'une caméra interrompt le traitement des flux de cette caméra par Frigate. La détection, l'enregistrement et le débogage seront indisponibles.
    Remarque : cela ne désactive pas les rediffusions go2rtc." } }, "masksAndZones": { @@ -610,7 +610,7 @@ "admin": "Administrateur", "adminDesc": "Accès complet à l'ensemble des fonctionnalités.", "viewer": "Observateur", - "viewerDesc": "Limité aux tableaux de bord Direct, Revue, Explorer et Exports." + "viewerDesc": "Limité aux tableaux de bord Direct, Revue d'événements, Explorer et Exports." }, "select": "Sélectionnez un rôle" }, @@ -623,29 +623,29 @@ } }, "enrichments": { - "title": "Paramètres d'enrichissements", + "title": "Paramètres des données augmentées", "birdClassification": { - "title": "Classification des oiseaux", - "desc": "La classification des oiseaux identifie les espèces connues à l'aide d'un modèle TensorFlow quantifié. Lorsqu'un oiseau connu est reconnu, son nom commun est ajouté comme sous-libellé. Ces informations sont incluses dans l'interface utilisateur, les filtres ainsi que les notifications." + "title": "Identification des oiseaux", + "desc": "L'identification des oiseaux est réalisée à l'aide d'un modèle TensorFlow quantifié. Lorsqu'un oiseau est reconnu, son nom commun est automatiquement ajouté comme sous-libellé. Cette information est intégréesà l'interface utilisateur, aux filtres de recherche et aux notifications." }, "semanticSearch": { "title": "Recherche sémantique", "readTheDocumentation": "Lire la documentation", "reindexNow": { "label": "Réindexer maintenant", - "desc": "La réindexation va régénérer les plongements pour tous les objets suivis. Ce processus s'exécute en arrière-plan et peut saturer votre processeur et prendre un temps considérable, en fonction du nombre d'objets suivis.", + "desc": "La réindexation va régénérer les représentations numériques pour tous les objets suivis. Ce processus s'exécute en arrière-plan et peut saturer votre processeur et prendre un temps considérable, en fonction du nombre d'objets suivis.", "confirmTitle": "Confirmez la réindexation", "confirmButton": "Réindexer", "success": "La réindexation a démarré avec succès.", "alreadyInProgress": "La réindexation est déjà en cours.", "error": "Échec du démarrage de la réindexation : {{errorMessage}}", - "confirmDesc": "Êtes-vous sûr de vouloir réindexer tous les plongements des objets suivis ? Ce processus s'exécutera en arrière-plan, mais il pourrait saturer votre processeur et prendre un temps considérable. Vous pouvez suivre la progression sur la page Explorer." + "confirmDesc": "Êtes-vous sûr de vouloir réindexer tous les représentations numériques des objets suivis ? Ce processus s'exécutera en arrière-plan, mais il pourrait saturer votre processeur et prendre un temps considérable. Vous pouvez suivre la progression sur la page Explorer." }, "modelSize": { - "desc": "La taille du modèle utilisé pour les plongements de recherche sémantique.", + "desc": "La taille du modèle utilisé pour les représentations numériques de recherche sémantique.", "small": { "title": "petit", - "desc": "Utiliser petit emploie une version quantifiée du modèle qui utilise moins de mémoire et s'exécute plus rapidement sur le processeur avec une différence très négligeable dans la qualité des plongements." + "desc": "Utiliser petit emploie une version quantifiée du modèle qui utilise moins de mémoire et s'exécute plus rapidement sur le processeur avec une différence négligeable dans la qualité des représentations numériques." }, "large": { "title": "grand", @@ -653,9 +653,9 @@ }, "label": "Taille du modèle" }, - "desc": "La recherche sémantique dans Frigate vous permet de retrouver les objets suivis dans vos éléments de recue en utilisant soit l'image elle-même, soit une description textuelle définie par l'utilisateur, soit une description générée automatiquement." + "desc": "La recherche sémantique de Frigate vous permet de retrouver les objets suivis dans votre revue d'évènements en utilisant soit l'image elle-même, soit une description textuelle définie par l'utilisateur, soit une description générée automatiquement." }, - "unsavedChanges": "Modifications non enregistrées des paramètres d'enrichissements", + "unsavedChanges": "Modifications non enregistrées des paramètres des données augmentées", "faceRecognition": { "title": "Reconnaissance faciale", "readTheDocumentation": "Lire la documentation", @@ -664,24 +664,24 @@ "desc": "La taille du modèle utilisé pour la reconnaissance faciale.", "small": { "title": "petit", - "desc": "Utiliser petit emploie un modèle de plongements faciaux FaceNet qui s'exécute efficacement sur la plupart des processeurs." + "desc": "Utiliser petit emploie un modèle de représentation numérique faciale FaceNet qui s'exécute efficacement sur la plupart des processeurs." }, "large": { "title": "grand", - "desc": "Utiliser grand emploie un modèle de plongements faciaux ArcFace et s'exécutera automatiquement sur le GPU si disponible." + "desc": "Utiliser grand emploie un modèle de représentation numérique faciale ArcFace et s'exécutera automatiquement sur le GPU si disponible." } }, - "desc": "La reconnaissance faciale permet d'attribuer des noms aux personnes et, lorsque leur visage est reconnu, Frigate assignera le nom de la personne comme un sous-libellé. Ces informations sont incluses dans l'interface utilisateur, les filtres, ainsi que dans les notifications." + "desc": "La reconnaissance faciale permet à Frigate d'identifier les individus par leur nom. Dès qu'un visage est reconnu, Frigate associe ce nom comme sous-libellé à l'événement. Ces informations sont ensuite intégrées dans l'interface utilisateur, les options de filtrage et les notifications." }, "licensePlateRecognition": { "title": "Reconnaissance des plaques d'immatriculation", "readTheDocumentation": "Lire la documentation", - "desc": "Frigate est capable de reconnaître les plaques d'immatriculation sur les véhicules. Il peut alors ajouter automatiquement les caractères détectés au champ recognized_license_plate, ou attribuer un nom connu comme sous-libellé aux objets de type \"voiture\". Un exemple d'utilisation fréquent serait de lire les plaques des voitures qui accèdent à une allée ou qui circulent dans une rue." + "desc": "Frigate identifie les plaques d'immatriculation des véhicules et peut automatiquement insérer les caractères détectés dans le champ recognized_license_plate. Il est également capable d'assigner un nom familier comme sous-libellé aux objets de type \"voiture\". Par exemple, cette fonction est souvent utilisée pour lire les plaques des véhicules empruntant une allée ou une rue." }, "toast": { "error": "Échec de l'enregistrement des modifications de configuration : {{errorMessage}}", - "success": "Les paramètres d'enrichissements ont été enregistrés. Redémarrez Frigate pour appliquer les modifications." + "success": "Les paramètres de données augmentées ont été enregistrés. Redémarrez Frigate pour appliquer les modifications." }, - "restart_required": "Redémarrage nécessaire (paramètres d'enrichissements modifiés)" + "restart_required": "Redémarrage nécessaire (paramètres des données augmentées modifiés)" } } diff --git a/web/public/locales/fr/views/system.json b/web/public/locales/fr/views/system.json index fe2876377..9b3d8a5dc 100644 --- a/web/public/locales/fr/views/system.json +++ b/web/public/locales/fr/views/system.json @@ -3,7 +3,7 @@ "storage": "Statistiques de stockage - Frigate", "cameras": "Statistiques des caméras - Frigate", "general": "Statistiques générales - Frigate", - "enrichments": "Statistiques d'enrichissements - Frigate", + "enrichments": "Statistiques de données augmentées - Frigate", "logs": { "frigate": "Journaux de Frigate - Frigate", "nginx": "Journaux Nginx - Frigate", @@ -24,7 +24,7 @@ "type": { "label": "Type", "timestamp": "Horodatage", - "tag": "Étiqueter", + "tag": "Balise", "message": "Message" }, "tips": "Les logs sont diffusés en continu depuis le serveur", @@ -155,13 +155,13 @@ "ffmpegHighCpuUsage": "{{camera}} a un taux élevé d'utilisation processeur par FFmpeg ({{ffmpegAvg}}%)", "detectHighCpuUsage": "{{camera}} a un taux élevé d'utilisation processeur ({{detectAvg}}%)", "healthy": "Le système est sain", - "reindexingEmbeddings": "Réindexation des plongements vectoriels ({{processed}}% complété)", + "reindexingEmbeddings": "Réindexation des représentations numériques ({{processed}}% complété)", "cameraIsOffline": "{{camera}} est hors ligne", "detectIsSlow": "{{detect}} est lent ({{speed}} ms)", "detectIsVerySlow": "{{detect}} est très lent ({{speed}} ms)" }, "enrichments": { - "title": "Enrichissements", + "title": "Données augmentées", "infPerSecond": "Inférences par seconde", "embeddings": { "face_embedding_speed": "Vitesse de capture des données complémentaires de visage", @@ -170,10 +170,10 @@ "plate_recognition_speed": "Vitesse de reconnaissance des plaques d'immatriculation", "face_recognition_speed": "Vitesse de reconnaissance faciale", "plate_recognition": "Reconnaissance de plaques d'immatriculation", - "image_embedding": "Plongements vectoriels d'image", + "image_embedding": "Représentations numériques d'image", "yolov9_plate_detection": "Détection de plaques d'immatriculation YOLOv9", "face_recognition": "Reconnaissance faciale", - "text_embedding": "Plongement lexical de texte", + "text_embedding": "Représentation numérique de texte", "yolov9_plate_detection_speed": "Vitesse de détection de plaques d'immatriculation YOLOv9" } } diff --git a/web/public/locales/he/audio.json b/web/public/locales/he/audio.json index 97e45ca2c..5fe4699a5 100644 --- a/web/public/locales/he/audio.json +++ b/web/public/locales/he/audio.json @@ -18,7 +18,7 @@ "humming": "זמזום", "groan": "אנקה", "grunt": "לנחור", - "whistling": "שריקה", + "whistling": "שריקה.", "breathing": "נשימה", "wheeze": "גניחה", "snoring": "נחירה", @@ -31,5 +31,399 @@ "sniff": "לרחרח", "run": "רץ", "snicker": "לצחקק", - "laughter": "צחוק" + "laughter": "צחוק", + "organ": "אורגן", + "shuffle": "ערבוב", + "footsteps": "צעדים", + "chewing": "לְעִיסָה", + "biting": "נשיכה", + "gargling": "גרגור", + "stomach_rumble": "קרקור בטן", + "burping": "גיהוק", + "hiccup": "שיהוק", + "fart": "פלוץ", + "hands": "ידיים", + "finger_snapping": "לחיצה באצבעות", + "clapping": "מחיאת כף", + "dog": "כלב", + "bark": "נביחה", + "cat": "חתול", + "horse": "סוס", + "sheep": "כבשה", + "goat": "עז", + "pigeon": "יונה", + "bird": "ציפור", + "coo": "קו", + "crow": "עורב", + "caw": "קאו", + "owl": "ינשוף", + "hoot": "צפירה.", + "flapping_wings": "כנפיים מתנפנפות", + "dogs": "כלבים", + "rats": "חולדות", + "mouse": "עכבר", + "patter": "תבנית", + "insect": "חרק", + "cricket": "קריקט", + "mosquito": "יתוש", + "fly": "זבוב", + "buzz": "זמזם.", + "frog": "צפרדע", + "croak": "קרקור.", + "snake": "נחש", + "rattle": "טרטור", + "whale_vocalization": "קולות לוויתן", + "music": "מוזיקה", + "musical_instrument": "כלי נגינה", + "plucked_string_instrument": "כלי מיתר פריטה", + "guitar": "גיטרה", + "electric_guitar": "גיטרה חשמלית", + "bass_guitar": "גיטרה בס", + "acoustic_guitar": "גיטרה אקוסטית", + "steel_guitar": "גיטרה פלדה", + "tapping": "הקשה.", + "strum": "פריטה", + "banjo": "בנג'ו", + "sitar": "סיטאר", + "mandolin": "מנדולינה", + "zither": "צִיתָר", + "ukulele": "יוקליילי", + "keyboard": "לוח מקשים", + "piano": "פסנתר", + "electric_piano": "פסנתר חשמלי", + "electronic_organ": "אורגן חשמלי", + "hammond_organ": "עוגב המונד", + "synthesizer": "סינתיסייזר", + "sampler": "דגם", + "harpsichord": "צֶ'מבָּלוֹ", + "percussion": "הַקָשָׁה", + "boat": "סירה", + "car": "מכונית", + "motorcycle": "אופנוע", + "bus": "אוטובוס", + "bicycle": "אופניים", + "train": "למד פנים", + "skateboard": "סקייטבורד", + "camera": "מצלמה", + "howl": "יללה", + "bow_wow": "באו וואו", + "growling": "נהמה", + "whimper_dog": "יבבת כלבים", + "purr": "לגרגר", + "meow": "מיאו", + "hiss": "לחישה", + "caterwaul": "קטרוואל", + "livestock": "בעלי חיים", + "clip_clop": "קליפ קלופ", + "neigh": "צהלה", + "cattle": "בקר", + "door": "דלת", + "heartbeat": "דופק", + "heart_murmur": "אוושת לב", + "applause": "תשואות", + "chatter": "פטפוטים", + "crowd": "קהל", + "children_playing": "ילדים משחקים", + "animal": "חיה", + "pets": "חיות מחמד", + "cheering": "תשואות", + "yip": "ייפ", + "moo": "מוו", + "cowbell": "פעמון פרה", + "pig": "חזיר", + "oink": "אוינק", + "bleat": "פעייה", + "fowl": "עוף.", + "chicken": "עוף", + "cluck": "קרקור", + "cock_a_doodle_doo": "קוק-א-דודל-דו", + "turkey": "הודו", + "gobble": "זלילה", + "duck": "ברווז", + "quack": "קוואק", + "goose": "אווז", + "honk": "צפירה", + "wild_animals": "חיית פרא", + "roaring_cats": "חתולים שואגים", + "roar": "שאגה", + "chirp": "ציוץ", + "squawk": "צווחה", + "drum_kit": "מערכת תופים", + "drum_machine": "מכונת תופים", + "drum": "תופים", + "snare_drum": "תוף סנר", + "rimshot": "רימשוט", + "drum_roll": "תוף רול", + "bass_drum": "תופים בס", + "timpani": "טימפאני", + "tabla": "טבלה", + "cymbal": "מצילה", + "hi_hat": "היי-האט", + "wood_block": "בול עץ", + "tambourine": "טמבורין", + "maraca": "מרקה", + "gong": "גונג", + "tubular_bells": "פעמונים צינוריים", + "mallet_percussion": "כלי הקשה מסוג פטיש", + "marimba": "מרימבה", + "glockenspiel": "גלוקנשפיל", + "vibraphone": "ויברפון", + "steelpan": "פלדה-פאן", + "orchestra": "תזמורת", + "brass_instrument": "כלי נשיפה ממתכת", + "french_horn": "צופר צרפתי", + "trumpet": "חצוצרה", + "trombone": "טרומבון", + "bowed_string_instrument": "כלי קשת", + "string_section": "מקטע מחרוזות", + "violin": "כינור", + "pizzicato": "פיציקטו", + "cello": "צ'לו", + "double_bass": "בס כפול", + "wind_instrument": "כלי נשיפה", + "flute": "חליל", + "saxophone": "סקסופון", + "clarinet": "קלרינט", + "harp": "נבל", + "bell": "פעמון", + "church_bell": "פעמון כנסיה", + "jingle_bell": "ג'ינגל בל", + "bicycle_bell": "פעמון אופניים", + "chime": "צלצול", + "wind_chime": "פעמון רוח", + "harmonica": "הרמוניקה", + "accordion": "אקורדיון", + "bagpipes": "חלילים", + "didgeridoo": "דיג'רידו", + "theremin": "תרמין", + "singing_bowl": "קערת שירה", + "scratching": "גירוד", + "pop_music": "מוזיקת פופ", + "hip_hop_music": "מוזיקת היפ הופ", + "beatboxing": "ביטבוקסינג", + "rock_music": "מוזיקת רוק", + "heavy_metal": "מיטל כבד", + "punk_rock": "מוזיקת פאנק", + "grunge": "גראנג'", + "progressive_rock": "רוק פרוגרסיב", + "rock_and_roll": "רוקנרול", + "psychedelic_rock": "רוק פסיכדלי", + "rhythm_and_blues": "רית'ם אנד בלוז", + "soul_music": "מוזיקת סול", + "reggae": "רגיי", + "country": "קאונטרי", + "swing_music": "מוזיקת סווינג", + "bluegrass": "בלוגראס", + "funk": "פאנק", + "folk_music": "מוזיקת פולק", + "middle_eastern_music": "מוזיקה ים תיכונית", + "opera": "אופרה", + "jazz": "ג'אז", + "disco": "דיסקו", + "classical_music": "מוזיקה קלאסית", + "electronic_music": "מוזיקה אלקטרונית", + "house_music": "מוזיקת האוס", + "techno": "טכנו", + "dubstep": "דאבסטפ", + "drum_and_bass": "דראם אנד בס", + "electronica": "אלקטרוניקה", + "electronic_dance_music": "מוזיקת ריקוד אלקטרונית", + "ambient_music": "מוזיקת אמביינט", + "flamenco": "פלמנקו", + "trance_music": "מוזיקת טראנס", + "music_of_latin_america": "מוזיקה לטינית", + "salsa_music": "מוזיקת סלסה", + "blues": "בלוז", + "music_for_children": "מוזיקת ילדים", + "new-age_music": "מוזיקת ניו אייג'", + "vocal_music": "מוזיקה ווקאלית", + "a_capella": "קאפלה", + "music_of_africa": "מוזיקה אפריקאית", + "afrobeat": "אפרוביט", + "christian_music": "מוזיקה נוצרית", + "gospel_music": "מוזיקת גוספל", + "music_of_asia": "מוזיקה אסייתית", + "carnatic_music": "מוזיקה קרנטית", + "music_of_bollywood": "מוזיקה בוליווד", + "ska": "סקא", + "traditional_music": "מוזיקה מסורתית", + "independent_music": "מחיקת המשתמש נכשלה: {{errorMessage}}", + "song": "שיר", + "background_music": "מוזיקת רקע", + "theme_music": "מוזיקת נושא", + "jingle": "ג'ינגל", + "soundtrack_music": "פסקול מוזיקה", + "lullaby": "שיר ערש", + "video_game_music": "מוזיקת משחקי וידיאו", + "christmas_music": "מוזיקת קריסמיס", + "dance_music": "מוזיקת ריקודים", + "wedding_music": "מוזיקת חתונות", + "happy_music": "מוזיקה שמחה", + "sad_music": "מוזיקה עצובה", + "tender_music": "מוזיקה עדינה", + "exciting_music": "מוזיקה מרגשת", + "angry_music": "מוזיקה כועסת", + "scary_music": "מוזיקה מפחידה", + "wind": "רוח", + "rustling_leaves": "רשרוש עלים", + "wind_noise": "רעש רוח", + "thunderstorm": "סופת רעמים", + "thunder": "רעם", + "water": "מים", + "rain": "גשם", + "rain_on_surface": "גשם על פני השטח", + "stream": "שידור", + "vehicle": "רכב", + "waterfall": "מפל", + "ocean": "ים", + "waves": "גלים", + "steam": "קיטור", + "gurgling": "גרגור", + "fire": "אש", + "crackle": "פיצוח", + "sailboat": "מפרשית", + "rowboat": "סירת משוטים", + "motorboat": "סירת מנוע", + "ship": "ספינה", + "motor_vehicle": "רכב ממונע", + "toot": "תקיעה", + "car_alarm": "אזעקת רכב", + "power_windows": "חלונות חשמליים", + "skidding": "החלקה", + "tire_squeal": "חריקת צמיגים", + "car_passing_by": "מכונית חולפת", + "race_car": "מכונית מרוץ", + "truck": "משאית", + "air_brake": "בלם אוויר", + "air_horn": "צופר אוויר", + "reversing_beeps": "צליל רוורס", + "ice_cream_truck": "אוטו גלידה", + "emergency_vehicle": "רכב חירום", + "police_car": "רכב משטרה", + "ambulance": "אמבולנס", + "fire_engine": "כבאית", + "traffic_noise": "רעש תנועה", + "rail_transport": "רכבת נוסעים", + "train_whistle": "שריקת רכבת", + "train_horn": "צופר רכבת", + "railroad_car": "קרון רכבת", + "train_wheels_squealing": "חריקת גלגלי הרכבת", + "subway": "רכבת תחתית", + "aircraft": "כלי טיס", + "aircraft_engine": "מנוע כלי טיס", + "jet_engine": "מנוע סילון", + "propeller": "פרופלור", + "helicopter": "מסוק", + "fixed-wing_aircraft": "מטוסים בעלי כנף קבועה", + "light_engine": "מנוע קל", + "engine": "מנוע", + "dental_drill's_drill": "מקדחת שיניים", + "lawn_mower": "מכסחת דשא", + "chainsaw": "מסור שרשרת", + "medium_engine": "מנוע בינוני", + "heavy_engine": "מנוע כבד", + "engine_knocking": "דפיקות מנוע", + "engine_starting": "מנוע מוצת", + "idling": "התבטלות", + "sink": "כיור", + "blender": "מערבל", + "accelerating": "מאיץ", + "doorbell": "פעמון דלת", + "ding-dong": "דינג דונג", + "sliding_door": "דלתות הזזה", + "knock": "דפיקה בדלת", + "tap": "הקשה", + "squeak": "חריקה", + "cupboard_open_or_close": "פתיחה או סגירה של ארון", + "cutlery": "סכו\"ם", + "chopping": "קצוץ", + "frying": "טיגון", + "microwave_oven": "מיקרוגל", + "water_tap": "ברז מים", + "bathtub": "אמבטיה", + "dishes": "כלים.", + "scissors": "מספריים", + "toothbrush": "מברשת שיניים", + "toilet_flush": "הורדת מים לאסלה", + "electric_toothbrush": "מברשת שיניים חשמלית", + "vacuum_cleaner": "שואב אבק", + "zipper": "רוכסן", + "coin": "מטבע", + "shuffling_cards": "ערבוב קלפים", + "typing": "הקלדה", + "typewriter": "מכונת כתיבה", + "computer_keyboard": "מקלדת מחשב", + "writing": "כתיבה", + "telephone_bell_ringing": "צלצול טלפון", + "ringtone": "צליל חיוג.", + "clock": "שעון", + "telephone_dialing": "טלפון מחייג", + "dial_tone": "צליל חיוג", + "busy_signal": "צליל תפוס", + "alarm_clock": "שעון מעורר", + "siren": "סירנה", + "civil_defense_siren": "סירנה של ההגנה האזרחית", + "buzzer": "זמזם", + "smoke_detector": "גלאי עשן", + "fire_alarm": "אזעקת אש", + "foghorn": "צופר ערפל", + "whistle": "שריקה", + "steam_whistle": "שריקת קיטור", + "mechanisms": "מכניקה", + "ratchet": "מַחגֵר", + "tick": "טיק", + "tick-tock": "טיק טוק", + "gears": "הילוכים", + "pulleys": "גלגלות", + "sewing_machine": "מְכוֹנַת תְפִירָה", + "mechanical_fan": "מאוורר מכני", + "air_conditioning": "מיזוג אוויר", + "cash_register": "קוּפָּה רוֹשֶׁמֶת", + "printer": "מדפסת", + "single-lens_reflex_camera": "מצלמת רפלקס עם עדשה יחידה", + "tools": "כלים", + "hammer": "פטיש", + "jackhammer": "פטיש אוויר", + "sawing": "מסור", + "filing": "הגשה", + "sanding": "שיוף", + "power_tool": "כלי חשמלי", + "drill": "מקדחה", + "explosion": "התפוצצות", + "gunshot": "יריה", + "machine_gun": "מכונת יריה", + "fusillade": "פוסילה", + "artillery_fire": "אש ארטילרית", + "cap_gun": "Cap Gun", + "fireworks": "זיקוקים", + "firecracker": "חזיז", + "burst": "הִתפָּרְצוּת", + "eruption": "התפרצות", + "boom": "בום", + "wood": "עץ", + "chop": "לקצוץ", + "splinter": "קיסם", + "crack": "סדק", + "glass": "זכוכית", + "chink": "סדוק", + "shatter": "ניפוץ", + "silence": "השתקה", + "sound_effect": "אפקט קול", + "environmental_noise": "רעש סביבתי", + "static": "סטטי", + "white_noise": "רעש לבן", + "pink_noise": "רעש ורוד", + "radio": "רדיו", + "field_recording": "רישום שדה", + "scream": "צרחה", + "drawer_open_or_close": "מגירה פתוחה או סגורה", + "alarm": "אזעקה", + "television": "טלוויזיה", + "electric_shaver": "מכונת גילוח חשמלית", + "keys_jangling": "צלצול מפתחות", + "hair_dryer": "מייבש שיער", + "slam": "טריקה", + "telephone": "טלפון", + "tuning_fork": "מזלג כוונון", + "raindrop": "טיפות גשם" } diff --git a/web/public/locales/he/common.json b/web/public/locales/he/common.json index 0967ef424..e6c1d632f 100644 --- a/web/public/locales/he/common.json +++ b/web/public/locales/he/common.json @@ -1 +1,265 @@ -{} +{ + "time": { + "justNow": "כעת", + "untilForRestart": "עד לאתחול של Frigate.", + "untilRestart": "עד לאתחול", + "ago": "לפני {{timeAgo}}", + "today": "היום", + "untilForTime": "עד:{{time}}", + "last30": "30 ימים אחרונים", + "last14": "14 ימים אחרונים", + "year_one": "{{time}} שנה", + "year_two": "{{time}} שנים", + "year_other": "{{time}} שנים", + "last7": "7 ימים אחרונים", + "lastMonth": "חודש שעבר", + "10minutes": "10 דקות", + "yesterday": "אתמול", + "thisWeek": "השבוע", + "lastWeek": "שבוע שעבר", + "1hour": "שעה", + "12hours": "12 שעות", + "24hours": "24 שעות", + "pm": "pm", + "am": "am", + "yr": "{{time}}שנה", + "mo": "{{time}}חודש", + "d": "{{time}}יום", + "month_one": "{{time}} חודש", + "month_two": "{{time}} חודשים", + "month_other": "{{time}} חודשים", + "h": "{{time}}שעה", + "day_one": "{{time}} יום", + "day_two": "{{time}} ימים", + "day_other": "{{time}} ימים", + "hour_one": "{{time}} שעה", + "hour_two": "{{time}} שעות", + "hour_other": "{{time}} שעות", + "m": "{{time}}דקות", + "minute_one": "{{time}} דקה", + "minute_two": "{{time}} דקות", + "minute_other": "{{time}} דקות", + "s": "{{time}}שניה", + "formattedTimestamp": { + "12hour": "MMM d, h:mm:ss aaa", + "24hour": "MMM d, HH:mm:ss" + }, + "formattedTimestamp2": { + "12hour": "MM/dd h:mm:ssa", + "24hour": "d MMM HH:mm:ss" + }, + "formattedTimestampHourMinute": { + "12hour": "h:mm aaa", + "24hour": "HH:mm" + }, + "second_one": "{{time}} שניה", + "second_two": "{{time}} שניות", + "second_other": "{{time}} שניות", + "formattedTimestampMonthDayHourMinute": { + "12hour": "MMM d, h:mm aaa", + "24hour": "MMM d, HH:mm" + }, + "formattedTimestampMonthDayYearHourMinute": { + "12hour": "MMM d yyyy, h:mm aaa", + "24hour": "MMM d yyyy, HH:mm" + }, + "formattedTimestampMonthDay": "MMM d", + "formattedTimestampFilename": { + "12hour": "MM-dd-yy-h-mm-ss-a", + "24hour": "MM-dd-yy-HH-mm-ss" + }, + "formattedTimestampHourMinuteSecond": { + "24hour": "HH:mm:ss", + "12hour": "h:mm:ss aaa" + }, + "5minutes": "5 דקות", + "formattedTimestampMonthDayYear": { + "24hour": "MMM d, yyyy", + "12hour": "MMM d, yyyy" + }, + "30minutes": "30 דקות", + "thisMonth": "החודש" + }, + "unit": { + "speed": { + "kph": "קמ\"ש", + "mph": "מייל לשעה" + }, + "length": { + "feet": "רגל", + "meters": "מטרים" + } + }, + "label": { + "back": "אחורה" + }, + "button": { + "apply": "החל", + "reset": "איפוס", + "done": "בוצע", + "enabled": "מאופשר", + "enable": "אפשר", + "disabled": "מבוטל", + "disable": "בטל", + "save": "שמירה", + "saving": "שומר…", + "back": "חזרה", + "close": "סגירה", + "cancel": "ביטול", + "copy": "העתקה", + "twoWayTalk": "דיבור דו כיווני", + "exitFullscreen": "יציאה ממסך מלא", + "pictureInPicture": "תמונה בתוך תמונה", + "cameraAudio": "קול ממצלמה", + "off": "כבוי", + "edit": "עריכה", + "copyCoordinates": "העתקת קואורדינטות", + "delete": "מחיקה", + "yes": "כן", + "no": "לא", + "suspended": "מושהה", + "unsuspended": "ביטול השהייה", + "play": "ניגון", + "unselect": "בטל בחירה", + "export": "ייצוא", + "deleteNow": "מחיקה כעת", + "fullscreen": "מסך מלא", + "history": "היסטוריה", + "on": "פעיל", + "download": "הורדה", + "info": "מידע", + "next": "הבא" + }, + "menu": { + "system": "מערכת", + "systemMetrics": "מדדי מערכת", + "configuration": "תצורת מערכת", + "systemLogs": "לוגים מערכת", + "settings": "הגדרות", + "configurationEditor": "עריכת תצורה", + "languages": "שפות", + "language": { + "en": "English (English)", + "es": "ספרדית", + "fr": "צרפתית", + "ar": "ערבית", + "pt": "פורטוגזית", + "it": "איטלקית", + "nl": "הולנדית", + "sv": "שוודית", + "cs": "צ'כית", + "nb": "נורווגית", + "ko": "קוריאנית", + "vi": "ויטנאמית", + "fa": "פרסית", + "pl": "פולנית", + "uk": "אוקראינית", + "he": "עברית", + "el": "יוונית", + "ro": "רומנית", + "hu": "הונגרית", + "fi": "פינית", + "da": "דנית", + "withSystem": { + "label": "השתמש בהגדרות המערכת עבור השפה" + }, + "sk": "סלובקית", + "th": "תאילנדית", + "zhCN": "סינית פשוטה", + "tr": "טורקית", + "hi": "הודית", + "ru": "רוסית", + "ja": "יפנית", + "de": "גרמנית", + "yue": "קנטונזית", + "ca": "קטלה (קטלאנית)" + }, + "appearance": "מראה.", + "darkMode": { + "label": "מצב כהה", + "light": "בהיר", + "dark": "כהה", + "withSystem": { + "label": "השתמש בהגדרות המערכת עבור מצב בהיר או כהה" + } + }, + "withSystem": "מערכת", + "theme": { + "label": "ערכת נושא", + "blue": "כחול", + "green": "ירוק", + "nord": "נורד", + "red": "אדום", + "highcontrast": "ניגודיות גבוהה", + "default": "ברירת מחדל" + }, + "review": "סקירה", + "explore": "עיון", + "help": "עזרה", + "documentation": { + "title": "תיעוד", + "label": "תיעוד Frigate" + }, + "restart": "הפעלה מחדש", + "live": { + "title": "שידור חי", + "cameras": { + "title": "מצלמות", + "count_one": "{{count}} מצלמה", + "count_two": "{{count}} מצלמות", + "count_other": "{{count}} מצלמות" + }, + "allCameras": "כל המצלמות" + }, + "export": "ייצוא", + "uiPlayground": "ממשק משתמש", + "faceLibrary": "ספריית זיהוי פנים", + "user": { + "account": "חשבון", + "anonymous": "אנונימי", + "logout": "ניתוק", + "current": "משתמש מחובר: {{user}}", + "setPassword": "קביעת סיסמה", + "title": "משתמש" + } + }, + "toast": { + "copyUrlToClipboard": "כתובת האתר המועתקת.", + "save": { + "title": "שמירה", + "error": { + "noMessage": "שמירת שינויי התצורה נכשלה", + "title": "נכשל בניסיון לשמור את ההגדרות: {{errorMessage}}" + } + } + }, + "role": { + "title": "הרשאה", + "admin": "מנהל", + "viewer": "צופה", + "desc": "למנהלי מערכת יש גישה מלאה לכל התכונות בממשק המשתמש של Frigate. הצופים מוגבלים לצפייה במצלמות, סקירת פריטים וצילומים היסטוריים בממשק המשתמש." + }, + "pagination": { + "next": { + "title": "הבא", + "label": "עבור לדף הבא" + }, + "label": "דפדוף", + "previous": { + "title": "הקודם", + "label": "עבור לדף הקודם" + }, + "more": "דפים נוספים" + }, + "accessDenied": { + "title": "הגישה נדחתה", + "desc": "אין לך הרשאה לצפות בדף הזה.", + "documentTitle": "גישה נדחתה - Frigate" + }, + "notFound": { + "documentTitle": "לא נמצא - Frigate", + "title": "404", + "desc": "דף לא נמצא" + }, + "selectItem": "בחירה:{{item}}" +} diff --git a/web/public/locales/he/components/auth.json b/web/public/locales/he/components/auth.json index 3f0294ebc..17b28cba1 100644 --- a/web/public/locales/he/components/auth.json +++ b/web/public/locales/he/components/auth.json @@ -1,5 +1,15 @@ { "form": { - "user": "שם משתמש" + "user": "שם משתמש", + "password": "סיסמה", + "login": "התחברות", + "errors": { + "usernameRequired": "נדרש שם משתמש", + "passwordRequired": "דרושה סיסמה", + "unknownError": "שגיאה לא ידועה. בדוק את הלוגים.", + "webUnknownError": "שגיאה לא ידועה, בדוק את הלוגים.", + "rateLimit": "חרגת מהמגבלת בקשות. נסה שוב מאוחר יותר.", + "loginFailed": "ההתחברות נכשלה" + } } } diff --git a/web/public/locales/he/components/camera.json b/web/public/locales/he/components/camera.json index bad939ea5..f9de9a6c1 100644 --- a/web/public/locales/he/components/camera.json +++ b/web/public/locales/he/components/camera.json @@ -1,5 +1,86 @@ { "group": { - "label": "קבוצת מצלמות" + "label": "קבוצת מצלמות", + "camera": { + "setting": { + "streamMethod": { + "method": { + "smartStreaming": { + "desc": "שידור חכם יעדכן את תמונת המצלמה פעם בדקה כאשר לא מתרחשת פעילות ניתנת לזיהוי כדי לחסוך רוחב פס ומשאבים. כאשר מזוהה פעילות, התמונה עוברת בצורה חלקה לשידור חי.", + "label": "שידור חכם (מומלץ)" + }, + "noStreaming": { + "label": "אין שידור", + "desc": "תמונות המצלמה יתעדכנו רק פעם בדקה ולא יתבצע שידור חי." + }, + "continuousStreaming": { + "label": "שידור רציף", + "desc": { + "title": "תמונת המצלמה תמיד תהיה שידור חי כאשר היא גלויה בדשבורד, גם אם לא זוהתה פעילות.", + "warning": "שידור רציף עלול לגרום לשימוש גבוה ברוחב פס ובעיות ביצועים. יש להשתמש בזהירות." + } + } + }, + "label": "שיטת שידור", + "placeholder": "בחירת שיטת שידור" + }, + "title": "הגדרות סטרימינג של {{cameraName}}", + "label": "הגדרות זרם מצלמה", + "desc": "שנה את אפשרויות הסטרימינג בשידור חי עבור לוח המחוונים של קבוצת מצלמות זו. הגדרות אלו ספציפיות למכשיר/דפדפן.", + "audioIsAvailable": "קול זמין עבור שידור זה", + "audioIsUnavailable": "קול לא זמין לזרם זה", + "audio": { + "tips": { + "title": "יש להפיק קול מהמצלמה שלך ולהגדיר אותו ב-go2rtc עבור שידור זה.", + "document": "קרא את התיעוד " + } + }, + "stream": "זרם", + "placeholder": "בחירת זרם", + "compatibilityMode": { + "label": "מצב תאימות", + "desc": "הפעל אפשרות זו רק אם השידור החי של המצלמה שלך מציג עיוותים בצבע ויש לו קו אלכסוני בצד ימין של התמונה." + } + } + }, + "edit": "ערכית קבוצת מצלמות", + "delete": { + "label": "מחיקת קבוצת מצלמות", + "confirm": { + "title": "אישור מחיקה", + "desc": "האם אתה בטוח שברצונך למחוק את קבוצת המצלמות {{name}}?" + } + }, + "name": { + "label": "שם", + "placeholder": "הכנס שם…", + "errorMessage": { + "mustLeastCharacters": "שם קבוצת המצלמות חייב להיות בן 2 תווים לפחות.", + "exists": "שם קבוצת המצלמות כבר קיים.", + "nameMustNotPeriod": "שם קבוצת המצלמות אינו יכול להכיל נקודה.", + "invalid": "שם קבוצת מצלמות לא חוקי." + } + }, + "cameras": { + "label": "מצלמות", + "desc": "בחירת מצלמות עבור קבוצה זו." + }, + "icon": "אייקון", + "success": "קבוצת המצלמות ({{name}}) נשמרה.", + "add": "הוספת קבוצת מצלמות" + }, + "debug": { + "options": { + "label": "הגדרות", + "title": "אפשרויות", + "showOptions": "הצג אפשרויות", + "hideOptions": "הסתר אפשרויות" + }, + "boundingBox": "תיבת זיהוי", + "zones": "אזורים", + "mask": "מיסוך", + "motion": "תנועה", + "timestamp": "חותמת זמן", + "regions": "אזורים" } } diff --git a/web/public/locales/he/components/dialog.json b/web/public/locales/he/components/dialog.json index 8f23f86c6..472d3d541 100644 --- a/web/public/locales/he/components/dialog.json +++ b/web/public/locales/he/components/dialog.json @@ -1,5 +1,114 @@ { "restart": { - "title": "האם אתה בטוח שברצונך להפעיל מחדש את Frigate?" + "title": "האם אתה בטוח שברצונך להפעיל מחדש את Frigate?", + "button": "הפעלה מחדש - Frigate", + "restarting": { + "title": "Frigate מופעל מחדש כעת", + "content": "דף זה ייטען מחדש בעוד {{countdown}} שניות.", + "button": "אילוץ טעינה מחדש" + } + }, + "export": { + "toast": { + "error": { + "endTimeMustAfterStartTime": "שעת הסיום חייבת להיות אחרי שעת ההתחלה", + "failed": "נכשל בהתחלת הייצוא: {{error}}", + "noVaildTimeSelected": "לא נבחר טווח זמן תקף" + }, + "success": "הייצוא הוחל בהצלחה. הצג את הקובץ בתיקייה /ייצוא." + }, + "time": { + "end": { + "label": "בחירת זמן סיום", + "title": "זמן סיום" + }, + "fromTimeline": "בחירה מציר זמן", + "lastHour_one": "שעה אחרונה", + "lastHour_two": "שעות אחרונות {{count}}", + "lastHour_other": "שעות אחרונות {{count}}", + "custom": "מותאם אישית", + "start": { + "title": "זמן התחלה", + "label": "בחירת זמן התחלה" + } + }, + "selectOrExport": "בחירה או ייצוא", + "name": { + "placeholder": "תן שם לייצוא" + }, + "select": "בחירה", + "export": "ייצוא", + "fromTimeline": { + "saveExport": "שמירת ייצוא", + "previewExport": "תצוגה מקדימה של ייצוא" + } + }, + "streaming": { + "restreaming": { + "desc": { + "title": "הגדר את go2rtc לקבלת אפשרויות נוספות של תצוגה חיה ושמע עבור מצלמה זו.", + "readTheDocumentation": "קרא את התיעוד" + }, + "disabled": "הזרמה מחדש אינה פעילה עבור מצלמה זו." + }, + "label": "זרם", + "showStats": { + "label": "הצג סטטיסטיקות שידור", + "desc": "הפעל אפשרות זו כדי להציג סטטיסטיקות שידור כשכבת-על על פיד המצלמה." + }, + "debugView": "תצוגת ניפוי שגיאות" + }, + "explore": { + "plus": { + "submitToPlus": { + "label": "העלה ל- +Frigate", + "desc": "אובייקטים במיקומים שברצונך להימנע מהם אינם תוצאות חיוביות שגויות. הגשתם כתוצאות חיוביות שגויות תבלבל את המודל." + }, + "review": { + "question": { + "label": "אשר תווית זו עבור +Frigate", + "ask_a": "האם אובייקט זה הוא {{label}}?", + "ask_an": "האם אובייקט זה הוא - {{label}}?", + "ask_full": "האם אובייקט זה הוא {{untranslatedLabel}} ({{translatedLabel}})?" + }, + "state": { + "submitted": "נשלח" + } + } + }, + "video": { + "viewInHistory": "צפה בהיסטוריה" + } + }, + "search": { + "saveSearch": { + "label": "שמירת חיפוש", + "desc": "ספק שם לחיפוש שמור זה.", + "placeholder": "הזן שם לחיפוש שלך", + "success": "החיפוש ({{searchName}}) נשמר.", + "button": { + "save": { + "label": "שמירת החיפוש הזה" + } + }, + "overwrite": "{{searchName}} כבר קיים. שמירה תדרוס את הערך הקיים." + } + }, + "recording": { + "confirmDelete": { + "title": "אישור מחיקה", + "desc": { + "selected": "האם אתה בטוח שברצונך למחוק את כל הסרטונים המוקלטים המשויכים לפריט סקירה זה?

    החזק את מקש Shift לחוץ כדי לעקוף תיבת דו-שיח זו בעתיד." + }, + "toast": { + "success": "קטעי וידאו המשויכים לפריטי הסקירה שנבחרו נמחקו בהצלחה.", + "error": "המחיקה נכשלה: {{error}}" + } + }, + "button": { + "export": "ייצוא", + "markAsReviewed": "סמן כסוקר", + "deleteNow": "מחיקה כעת" + } } } diff --git a/web/public/locales/he/components/filter.json b/web/public/locales/he/components/filter.json index 15eaba447..2316722ca 100644 --- a/web/public/locales/he/components/filter.json +++ b/web/public/locales/he/components/filter.json @@ -1,3 +1,126 @@ { - "filter": "לסנן" + "filter": "לסנן", + "features": { + "submittedToFrigatePlus": { + "tips": "עליך תחילה לסנן לפי אובייקטים במעקב שיש להם תמונת מצב.

    לא ניתן לשלוח ל-Frigate+ אובייקטים במעקב ללא תמונת מצב.", + "label": "העלאה ל- +Frigate" + }, + "label": "מאפיינים", + "hasVideoClip": "קיים סרטון", + "hasSnapshot": "קיימת לכידת תמונה" + }, + "labels": { + "label": "תוויות", + "all": { + "title": "כל התוויות", + "short": "תוויות" + }, + "count_one": "{{count}} תווית", + "count_other": "{{count}} תוויות" + }, + "zones": { + "label": "איזורים", + "all": { + "title": "כל האזורים", + "short": "אזורים" + } + }, + "dates": { + "selectPreset": "בחר פריסט…", + "all": { + "title": "כל התאריכים", + "short": "תאריכים" + } + }, + "more": "מסננים נוספים", + "reset": { + "label": "איפוס מסננים לערכי ברירת מחדל" + }, + "timeRange": "טווח זמן", + "subLabels": { + "label": "תוויות משנה", + "all": "כל תוויות המשנה" + }, + "score": "ציון", + "estimatedSpeed": "מהירות משוערת ({{unit}})", + "sort": { + "label": "מיון", + "dateAsc": "תאריך (עולה)", + "dateDesc": "תאריך (יורד)", + "scoreAsc": "ציון אובייקט (עולה)", + "scoreDesc": "ציון אובייקט (יורד)", + "speedAsc": "מהירות משוערת (עולה)", + "speedDesc": "מהירות משוערת (יורד)", + "relevance": "רלוונטיות" + }, + "cameras": { + "label": "מסנן מצלמות", + "all": { + "title": "כל המצלמות", + "short": "מצלמות" + } + }, + "review": { + "showReviewed": "הצג פריטים שנבדקו" + }, + "motion": { + "showMotionOnly": "הצגת תנועה בלבד" + }, + "explore": { + "settings": { + "title": "הגדרות", + "defaultView": { + "summary": "סיכום", + "unfilteredGrid": "תצוגה מלאה", + "title": "תצוגת ברירת מחדל", + "desc": "כאשר לא נבחרו מסננים, הצג סיכום של האובייקטים האחרונים שעברו מעקב לפי תווית, או הצג רשת לא מסוננת." + }, + "gridColumns": { + "title": "עמודות גריד", + "desc": "בחר את מספר העמודות בגריד." + }, + "searchSource": { + "label": "מקור חיפוש", + "desc": "בחר אם לחפש בתמונות הממוזערות או בתיאורים של האובייקטים שבמעקב.", + "options": { + "thumbnailImage": "תמונה ממוזערת", + "description": "תיאור" + } + } + }, + "date": { + "selectDateBy": { + "label": "בחר תאריך לפיו יבוצע הסינון" + } + } + }, + "trackedObjectDelete": { + "toast": { + "success": "אובייקטים במעקב נמחקו בהצלחה.", + "error": "מחיקת אובייקטים במעקב נכשלה: {{errorMessage}}" + }, + "title": "אישור מחיקה", + "desc": "מחיקת אובייקטים אלה שעברו מעקב ({{objectLength}}) מסירה את לכידת התמונה, כל ההטמעות שנשמרו וכל ערכי שלבי האובייקט המשויכים. קטעי וידאו מוקלטים של אובייקטים אלה שעברו מעקב בתצוגת היסטוריה לא יימחקו.

    האם אתה בטוח שברצונך להמשיך?

    החזק את מקש Shift כדי לעקוף תיבת דו-שיח זו בעתיד." + }, + "zoneMask": { + "filterBy": "סינון לפי מיסוך אזור" + }, + "recognizedLicensePlates": { + "title": "לוחיות רישוי מוכרות", + "loadFailed": "טעינת לוחיות הרישוי המזוהות נכשלה.", + "loading": "טוען לוחיות רישוי מזוהות…", + "placeholder": "הקלד כדי לחפש לוחיות רישוי…", + "noLicensePlatesFound": "לא נמצאו לוחיות רישוי.", + "selectPlatesFromList": "בחירת לוחית אחת או יותר מהרשימה." + }, + "logSettings": { + "label": "סינון רמת לוג", + "filterBySeverity": "סנן לוגים לפי חומרה", + "loading": { + "title": "טוען", + "desc": "כאשר חלונית הלוגים גוללת לתחתית, לוגים חדשים מוזרמים אוטומטית עם הוספתם." + }, + "disableLogStreaming": "השבתת זרימה של לוגים", + "allLogs": "כל הלוגים" + } } diff --git a/web/public/locales/he/components/icons.json b/web/public/locales/he/components/icons.json index 62cdab7a5..ecff965c3 100644 --- a/web/public/locales/he/components/icons.json +++ b/web/public/locales/he/components/icons.json @@ -1,5 +1,8 @@ { "iconPicker": { - "selectIcon": "בחר סמל" + "selectIcon": "בחר סמל", + "search": { + "placeholder": "חפש אייקון…" + } } } diff --git a/web/public/locales/he/components/input.json b/web/public/locales/he/components/input.json index c09b857be..e427f53e0 100644 --- a/web/public/locales/he/components/input.json +++ b/web/public/locales/he/components/input.json @@ -1,7 +1,10 @@ { "button": { "downloadVideo": { - "label": "הורד וידאו" + "label": "הורד וידאו", + "toast": { + "success": "הורדת סרטון הסקירה שלך החלה." + } } } } diff --git a/web/public/locales/he/components/player.json b/web/public/locales/he/components/player.json index 4ee8e83f7..348cb1d46 100644 --- a/web/public/locales/he/components/player.json +++ b/web/public/locales/he/components/player.json @@ -1,3 +1,51 @@ { - "noRecordingsFoundForThisTime": "לא נמצאו הקלטות לזמן זה" + "noRecordingsFoundForThisTime": "לא נמצאו הקלטות לזמן זה", + "stats": { + "droppedFrames": { + "title": "פריימים שנשמטו:", + "short": { + "title": "נשמטו", + "value": "{{droppedFrames}} פריימים" + } + }, + "streamType": { + "title": "סוג זרם:", + "short": "סוג" + }, + "bandwidth": { + "title": "רוחב-פס:", + "short": "רוחב-פס" + }, + "latency": { + "title": "השהיה:", + "value": "{{seconds}} שניות", + "short": { + "title": "השהיה", + "value": "{{seconds}} שניה" + } + }, + "decodedFrames": "פריימים מפוענחים:", + "droppedFrameRate": "קצב פריימים מופחת:", + "totalFrames": "סך כל המסגרות:" + }, + "toast": { + "success": { + "submittedFrigatePlus": "הפריים נשלח בהצלחה ל-Frigate+" + }, + "error": { + "submitFrigatePlusFailed": "שליחת הפריים ל-Frigate+ נכשלה" + } + }, + "noPreviewFound": "לא נמצאה תצוגה מקדימה", + "noPreviewFoundFor": "לא נמצאה תצוגה מקדימה עבור {{cameraName}}", + "submitFrigatePlus": { + "title": "לשלוח את הפריים הזה ל-Frigate+?", + "submit": "אישור" + }, + "livePlayerRequiredIOSVersion": "נדרשת iOS 17.1 ומעלה עבור סוג השידור החי הזה.", + "streamOffline": { + "title": "זרם מצלמה לא זמין", + "desc": "לא התקבלו פריימים בזרם detect של {{cameraName}}, בדקו את יומני השגיאות" + }, + "cameraDisabled": "המצלמה מושבתת" } diff --git a/web/public/locales/he/objects.json b/web/public/locales/he/objects.json index 1217fa75a..68f648da0 100644 --- a/web/public/locales/he/objects.json +++ b/web/public/locales/he/objects.json @@ -1,3 +1,120 @@ { - "person": "אדם" + "person": "אדם", + "bicycle": "אופניים", + "car": "מכונית", + "motorcycle": "אופנוע", + "airplane": "מטוס", + "bus": "אוטובוס", + "train": "למד פנים", + "boat": "סירה", + "traffic_light": "רמזור", + "fire_hydrant": "ברז כיבוי אש", + "street_sign": "שלט רחוב", + "stop_sign": "תמרור עצור", + "parking_meter": "מדחן חניה", + "bench": "ספסל", + "bird": "ציפור", + "cat": "חתול", + "dog": "כלב", + "horse": "סוס", + "sheep": "כבשה", + "cow": "פרה", + "elephant": "פיל", + "bear": "דב", + "zebra": "זברה", + "giraffe": "ג'ירפה", + "hat": "כובע", + "backpack": "תרמיל", + "umbrella": "מטריה", + "shoe": "נעל", + "eye_glasses": "משקפיים", + "handbag": "תיק יד", + "tie": "עניבה", + "suitcase": "מזוודה", + "frisbee": "צלחת מעופפת", + "skis": "מִגלָשַׁיִם", + "snowboard": "גלשן שלג", + "sports_ball": "כדור ספורט", + "kite": "עפיפון", + "baseball_bat": "כובע בייסבול", + "baseball_glove": "כפפת בייסבול", + "skateboard": "סקייטבורד", + "surfboard": "גלשן", + "bottle": "בקבוק", + "plate": "לוחית", + "wine_glass": "כוס יין", + "mouse": "עכבר", + "keyboard": "לוח מקשים", + "bark": "נביחה", + "fox": "שועל", + "goat": "עז", + "rabbit": "ארנב", + "raccoon": "רקון", + "robot_lawnmower": "מכסחת דשא רובוטית", + "waste_bin": "פח אשפה", + "on_demand": "לפי דרישה", + "face": "פנים", + "license_plate": "לוחית רישוי", + "package": "חבילה", + "bbq_grill": "מנגל", + "amazon": "אמזון", + "usps": "USPS", + "ups": "UPS", + "fedex": "פדקס", + "dhl": "די-אייצ'-אל", + "an_post": "אנפוסט", + "purolator": "פורולטור", + "postnl": "דואר הולנד", + "nzpost": "דואר ניוזילנד", + "postnord": "דואר נורד", + "gls": "G_L_S", + "dpd": "דיפידי", + "tennis_racket": "מחבט טניס", + "pizza": "פיצה", + "donut": "דונאט", + "cake": "עוגה", + "chair": "כיסא", + "couch": "ספה", + "potted_plant": "עציץ", + "bed": "מיטה", + "mirror": "מראה", + "dining_table": "שולחן אוכל", + "window": "חלון", + "desk": "שולחן", + "toilet": "שירותים", + "door": "דלת", + "tv": "טלויזיה", + "cup": "כוס", + "fork": "מזלג", + "knife": "סכין", + "spoon": "כף", + "bowl": "קערה", + "banana": "בננה", + "apple": "תפוח", + "sandwich": "כריך", + "orange": "תפוז", + "broccoli": "ברוקולי", + "carrot": "גזר", + "hot_dog": "נקניקייה", + "laptop": "מחשב נייד", + "remote": "שלט", + "cell_phone": "טלפון נייד", + "microwave": "מיקרוגל", + "oven": "תנור", + "toaster": "טוסטר", + "refrigerator": "מקרר", + "blender": "מערבל", + "book": "ספר", + "clock": "שעון", + "vase": "אגרטל", + "scissors": "מספריים", + "teddy_bear": "דובי", + "hair_dryer": "מייבש שיער", + "toothbrush": "מברשת שיניים", + "hair_brush": "מברשת שיער", + "vehicle": "רכב", + "animal": "חיה", + "squirrel": "סנאי", + "deer": "צבי", + "sink": "כיור" } diff --git a/web/public/locales/he/views/configEditor.json b/web/public/locales/he/views/configEditor.json index 106c1ba37..7f9120a31 100644 --- a/web/public/locales/he/views/configEditor.json +++ b/web/public/locales/he/views/configEditor.json @@ -1,3 +1,16 @@ { - "documentTitle": "עורך הגדרות - פריגטה" + "documentTitle": "עורך הגדרות - פריגטה", + "configEditor": "עורך תצורה", + "copyConfig": "העתקת הגדרות", + "saveAndRestart": "שמירה והפעלה מחדש", + "saveOnly": "שמירה בלבד", + "confirm": "לצאת ללא שמירה?", + "toast": { + "success": { + "copyToClipboard": "התצורה הועתקה ללוח." + }, + "error": { + "savingError": "שגיאה בשמירת ההגדרות" + } + } } diff --git a/web/public/locales/he/views/events.json b/web/public/locales/he/views/events.json index f37423fda..21b551e2a 100644 --- a/web/public/locales/he/views/events.json +++ b/web/public/locales/he/views/events.json @@ -1,3 +1,38 @@ { - "alerts": "התראות" + "alerts": "התרעות", + "detections": "גילויים", + "motion": { + "label": "תנועה", + "only": "תנועה בלבד" + }, + "allCameras": "כל המצלמות", + "empty": { + "detection": "אין גילויים לבדיקה", + "alert": "אין התראות להצגה", + "motion": "לא נמצאו נתוני תנועה" + }, + "timeline": "ציר זמן", + "timeline.aria": "בחירת ציר זמן", + "events": { + "label": "אירועים", + "aria": "בחירת אירועים", + "noFoundForTimePeriod": "לא נמצאו אירועים עבור תקופת זמן זו." + }, + "documentTitle": "סקירה - Frigate", + "recordings": { + "documentTitle": "הקלטות - Frigate" + }, + "calendarFilter": { + "last24Hours": "24 שעות אחרונות" + }, + "markAsReviewed": "סימון כנבדק", + "markTheseItemsAsReviewed": "סמן פריטים אלה כנסרקו", + "newReviewItems": { + "label": "הצג פריטי סקירה חדשים", + "button": "פריטים חדשים לסקירה" + }, + "selected_one": "נבחרו {{count}}", + "selected_other": "{{count}} נבחרו", + "camera": "מצלמה", + "detected": "זוהה" } diff --git a/web/public/locales/he/views/explore.json b/web/public/locales/he/views/explore.json index 58630fd56..bf9e1b2c9 100644 --- a/web/public/locales/he/views/explore.json +++ b/web/public/locales/he/views/explore.json @@ -1,3 +1,209 @@ { - "documentTitle": "גלה - פריגטה" + "documentTitle": "גלה - פריגטה", + "itemMenu": { + "downloadVideo": { + "label": "הורדת וידיאו", + "aria": "הורדת וידיאו" + }, + "viewObjectLifecycle": { + "label": "צפה בשלבים של האובייקט", + "aria": "הצג את השלבים של האובייקט" + }, + "downloadSnapshot": { + "label": "הורדת לכידת תמונה", + "aria": "הורדת לכידת תמונה" + }, + "findSimilar": { + "label": "מצא דומה", + "aria": "מצא אובייקטים דומים במעקב" + }, + "submitToPlus": { + "label": "שלח ל- +Frigate", + "aria": "שלח ל +Frigate" + }, + "viewInHistory": { + "label": "צפה בהיסטוריה", + "aria": "צפה בהיסטוריה" + }, + "deleteTrackedObject": { + "label": "מחק את אובייקט המעקב הזה" + } + }, + "generativeAI": "Generative - AI", + "exploreMore": "סקור אובייקטים נוספים של {{label}}", + "exploreIsUnavailable": { + "title": "סקירה לא זמינה", + "embeddingsReindexing": { + "context": "ניתן להשתמש בסקירה לאחר סיום בניית המאגר של האובייקטים שזוהו.", + "startingUp": "מתחיל…", + "estimatedTime": "זמן משוער שנותר:", + "finishingShortly": "מסיים בקרוב", + "step": { + "thumbnailsEmbedded": "תמונות ממוזערות מוטמעות: ", + "descriptionsEmbedded": "תיאורים מוטמעים: ", + "trackedObjectsProcessed": "אובייקטים שעובדו לאחר מעקב: " + } + }, + "downloadingModels": { + "setup": { + "visionModel": "מודל חוזי", + "visionModelFeatureExtractor": "מחלץ תכונות מודל חוזי", + "textModel": "מודל טקסט", + "textTokenizer": "מפצל טקסט" + }, + "tips": { + "context": "מומלץ לעדכן את המאגר של האובייקטים אחרי שהמודלים ירדו.", + "documentation": "קרא את התיעוד" + }, + "error": "אירעה שגיאה. בדוק את הלוגים.", + "context": "Frigate מורידה את מודלי ההטמעה הדרושים כדי לתמוך בתכונת החיפוש הסמנטי. פעולה זו עשויה להימשך מספר דקות, בהתאם למהירות חיבור הרשת שלך." + } + }, + "trackedObjectDetails": "פרטי אובייקט במעקב", + "type": { + "details": "פרטים", + "snapshot": "לכידת תמונה.", + "video": "וידיאו", + "object_lifecycle": "שלבי זיהוי של האובייקט" + }, + "objectLifecycle": { + "title": "שלבי זיהוי של האובייקט", + "noImageFound": "לא נמצאה תמונה עבור חותמת זמן זו.", + "createObjectMask": "יצירת מיסוך אובייקט", + "adjustAnnotationSettings": "שנה את הגדרות הסימון", + "scrollViewTips": "גלול כדי לצפות ברגעים המשמעותיים בשלבים של אובייקט זה.", + "count": "{{first}} מתוך{{second}}", + "trackedPoint": "נקודת מעקב", + "lifecycleItemDesc": { + "visible": "זוהה {{label}}", + "entered_zone": "{{label}} נכנס ל-{{zones}}", + "active": "{{label}} הפך לפעיל", + "stationary": "{{label}} הפך לנייח", + "attribute": { + "faceOrLicense_plate": "זוהה {{attribute}} עבור {{label}}", + "other": "{{label}} זוהה כ-{{attribute}}" + }, + "gone": "{{label}} שמאל", + "heard": "{{label}} נשמעה", + "external": "זוהה {{label}}", + "header": { + "zones": "אזורים", + "ratio": "יחס", + "area": "אזור" + } + }, + "annotationSettings": { + "title": "הגדרות סימון", + "showAllZones": { + "title": "הצג את כל האזורים", + "desc": "הצג תמיד אזורים בפריימים שבהם אובייקטים נכנסו לאזור." + }, + "offset": { + "label": "היסט ההערה", + "documentation": "עיין בתיעוד ", + "toast": { + "success": "קיזוז עבור {{camera}} נשמר בקובץ התצורה. הפעל מחדש את Frigate כדי להחיל את השינויים שלך." + }, + "tips": "טיפ: דמיינו סרטון אירוע שבו אדם הולך משמאל לימין. אם תיבת הגבול של ציר הזמן של האירוע נמצאת באופן עקבי משמאל לאדם, יש להפחית את הערך. באופן דומה, אם אדם הולך משמאל לימין והתיבה התוחמת נמצאת באופן עקבי לפני האדם, יש להגדיל את הערך.", + "millisecondsToOffset": "מספר מילישניות להסטת ההערות שנוצרו מזיהוי ברירת מחדל: 0", + "desc": "נתונים אלה מגיעים משידור הזיהוי של המצלמה שלך, אך הם מונחים על גבי תמונות משידור ההקלטה. לא סביר ששני הזרמים יהיו מסונכרנים לחלוטין. כתוצאה מכך, תיבת הגבול והצילומים לא מסונכרנים בצורה מושלמת. עם זאת, ניתן להשתמש בשדה היסט סימון כדי לסנכרן." + } + }, + "autoTrackingTips": "מיקומי תיבות הסימון לא יהיו מדויקים עבור מצלמות עם מעקב אוטומטי.", + "carousel": { + "previous": "שקופית קודמת", + "next": "שקופית הבאה" + } + }, + "details": { + "timestamp": "חותמת זמן", + "item": { + "tips": { + "mismatch_one": "זוהה אובייקט לא זמין ({{count}}) ונכלל בפריט סקירה זה. אובייקטים אלה לא עמדו בקריטריונים של התראה או זיהוי, או שכבר נוקו/נמחקו.", + "mismatch_two": "זוהו אובייקטים לא זמינים ({{count}}) ונכלל בפריט סקירה זה. אובייקטים אלה לא עמדו בקריטריונים של התראה או זיהוי, או שכבר נוקו/נמחקו.", + "mismatch_other": "זוהו אובייקטים לא זמינים ({{count}}) ונכלל בפריט סקירה זה. אובייקטים אלה לא עמדו בקריטריונים של התראה או זיהוי, או שכבר נוקו/נמחקו.", + "hasMissingObjects": "התאם את התצורה שלך אם ברצונך ש-Frigate ישמור אובייקטים שעוקבים אחריהם עבור התוויות הבאות: {{objects}}" + }, + "button": { + "viewInExplore": "הצג בסקירה", + "share": "שתף פריט זה" + }, + "toast": { + "success": { + "updatedSublabel": "תווית המשנה עודכנה בהצלחה.", + "updatedLPR": "לוחית הרישוי עודכנה בהצלחה.", + "regenerate": "תיאור חדש התבקש מ-{{provider}}. בהתאם למהירות הספק שלך, ייתכן שייקח זמן מה ליצירת התיאור החדש." + }, + "error": { + "regenerate": "ההתקשרות ל-{{provider}} לקבלת תיאור חדש נכשלה: {{errorMessage}}", + "updatedSublabelFailed": "עדכון תווית המשנה נכשל: {{errorMessage}}", + "updatedLPRFailed": "עדכון לוחית הרישוי נכשל: {{errorMessage}}" + } + }, + "title": "סקירת הפריט", + "desc": "סקירת הפריט" + }, + "label": "תווית", + "editSubLabel": { + "title": "עריכת תווית משנה", + "desc": "הזן תווית משנה חדשה עבור {{label}}", + "descNoLabel": "הזן תווית משנה חדשה עבור אובייקט המעקב" + }, + "editLPR": { + "title": "עריכת לוחית זיהוי", + "desc": "הזן ערך לוחית רישוי חדשה עבור {{label}}", + "descNoLabel": "הזן ערך לוחית רישוי חדשה עבור האובייקט במעקב" + }, + "snapshotScore": { + "label": "ציון לכידת תמונה" + }, + "topScore": { + "label": "ציון גבוה", + "info": "הציון הגבוה ביותר הוא הציון החציוני הגבוה ביותר עבור האובייקט במעקב, כך שהוא עשוי להיות שונה מהציון המוצג בתמונה הממוזערת של תוצאת החיפוש." + }, + "recognizedLicensePlate": "לוחית רישוי מוכרת", + "estimatedSpeed": "מהירות משוערת", + "objects": "אובייקט", + "camera": "מצלמה", + "button": { + "findSimilar": "מצא דומה", + "regenerate": { + "title": "צור מחדש", + "label": "צור מחדש את תיאור אובייקט המעקב" + } + }, + "description": { + "label": "תיאור", + "placeholder": "תיאור האובייקט במעקב", + "aiTips": "Frigate לא תבקש תיאור מספק הבינה המלאכותית הגנרטיבית שלך עד לסיום כל השלבים של האובייקט במעקב." + }, + "expandRegenerationMenu": "פתח את תפריט היצירה מחדש", + "regenerateFromSnapshot": "צור מחדש מלכידת התמונה", + "regenerateFromThumbnails": "צור מחדש מתמונות ממוזערות", + "tips": { + "descriptionSaved": "התיאור נשמר בהצלחה", + "saveDescriptionFailed": "עדכון התיאור נכשל: {{errorMessage}}" + }, + "zones": "אזורים" + }, + "dialog": { + "confirmDelete": { + "title": "אישור מחיקה", + "desc": "מחיקת אובייקט זה במעקב מסירה את תמונת המצב, כל ההטמעות שנשמרו וכל ערכי שלבי האובייקט המשויכים. קטעי וידאו מוקלטים של אובייקט זה במעקב בתצוגת היסטוריה לא יימחקו.

    האם אתה בטוח שברצונך להמשיך?" + } + }, + "searchResult": { + "tooltip": "תואם ל-{{type}} ב-{{confidence}}%", + "deleteTrackedObject": { + "toast": { + "error": "מחיקת האובייקט במעקב נכשלה: {{errorMessage}}", + "success": "האובייקט המעקב נמחק בהצלחה." + } + } + }, + "noTrackedObjects": "לא נמצאו אובייקטים במעקב", + "fetchingTrackedObjectsFailed": "שגיאה באחזור אובייקטים במעקב: {{errorMessage}}", + "trackedObjectsCount_one": "אובייקט במעקב ({{count}}) ", + "trackedObjectsCount_two": "אובייקטים במעקב ({{count}}) ", + "trackedObjectsCount_other": "אובייקטים במעקב ({{count}}) " } diff --git a/web/public/locales/he/views/exports.json b/web/public/locales/he/views/exports.json index 8fec065bc..93e26a7b8 100644 --- a/web/public/locales/he/views/exports.json +++ b/web/public/locales/he/views/exports.json @@ -1,3 +1,17 @@ { - "search": "חיפוש" + "search": "חיפוש", + "toast": { + "error": { + "renameExportFailed": "שינוי שם הייצוא נכשל: {{errorMessage}}" + } + }, + "documentTitle": "ייצוא - Frigate", + "noExports": "לא נמצא יצוא", + "deleteExport": "מחיקת ייצוא", + "deleteExport.desc": "האם אתה בטוח שברצונך למחוק את {{exportName}}?", + "editExport": { + "title": "שנה שם ייצוא", + "desc": "הכנס שם חדש עבור הייצוא הזה.", + "saveExport": "שמירת ייצוא" + } } diff --git a/web/public/locales/he/views/faceLibrary.json b/web/public/locales/he/views/faceLibrary.json index acf456f23..96b248100 100644 --- a/web/public/locales/he/views/faceLibrary.json +++ b/web/public/locales/he/views/faceLibrary.json @@ -1,5 +1,102 @@ { "description": { - "addFace": "עיין בהוספת אוסף חדש לספריית הפנים." - } + "addFace": "עיין בהוספת אוסף חדש לספריית הפנים.", + "placeholder": "הזנת שם לאוסף זה", + "invalidName": "שם לא חוקי. שמות יכולים לכלול רק אותיות, מספרים, רווחים, גרשים, קווים תחתונים ומקפים." + }, + "createFaceLibrary": { + "nextSteps": "כדי לבנות בסיס חזק:
  • השתמשו בכרטיסייה 'אימון' כדי לבחור ולאמן תמונות עבור כל אדם שזוהה.
  • התמקדו בתמונות ישירות לקבלת התוצאות הטובות ביותר; הימנעו מאימון תמונות שלוכדות פנים בזווית.
  • ", + "title": "יצירת אוסף", + "desc": "יצירת אוסף חדש", + "new": "יצירת פנים חדשות" + }, + "toast": { + "success": { + "deletedName_one": "פנים עבור {{count}} נמחקו בהצלחה.", + "deletedName_two": "פנים של {{count}} נמחקו בהצלחה.", + "deletedName_other": "פנים של {{count}} נמחקו בהצלחה.", + "deletedFace_one": "נמחק בהצלחה {{count}} פנים.", + "deletedFace_two": "נמחקו בהצלחה {{count}} פנים.", + "deletedFace_other": "נמחקו בהצלחה {{count}} פנים.", + "uploadedImage": "התמונה הועלתה בהצלחה.", + "addFaceLibrary": "{{name}} נוסף בהצלחה לספריית הפנים!", + "renamedFace": "שם הפנים שונה בהצלחה ל-{{name}}", + "trainedFace": "פנים אומנו בהצלחה.", + "updatedFaceScore": "ציון הפנים עודכן בהצלחה." + }, + "error": { + "deleteFaceFailed": "המחיקה נכשלה: {{errorMessage}}", + "deleteNameFailed": "מחיקת השם: {{errorMessage}} נכשלה", + "renameFaceFailed": "שינוי שם הפנים נכשל: {{errorMessage}}", + "trainFailed": "אימון הפנים נכשל: {{errorMessage}}", + "updateFaceScoreFailed": "עדכון ציון הפנים נכשל: {{errorMessage}}", + "uploadingImageFailed": "העלאת התמונה נכשלה: {{errorMessage}}", + "addFaceLibraryFailed": "הגדרת שם הפנים נכשלה: {{errorMessage}}" + } + }, + "details": { + "person": "אדם", + "subLabelScore": "ציון תווית משנה", + "face": "פרטי פנים", + "faceDesc": "פרטי האובייקט שגרם לזיהוי הפנים הזה", + "timestamp": "חותמת זמן", + "unknown": "לא ידוע", + "scoreInfo": "ציון תווית המשנה הוא הציון המשוקלל עבור כל זיהוי הפנים המזוהים, כך שהוא עשוי להיות שונה מהציון המוצג בתמונה." + }, + "documentTitle": "ספריית זיהו פנים - Frigate", + "uploadFaceImage": { + "title": "העלאת תמונת פנים", + "desc": "העלה תמונה לסריקה לאיתור פנים והכללה {{pageToggle}}" + }, + "collections": "אוספים", + "steps": { + "faceName": "קביעת שם לפנים", + "uploadFace": "העלאת תמונת פנים", + "nextSteps": "צעדים הבאים", + "description": { + "uploadFace": "העלה תמונה של {{name}} המציגה את פניו מזווית חזית. אין צורך לחתוך את התמונה רק לפנים שלו." + } + }, + "train": { + "title": "רכבת", + "aria": "בחירת אימון", + "empty": "אין ניסיונות זיהוי פנים אחרונים" + }, + "selectItem": "בחירה:{{item}}", + "selectFace": "בחירת פנים", + "deleteFaceLibrary": { + "title": "מחיקת שם", + "desc": "האם אתה בטוח שברצונך למחוק את האוסף {{name}}? פעולה זו תמחק לצמיתות את כל הפרצופים המשויכים." + }, + "deleteFaceAttempts": { + "title": "מחיקת פנים", + "desc_one": "האם אתה בטוח שברצונך למחוק את הפנים עבור {{count}}? פעולה זו אינה ניתנת לביטול.", + "desc_two": "האם אתה בטוח שברצונך למחוק את הפנים של {{count}}? פעולה זו אינה ניתנת לביטול.", + "desc_other": "האם אתה בטוח שברצונך למחוק את הפנים של {{count}}? פעולה זו אינה ניתנת לביטול." + }, + "renameFace": { + "title": "שינוי שם של פנים", + "desc": "הזנת שם חדש עבור {{name}}" + }, + "button": { + "deleteFaceAttempts": "מחיקת פנים", + "addFace": "הוסף פנים", + "renameFace": "שנה שם פנים", + "deleteFace": "מחיקת פנים", + "uploadImage": "העלאת תמונה", + "reprocessFace": "עיבוד מחדש של הפנים" + }, + "imageEntry": { + "validation": { + "selectImage": "בחירת קובץ תמונה." + }, + "dropActive": "שחרר/י את התמונה כאן…", + "dropInstructions": "גרור ושחרר תמונה כאן, או לחץ כדי לבחור", + "maxSize": "גודל מקסימאלי: {{size}}MB" + }, + "nofaces": "אין פנים זמינים", + "pixels": "{{area}}פיקסלים", + "readTheDocs": "עיין בתיעוד", + "trainFaceAs": "אימון פנים כ:", + "trainFace": "אימון פנים" } diff --git a/web/public/locales/he/views/live.json b/web/public/locales/he/views/live.json index 0967ef424..9fccbd158 100644 --- a/web/public/locales/he/views/live.json +++ b/web/public/locales/he/views/live.json @@ -1 +1,158 @@ -{} +{ + "manualRecording": { + "title": "הקלטה לפי דרישה", + "tips": "התחלת אירוע הקלטה ידני המבוסס על הגדרות שמירת ההקלטה של מצלמה זו.", + "playInBackground": { + "label": "ניגון ברקע", + "desc": "הפעל אפשרות זו כדי להמשיך להזרים גם כאשר הנגן מוסתר." + }, + "showStats": { + "label": "הצג סטטיסטיקות", + "desc": "הפעל אפשרות זו כדי להציג סטטיסטיקות שידור כשכבת-על על פיד המצלמה." + }, + "debugView": "תצוגת ניפוי שגיאות", + "start": "התחלת הקלטה לפי דרישה", + "started": "התחילה הקלטה ידנית לפי דרישה.", + "failedToStart": "התחלת הקלטה ידנית לפי דרישה נכשלה.", + "recordDisabledTips": "מכיוון שההקלטה מושבתת או מוגבלת בתצורה של מצלמה זו, רק לכידת תמונה תישמר.", + "end": "סיום הקלטה לפי דרישה", + "ended": "הקלטה ידנית לפי דרישה הסתיימה.", + "failedToEnd": "סיום ההקלטה הידנית לפי דרישה נכשל." + }, + "documentTitle": "שידור חי - Frigate", + "documentTitle.withCamera": "{{camera}} - שידור חי- Frigate", + "lowBandwidthMode": "מצב רוחב פס נמוך", + "twoWayTalk": { + "enable": "אפשור דיבור דו כיווני", + "disable": "ביטול דיבור דו כיווני" + }, + "cameraAudio": { + "enable": "אפשור קול מהמצלמה", + "disable": "ביטול קול מהמצלמה" + }, + "ptz": { + "move": { + "clickMove": { + "label": "לחץ בתוך המסגרת כדי למרכז את המצלמה", + "enable": "הפעל לחיצה לתנועה", + "disable": "ביטול לחיצה לתנועה" + }, + "up": { + "label": "הזזת מצלמה ממונעת למעלה" + }, + "down": { + "label": "הזזת מצלמה ממונעת למטה" + }, + "right": { + "label": "הזזת מצלמה ממונעת ימינה" + }, + "left": { + "label": "הזזת מצלמה ממונעת לשמאל" + } + }, + "zoom": { + "in": { + "label": "מצלמה ממונעת זום פנימה" + }, + "out": { + "label": "מצלמה ממונעת זום החוצה" + } + }, + "frame": { + "center": { + "label": "לחץ בתוך המסגרת כדי למרכז את המצלמה הממונעת" + } + }, + "presets": "מצלמה ממונעת - פריסטים" + }, + "camera": { + "enable": "אפשור מצלמה", + "disable": "השבתת מצלמה" + }, + "muteCameras": { + "enable": "השתק את כל המצלמות", + "disable": "ביטול השתקה לכל המצלמות" + }, + "detect": { + "enable": "אפשור זיהוי", + "disable": "השבתת גילוי" + }, + "recording": { + "enable": "אפשור הקלטה", + "disable": "השבתת הקלטה" + }, + "snapshots": { + "enable": "אפשור לכידת תמונה", + "disable": "השבתת לכידת תמונה" + }, + "audioDetect": { + "disable": "השבתת זיהוי קול", + "enable": "הפעלת זיהוי שמע" + }, + "autotracking": { + "enable": "אפשור מעקב אוטומטי", + "disable": "השבתת מעקב אוטומטי" + }, + "streamStats": { + "enable": "הצג סטטיסטיקות שידור", + "disable": "הסתרת סטטיסטיקות שידור" + }, + "stream": { + "twoWayTalk": { + "tips.documentation": "קרא את התיעוד ", + "available": "שיחה דו-כיוונית זמינה עבור שידור זה", + "tips": "המכשיר שלך חייב לתמוך בתכונה ו-WebRTC חייב להיות מוגדר לתקשורת דו-כיוונית.", + "unavailable": "שיחה דו-כיוונית אינה זמינה עבור שידור זה" + }, + "lowBandwidth": { + "resetStream": "איפוס זרם", + "tips": "התצוגה החיה נמצאת במצב של רוחב פס נמוך עקב שגיאות אחסון במאגר או שידור." + }, + "playInBackground": { + "label": "נגן ברקע", + "tips": "הפעל אפשרות זו כדי להמשיך להזרים כאשר הנגן מוסתר." + }, + "title": "שידור", + "audio": { + "tips": { + "title": "יש להפיק קול מהמצלמה שלך ולהגדיר אותו ב-go2rtc עבור שידור זה.", + "documentation": "עיין בתיעוד " + }, + "available": "קול זמין עבור שידור זה", + "unavailable": "קול אינו זמין עבור שידור זה" + } + }, + "cameraSettings": { + "title": "{{camera}} הגדרות", + "cameraEnabled": "המצלמה מאופשרת", + "objectDetection": "זיהוי אובייקטים", + "recording": "הקלטה", + "snapshots": "לכידת תמונה", + "audioDetection": "זיהוי קול", + "autotracking": "מעקב אוטומטי" + }, + "streamingSettings": "הגדרות שידור", + "notifications": "התראות", + "audio": "קול", + "suspend": { + "forTime": "השעיה עבור: " + }, + "history": { + "label": "הצג קטעים היסטוריים" + }, + "effectiveRetainMode": { + "modes": { + "all": "הכל", + "motion": "תנועה", + "active_objects": "אובייקטים פעילים" + }, + "notAllTips": "תצורת שמירת ההקלטה שלך ב-{{source}} מוגדרת ל-מצב: {{effectiveRetainMode}}, כך שהקלטה לפי דרישה זו תשמור רק מקטעים עם {{effectiveRetainModeName}}." + }, + "editLayout": { + "label": "עריכת פריסת תצוגה", + "group": { + "label": "עריכת קבוצת מצלמות" + }, + "exitEdit": "יציאה מעריכה" + } +} diff --git a/web/public/locales/he/views/recording.json b/web/public/locales/he/views/recording.json index 15eaba447..91817595b 100644 --- a/web/public/locales/he/views/recording.json +++ b/web/public/locales/he/views/recording.json @@ -1,3 +1,12 @@ { - "filter": "לסנן" + "filter": "לסנן", + "export": "ייצוא", + "calendar": "לוח שנה", + "filters": "מסננים", + "toast": { + "error": { + "noValidTimeSelected": "לא נבחר טווח זמן תקף", + "endTimeMustAfterStartTime": "שעת הסיום חייבת להיות אחרי שעת ההתחלה" + } + } } diff --git a/web/public/locales/he/views/search.json b/web/public/locales/he/views/search.json index 8fec065bc..0865e4654 100644 --- a/web/public/locales/he/views/search.json +++ b/web/public/locales/he/views/search.json @@ -1,3 +1,72 @@ { - "search": "חיפוש" + "search": "חיפוש", + "savedSearches": "חיפושים שמורים", + "searchFor": "חפש את{{inputValue}}", + "button": { + "clear": "ניקוי חיפוש", + "save": "שמירת החיפוש", + "delete": "מחיקת חיפוש שמור", + "filterInformation": "סינון מידע", + "filterActive": "מסננים פעילים" + }, + "trackedObjectId": "מזהה אובייקט במעקב", + "filter": { + "label": { + "cameras": "מצלמות", + "labels": "תוויות", + "zones": "אזורים", + "sub_labels": "תוויות משנה", + "search_type": "סוג חיפוש", + "time_range": "טווח זמן", + "before": "לפני", + "after": "אחרי", + "min_score": "ציון מינימום", + "max_speed": "מהירות מקסימאלית", + "max_score": "ציון מקסימאלי", + "min_speed": "מהירות מינמאלית", + "recognized_license_plate": "לוחית רישוי מוכרת", + "has_clip": "קיים סרטון קליפ", + "has_snapshot": "לכידת תמונה קיימת" + }, + "searchType": { + "thumbnail": "תמונה ממוזערת", + "description": "תיאור" + }, + "toast": { + "error": { + "beforeDateBeLaterAfter": "תאריך ה\"לפני\" חייב להיות מאוחר מתאריך ה\"אחרי\".", + "afterDatebeEarlierBefore": "תאריך ה'אחרי' חייב להיות מוקדם יותר מתאריך ה'לפני'.", + "minScoreMustBeLessOrEqualMaxScore": "ה-'min_score' חייב להיות קטן או שווה ל-'max_score'.", + "maxScoreMustBeGreaterOrEqualMinScore": "ה-'max_score' חייב להיות גדול או שווה ל-'min_score'.", + "minSpeedMustBeLessOrEqualMaxSpeed": "ה-'min_speed' חייב להיות קטן או שווה ל-'max_speed'.", + "maxSpeedMustBeGreaterOrEqualMinSpeed": "ה-'max_speed' חייב להיות גדול או שווה ל-'min_speed'." + } + }, + "tips": { + "title": "כיצד להשתמש במסנני טקסט", + "desc": { + "text": "מסננים עוזרים לך לצמצם את תוצאות החיפוש שלך. כך תוכל להשתמש בהם בשדה הקלט:", + "step1": "הקלד שם של מפתח סינון ואחריו נקודתיים (לדוגמה, \"מצלמות:\").", + "step2": "בחר ערך מההצעות או הקלד ערך משלך.", + "step3": "השתמשו במספר מסננים על ידי הוספתם אחד אחרי השני עם רווח ביניהם.", + "step6": "הסר מסננים על ידי לחיצה על ה-'x' שלידם.", + "step4": "מסנני תאריך (לפני: ואחרי:) משתמשים בפורמט {{DateFormat}}.", + "step5": "מסנן טווח הזמן משתמש בפורמט {{exampleTime}}.", + "exampleLabel": "דוּגמָה:" + } + }, + "header": { + "currentFilterType": "סנן ערכים", + "noFilters": "מסננים", + "activeFilters": "מסננים פעילים" + } + }, + "similaritySearch": { + "title": "חיפוש פריטים דומים", + "active": "חיפוש דומה פעיל", + "clear": "נקה חיפוש דומה" + }, + "placeholder": { + "search": "חיפוש…" + } } diff --git a/web/public/locales/he/views/settings.json b/web/public/locales/he/views/settings.json index 0967ef424..912c416fd 100644 --- a/web/public/locales/he/views/settings.json +++ b/web/public/locales/he/views/settings.json @@ -1 +1,622 @@ -{} +{ + "camera": { + "reviewClassification": { + "zoneObjectDetectionsTips": { + "notSelectDetections": "כל האובייקטים של {{detectionsLabels}} שזוהו ב-{{zone}} ב-{{cameraName}} שלא סווגו כהתראות יוצגו כזיהויים ללא קשר לאזור בו הם נמצאים.", + "text": "כל האובייקטים של {{detectionsLabels}} שאינם מסווגים ב-{{zone}} ב-{{cameraName}} יוצגו כזיהויים.", + "regardlessOfZoneObjectDetectionsTips": "כל האובייקטים של {{detectionsLabels}} שלא סווגו ב-{{cameraName}} יוצגו כזיהויים ללא קשר לאזור בו הם נמצאים." + }, + "objectAlertsTips": "כל האובייקטים של {{alertsLabels}} ב-{{cameraName}} יוצגו כהתראות.", + "objectDetectionsTips": "כל האובייקטים של {{detectionsLabels}} שלא סווגו ב-{{cameraName}} יוצגו כזיהויים ללא קשר לאזור בו הם נמצאים.", + "noDefinedZones": "בחר ערך מההצעות או הקלד ערך משלך.", + "zoneObjectAlertsTips": "כל האובייקטים של {{alertsLabels}} שזוהו ב-{{zone}} ב-{{cameraName}} יוצגו כהתראות.", + "unsavedChanges": "הגדרות סיווג סקירה שלא נשמרו עבור {{camera}}", + "selectAlertsZones": "בחירת אזורים להתראות", + "selectDetectionsZones": "בחירת אזורים לגילוי", + "limitDetections": "הגבלת הזיהוי לאזורים ספציפיים", + "toast": { + "success": "הגדרת סיווג נשמרה. יש להפעיל מחדש את Frigate כדי שהשינויים ייכנסו לתוקף." + }, + "title": "סיווג סקירה", + "readTheDocumentation": "עיין בתיעוד", + "desc": "Frigate מסווגת פריטי סקירה כהתראות וגילויים. כברירת מחדל, כל האובייקטים של אנשים ומכוניות נחשבים כהתראות. ניתן למקד את הקטגוריה של פריטי הסקירה על ידי הגדרת אזורים נדרשים עבורם." + }, + "title": "הגדרות מצלמה", + "streams": { + "title": "שידורים", + "desc": "השבתת מצלמה עוצרת לחלוטין את עיבוד הזרמים של מצלמה זו על ידי Frigate. זיהוי, הקלטה וניפוי שגיאות לא יהיו זמינים.
    הערה: פעולה זו אינה מבטלת זרמים חוזרים של go2rtc." + }, + "review": { + "title": "סקירה", + "desc": "הפעלה/השבתה של התראות וזיהויים עבור מצלמה זו. כאשר ההגדרה מושבתת, לא ייווצרו פריטי סקירה חדשים. ", + "alerts": "התרעות. ", + "detections": "גילויים. " + } + }, + "masksAndZones": { + "form": { + "inertia": { + "error": { + "mustBeAboveZero": "ההתמדה חייבת להיות מעל 0." + } + }, + "zoneName": { + "error": { + "alreadyExists": "אובייקט המעקב נמחק בהצלחה.", + "mustBeAtLeastTwoCharacters": "שם האזור חייב להיות באורך של לפחות 2 תווים.", + "mustNotBeSameWithCamera": "שם האזור לא חייב להיות זהה לשם המצלמה.", + "mustNotContainPeriod": "שם האזור אינו יכול להכיל נקודות.", + "hasIllegalCharacter": "שם האזור מכיל תווים לא חוקיים." + } + }, + "distance": { + "error": { + "text": "המרחק חייב להיות גדול או שווה ל-0.1.", + "mustBeFilled": "יש למלא את כל שדות המרחק כדי להשתמש בהערכת מהירות." + } + }, + "loiteringTime": { + "error": { + "mustBeGreaterOrEqualZero": "זמן ההשהיה חייב להיות גדול או שווה ל-0." + } + }, + "speed": { + "error": { + "mustBeGreaterOrEqualTo": "סף המהירות חייב להיות גדול או שווה ל-0.1." + } + }, + "polygonDrawing": { + "removeLastPoint": "הסר את הנקודה האחרונה", + "reset": { + "label": "ניקוי כל הנקודות" + }, + "snapPoints": { + "true": "נקודות הצמדה", + "false": "אל תצמיד נקודות" + }, + "delete": { + "title": "אישור מחיקה", + "desc": "האם אתה בטוח שברצונך למחוק את ה-{{type}} {{name}}?", + "success": "{{name}} נמחק." + }, + "error": { + "mustBeFinished": "יש לסיים את ציור הפוליגון לפני השמירה." + } + } + }, + "filter": { + "all": "כל המיסוכים והאזורים" + }, + "restart_required": "נדרשת הפעלה מחדש (מיסוך/אזורים שונו)", + "toast": { + "success": { + "copyCoordinates": "הקואורדינטות עבור {{polyName}} הועתקו ללוח." + }, + "error": { + "copyCoordinatesFailed": "לא ניתן היה להעתיק קואורדינטות ללוח." + } + }, + "motionMaskLabel": "מיסוך תנועה {{number}}", + "objectMaskLabel": "מיסוך אובייקט {{number}} ({{label}})", + "zones": { + "label": "אזורים.", + "documentTitle": "עריכת אזור - Frigate", + "desc": { + "title": "אזורים מאפשרים לך להגדיר אזור ספציפי בפריים, כך שתוכל לקבוע האם אובייקט נמצא בתוך אזור מסוים או לא.", + "documentation": "תיעוד" + }, + "add": "הוספת אזור", + "edit": "עריכת אזור", + "clickDrawPolygon": "לחץ כדי לצייר פוליגון על התמונה.", + "name": { + "title": "שם", + "inputPlaceHolder": "הזן שם…", + "tips": "השם חייב להיות באורך של לפחות 2 תווים ואינו יכול להיות שם של מצלמה או אזור אחר." + }, + "point_one": "נקודה {{count}}", + "point_two": "נקודות {{count}}", + "point_other": "נקודות {{count}}", + "inertia": { + "title": "אינרציה", + "desc": "מציין כמה מסגרות אובייקט חייבות להיות באזור לפני שהוא נחשב באזור. ברירת מחדל: 3" + }, + "loiteringTime": { + "title": "זמן שיטוט", + "desc": "קובע את משך הזמן המינימלי בשניות שהאובייקט חייב להיות באזור כדי שיופעל. ברירת מחדל: 0" + }, + "objects": { + "title": "אובייקט", + "desc": "רשימת אובייקטים החלים על אזור זה." + }, + "speedEstimation": { + "title": "הערכת מהירות", + "docs": "עיין בתיעוד", + "lineADistance": "מרחק קו A ({{unit}})", + "lineBDistance": "מרחק קו B ({{unit}})", + "lineCDistance": "מרחק קו C ({{unit}})", + "lineDDistance": "מרחק קו D ({{unit}})", + "desc": "הפעל הערכת מהירות עבור אובייקטים באזור זה. האזור חייב לכלול בדיוק 4 נקודות." + }, + "speedThreshold": { + "title": "סף מהירות ({{unit}})", + "desc": "מציין מהירות מינימלית עבור אובייקטים שיש לקחת בחשבון באזור זה.", + "toast": { + "error": { + "loiteringTimeError": "אזורים עם זמן שהייה גדול מ־0 לא אמורים לשמש להערכת מהירות.", + "pointLengthError": "הערכת מהירות הושבתה עבור אזור זה. אזורים עם הערכת מהירות חייבים לכלול בדיוק 4 נקודות." + } + } + }, + "toast": { + "success": "האזור ({{zoneName}}) נשמר. הפעל מחדש את Frigate כדי להחיל את השינויים." + }, + "allObjects": "כל האובייקטים" + }, + "motionMasks": { + "point_one": "נקודה {{count}}", + "point_two": "נקודות {{count}}", + "point_other": "נקודות {{count}}", + "label": "מיסוך תנועה.", + "documentTitle": "עריכת מיסוך תנועה - Frigate", + "desc": { + "documentation": "תיעוד", + "title": "מיסוך תנועה משמש כדי למנוע זיהוי של תנועה לא רצויה. מיסוך יתר יקשה על מעקב אחר אובייקטים." + }, + "add": "מיסוך תנועה חדש", + "edit": "עריכת מיסוך תנועה", + "context": { + "documentation": "עיין בתיעוד", + "title": "מיסוך תנועה משמש כדי למנוע זיהוי מסוגים לא רצויים של תנועה (לדוגמה: ענפי עצים, חותמות זמן של מצלמה). יש להשתמש במיסוך התנועה בזהירות רבה, מיסוך יתר יקשה על מעקב אחר אובייקטים." + }, + "clickDrawPolygon": "לחץ כדי לצייר פוליגון על התמונה.", + "polygonAreaTooLarge": { + "title": "מיסוך התנועה מכסה {{polygonArea}}% ממסגרת המצלמה. מיסוך תנועה גדול אינו מומלץ.", + "tips": "מיסוך תנועה אינו מונע זיהוי של אובייקטים. עליך להשתמש באזור נדרש במקום זאת.", + "documentation": "עיין בתיעוד" + }, + "toast": { + "success": { + "title": "{{polygonName}} נשמר. הפעל מחדש את Frigate כדי להחיל את השינויים.", + "noName": "מיסוך התנועה נשמר. הפעל מחדש את Frigate כדי להחיל את השינויים." + } + } + }, + "objectMasks": { + "point_one": "נקודה {{count}}", + "point_two": "נקודות {{count}}", + "point_other": "נקודות {{count}}", + "label": "מיסוך אובייקט", + "documentTitle": "עריכת מיסוך אובייקט - Frigate", + "desc": { + "title": "מיסוך סינון אובייקטים משמש לסינון תוצאות חיוביות שגויות עבור סוג אובייקט נתון בהתבסס על מיקום.", + "documentation": "תיעוד" + }, + "add": "הוספת מיסוך אובייקט", + "edit": "עריכת מיסוך אובייקט", + "context": "מיסוך סינון אובייקטים משמש לסינון תוצאות חיוביות שגויות עבור סוג אובייקט נתון בהתבסס על מיקום.", + "clickDrawPolygon": "לחץ כדי לצייר פוליגון על התמונה.", + "objects": { + "title": "אובייקטים", + "desc": "סוג האובייקט שחל על מיסוך אובייקט זה.", + "allObjectTypes": "כל סוגי האובייקטים" + }, + "toast": { + "success": { + "title": "{{polygonName}} נשמר. הפעל מחדש את Frigate כדי להחיל את השינויים.", + "noName": "מיסוך האובייקט נשמר. הפעל מחדש את Frigate כדי להחיל את השינויים." + } + } + } + }, + "general": { + "recordingsViewer": { + "defaultPlaybackRate": { + "desc": "קצב ניגון ברירת מחדל עבור ניגון הקלטות.", + "label": "קצב השמעה ברירת המחדל" + }, + "title": "מציג הקלטות" + }, + "liveDashboard": { + "automaticLiveView": { + "label": "צפיה בשידור חי אוטומטית", + "desc": "מעבר אוטומטי לתצוגה חיה של מצלמה כאשר מזוהה פעילות. השבתת אפשרות זו גורמת לתמונות סטטיות של המצלמה בדשבורד שידור חי להתעדכן רק פעם בדקה." + }, + "title": "דשבורד שידור חי", + "playAlertVideos": { + "label": "ניגון סרטוני התראות", + "desc": "כברירת מחדל, התראות אחרונות בדשבורד שידור חי מופעלות כסרטונים קצרים בלולאה. השבת אפשרות זו כדי להציג רק תמונה סטטית של התראות אחרונות במכשיר/דפדפן זה." + } + }, + "cameraGroupStreaming": { + "desc": "הגדרות שידור עבור כל קבוצת מצלמות נשמרות באחסון המקומי של הדפדפן שלך.", + "title": "הגדרות הזרמת קבוצת מצלמות", + "clearAll": "נקה את כל הגדרות השידור" + }, + "title": "הגדרות כלליות", + "storedLayouts": { + "title": "פריסות תצוגה שמורות", + "desc": "ניתן לגרור/לשנות את גודל הפריסה של המצלמות בקבוצת מצלמות. המיקומים נשמרים באחסון המקומי של הדפדפן שלך.", + "clearAll": "נקה את כל פריסות התצוגות" + }, + "calendar": { + "title": "לוח שנה", + "firstWeekday": { + "label": "היום הראשון בשבוע", + "sunday": "ראשון", + "monday": "שני", + "desc": "היום שבו מתחיל השבוע בלוח הסקירות." + } + }, + "toast": { + "success": { + "clearStoredLayout": "ניקוי הפריסה השמורה עבור {{cameraName}}", + "clearStreamingSettings": "ניקוי הגדרות השידור עבור כל קבוצות המצלמות בוצע." + }, + "error": { + "clearStoredLayoutFailed": "ניקוי פריסת התצוגה השמורה נכשל: {{errorMessage}}", + "clearStreamingSettingsFailed": "ניקוי הגדרות השידור נכשל: {{errorMessage}}" + } + } + }, + "documentTitle": { + "camera": "הגדרת מצלמה - Frigate", + "enrichments": "הגדרות העשרה - Frigate", + "masksAndZones": "עריכת מיסוך אזור - Frigate", + "motionTuner": "כיול תנועה - Frigate", + "object": "ניפוי שגיאות - Frigate", + "frigatePlus": "הגדרות +Frigate - Frigate", + "notifications": "הגדרת התראות - Frigate", + "authentication": "הגדרות אימות - Frigate", + "default": "הגדרות - Frigate", + "general": "הגדרות כלליות - Frigate" + }, + "menu": { + "ui": "UI - ממשק משתמש", + "cameras": "הגדרות מצלמה", + "masksAndZones": "מיסוך / אזורים", + "motionTuner": "כיול תנועה", + "debug": "ניפוי שגיאות.", + "users": "משתמשים", + "notifications": "התראות", + "frigateplus": "+Frigate", + "enrichments": "תוספות" + }, + "dialog": { + "unsavedChanges": { + "title": "ישנם שינויים שלא נשמרו.", + "desc": "האם ברצונך לשמור את השינויים לפני שתמשיך?" + } + }, + "cameraSetting": { + "camera": "מצלמה", + "noCamera": "אין מצלמה" + }, + "enrichments": { + "semanticSearch": { + "reindexNow": { + "confirmButton": "ביצוע אינדקס מחדש", + "success": "אינדקס מחדש הופעל בהצלחה.", + "error": "התחלת האינדקס מחדש נכשלה: {{errorMessage}}", + "confirmDesc": "האם אתה בטוח שברצונך לבצע אינדקס מחדש להטמעות האובייקטים במעקב? תהליך זה יפעל ברקע אך הוא עשוי להפעיל את המעבד שלך בצורה מקסימלית ועלול לקחת זמן רב. תוכל לצפות בהתקדמות בדף החיפוש.", + "alreadyInProgress": "אינדקס מחדש כבר פעיל כרגע.", + "label": "בצע אינדקס מחדש כעת", + "confirmTitle": "אישור אינדקס מחדש", + "desc": "אינדקס מחדש ייצור מחדש הטמעות עבור כל האובייקטים שבמעקב. תהליך זה פועל ברקע ועשוי למקסם את עוצמת המעבד שלך ולקחת זמן רב בהתאם למספר האובייקטים במעקב שיש לך." + }, + "modelSize": { + "label": "גודל מודל", + "small": { + "title": "קטן", + "desc": "שימוש ב-קטן משתמש בגרסה כמותית של המודל המשתמשת בפחות זיכרון RAM ופועלת מהר יותר על המעבד עם הבדל זניח מאוד באיכות ההטמעה." + }, + "large": { + "title": "גדול", + "desc": "שימוש ב-גדול מפעיל את מודל Jina המלא ויפעל אוטומטית על ה-GPU במידת הצורך." + }, + "desc": "גודל המודל המשמש להטמעות חיפוש סמנטי." + }, + "title": "חיפוש סמנטי", + "desc": "חיפוש סמנטי ב-Frigate מאפשר לך למצוא אובייקטים שעוקבים אחריהם בתוך פריטי הסקירה שלך באמצעות התמונה עצמה, תיאור טקסטואלי שהוגדר על ידי המשתמש, או תיאור שנוצר אוטומטית.", + "readTheDocumentation": "עיין בתיעוד" + }, + "faceRecognition": { + "title": "זיהוי פנים", + "desc": "זיהוי פנים מאפשר להקצות לאנשים שמות, וכאשר פנים מזוהות, Frigate תקצה את שמו של האדם כתווית משנה. מידע זה כלול בממשק המשתמש, במסננים וגם בהתראות.", + "readTheDocumentation": "עיין בתיעוד", + "modelSize": { + "label": "גודל מודל", + "desc": "גודל המודל המשמש לזיהוי פנים.", + "small": { + "title": "קטן", + "desc": "שימוש ב-קטן משתמש במודל הטמעת פנים של FaceNet שפועל ביעילות על רוב המעבדים." + }, + "large": { + "title": "גדול", + "desc": "שימוש ב-גדול משתמש במודל הטמעת פנים של ArcFace ויפעל אוטומטית על גבי ה-GPU במידת הצורך." + } + } + }, + "title": "הגדרות העשרה", + "unsavedChanges": "שינויים בהגדרות העשרה לא נשמרו", + "birdClassification": { + "title": "סיווג ציפורים", + "desc": "סיווג ציפורים מזהה ציפורים ידועות באמצעות מודל Tensorflow כמותי. כאשר ציפור ידועה מזוהה, שמה הנפוץ יתווסף כתווית משנה. מידע זה כלול בממשק המשתמש, במסננים וכן בהתראות." + }, + "licensePlateRecognition": { + "title": "זיהוי לוחיות רישוי", + "readTheDocumentation": "עיין בתיעוד", + "desc": "Frigate יכולה לזהות לוחיות רישוי על כלי רכב ולהוסיף אוטומטית את התווים שזוהו לשדה לוחית רישוי מזוהה או לשם ידוע כתווית משנה לאובייקטים מסוג מכונית. מקרה שימוש נפוץ עשוי להיות קריאת לוחיות הרישוי של מכוניות שנכנסות לחניה או מכוניות שעוברות ברחוב." + }, + "restart_required": "נדרש אתחול (הגדרות ההעשרה שונו)", + "toast": { + "success": "הגדרות העשרה נשמרו. הפעל מחדש את Frigate כדי להחיל את השינויים שלך.", + "error": "שמירת שינויי ההגדרות נכשלה: {{errorMessage}}" + } + }, + "motionDetectionTuner": { + "title": "כיול גילוי תנועה", + "unsavedChanges": "שינויים שלא נשמרו בכיול התנועה ({{camera}})", + "desc": { + "documentation": "עיין במדריך כיול התנועה", + "title": "Frigate משתמשת בזיהוי תנועה כבדיקה ראשונה כדי לראות אם קורה משהו בפריים שכדאי לבדוק עם זיהוי עצמים." + }, + "Threshold": { + "title": "סף", + "desc": "ערך הסף מכתיב כמה שינוי נדרש בבהירות של פיקסל כדי להיחשב כתנועה. ברירת מחדל: 30" + }, + "contourArea": { + "title": "אזור קונטור", + "desc": "ערך שטח המתאר משמש לקביעת אילו קבוצות של פיקסלים שהשתנו ייחשבו כתנועה. ברירת מחדל: 10" + }, + "improveContrast": { + "title": "שיפור ניגודיות", + "desc": "שפר את הניגודיות עבור סצנות כהות יותר. ברירת מחדל: מופעל" + }, + "toast": { + "success": "הגדרות התנועה נשמרו." + } + }, + "debug": { + "title": "ניפוי שגיאות.", + "detectorDesc": "Frigate משתמשת בגלאים שלך ({{detectors}}) כדי לזהות אובייקטים בזרם הווידאו של המצלמה שלך.", + "debugging": "ניפוי שגיאות", + "objectList": "רשימת אובייקטים", + "noObjects": "אין אובייקטים", + "boundingBoxes": { + "title": "תיבות זיהוי", + "desc": "הצגת תיבות זיהוי סביב אובייקטים במעקב", + "colors": { + "label": "צבעי תיבת זיהוי של אובייקטים", + "info": "
  • בהפעלה, יוקצו צבעים שונים לכל תווית אובייקט
  • קו דק כחול כהה מציין שהאובייקט לא זוהה בנקודת זמן הנוכחית
  • קו דק אפור מציין שהאובייקט זוהה כנייח
  • קו עבה מציין שהאובייקט הוא נושא המעקב האוטומטי (כאשר מופעל)
  • " + } + }, + "timestamp": { + "title": "חותמת זמן", + "desc": "הוספת חותמת זמן על התמונה" + }, + "zones": { + "title": "אזורים", + "desc": "הצגת קווי מתאר של כל אזור מוגדר" + }, + "mask": { + "title": "מיסוך תנועה", + "desc": "הצגת פוליגונים של מיסוך תנועה" + }, + "motion": { + "title": "תיבות תנועה", + "desc": "הצג תיבות סביב אזורים שבהם זוהתה תנועה", + "tips": "

    תיבות תנועה


    תיבות אדומות יונחו על אזורים בפריים שבהם מזוהה תנועה כעת

    " + }, + "regions": { + "title": "אזורים", + "desc": "הצג תיבה של אזור העניין שנשלח לגלאי האובייקטים", + "tips": "

    תיבות אזור


    תיבות ירוקות בהירות יונחו על פני אזורים מעניינים בפריים הנשלחים לגלאי האובייקטים.

    " + }, + "objectShapeFilterDrawing": { + "title": "ציור מסנן צורת אובייקט", + "desc": "צייר מלבן על התמונה כדי להציג פרטים על שטח ויחס", + "document": "עיין בתיעוד ", + "score": "ציון", + "ratio": "יחס", + "area": "אזור", + "tips": "הפעל אפשרות זו כדי לצייר מלבן על תמונת המצלמה כדי להציג את השטח והיחס שלה. ניתן להשתמש בערכים אלה כדי להגדיר פרמטרים של מסנן צורת אובייקט בתצורה שלך." + }, + "desc": "תצוגת ניפוי שגיאות מציגה תצוגה בזמן אמת של אובייקטים במעקב והסטטיסטיקות שלהם. רשימת האובייקטים מציגה סיכום בהשהיית זמן של האובייקטים שזוהו." + }, + "users": { + "title": "משתמשים", + "management": { + "title": "ניהול משתמשים", + "desc": "נהל את חשבונות המשתמשים של מופע Frigate זה." + }, + "addUser": "הוספת משתמש", + "updatePassword": "עדכון סיסמה", + "toast": { + "success": { + "createUser": "המשתמש {{user}} נוצר בהצלחה", + "deleteUser": "המשתמש {{user}} נמחק בהצלחה", + "updatePassword": "הסיסמה עודכנה בהצלחה.", + "roleUpdated": "הרשאות עודכנו עבור {{user}}" + }, + "error": { + "createUserFailed": "יצירת משתמש נכשלה: {{errorMessage}}", + "roleUpdateFailed": "עדכון ההרשאות נכשל: {{errorMessage}}", + "deleteUserFailed": "מחיקת משתמש נכשלה: {{errorMessage}}", + "setPasswordFailed": "שמירת הסיסמה נכשלה: {{errorMessage}}" + } + }, + "table": { + "actions": "פעולות", + "role": "הרשאות", + "noUsers": "לא נמצאו משתמשים.", + "changeRole": "שינוי הרשאות משתמש", + "password": "סיסמה", + "deleteUser": "מחיקת משתמש", + "username": "שם משתמש" + }, + "dialog": { + "form": { + "user": { + "title": "שם משתמש", + "desc": "מותר להשתמש רק באותיות, מספרים, נקודות וקו תחתון.", + "placeholder": "הכנס שם משתמש" + }, + "password": { + "title": "סיסמה", + "placeholder": "הכנס סיסמה", + "confirm": { + "placeholder": "אישור סיסמה", + "title": "אישור סיסמה" + }, + "strength": { + "title": "חוזק הסיסמה: ", + "weak": "חלש", + "medium": "בינוני", + "strong": "חזק", + "veryStrong": "מאוד חזק" + }, + "match": "סיסמאות תואמות", + "notMatch": "הסיסמאות אינן תואמות." + }, + "newPassword": { + "title": "סיסמה חדשה", + "placeholder": "הכנס סיסמה חדשה", + "confirm": { + "placeholder": "הזן שוב את הסיסמה החדשה" + } + }, + "usernameIsRequired": "נדרש שם משתמש", + "passwordIsRequired": "נדרשת סיסמה" + }, + "createUser": { + "title": "יצירת משתמש חדש", + "desc": "הוסף חשבון משתמש חדש וציין הרשאות גישה לאזורים בממשק המשתמש של Frigate.", + "usernameOnlyInclude": "שם המשתמש יכול לכלול רק אותיות, מספרים, . או קו תחתון", + "confirmPassword": "אנא אשר את הסיסמה שלך" + }, + "deleteUser": { + "title": "מחיקת משתמש", + "desc": "לא ניתן לבטל פעולה זו. פעולה זו תמחק לצמיתות את חשבון המשתמש ותסיר את כל הנתונים המשויכים.", + "warn": "האם אתה בטוח שברצונך למחוק את {{username}}?" + }, + "passwordSetting": { + "cannotBeEmpty": "הסיסמה לא יכולה להיות ריקה", + "doNotMatch": "הסיסמאות אינן תואמות", + "updatePassword": "עדכון סיסמה עבור {{username}}", + "setPassword": "קבע סיסמה", + "desc": "צור סיסמה חזקה כדי לאבטח חשבון זה." + }, + "changeRole": { + "title": "שינוי הרשאות משתמש", + "select": "בחירת הרשאות", + "desc": "עדכון הרשאות עבור {{username}}", + "roleInfo": { + "intro": "בחר את ההרשאות המתאימות עבור משתמש זה:", + "admin": "מנהל", + "adminDesc": "גישה מלאה לכל התכונות.", + "viewer": "צופה", + "viewerDesc": "מוגבל לדשבורד שידור חי, סקירה, גילוי וייצוא בלבד." + } + } + } + }, + "notification": { + "title": "התראות", + "notificationSettings": { + "title": "הגדרת התראות", + "desc": "Frigate יכולה לשלוח התראות דחיפה באופן טבעי למכשיר שלך כאשר הוא פועל בדפדפן או מותקן כ-PWA.", + "documentation": "עיין בתיעוד" + }, + "notificationUnavailable": { + "title": "התראות לא זמינות", + "desc": "התראות דחיפה באינטרנט דורשות קישור מאובטח (https://…). זוהי מגבלה של הדפדפן. יש לגשת ל-Frigate בצורה מאובטחת כדי להשתמש בהתראות.", + "documentation": "עיין בתיעוד" + }, + "globalSettings": { + "title": "הגדרות כלליות", + "desc": "השהה זמנית התראות עבור מצלמות ספציפיות בכל המכשירים הרשומים." + }, + "email": { + "title": "דואר", + "desc": "נדרשת כתובת דוא\"ל תקינה שתשמש כדי להודיע לך אם ישנן בעיות כלשהן בשירות הדחיפה.", + "placeholder": "e.g. example@email.com" + }, + "cameras": { + "title": "מצלמות", + "noCameras": "אין מצלמות זמינות", + "desc": "בחר עבור אילו מצלמות להפעיל התראות." + }, + "deviceSpecific": "הגדרות ספציפיות למכשיר", + "registerDevice": "רשום מכשיר זה", + "unregisterDevice": "בטל את הרישום של מכשיר זה", + "sendTestNotification": "שלח הודעת בדיקה", + "unsavedRegistrations": "רישומי התראות שלא נשמרו", + "unsavedChanges": "שינויים בהתראות שלא נשמרו", + "active": "התראות פעילות", + "suspended": "התראות הושבתו ב-{{time}}", + "suspendTime": { + "suspend": "מושבת", + "5minutes": "השבתה למשך 5 דקות", + "10minutes": "השבתה למשך 10 דקות", + "30minutes": "השבתה למשך 30 דקות", + "1hour": "השבתה למשך שעה אחת", + "12hours": "השבתה למשך 12 שעות", + "24hours": "השבתה למשך 24 שעות", + "untilRestart": "השבתה עד להפעלה מחדש" + }, + "cancelSuspension": "ביטול השבתה", + "toast": { + "success": { + "settingSaved": "הגדרות ההתראות נשמרו.", + "registered": "רישום לקבלת התראות בוצע בהצלחה. נדרשת הפעלה מחדש של Frigate לפני שניתן יהיה לשלוח התראות כלשהן (כולל הודעת בדיקה)." + }, + "error": { + "registerFailed": "שמירת רישום ההתראות נכשלה." + } + } + }, + "frigatePlus": { + "title": "הגדרות +Frigate", + "apiKey": { + "title": "Frigate+ API מפתח", + "validated": "מפתח ה-API של Frigate+ זוהה ואושר", + "notValidated": "מפתח ה-API של Frigate+ לא זוהה או לא אומת", + "desc": "מפתח ה-API של Frigate+ מאפשר אינטגרציה עם שירות Frigate+.", + "plusLink": "קרא עוד על Frigate+" + }, + "snapshotConfig": { + "title": "תצורת לכידת תמונה", + "desc": "שליחה ל-Frigate+ דורשת הפעלה של לכידת תמונה וגם של תמונות בזק clean_copy בהגדרות שלך.", + "documentation": "עיין בתיעוד", + "cleanCopyWarning": "בחלק מהמצלמות יש אפשרות לתמונות בזק, אך העתקה נקייה מושבתת. עליך להפעיל את clean_copy בתצורת הצילום שלך כדי שתוכל לשלוח תמונות מהמצלמות הללו ל-Frigate+.", + "table": { + "snapshots": "לכידת תמונה", + "camera": "מצלמה", + "cleanCopySnapshots": "תמונות clean_copy" + } + }, + "modelInfo": { + "title": "מידע על המודל", + "modelType": "סוג מודל", + "trainDate": "תאריך אימון", + "baseModel": "דגם בסיסי", + "plusModelType": { + "userModel": "כיוונון עדין", + "baseModel": "מודל בסיסי" + }, + "supportedDetectors": "גלאים נתמכים", + "cameras": "מצלמות", + "loading": "טוען מידע על המודל…", + "error": "טעינת פרטי המודל נכשלה", + "availableModels": "מודלים זמינים", + "loadingAvailableModels": "טוען מודלים זמינים…", + "modelSelect": "ניתן לבחור כאן את הדגמים הזמינים ב-Frigate+. שים לב שניתן לבחור רק דגמים התואמים לתצורת הגלאי הנוכחית שלך." + }, + "unsavedChanges": "שינויים בהגדרות של frigate+ שלא נשמרו", + "restart_required": "נדרש הפעלה מחדש (דגם Frigate+ שונה)", + "toast": { + "success": "הגדרות Frigate+ נשמרו. הפעל מחדש את Frigate כדי להחיל את השינויים.", + "error": "שמירת שינויי התצורה נכשלה: {{errorMessage}}" + } + } +} diff --git a/web/public/locales/he/views/system.json b/web/public/locales/he/views/system.json index 0967ef424..4e21f1a0a 100644 --- a/web/public/locales/he/views/system.json +++ b/web/public/locales/he/views/system.json @@ -1 +1,180 @@ -{} +{ + "lastRefreshed": "רענון אחרון: ", + "stats": { + "ffmpegHighCpuUsage": "ל-{{camera}} יש צריכת מעבד גבוהה של FFmpeg ({{ffmpegAvg}}%)", + "detectHighCpuUsage": "ל-{{camera}} יש צריכת CPU גבוהה ({{detectAvg}}%)", + "healthy": "המערכת פועלת בצורה תקינה", + "reindexingEmbeddings": "אינדקס מחדש של ההטמעות ({{processed}}% הושלם)", + "cameraIsOffline": "{{camera}} לא זמינה", + "detectIsSlow": "{{detect}} איטי ({{speed}} אלפיות שנייה)", + "detectIsVerySlow": "{{detect}} איטי מאוד ({{speed}} אלפיות שנייה)" + }, + "documentTitle": { + "cameras": "מצב מצלמות - Frigate", + "storage": "מצב אחסון - Frigate", + "general": "סטטיסטיקה כללית - Frigate", + "enrichments": "סטטיסטיקת העשרה - Frigate", + "logs": { + "frigate": "לוגים - Frigate", + "go2rtc": "לוגים - Go2RTC - Frigate", + "nginx": "לוגים - Nginx - Frigate" + } + }, + "title": "מערכת", + "metrics": "מדדי מערכת", + "logs": { + "download": { + "label": "הורדת לוגים" + }, + "copy": { + "label": "העתק ללוח עריכה", + "success": "לוגים הועתקו ללוח העריכה", + "error": "לא ניתן היה להעתיק לוגים ללוח" + }, + "type": { + "label": "סוג", + "timestamp": "חותמת זמן", + "tag": "תג", + "message": "הודעה" + }, + "tips": "יומני רישום מוצגים בזרימה מהשרת", + "toast": { + "error": { + "fetchingLogsFailed": "שגיאה באחזור לוגים: {{errorMessage}}", + "whileStreamingLogs": "שגיאה בעת הזרמת לוגים: {{errorMessage}}" + } + } + }, + "general": { + "title": "כללי", + "detector": { + "title": "גלאים", + "inferenceSpeed": "מהירות זיהוי", + "temperature": "טמפרטורת הגלאי", + "cpuUsage": "ניצול מעבד על ידי הגלאי", + "memoryUsage": "שימוש בזיכרון על ידי הגלאי" + }, + "hardwareInfo": { + "gpuMemory": "זיכרון GPU", + "title": "מידע על החומרה", + "gpuUsage": "שימוש GPU", + "gpuEncoder": "מקודד GPU", + "gpuDecoder": "מפענח GPU", + "gpuInfo": { + "vainfoOutput": { + "title": "פלט Vainfo", + "returnCode": "קוד החזרה: {{code}}", + "processOutput": "פלט תהליך:", + "processError": "שגיאת תהליך:" + }, + "nvidiaSMIOutput": { + "title": "פלט SMI של Nvidia", + "name": "שם: {{name}}", + "driver": "מנהל התקן: {{driver}}", + "cudaComputerCapability": "יכולת חישוב CUDA: {{cuda_compute}}", + "vbios": "מידע על VBios: {{vbios}}" + }, + "closeInfo": { + "label": "סגור את המידע על ה-GPU" + }, + "copyInfo": { + "label": "העתק מידע על GPU" + }, + "toast": { + "success": "מידע על ה-GPU הועתק ללוח" + } + }, + "npuUsage": "שימוש ב-NPU", + "npuMemory": "NPU זיכרון" + }, + "otherProcesses": { + "title": "תהליכים אחרים", + "processCpuUsage": "ניצול CPU של התהליך", + "processMemoryUsage": "ניצול זיכרון של תהליך" + } + }, + "enrichments": { + "infPerSecond": "מספר הסקות בשנייה", + "title": "העשרה", + "embeddings": { + "image_embedding": "הטמעת תמונה", + "text_embedding": "הטמעת טקסט", + "face_recognition": "זיהוי פנים", + "plate_recognition": "זיהוי לוחית רישוי", + "image_embedding_speed": "מהירות הטמעת תמונה", + "face_embedding_speed": "מהירות הטמעת פנים", + "face_recognition_speed": "מהירות זיהוי פנים", + "plate_recognition_speed": "מהירות זיהוי לוחית", + "text_embedding_speed": "מהירות הטמעת טקסט", + "yolov9_plate_detection_speed": "מהירות זיהוי לוחיות YOLOv9", + "yolov9_plate_detection": "זיהוי לוחיות YOLOv9" + } + }, + "storage": { + "cameraStorage": { + "storageUsed": "אחסון", + "percentageOfTotalUsed": "אחוז מהסך הכל", + "bandwidth": "רוחב פס", + "unused": { + "title": "לא בשימוש", + "tips": "ייתכן שערך זה לא מייצג במדויק את השטח הפנוי הזמין ל-Frigate אם יש לך קבצים אחרים המאוחסנים בכונן שלך מעבר להקלטות של Frigate. Frigate אינו עוקב אחר ניצול האחסון מלבד להקלטות שלו." + }, + "title": "אחסון מצלמה", + "camera": "מצלמה", + "unusedStorageInformation": "מידע על אחסון שאינו בשימוש" + }, + "title": "אחסון", + "overview": "סקירה כללית", + "recordings": { + "title": "הקלטות", + "earliestRecording": "ההקלטה המוקדמת ביותר הזמינה:", + "tips": "ערך זה מייצג את סך האחסון בו משתמשים ההקלטות במסד הנתונים של Frigate. Frigate אינו עוקב אחר ניצול האחסון עבור כל הקבצים בדיסק שלך." + } + }, + "cameras": { + "title": "מצלמות", + "overview": "סקירה כללית", + "info": { + "aspectRatio": "יחס גובה-רוחב", + "cameraProbeInfo": "פרטי בדיקה של מצלמה {{camera}}", + "streamDataFromFFPROBE": "נתוני השידור מתקבלים באמצעות ffprobe.", + "fetching": "טוען נתוני מצלמה", + "stream": "זרם {{idx}}", + "video": "וידיאו:", + "codec": "מקודד:", + "resolution": "רזולוציה:", + "fps": "פריימים לשניה:", + "audio": "קול:", + "error": "שגיאה: {{error}}", + "tips": { + "title": "טוען נתוני מצלמה" + }, + "unknown": "לא ידוע" + }, + "label": { + "detect": "גילוי", + "skipped": "דילוג", + "ffmpeg": "FFmpeg", + "overallDetectionsPerSecond": "סך כל הזיהויים לשנייה", + "overallSkippedDetectionsPerSecond": "סה״כ זיהויים שדולגו לשנייה", + "cameraFfmpeg": "{{camName}} FFmpeg", + "cameraCapture": "{{camName}} לכידה", + "cameraDetect": "זיהוי {{camName}}", + "cameraDetectionsPerSecond": "מספר הזיהויים של {{camName}} לשנייה", + "cameraSkippedDetectionsPerSecond": "כמות הזיהויים שדולגו בשנייה – {{camName}}", + "capture": "לכידה", + "cameraFramesPerSecond": "{{camName}} פריימים לשנייה", + "camera": "מצלמה", + "overallFramesPerSecond": "סך כל הפריימים לשנייה" + }, + "toast": { + "success": { + "copyToClipboard": "העתקת נתוני הבדיקה בוצעה בהצלחה." + }, + "error": { + "unableToProbeCamera": "לא ניתן לבדוק את המצלמה: {{errorMessage}}" + } + }, + "framesAndDetections": "פריימים / זיהויים" + } +} diff --git a/web/public/locales/hu/audio.json b/web/public/locales/hu/audio.json index 0967ef424..ce8fab8c3 100644 --- a/web/public/locales/hu/audio.json +++ b/web/public/locales/hu/audio.json @@ -1 +1,160 @@ -{} +{ + "speech": "Beszéd", + "wild_animals": "Vadállatok", + "synthetic_singing": "Szintetikus éneklés", + "cheering": "Éljenzés", + "chatter": "Csevegés", + "bird": "Madár", + "babbling": "Gügyögés", + "yell": "Kiabálás", + "whispering": "Suttogás", + "laughter": "Nevetés", + "bellow": "Ordítás", + "whoop": "Ujjongás", + "snicker": "Kuncogás", + "crying": "Sírás", + "sigh": "Sóhajtás", + "singing": "Éneklés", + "choir": "Kórus", + "yodeling": "Jódlizás", + "chant": "Dalolás", + "mantra": "Mantrázás", + "child_singing": "Gyermek éneklés", + "rapping": "Rappelés", + "groan": "Nyögés", + "grunt": "Morgás", + "whistling": "Fütyülés", + "breathing": "Légzés", + "wheeze": "Zihálás", + "snoring": "Horkolás", + "gasp": "Lihegés", + "pant": "Lihegés", + "snort": "Horkantás", + "cough": "Köhögés", + "sneeze": "Tüsszentés", + "sniff": "Szimatolás", + "run": "Futás", + "shuffle": "Csoszogás", + "footsteps": "Lépés", + "chewing": "Rágás", + "biting": "Maró", + "gargling": "Gargalizálás", + "burping": "Böfögés", + "hiccup": "Csuklás", + "fart": "Szellentés", + "hands": "Kezek", + "finger_snapping": "Csettintés", + "clapping": "Tapsolás", + "heartbeat": "Szívdobbanás", + "heart_murmur": "Szívzörej", + "applause": "Taps", + "crowd": "Tömeg", + "children_playing": "Gyerekek játszanak", + "pets": "Háziállatok", + "dog": "Kutya", + "bark": "Ugatás", + "yip": "Csaholás", + "howl": "Bömbölés", + "bow_wow": "Vau vau", + "growling": "Morgás", + "whimper_dog": "Kutya nyüszítés", + "cat": "Macska", + "purr": "Dorombolás", + "meow": "Nyávogás", + "hiss": "Sziszegés", + "caterwaul": "Nyivákolás", + "livestock": "Állatállomány", + "horse": "Ló", + "clip_clop": "Lódobogás", + "neigh": "Nyerítés", + "cattle": "Marha", + "moo": "Tehénbőgés", + "cowbell": "Kolomp", + "pig": "Disznó", + "oink": "Disznó röfögés", + "goat": "Kecske", + "bleat": "Bégetés", + "sheep": "Juh", + "fowl": "Szárnyas", + "chicken": "Csirke", + "cluck": "Kotkodácsolás", + "cock_a_doodle_doo": "Kukorékolás", + "turkey": "Pulyka", + "gobble": "Kurrogás", + "duck": "Kacsa", + "quack": "Hápogás", + "honk": "Gágogás", + "roaring_cats": "Ordító macskák", + "roar": "Üvöltés", + "chirp": "Csiripelés", + "squawk": "Rikácsolás", + "pigeon": "Galamb", + "coo": "Turbékolás", + "crow": "Varjú", + "caw": "Károgás", + "owl": "Bagoly", + "hoot": "Huhogás", + "flapping_wings": "Csapkodó szárnyak", + "dogs": "Kutyák", + "rats": "Patkányok", + "mouse": "Egér", + "patter": "Kopog", + "insect": "Rovar", + "cricket": "Tücsök", + "mosquito": "Szúnyog", + "fly": "Légy", + "buzz": "Zümmögés", + "frog": "Béka", + "croak": "Brekegés", + "snake": "Kígyó", + "rattle": "Csörgés", + "whale_vocalization": "Bálna bőgés", + "music": "Zene", + "musical_instrument": "Hangszer", + "plucked_string_instrument": "Pengetős hangszer", + "guitar": "Gitár", + "electric_guitar": "Elektromos gitár", + "bass_guitar": "Basszusgitár", + "acoustic_guitar": "Akusztikus gitár", + "steel_guitar": "Acél gitár", + "tapping": "Tappelés", + "strum": "Zongora verés", + "mandolin": "Mandolin", + "banjo": "Bendzsó", + "zither": "Citera", + "sitar": "Szitár", + "ukulele": "Ukulele", + "keyboard": "Szintetizátor", + "piano": "Zongora", + "electric_piano": "Elektromos zongora", + "organ": "Orgona", + "hammond_organ": "Hammond orgona", + "electronic_organ": "Elektromos orgona", + "synthesizer": "Szintetizátor", + "sampler": "Sampler", + "harpsichord": "Csembaló", + "percussion": "Ütős hangszer", + "drum_kit": "Dobszerkó", + "drum_machine": "Dobgép", + "drum": "Dob", + "snare_drum": "Pergődob", + "rimshot": "Peremütés", + "drum_roll": "Dobpergés", + "timpani": "Üstdob", + "bass_drum": "Basszusdob", + "tabla": "Tablá", + "cymbal": "Cintányér", + "hi_hat": "Lábcin", + "boat": "Hajó", + "car": "Autó", + "bus": "Busz", + "motorcycle": "Motor", + "train": "Vonat", + "bicycle": "Bicikli", + "scream": "Sikoly", + "throat_clearing": "Torokköszörülés", + "stomach_rumble": "Gyomorkorgás", + "animal": "Állat", + "goose": "Liba", + "humming": "Zümmögés" +} diff --git a/web/public/locales/hu/common.json b/web/public/locales/hu/common.json index 0967ef424..623f9d3b0 100644 --- a/web/public/locales/hu/common.json +++ b/web/public/locales/hu/common.json @@ -1 +1,138 @@ -{} +{ + "time": { + "untilForTime": "{{time}} ideig", + "s": "{{time}} másodperc", + "untilForRestart": "Amíg a Frigate újraindul.", + "untilRestart": "Amíg újraindul", + "justNow": "Most", + "ago": "{{timeAgo}} ezelőtt", + "today": "Ma", + "yesterday": "Tegnap", + "last7": "Elmúlt 7 nap", + "last14": "Elmúlt 14 nap", + "last30": "Elmúlt 30 nap", + "thisWeek": "Ezen a héten", + "lastWeek": "Előző héten", + "thisMonth": "Ebben a hónapban", + "lastMonth": "Előző hónap", + "5minutes": "5 perc", + "10minutes": "10 perc", + "30minutes": "30 perc", + "1hour": "1 óra", + "12hours": "12 óra", + "24hours": "24 óra", + "pm": "PM", + "am": "AM", + "yr": "{{time}} év", + "mo": "{{time}} hónap", + "d": "{{time}} nap", + "m": "{{time}} perc", + "hour_one": "{{time}} óra", + "hour_other": "{{time}} órák", + "h": "{{time}} óra", + "minute_one": "{{time}} perc", + "minute_other": "{{time}} percek", + "second_one": "{{time}} másodperc", + "second_other": "{{time}} másodpercek", + "year_one": "{{time}} év", + "year_other": "{{time}} évek", + "month_one": "{{time}} hónap", + "month_other": "{{time}} hónapok", + "day_one": "{{time}} nap", + "day_other": "{{time}} napok" + }, + "menu": { + "darkMode": { + "label": "Sötét Mód", + "withSystem": { + "label": "Használd a rendszerbeállításokat a világos vagy sötét mód megheghatározásához" + }, + "dark": "Sötét", + "light": "Világos" + }, + "withSystem": "Rendszer", + "theme": { + "default": "Alap", + "nord": "Nord", + "red": "Piros", + "highcontrast": "Nagy Kontrasztarány", + "label": "Téma", + "blue": "Kék", + "green": "Zöld" + }, + "documentation": { + "title": "Dokumentáció", + "label": "Frigate dokumentáció" + }, + "help": "Segítség", + "explore": "Felfedezés", + "user": { + "logout": "Kijelentkezés", + "title": "Felhasználó", + "account": "Fiók", + "current": "Jelenlegi Felhazsnáló: {{user}}", + "anonymous": "anoním", + "setPassword": "Jelszó Beállítása" + }, + "export": "Exportálás", + "language": { + "ca": "Katalán", + "withSystem": { + "label": "Használd a rendszerbeállításoknál megadott nyelvet" + } + }, + "uiPlayground": "UI játszótér", + "faceLibrary": "Arc Könyvtár", + "restart": "Frigate Újraindítása", + "live": { + "title": "Élő", + "allCameras": "Minden Kamera", + "cameras": { + "title": "Kamerák", + "count_one": "{{count}} Kamera", + "count_other": "{{count}} Kamerák" + } + }, + "review": "Áttekintés", + "appearance": "Megjelenés" + }, + "role": { + "viewer": "Néző", + "title": "Szerep", + "admin": "Adminisztrátor", + "desc": "Az adminisztrátoroknak teljes hozzáférése van az összes feature-höz. A nézők csak a kamerákat láthatják, áttekinthetik az elemeket és az előzményeket a UI-on." + }, + "pagination": { + "next": { + "label": "Következő oldal", + "title": "Következő" + }, + "more": "Több oldal", + "previous": { + "label": "Vissza az előző oldalra", + "title": "Előző" + }, + "label": "lapozás" + }, + "accessDenied": { + "documentTitle": "Belépés Megtagadva - Frigate", + "title": "Belépés Megtagadva", + "desc": "Nincs jogolultsága ehhez az oldalhoz." + }, + "notFound": { + "title": "404", + "desc": "Oldal nem található", + "documentTitle": "Nem található - Frigate" + }, + "toast": { + "copyUrlToClipboard": "URL kimásolva a vágólapra.", + "save": { + "title": "Mentés", + "error": { + "title": "Sikertelen konfiguráció mentés: {{errorMessage}}", + "noMessage": "Konfigurációs változtatások mentése sikertelen" + } + } + }, + "selectItem": "KIválasztani {{item}}-et" +} diff --git a/web/public/locales/hu/components/auth.json b/web/public/locales/hu/components/auth.json index 0967ef424..ba41600b0 100644 --- a/web/public/locales/hu/components/auth.json +++ b/web/public/locales/hu/components/auth.json @@ -1 +1,14 @@ -{} +{ + "form": { + "user": "Felhasználói név", + "password": "Jelszó", + "login": "Bejelentkezés", + "errors": { + "usernameRequired": "Felhasználónév szükséges", + "passwordRequired": "Jelszó szükséges", + "loginFailed": "Sikertelen bejelentkezés", + "unknownError": "Ismeretlen hiba. Ellenőrizze a naplókat.", + "webUnknownError": "Ismeretlen hiba. Ellenőrizze a konzol naplókat." + } + } +} diff --git a/web/public/locales/hu/components/camera.json b/web/public/locales/hu/components/camera.json index 0967ef424..07fae6e0c 100644 --- a/web/public/locales/hu/components/camera.json +++ b/web/public/locales/hu/components/camera.json @@ -1 +1,21 @@ -{} +{ + "group": { + "label": "Kamera Csoport", + "delete": { + "confirm": { + "desc": "Biztosan törölni akarja a következő kamera csoportot {{name}}?", + "title": "Törlés megerősítése" + }, + "label": "Kamera csoport törlése" + }, + "add": "Kamera csoport hozzáadása", + "edit": "Kamera csoport módosítása", + "name": { + "label": "Név", + "placeholder": "Adjon meg egy nevet…", + "errorMessage": { + "mustLeastCharacters": "A kamera csoport nevének legalább 2 karakterből kell állnia." + } + } + } +} diff --git a/web/public/locales/hu/components/dialog.json b/web/public/locales/hu/components/dialog.json index 0967ef424..10ba3e818 100644 --- a/web/public/locales/hu/components/dialog.json +++ b/web/public/locales/hu/components/dialog.json @@ -1 +1,26 @@ -{} +{ + "restart": { + "title": "Biztosan újra szeretnéd indítani a Frigate-ot?", + "button": "Újraindítás", + "restarting": { + "title": "A Frigate újraindul", + "content": "Az oldal újrtölt {{countdown}} másodperc múlva.", + "button": "Erőltetett újraindítás azonnal" + } + }, + "explore": { + "plus": { + "submitToPlus": { + "label": "Küldés a Frigate+-nak" + }, + "review": { + "state": { + "submitted": "Elküldve" + }, + "question": { + "ask_a": "Ez a tárgy egy {{label}}?" + } + } + } + } +} diff --git a/web/public/locales/hu/components/filter.json b/web/public/locales/hu/components/filter.json index 0967ef424..510815d1d 100644 --- a/web/public/locales/hu/components/filter.json +++ b/web/public/locales/hu/components/filter.json @@ -1 +1,19 @@ -{} +{ + "filter": "Szűrő", + "labels": { + "label": "Cimkék", + "all": { + "title": "Minden cimke", + "short": "Cimkék" + }, + "count_other": "{{count}} cimke", + "count_one": "{{count}} Cimke" + }, + "zones": { + "label": "Zónák", + "all": { + "title": "Minden zóna", + "short": "Zónák" + } + } +} diff --git a/web/public/locales/hu/components/icons.json b/web/public/locales/hu/components/icons.json index 0967ef424..5145dc3ed 100644 --- a/web/public/locales/hu/components/icons.json +++ b/web/public/locales/hu/components/icons.json @@ -1 +1,8 @@ -{} +{ + "iconPicker": { + "selectIcon": "Válassz ikont", + "search": { + "placeholder": "Ikon keresése…" + } + } +} diff --git a/web/public/locales/hu/components/input.json b/web/public/locales/hu/components/input.json index 0967ef424..dd86ee6d0 100644 --- a/web/public/locales/hu/components/input.json +++ b/web/public/locales/hu/components/input.json @@ -1 +1,7 @@ -{} +{ + "button": { + "downloadVideo": { + "label": "Videó Letöltése" + } + } +} diff --git a/web/public/locales/hu/components/player.json b/web/public/locales/hu/components/player.json index 0967ef424..5d1745cc5 100644 --- a/web/public/locales/hu/components/player.json +++ b/web/public/locales/hu/components/player.json @@ -1 +1,14 @@ -{} +{ + "noRecordingsFoundForThisTime": "Ebben az időpontban nem található felvétel", + "noPreviewFound": "Nincs elérhető előkép", + "submitFrigatePlus": { + "title": "Elküldi ezt a képet a Frigate+-nak?", + "submit": "Küldés" + }, + "noPreviewFoundFor": "Nem található előnézet {{cameraName}}-hoz/-hez/-höz", + "livePlayerRequiredIOSVersion": "iOS 17.1 vagy újabb szükséges ehhez az élő adás típushoz.", + "streamOffline": { + "title": "Adás Nem Elérhető" + }, + "cameraDisabled": "Kamera kikapcsolva" +} diff --git a/web/public/locales/hu/objects.json b/web/public/locales/hu/objects.json index 0967ef424..58ed9674a 100644 --- a/web/public/locales/hu/objects.json +++ b/web/public/locales/hu/objects.json @@ -1 +1,21 @@ -{} +{ + "person": "Személy", + "bicycle": "Bicikli", + "car": "Autó", + "motorcycle": "Motor", + "airplane": "Repülőgép", + "bus": "Busz", + "train": "Vonat", + "boat": "Hajó", + "dog": "Kutya", + "cat": "Macska", + "horse": "Ló", + "sheep": "Juh", + "bird": "Madár", + "mouse": "Egér", + "keyboard": "Szintetizátor", + "animal": "Állat", + "bark": "Ugatás", + "goat": "Kecske", + "traffic_light": "Jelzőlámpa" +} diff --git a/web/public/locales/hu/views/configEditor.json b/web/public/locales/hu/views/configEditor.json index 0967ef424..b921c987d 100644 --- a/web/public/locales/hu/views/configEditor.json +++ b/web/public/locales/hu/views/configEditor.json @@ -1 +1,16 @@ -{} +{ + "documentTitle": "Konfiguráció Szerkesztő - Frigate", + "configEditor": "Konfiguráció szerkesztő", + "copyConfig": "Konfiguráció másolása", + "saveAndRestart": "Mentés és Újraindítás", + "saveOnly": "Csak mentés", + "toast": { + "success": { + "copyToClipboard": "Konfiguráció átmásolva a vágólapra." + }, + "error": { + "savingError": "Hiba a konfiguráció mentésekor" + } + }, + "confirm": "Kilép mentés nélkül?" +} diff --git a/web/public/locales/hu/views/events.json b/web/public/locales/hu/views/events.json index 0967ef424..71618b07a 100644 --- a/web/public/locales/hu/views/events.json +++ b/web/public/locales/hu/views/events.json @@ -1 +1,15 @@ -{} +{ + "alerts": "Riasztások", + "empty": { + "detection": "Nincs megnézendő észlelés", + "alert": "Nincs megnézendő riasztás", + "motion": "Nem található mozgás" + }, + "detections": "Észlelések", + "motion": { + "label": "Mozgás", + "only": "Csak mozgások" + }, + "allCameras": "Összes kamera", + "timeline": "Idővonal" +} diff --git a/web/public/locales/hu/views/explore.json b/web/public/locales/hu/views/explore.json index 0967ef424..095eb39ec 100644 --- a/web/public/locales/hu/views/explore.json +++ b/web/public/locales/hu/views/explore.json @@ -1 +1,176 @@ -{} +{ + "documentTitle": "Tallózás - Frigate", + "itemMenu": { + "downloadVideo": { + "label": "Video letöltése", + "aria": "Video letöltése" + }, + "submitToPlus": { + "aria": "Küldés a Frigate Plus-nak", + "label": "Küldés a Frigate+-nak" + }, + "deleteTrackedObject": { + "label": "Követett tárgy törlése" + }, + "viewObjectLifecycle": { + "label": "Tárgy életciklusának megtekintése", + "aria": "Mutasd a tárgy életciklusát" + }, + "findSimilar": { + "label": "Keress hasonlót", + "aria": "Keress hasonló követett tárgyat" + }, + "viewInHistory": { + "label": "Megtekintés az Előzményekben", + "aria": "Megtekintés az Előzményekben" + }, + "downloadSnapshot": { + "aria": "Pillanatfelvétel letöltése", + "label": "Pillanatfelvétel letöltése" + } + }, + "details": { + "editLPR": { + "title": "Rendszám módosítása", + "desc": "Új rendszám hozzáadása ehhez {{label}}", + "descNoLabel": "Adjon hozzá egy új rendszámot ehhez a követett tárgyhoz" + }, + "label": "Cimke", + "editSubLabel": { + "desc": "Új alcimke létrehozása ehhez a cimkéhez {{label}}", + "title": "Alcimke módosítása", + "descNoLabel": "Adjon hozzá egy új alcimkét ehhez a követett tárgyhoz" + }, + "camera": "Kamera", + "zones": "Zónák", + "description": { + "placeholder": "Követett tárgy leírása", + "label": "Leírás", + "aiTips": "A Frigate nem fog igényelni leírást a Generatív MI szolgáltatójától, amíg a követett tárgy életciklusa be nem fejeződött." + }, + "timestamp": "Időbélyeg", + "estimatedSpeed": "Becsült Sebesség", + "objects": "Tárgyak", + "topScore": { + "label": "Legnagyobb Pontszám" + }, + "recognizedLicensePlate": "Felismert Rendszám", + "tips": { + "descriptionSaved": "Leírás sikeresen mentve", + "saveDescriptionFailed": "Leírás frissítése sikertelen: {{errorMessage}}" + }, + "item": { + "toast": { + "error": { + "updatedLPRFailed": "Rendszám frissítése sikertelen: {{errorMessage}}", + "updatedSublabelFailed": "Alcimke frissítése sikertelen: {{errorMessage}}" + }, + "success": { + "updatedSublabel": "Az alcimke sikeresen frissítve.", + "updatedLPR": "Rendszám sikeresen frissítve." + } + }, + "button": { + "viewInExplore": "Mutasd a Felfedezésben" + } + }, + "snapshotScore": { + "label": "Pillanatfelvétel Pontszáma" + }, + "regenerateFromThumbnails": "Újragenerálás kisképből", + "regenerateFromSnapshot": "Újragenerálás pillanatfelvételből", + "button": { + "regenerate": { + "label": "Követett tárgy leírásának újragenerálása", + "title": "Újragenerálás" + }, + "findSimilar": "Keress Hasonlót" + }, + "expandRegenerationMenu": "Újragenerálási menü kiterjesztése" + }, + "searchResult": { + "deleteTrackedObject": { + "toast": { + "error": "Hiba a követett tárgy törlése közben: {{errorMessage}}", + "success": "Követett tárgy sikeresen törölve." + } + } + }, + "generativeAI": "Generatív MI", + "exploreIsUnavailable": { + "title": "Felfedezés nem elérhető", + "embeddingsReindexing": { + "startingUp": "Indulás…", + "estimatedTime": "Becsült hátralevő idő:", + "finishingShortly": "Hamarosan végez", + "step": { + "thumbnailsEmbedded": "Beágyazott ikonok: ", + "descriptionsEmbedded": "Beágyazott leírások: ", + "trackedObjectsProcessed": "Feldolgozott követett tárgyak: " + } + }, + "downloadingModels": { + "tips": { + "documentation": "Olvassa el a leírást" + }, + "setup": { + "textModel": "Szöveg modell", + "textTokenizer": "Szöveg tokenizáló" + }, + "error": "Hiba történt. Ellenőrizze a Frigate naplókat." + } + }, + "noTrackedObjects": "Nincs követett tárgy", + "trackedObjectsCount_one": "{{count}} követett tárgy. ", + "trackedObjectsCount_other": "{{count}} követett tárgy. ", + "dialog": { + "confirmDelete": { + "title": "Törlés megerősítése" + } + }, + "fetchingTrackedObjectsFailed": "Hiba a követett tárgyak betöltése közben: {{errorMessage}}", + "objectLifecycle": { + "title": "Tárgy Életciklus", + "noImageFound": "Ehhez az időbélyeghez nem található kép.", + "createObjectMask": "Tárgy Maszk Létrehozása", + "scrollViewTips": "Görgessen, hogy megnézze ezen tárgy életciklusának jelentős pillanatait.", + "lifecycleItemDesc": { + "heard": "{{label}} meghallva", + "external": "{{label}} észlelve", + "header": { + "zones": "Zónák", + "ratio": "Arány", + "area": "Körzet" + }, + "active": "{{label}} aktiválódott", + "attribute": { + "other": "{{label}} felismerve mint {{attribute}}", + "faceOrLicense_plate": "{{attribute}} észlelve {{label}}-hoz/-hez/-höz" + }, + "entered_zone": "{{label}} belépett {{zones}}-ba/-be", + "visible": "{{label}} észlelve" + }, + "annotationSettings": { + "offset": { + "documentation": "Olvassa el a leírást " + }, + "showAllZones": { + "desc": "Mindig mutasd a képen a zónákat, ahol a tárgy belépett a zónába.", + "title": "Mutasd az Összes Zónát" + } + }, + "carousel": { + "next": "Következő dia", + "previous": "Előző dia" + }, + "trackedPoint": "Követett Pont" + }, + "type": { + "video": "videó", + "object_lifecycle": "tárgy életciklus", + "details": "részletek", + "snapshot": "pillanatfelvétel" + }, + "trackedObjectDetails": "Követett Tárgy Részletei", + "exploreMore": "Fedezzen fel több {{label}} tárgyat" +} diff --git a/web/public/locales/hu/views/exports.json b/web/public/locales/hu/views/exports.json index 0967ef424..e7832d0c2 100644 --- a/web/public/locales/hu/views/exports.json +++ b/web/public/locales/hu/views/exports.json @@ -1 +1,10 @@ -{} +{ + "documentTitle": "Exportálás - Frigate", + "search": "Keresés", + "noExports": "Export nem található", + "deleteExport.desc": "Biztos, hogy törölni akarja {{exportName}}-t?", + "deleteExport": "Export törlése", + "editExport": { + "title": "Exportálás átnevezése" + } +} diff --git a/web/public/locales/hu/views/faceLibrary.json b/web/public/locales/hu/views/faceLibrary.json index 0967ef424..d7d72b446 100644 --- a/web/public/locales/hu/views/faceLibrary.json +++ b/web/public/locales/hu/views/faceLibrary.json @@ -1 +1,74 @@ -{} +{ + "renameFace": { + "title": "Arc átnevezése", + "desc": "Adjon meg egy új nevet {{name}}-nak/-nek" + }, + "details": { + "subLabelScore": "Alcimke érték", + "unknown": "Ismeretlen", + "person": "Ember", + "timestamp": "Időbélyeg", + "face": "Arc részletek" + }, + "button": { + "deleteFace": "Arc törlése", + "renameFace": "Arc átnevezése", + "deleteFaceAttempts": "Arcok törlése", + "addFace": "Arc hozzáadása", + "uploadImage": "Kép feltöltése" + }, + "collections": "Gyűjtemények", + "steps": { + "description": { + "uploadFace": "Töltsön fel egy képet {{name}}-ről amin szemből látható. A képen nem szükséges, hogy csak az arc legyen látható." + }, + "faceName": "Adjon meg egy arcnevet", + "uploadFace": "Arckép feltöltése", + "nextSteps": "Következő lépések" + }, + "deleteFaceAttempts": { + "title": "Arcok törlése" + }, + "uploadFaceImage": { + "title": "Arckép feltöltése" + }, + "createFaceLibrary": { + "title": "Gyűjtemény létrehozása", + "desc": "Új gyűjtemény létrehozása", + "new": "Új arc létrhozása" + }, + "description": { + "placeholder": "Adj nevet ennek a gyűjteménynek", + "invalidName": "Nem megfelelő név. A nevek csak betűket, számokat, szóközöket, aposztrófokat, alulhúzásokat és kötőjeleket tartalmazhatnak." + }, + "selectFace": "Arc kiválasztása", + "deleteFaceLibrary": { + "title": "Név törlése", + "desc": "Biztosan törölni akarja a {{name}} gyűjteményt? Ezzel véglegesen törli a párosított arcokat." + }, + "imageEntry": { + "dropActive": "Húzza a képet ide…", + "validation": { + "selectImage": "Kérem válasszon egy képet." + }, + "maxSize": "Maximális méret: {{size}} MB" + }, + "trainFaceAs": "Arc tanítása mint:", + "trainFace": "Arc tanítása", + "toast": { + "success": { + "addFaceLibrary": "{{name}} sikeresen hozzáadva a az Arc Könyvtárhoz!", + "uploadedImage": "A kép sikeresen feltöltve.", + "deletedName_one": "{{count}} arc sikeresen törölve.", + "deletedName_other": "{{count}} arc sikeresen törölve." + } + }, + "readTheDocs": "Olvassa el a dokumentációt", + "nofaces": "Nincs elérhető arc", + "documentTitle": "Arc könyvtár - Frigate", + "train": { + "title": "Vonat" + }, + "pixels": "{{area}}px", + "selectItem": "KIválasztani {{item}}-et" +} diff --git a/web/public/locales/hu/views/live.json b/web/public/locales/hu/views/live.json index 0967ef424..4842f7029 100644 --- a/web/public/locales/hu/views/live.json +++ b/web/public/locales/hu/views/live.json @@ -1 +1,114 @@ -{} +{ + "twoWayTalk": { + "enable": "Kétirányú kommunikáció engedélyezése", + "disable": "Kétirányú kommunikáció tiltása" + }, + "documentTitle": "Élő - Frigate", + "lowBandwidthMode": "Alacsony felbontású mód", + "documentTitle.withCamera": "{{camera}} - Élő - Frigate", + "cameraAudio": { + "disable": "Kamera hangjának kikapcsolása", + "enable": "Kamera hangjának bekapcsolása" + }, + "ptz": { + "move": { + "clickMove": { + "label": "Kattintson a képre a kamera középre igazításához" + }, + "left": { + "label": "PTZ kamera balra mozgatása" + }, + "up": { + "label": "PTZ kamera felfele mozgatása" + }, + "down": { + "label": "PTZ kamera lefele mozgatása" + }, + "right": { + "label": "PTZ kamera jobbra mozgatása" + } + }, + "zoom": { + "in": { + "label": "PTZ kamera közelítés" + }, + "out": { + "label": "PTZ kamera távolodás" + } + }, + "frame": { + "center": { + "label": "Kattinston a képre a PTZ kamera középre igazításához" + } + } + }, + "camera": { + "enable": "Kamera Engedélyezése", + "disable": "Kamera Kikapcsolása" + }, + "muteCameras": { + "enable": "Minden Kamera Némítása", + "disable": "Minden Kamera Felhangosítása" + }, + "detect": { + "enable": "Észlelés Engedélyezése", + "disable": "Észlelés Kikapcsolása" + }, + "recording": { + "enable": "Felvétel Készítés Engedélyezése", + "disable": "Felvétel Készítés Kikapcsolása" + }, + "snapshots": { + "enable": "Pillanatfelvétel Engedélyezése", + "disable": "Pillanatfelvétel Kikapcsolása" + }, + "audioDetect": { + "enable": "Hang Észlelés Engedélyezése", + "disable": "Hang Észlelés Kikapcsolása" + }, + "autotracking": { + "enable": "Automatikus Követés Engedélyezése", + "disable": "Automatikus Követés Kikapcsolása" + }, + "streamStats": { + "enable": "Adás Statisztika Mutatása", + "disable": "Adás Statisztika Elrejtése" + }, + "manualRecording": { + "playInBackground": { + "label": "Lejátszás a háttérben", + "desc": "Engedélyezze ezt a lehetőséget, hogy az adás tovább folyjon amikor a lejátszó rejtve van." + }, + "showStats": { + "label": "Statisztika Mutatása" + }, + "debugView": "Hibakeresési Nézet" + }, + "streamingSettings": "Adás Beállítások", + "notifications": "Értesítések", + "audio": "Hang", + "suspend": { + "forTime": "Felfüggesztés: " + }, + "stream": { + "title": "Adás", + "audio": { + "tips": { + "documentation": "Olvassa el a leírást " + }, + "available": "Ehhez az adáshoz hang elérhető", + "unavailable": "Nem elérhető hang ehhez az adáshoz" + }, + "twoWayTalk": { + "tips.documentation": "Olvassa el a leírást ", + "available": "Kétirányú kommunikáció elérhető ehhez az adáshoz", + "unavailable": "Nem elérhető a kétirányú kommunikáció ehhez az adáshoz" + }, + "lowBandwidth": { + "resetStream": "Adás visszaállítása" + }, + "playInBackground": { + "label": "Lejátszás a háttérben" + } + } +} diff --git a/web/public/locales/hu/views/recording.json b/web/public/locales/hu/views/recording.json index 0967ef424..67aac28a5 100644 --- a/web/public/locales/hu/views/recording.json +++ b/web/public/locales/hu/views/recording.json @@ -1 +1,12 @@ -{} +{ + "filter": "Szűrő", + "calendar": "Naptár", + "export": "Exportálás", + "filters": "Szűrők", + "toast": { + "error": { + "noValidTimeSelected": "Nem megfelelő idősáv kiválasztva", + "endTimeMustAfterStartTime": "A végpontnak később kell lennie, mint a kezdőpontnak" + } + } +} diff --git a/web/public/locales/hu/views/search.json b/web/public/locales/hu/views/search.json index 0967ef424..4a56fc811 100644 --- a/web/public/locales/hu/views/search.json +++ b/web/public/locales/hu/views/search.json @@ -1 +1,12 @@ -{} +{ + "search": "Keresés", + "savedSearches": "Mentett keresések", + "searchFor": "{{inputValue}} keresése", + "button": { + "clear": "Keresés törlése", + "filterInformation": "Szűrő információ", + "save": "Keresés mentése", + "delete": "Mentett keresések törlése" + }, + "trackedObjectId": "Követett Tárgy Azonosító" +} diff --git a/web/public/locales/hu/views/settings.json b/web/public/locales/hu/views/settings.json index 483fd79c5..6742aeb48 100644 --- a/web/public/locales/hu/views/settings.json +++ b/web/public/locales/hu/views/settings.json @@ -8,7 +8,8 @@ "object": "Hibakeresés - Frigate", "general": "Alapbeállítások - Frigate", "frigatePlus": "Frigate+ beállítások - Frigate", - "notifications": "Értesítések beállítása - Frigate" + "notifications": "Értesítések beállítása - Frigate", + "motionTuner": "Mozgás Hangoló - Frigate" }, "menu": { "ui": "UI", diff --git a/web/public/locales/hu/views/system.json b/web/public/locales/hu/views/system.json index 0967ef424..8a2daf8c0 100644 --- a/web/public/locales/hu/views/system.json +++ b/web/public/locales/hu/views/system.json @@ -1 +1,165 @@ -{} +{ + "documentTitle": { + "cameras": "Kamera statisztikák - Frigate", + "storage": "Tárhely statisztikák - Frigate", + "general": "Általános statisztikák - Frigate", + "logs": { + "frigate": "Frigate naplók - Frigate", + "go2rtc": "Go2RTC naplók - Frigate", + "nginx": "Nginx naplók - Frigate" + } + }, + "cameras": { + "label": { + "ffmpeg": "FFmpeg", + "overallSkippedDetectionsPerSecond": "összes kihagyott észlelés per másodperc", + "camera": "kamera", + "detect": "észlel", + "skipped": "kihagyott", + "overallFramesPerSecond": "összes képkocka per másodperc", + "overallDetectionsPerSecond": "összes észlelés per másodperc", + "cameraFfmpeg": "{{camName}} FFmpeg", + "cameraDetect": "{{camName}} észlelés", + "cameraFramesPerSecond": "{{camName}} képkocka per másodperc", + "cameraDetectionsPerSecond": "{{camName}} észlelés per másodperc", + "cameraSkippedDetectionsPerSecond": "{{camName}} kihagyott észlelés per másodperc" + }, + "title": "Kamerák", + "info": { + "video": "Videó:", + "resolution": "Felbontás:", + "codec": "Codec:", + "error": "Hiba: {{error}}", + "cameraProbeInfo": "{{camera}} Kamera Szonda Infó", + "fetching": "Kamera Adat Begyűjtése", + "aspectRatio": "képarány", + "stream": "Folyam: {{idx}}", + "fps": "FPS:", + "unknown": "Ismeretlen", + "audio": "Hang:", + "tips": { + "title": "Kamera Szonda Infó" + } + }, + "overview": "Áttekintés", + "framesAndDetections": "Képek / Észlelések", + "toast": { + "success": { + "copyToClipboard": "Szonda adat másolva a vágólapra." + } + } + }, + "title": "Rendszer", + "logs": { + "copy": { + "label": "Másolás a Vágólapra", + "error": "Nem sikerült a naplók vágólapra másolása", + "success": "Naplók a vágólapra másolva" + }, + "type": { + "label": "Típus", + "timestamp": "Időbélyeg", + "tag": "Cédula", + "message": "Üzenet" + }, + "toast": { + "error": { + "fetchingLogsFailed": "Hiba a naplók begyűjtése közben: {{errorMessage}}" + } + }, + "download": { + "label": "Naplók letöltése" + } + }, + "general": { + "title": "Általános", + "detector": { + "title": "Érzékelők", + "inferenceSpeed": "Érzékelők Inferencia Sebessége", + "cpuUsage": "Érzékelő CPU Kihasználtság", + "memoryUsage": "Érzékelő Memória Kihasználtság", + "temperature": "Érzékelő Hőmérséklete" + }, + "hardwareInfo": { + "title": "Hardver Infó", + "gpuUsage": "GPU Kihasználtság", + "gpuMemory": "GPU Memória", + "gpuInfo": { + "nvidiaSMIOutput": { + "name": "Név: {{name}}", + "title": "Nvidia SMI Kimenet", + "vbios": "VBios Infó: {{vbios}}", + "driver": "Meghajtó: {{driver}}" + }, + "vainfoOutput": { + "processOutput": "Folyamat Kimenete:", + "processError": "Folyamat Hiba:", + "title": "Vainfo Kimenet", + "returnCode": "Visszatérési Érték: {{code}}" + }, + "copyInfo": { + "label": "GPU infó másolása" + }, + "closeInfo": { + "label": "GPU info bezárása" + }, + "toast": { + "success": "GPU infó a vágólapra másolva" + } + }, + "gpuEncoder": "GPU Enkóder", + "gpuDecoder": "GPU Dekóder", + "npuUsage": "NPU Kihasználtság", + "npuMemory": "NPU Memória" + }, + "otherProcesses": { + "processMemoryUsage": "Folyamat Memória Kihasználtság", + "title": "Egyéb Folyamatok", + "processCpuUsage": "Folyamat CPU Kihasználtság" + } + }, + "storage": { + "recordings": { + "title": "Felvételek", + "tips": "Ez az érték mutatja a Frigate adatbázisában található felvételek teljes tárhely felhasználását. A Frigate nem követi az összes fájl által foglalt tárhelyet.", + "earliestRecording": "Legkorábbi elérhető felvétel:" + }, + "title": "Tárhely", + "overview": "Áttekintés", + "cameraStorage": { + "unusedStorageInformation": "Felhasználatlan Tárhely Információ", + "title": "Kamera Tárhely", + "camera": "Kamera", + "storageUsed": "Tárhely", + "percentageOfTotalUsed": "Teljes Százaléka", + "bandwidth": "Sávszélesség", + "unused": { + "title": "Felhasználatlan" + } + } + }, + "enrichments": { + "embeddings": { + "image_embedding_speed": "Kép Beágyazás Sebesség", + "face_embedding_speed": "Arc Beágyazás Sebesség", + "face_recognition_speed": "Arcfelismerés Sebesség", + "plate_recognition_speed": "Rendszám Felismerés Sebesség", + "text_embedding_speed": "Szöveg Beágyazás Sebesség", + "image_embedding": "Kép Beágyazása", + "text_embedding": "Szöveg Beágyazása", + "face_recognition": "Arcfelismerés", + "plate_recognition": "Rendszám Felismerés", + "yolov9_plate_detection_speed": "YOLOv9 Rendszám Felismerés Sebesség", + "yolov9_plate_detection": "YOLOv9 Rendszám Észlelés" + }, + "infPerSecond": "Inferencia Per Másodperc" + }, + "metrics": "Rendszer jellemzők", + "stats": { + "detectIsVerySlow": "{{detect}} nagyon lassú ({{speed}} ms)", + "healthy": "A rendszer egészséges", + "cameraIsOffline": "{{camera}} nem elérhető", + "detectIsSlow": "{{detect}} lassú ({{speed}} ms)" + }, + "lastRefreshed": "Utoljára frissítve: " +} diff --git a/web/public/locales/id/common.json b/web/public/locales/id/common.json index ae0b27072..0b973650f 100644 --- a/web/public/locales/id/common.json +++ b/web/public/locales/id/common.json @@ -5,6 +5,7 @@ "ago": "{{timeAgo}} Lalu", "justNow": "Sekarang", "today": "Hari ini", - "yesterday": "Kemarin" + "yesterday": "Kemarin", + "untilForTime": "Hingga {{time}}" } } diff --git a/web/public/locales/id/views/explore.json b/web/public/locales/id/views/explore.json index d933b94f1..d0e7a3ce6 100644 --- a/web/public/locales/id/views/explore.json +++ b/web/public/locales/id/views/explore.json @@ -8,5 +8,8 @@ "startingUp": "Sedang memulai…", "estimatedTime": "Perkiraan waktu tersisa:" } + }, + "details": { + "timestamp": "Stempel waktu" } } diff --git a/web/public/locales/id/views/faceLibrary.json b/web/public/locales/id/views/faceLibrary.json index 0516a0384..ff1fd4b61 100644 --- a/web/public/locales/id/views/faceLibrary.json +++ b/web/public/locales/id/views/faceLibrary.json @@ -1,12 +1,30 @@ { "description": { "addFace": "Tambah ke koleksi Pustaka Wajah.", - "placeholder": "Masukkan Nama untuk koleksi ini" + "placeholder": "Masukkan Nama untuk koleksi ini", + "invalidName": "Nama tidak valid. Nama hanya dapat berisi huruf, angka, spasi, apostrof, garis bawah, dan tanda hubung." }, "details": { "person": "Orang", "subLabelScore": "Skor Sub Label", "face": "Detail Wajah", - "scoreInfo": "Skor sub label adalah nilai gabungan dari tingkat keyakinan sistem dalam mengenali wajah. Nilai ini bisa berbeda dengan skor yang terlihat pada gambar cuplikan." + "scoreInfo": "Skor sub label adalah nilai gabungan dari tingkat keyakinan sistem dalam mengenali wajah. Nilai ini bisa berbeda dengan skor yang terlihat pada gambar cuplikan.", + "timestamp": "Stempel waktu", + "unknown": "Tidak diketahui", + "faceDesc": "Detail objek terlacak yang menghasilkan wajah ini" + }, + "documentTitle": "Perpustakaan Wajah - Frigate", + "collections": "Koleksi", + "createFaceLibrary": { + "desc": "Buat koleksi baru", + "title": "Buat Koleksi", + "nextSteps": "Untuk membangun fondasi yang kuat:
  • Gunakan tab Latih untuk memilih dan melatih gambar untuk setiap orang yang terdeteksi.
  • Fokus pada gambar lurus untuk hasil terbaik; hindari melatih gambar yang menangkap wajah pada sudut tertentu.
  • " + }, + "uploadFaceImage": { + "desc": "Unggah gambar untuk dipindai wajah dan sertakan untuk {{pageToggle}}", + "title": "Unggah Gambar Wajah" + }, + "steps": { + "faceName": "Masukkan Nama Wajah" } } diff --git a/web/public/locales/it/common.json b/web/public/locales/it/common.json index 388690475..9e0cb2e77 100644 --- a/web/public/locales/it/common.json +++ b/web/public/locales/it/common.json @@ -180,7 +180,8 @@ "he": "עברית (Ebraico)", "it": "Italiano (Italiano)", "yue": "粵語 (Cantonese)", - "th": "ไทย (Tailandese)" + "th": "ไทย (Tailandese)", + "ca": "Català (Catalano)" }, "darkMode": { "label": "Modalità scura", diff --git a/web/public/locales/it/views/settings.json b/web/public/locales/it/views/settings.json index ffcdb2c39..de0fea314 100644 --- a/web/public/locales/it/views/settings.json +++ b/web/public/locales/it/views/settings.json @@ -305,13 +305,13 @@ "unsavedChanges": "Impostazioni di classificazione delle revisioni non salvate per {{camera}}" }, "streams": { - "desc": "La disattivazione completa di una telecamera interrompe l'elaborazione dei flussi da parte di Frigate. Rilevamento, registrazione e correzioni non saranno disponibili.
    Nota: questa operazione non disabilita le ritrasmissioni di go2rtc.", + "desc": "Disattiva temporaneamente una telecamera fino al riavvio di Frigate. La disattivazione completa di una telecamera interrompe l'elaborazione dei flussi da parte di Frigate. Rilevamento, registrazione e correzioni non saranno disponibili.
    Nota: questa operazione non disabilita le ritrasmissioni di go2rtc.", "title": "Flussi" }, "title": "Impostazioni telecamera", "review": { "title": "Rivedi", - "desc": "Abilita/disabilita avvisi e rilevamenti per questa telecamera. Se disabilitati, non verranno generati nuovi elementi di revisione.", + "desc": "Abilita/disabilita temporaneamente avvisi e rilevamenti per questa telecamera fino al riavvio di Frigate. Se disabilitati, non verranno generati nuovi elementi di revisione. ", "alerts": "Avvisi ", "detections": "Rilevamenti " } diff --git a/web/public/locales/it/views/system.json b/web/public/locales/it/views/system.json index 8461f9bd9..ee838403c 100644 --- a/web/public/locales/it/views/system.json +++ b/web/public/locales/it/views/system.json @@ -1,7 +1,7 @@ { "documentTitle": { "cameras": "Statistiche telecamere - Frigate", - "enrichments": "Statistiche miglioramento - Frigate", + "enrichments": "Statistiche di miglioramento - Frigate", "storage": "Statistiche archiviazione - Frigate", "general": "Statistiche generali - Frigate", "logs": { diff --git a/web/public/locales/ja/audio.json b/web/public/locales/ja/audio.json index 0967ef424..533e387cc 100644 --- a/web/public/locales/ja/audio.json +++ b/web/public/locales/ja/audio.json @@ -1 +1,5 @@ -{} +{ + "speech": "スピーチ", + "car": "自動車", + "bicycle": "自転車" +} diff --git a/web/public/locales/ja/common.json b/web/public/locales/ja/common.json index 0967ef424..44b1d2b51 100644 --- a/web/public/locales/ja/common.json +++ b/web/public/locales/ja/common.json @@ -1 +1,7 @@ -{} +{ + "time": { + "untilForRestart": "Frigateが再起動するまで.", + "untilRestart": "再起動まで", + "untilForTime": "{{time}} まで" + } +} diff --git a/web/public/locales/ja/components/auth.json b/web/public/locales/ja/components/auth.json index 0967ef424..db2e691c0 100644 --- a/web/public/locales/ja/components/auth.json +++ b/web/public/locales/ja/components/auth.json @@ -1 +1,7 @@ -{} +{ + "form": { + "user": "ユーザー名", + "password": "パスワード", + "login": "ログイン" + } +} diff --git a/web/public/locales/ja/components/camera.json b/web/public/locales/ja/components/camera.json index 0967ef424..e2411e813 100644 --- a/web/public/locales/ja/components/camera.json +++ b/web/public/locales/ja/components/camera.json @@ -1 +1,7 @@ -{} +{ + "group": { + "label": "カメラグループ", + "add": "カメラグループを追加", + "edit": "カメラグループを編集" + } +} diff --git a/web/public/locales/ja/components/dialog.json b/web/public/locales/ja/components/dialog.json index 0967ef424..9b0a3b3bc 100644 --- a/web/public/locales/ja/components/dialog.json +++ b/web/public/locales/ja/components/dialog.json @@ -1 +1,9 @@ -{} +{ + "restart": { + "title": "Frigateを再起動しますか?", + "restarting": { + "title": "Frigateは再起動中です" + }, + "button": "再起動" + } +} diff --git a/web/public/locales/ja/components/filter.json b/web/public/locales/ja/components/filter.json index 0967ef424..10c2b4912 100644 --- a/web/public/locales/ja/components/filter.json +++ b/web/public/locales/ja/components/filter.json @@ -1 +1,9 @@ -{} +{ + "labels": { + "label": "ラベル", + "all": { + "title": "すべてのラベル" + } + }, + "filter": "フィルタ" +} diff --git a/web/public/locales/ja/components/icons.json b/web/public/locales/ja/components/icons.json index 0967ef424..2307ca4f1 100644 --- a/web/public/locales/ja/components/icons.json +++ b/web/public/locales/ja/components/icons.json @@ -1 +1,8 @@ -{} +{ + "iconPicker": { + "search": { + "placeholder": "アイコンを検索…" + }, + "selectIcon": "アイコンを選択" + } +} diff --git a/web/public/locales/ja/components/input.json b/web/public/locales/ja/components/input.json index 0967ef424..fcf6fccab 100644 --- a/web/public/locales/ja/components/input.json +++ b/web/public/locales/ja/components/input.json @@ -1 +1,10 @@ -{} +{ + "button": { + "downloadVideo": { + "label": "ビデオをダウンロード", + "toast": { + "success": "あなたのレビュー項目ビデオのダウンロードを開始しました." + } + } + } +} diff --git a/web/public/locales/ja/components/player.json b/web/public/locales/ja/components/player.json index 0967ef424..153b60804 100644 --- a/web/public/locales/ja/components/player.json +++ b/web/public/locales/ja/components/player.json @@ -1 +1,5 @@ -{} +{ + "noPreviewFound": "プレビューが見つかりません", + "noRecordingsFoundForThisTime": "この時間帯に録画は見つかりませんでした", + "noPreviewFoundFor": "{{cameraName}} のプレビューが見つかりません" +} diff --git a/web/public/locales/ja/objects.json b/web/public/locales/ja/objects.json index 0967ef424..0f9ddaa73 100644 --- a/web/public/locales/ja/objects.json +++ b/web/public/locales/ja/objects.json @@ -1 +1,5 @@ -{} +{ + "bicycle": "自転車", + "car": "自動車", + "person": "人物" +} diff --git a/web/public/locales/ja/views/configEditor.json b/web/public/locales/ja/views/configEditor.json index 0967ef424..b3d523c94 100644 --- a/web/public/locales/ja/views/configEditor.json +++ b/web/public/locales/ja/views/configEditor.json @@ -1 +1,7 @@ -{} +{ + "copyConfig": "設定をコピー", + "configEditor": "Configエディタ", + "saveAndRestart": "保存後再起動", + "saveOnly": "保存", + "confirm": "保存せずに終了しますか?" +} diff --git a/web/public/locales/ja/views/events.json b/web/public/locales/ja/views/events.json index 0967ef424..f8ac7549c 100644 --- a/web/public/locales/ja/views/events.json +++ b/web/public/locales/ja/views/events.json @@ -1 +1,7 @@ -{} +{ + "detections": "検出", + "motion": { + "label": "動作" + }, + "alerts": "アラート" +} diff --git a/web/public/locales/ja/views/explore.json b/web/public/locales/ja/views/explore.json index 0967ef424..0dec7d0b9 100644 --- a/web/public/locales/ja/views/explore.json +++ b/web/public/locales/ja/views/explore.json @@ -1 +1,3 @@ -{} +{ + "generativeAI": "生成AI" +} diff --git a/web/public/locales/ja/views/exports.json b/web/public/locales/ja/views/exports.json index 0967ef424..aa8eb6703 100644 --- a/web/public/locales/ja/views/exports.json +++ b/web/public/locales/ja/views/exports.json @@ -1 +1,5 @@ -{} +{ + "documentTitle": "エクスポート - Frigate", + "noExports": "エクスポートがありません", + "search": "検索" +} diff --git a/web/public/locales/ja/views/faceLibrary.json b/web/public/locales/ja/views/faceLibrary.json index 0967ef424..5bb34f410 100644 --- a/web/public/locales/ja/views/faceLibrary.json +++ b/web/public/locales/ja/views/faceLibrary.json @@ -1 +1,5 @@ -{} +{ + "description": { + "placeholder": "このコレクションの名前を入力してください" + } +} diff --git a/web/public/locales/ja/views/live.json b/web/public/locales/ja/views/live.json index 0967ef424..a279c5391 100644 --- a/web/public/locales/ja/views/live.json +++ b/web/public/locales/ja/views/live.json @@ -1 +1,5 @@ -{} +{ + "documentTitle": "ライブ - Frigate", + "documentTitle.withCamera": "{{camera}} - ライブ - Frigate", + "lowBandwidthMode": "低帯域幅モード" +} diff --git a/web/public/locales/ja/views/recording.json b/web/public/locales/ja/views/recording.json index 0967ef424..336551285 100644 --- a/web/public/locales/ja/views/recording.json +++ b/web/public/locales/ja/views/recording.json @@ -1 +1,5 @@ -{} +{ + "filter": "フィルタ", + "calendar": "カレンダー", + "export": "エクスポート" +} diff --git a/web/public/locales/ja/views/search.json b/web/public/locales/ja/views/search.json index 0967ef424..02f285695 100644 --- a/web/public/locales/ja/views/search.json +++ b/web/public/locales/ja/views/search.json @@ -1 +1,11 @@ -{} +{ + "searchFor": "{{inputValue}} を検索", + "button": { + "save": "検索を保存", + "delete": "保存した検索を削除", + "filterInformation": "フィルタ情報", + "clear": "検索をクリア" + }, + "search": "検索", + "savedSearches": "保存した検索" +} diff --git a/web/public/locales/ja/views/settings.json b/web/public/locales/ja/views/settings.json index 0967ef424..f0993c869 100644 --- a/web/public/locales/ja/views/settings.json +++ b/web/public/locales/ja/views/settings.json @@ -1 +1,7 @@ -{} +{ + "documentTitle": { + "authentication": "認証設定 - Frigate", + "camera": "カメラの設定 - Frigate", + "default": "設定 - Frigate" + } +} diff --git a/web/public/locales/ja/views/system.json b/web/public/locales/ja/views/system.json index 0967ef424..2c5d736f2 100644 --- a/web/public/locales/ja/views/system.json +++ b/web/public/locales/ja/views/system.json @@ -1 +1,7 @@ -{} +{ + "documentTitle": { + "cameras": "カメラ統計 - Frigate", + "general": "一般統計 - Frigate", + "storage": "ストレージ統計 - Frigate" + } +} diff --git a/web/public/locales/nb-NO/common.json b/web/public/locales/nb-NO/common.json index b0d88a001..df446387f 100644 --- a/web/public/locales/nb-NO/common.json +++ b/web/public/locales/nb-NO/common.json @@ -189,7 +189,8 @@ "pl": "Polski (Polsk)", "uk": "Українська (Ukrainsk)", "yue": "粵語 (Kantonesisk)", - "th": "ไทย (Thai)" + "th": "ไทย (Thai)", + "ca": "Català (Katalansk)" }, "appearance": "Utseende", "darkMode": { diff --git a/web/public/locales/nb-NO/views/settings.json b/web/public/locales/nb-NO/views/settings.json index c5545985d..f98f80b23 100644 --- a/web/public/locales/nb-NO/views/settings.json +++ b/web/public/locales/nb-NO/views/settings.json @@ -148,7 +148,7 @@ }, "camera": { "streams": { - "desc": "Deaktivering av et kamera stopper Frigates behandling av dette kameraets strømmer fullstendig. Deteksjon, opptak og feilsøking vil være utilgjengelig.
    Merk: Dette deaktiverer ikke go2rtc-restrømming.", + "desc": "Midlertidig deaktiver et kamera til Frigate startes på nytt. Deaktivering av et kamera stopper Frigates behandling av dette kameraets strømmer fullstendig. Deteksjon, opptak og feilsøking vil være utilgjengelig.
    Merk: Dette deaktiverer ikke go2rtc-restrømming.", "title": "Strømmer" }, "reviewClassification": { @@ -175,7 +175,7 @@ "title": "Kamerainnstillinger", "review": { "title": "Inspeksjon", - "desc": "Aktiver/deaktiver varsler og deteksjoner for dette kameraet. Når deaktivert, vil det ikke genereres nye inspeksjonselementer.", + "desc": "Aktiver/deaktiver varsler og deteksjoner midlertidig for dette kameraet til Frigate startes på nytt. Når deaktivert, vil det ikke genereres nye inspeksjonselementer. ", "alerts": "Varsler ", "detections": "Deteksjoner " } diff --git a/web/public/locales/nl/common.json b/web/public/locales/nl/common.json index fc1ead6cd..0af38d8a5 100644 --- a/web/public/locales/nl/common.json +++ b/web/public/locales/nl/common.json @@ -29,7 +29,7 @@ "month_one": "{{time}} maand", "month_other": "{{time}} maanden", "formattedTimestamp2": { - "12hour": "dd-MM HH:mm:ss", + "12hour": "dd/MM h:mm:ss", "24hour": "d MMM HH:mm:ss" }, "s": "{{time}}s", @@ -174,7 +174,8 @@ "hi": "हिन्दी (Hindi)", "ja": "日本語 (Japans)", "yue": "粵語 (Kantonees)", - "th": "ไทย (Thais)" + "th": "ไทย (Thais)", + "ca": "Català (Catalaans)" }, "darkMode": { "label": "Donkere modus", diff --git a/web/public/locales/nl/views/settings.json b/web/public/locales/nl/views/settings.json index faceb2fd0..929fe899f 100644 --- a/web/public/locales/nl/views/settings.json +++ b/web/public/locales/nl/views/settings.json @@ -151,7 +151,7 @@ "title": "Beoordeel", "alerts": "Meldingen ", "detections": "Detecties ", - "desc": "Schakel waarschuwingen en detecties voor deze camera in of uit. Wanneer deze zijn uitgeschakeld, worden er geen nieuwe beoordelingsitems aangemaakt." + "desc": "Schakel waarschuwingen en detecties voor deze camera tijdelijk in of uit totdat Frigate opnieuw wordt gestart. Wanneer uitgeschakeld, worden er geen nieuwe beoordelingsitems gegenereerd. " }, "reviewClassification": { "objectAlertsTips": "Alle {{alertsLabels}}-objecten op {{cameraName}} worden weergegeven als meldingen.", @@ -175,7 +175,7 @@ "unsavedChanges": "Niet-opgeslagen classificatie-instellingen voor {{camera}}" }, "streams": { - "desc": "Het uitschakelen van een camera laat Frigate volledig stoppen met het verwerken van de stream van die camera. Detectie, opname en foutopsporing zijn dan niet beschikbaar.
    Opmerking: dit schakelt de go2rtc-restreams niet uit.", + "desc": "Schakel een camera tijdelijk uit totdat Frigate opnieuw wordt gestart. Het uitschakelen van een camera stopt de verwerking van de streams van deze camera volledig door Frigate. Detectie, opname en foutopsporing zijn dan niet beschikbaar.
    Let op: dit schakelt go2rtc-restreams niet uit.", "title": "Streams" }, "title": "Camera-instellingen" diff --git a/web/public/locales/pt/audio.json b/web/public/locales/pt/audio.json index 018bdaee0..36b414716 100644 --- a/web/public/locales/pt/audio.json +++ b/web/public/locales/pt/audio.json @@ -1,142 +1,142 @@ { - "babbling": "Balbuciando", + "babbling": "Balbuciar", "speech": "Discurso", - "whoop": "Gritar", + "whoop": "Grito de Alegria", "bellow": "Abaixo", "yell": "Gritar", - "whispering": "Sussurando", - "child_singing": "Criança cantando", - "crying": "Chorando", - "singing": "Cantando", - "laughter": "Risada", - "breathing": "Respirando", + "whispering": "Sussurrar", + "child_singing": "Criança a Cantar", + "crying": "Choro", + "singing": "Canto", + "laughter": "Rir", + "breathing": "Respirar", "applause": "Aplausos", "meow": "Miau", - "run": "Corrida", + "run": "Correr", "sheep": "Ovelha", - "motorcycle": "Motocicleta", + "motorcycle": "Motociclo", "car": "Carro", "cat": "Gato", "horse": "Cavalo", - "bus": "Ônibus", + "bus": "Autocarro", "boat": "Barco", "bicycle": "Bicicleta", "skateboard": "Skate", "door": "Porta", "bird": "Pássaro", - "train": "Trem", + "train": "Comboio", "dog": "Cão", "mantra": "Mantra", - "humming": "Cantarolando", + "humming": "Cantarolar", "sigh": "Suspiro", "grunt": "Grunhido", - "whistling": "Assobio", - "wheeze": "Chiado", - "gasp": "Suspiro", + "whistling": "Assobiar", + "wheeze": "Chiadeira", + "gasp": "Ofegar", "cough": "Tosse", "sneeze": "Espirro", "footsteps": "Passos", - "chewing": "Mastigação", + "chewing": "Mastigar", "biting": "Morder", "gargling": "Gargarejar", - "stomach_rumble": "Ronco no estômago", + "stomach_rumble": "Ronco de Estômago", "burping": "Arroto", - "hiccup": "Soluço", - "fart": "Peido", + "hiccup": "Solavanco", + "fart": "Pum", "hands": "Mãos", - "finger_snapping": "Estalo de dedos", - "clapping": "Aplausos", - "heartbeat": "Batimento cardíaco", - "heart_murmur": "Sopro cardíaco", - "cheering": "Torcendo", - "chatter": "Conversa fiada", + "finger_snapping": "Estalar os Dedos", + "clapping": "Palmas", + "heartbeat": "Batimento Cardíaco", + "heart_murmur": "Sopro Cardíaco", + "cheering": "Aplausos Entusiásticos", + "chatter": "Conversar", "crowd": "Multidão", - "snoring": "Ronco", + "snoring": "Ressonar", "choir": "Coro", - "yodeling": "Cantarolar", - "chant": "Canto", - "synthetic_singing": "Canto sintético", - "rapping": "Cantando rap", + "yodeling": "Iodel", + "chant": "Cântico", + "synthetic_singing": "Canto Sintético", + "rapping": "Rap", "groan": "Gemido", - "snicker": "Risada", + "snicker": "Risinho", "animal": "Animal", - "pets": "Animais de estimação", + "pets": "Animais de Estimação", "bark": "Latido", - "howl": "Uivo", - "bow_wow": "Au au", - "growling": "Rosnando", - "whimper_dog": "Cachorro choramingando", + "howl": "Uivar", + "bow_wow": "Au-Au", + "growling": "Rosnar", + "whimper_dog": "Choro de Cão", "pig": "Porco", - "goat": "Bode", - "fowl": "Galinha", + "goat": "Cabra", + "fowl": "Aves de Capoeira", "chicken": "Galinha", "turkey": "Peru", "duck": "Pato", - "quack": "Quac", + "quack": "Quá-Quá", "goose": "Ganso", - "wild_animals": "Animais selvagens", + "wild_animals": "Animais Selvagens", "pigeon": "Pombo", - "dogs": "Cachorros", + "dogs": "Cães", "insect": "Inseto", "cricket": "Grilo", "mosquito": "Mosquito", "fly": "Mosca", - "frog": "Sapo", + "frog": "Rã", "snake": "Cobra", - "rattle": "Chocalho", + "rattle": "Chocalhar", "music": "Música", - "musical_instrument": "Instrumento musical", + "musical_instrument": "Instrumento Musical", "banjo": "Banjo", "keyboard": "Teclado", "piano": "Piano", "organ": "Órgão", "synthesizer": "Sintetizador", - "tambourine": "Pandeiro", + "tambourine": "Pandeireta", "clarinet": "Clarinete", "harp": "Harpa", - "psychedelic_rock": "Rock psicodélico", - "waterfall": "Cachoeira", + "psychedelic_rock": "Rock Psicadélico", + "waterfall": "Cascata", "ocean": "Oceano", "fire": "Fogo", "ship": "Navio", - "car_alarm": "Alarme de carro", - "race_car": "Carro de corrida", - "truck": "Caminhão", - "ice_cream_truck": "Caminhão do sorvete", - "emergency_vehicle": "Veículo de emergência", - "police_car": "Carro da polícia", + "car_alarm": "Alarme de Carro", + "race_car": "Carro de Corridas", + "truck": "Camião", + "ice_cream_truck": "Carrinha de Gelados", + "emergency_vehicle": "Veículo de Emergência", + "police_car": "Carro da Polícia", "ambulance": "Ambulância", "helicopter": "Helicóptero", "engine": "Motor", "coin": "Moeda", "scissors": "Tesoura", - "electric_shaver": "Barbeador elétrico", - "computer_keyboard": "Teclado de computador", + "electric_shaver": "Barbeador Elétrico", + "computer_keyboard": "Teclado de Computador", "alarm": "Alarme", "telephone": "Telefone", "siren": "Sirene", - "smoke_detector": "Detector de fumaça", - "fire_alarm": "Alarme de incêndio", + "smoke_detector": "Detetor de Fumo", + "fire_alarm": "Alarme de Incêndio", "whistle": "Assobio", "clock": "Relógio", "tools": "Ferramentas", - "camera": "Câmera", - "chink": "Fenda", - "sound_effect": "Efeito sonoro", - "static": "Estático", - "pink_noise": "Ruído rosa", + "camera": "Câmara", + "chink": "Estilhaçar", + "sound_effect": "Efeito Sonoro", + "static": "Estática", + "pink_noise": "Ruído Rosa", "television": "Televisão", - "scream": "Grito", + "scream": "Grito Agudo", "glass": "Vidro", "wood": "Madeira", - "crack": "Rachadura", + "crack": "Rachar", "silence": "Silêncio", "steam": "Vapor", - "progressive_rock": "Rock progressivo", - "white_noise": "Ruído branco", + "progressive_rock": "Rock Progressivo", + "white_noise": "Ruído Branco", "maraca": "Maraca", "percussion": "Percussão", - "rats": "Ratazanas", + "rats": "Ratos", "oink": "Oinc", "waves": "Ondas", "shatter": "Quebrar", @@ -149,168 +149,168 @@ "toothbrush": "Escova de dentes", "sink": "Pia", "blender": "Liquidificador", - "pant": "Calça", - "snort": "Espirro", - "throat_clearing": "Limpeza de garganta", + "pant": "Ofegar", + "snort": "Espirrar pelo Nariz", + "throat_clearing": "Limpar a Garganta", "sniff": "Cheirar", "shuffle": "Embaralhar", - "children_playing": "Crianças brincando", - "purr": "Ronronando", + "children_playing": "Crianças a Brincar", + "purr": "Ronronar", "livestock": "Gado", - "cattle": "Gado", - "cock_a_doodle_doo": "Canto do Galo", - "coo": "Canto do Pombo", - "flapping_wings": "Asas batendo", + "cattle": "Gado Bovino", + "cock_a_doodle_doo": "Cucurucu", + "coo": "Arrulhar", + "flapping_wings": "Bater de Asas", "crow": "Corvo", - "hoot": "Canto da Coruja", - "mandolin": "Mandolino", - "whale_vocalization": "Canto da Baleia", - "sitar": "Sítara", - "plucked_string_instrument": "Instrumento de cordas à dedos", - "croak": "Canto do Sapo", - "guitar": "Violão", - "electric_guitar": "Guitarra", - "bass_guitar": "Baixo", - "acoustic_guitar": "Violão", - "ukulele": "Ukulelê", - "tapping": "Dedilhando", - "strum": "Corda de instrumento musical", - "drum_kit": "Bateria", + "hoot": "Piar", + "mandolin": "Mandolim", + "whale_vocalization": "Vocalização de Baleia", + "sitar": "Sitar", + "plucked_string_instrument": "Instrumento de Cordas Dedilhado", + "croak": "Coaxar", + "guitar": "Guitarra", + "electric_guitar": "Guitarra Elétrica", + "bass_guitar": "Baixo Elétrico", + "acoustic_guitar": "Guitarra Acústica", + "ukulele": "Ukulele", + "tapping": "Tocar com os Dedos", + "strum": "Dedilhar", + "drum_kit": "Bateria (Kit)", "gong": "Gongo", "orchestra": "Orquestra", "flute": "Flauta", "saxophone": "Saxofone", - "harmonica": "Gaita de boca", - "wind_instrument": "Instrumento de sopro", - "trumpet": "Trumpete", + "harmonica": "Harmónica", + "wind_instrument": "Instrumento de Sopro", + "trumpet": "Trompete", "violin": "Violino", - "cello": "Celo", - "double_bass": "Baixo duplo", - "church_bell": "Sino de igreja", - "bicycle_bell": "Sino de bicicleta", - "bagpipes": "Gaita de foles", - "cowbell": "Sininho da Vaca", - "hiss": "Sussuro", - "caterwaul": "Gritaria", + "cello": "Violoncelo", + "double_bass": "Contrabaixo", + "church_bell": "Sino de Igreja", + "bicycle_bell": "Sino de Bicicleta", + "bagpipes": "Gaita de Foles", + "cowbell": "Sino de Vaca", + "hiss": "Sibilar", + "caterwaul": "Miado Forte", "clip_clop": "Cavalgar", "neigh": "Relincho", "moo": "Mugido", - "gobble": "Grasnado", - "cluck": "Cacarejo", - "caw": "Gato", - "chirp": "Pío", - "yip": "Chicote", - "bleat": "Balir", + "gobble": "Gluglu (Peru)", + "cluck": "Cacarejar", + "caw": "Grasnido", + "chirp": "Piar (Passarinho)", + "yip": "Latido Agudo", + "bleat": "Balar", "honk": "Buzina", - "roaring_cats": "Gatos a ronronar", + "roaring_cats": "Gatos a Ruge", "roar": "Rugido", - "squawk": "Cacarejar", - "patter": "Conversa", - "buzz": "Zombido", - "steel_guitar": "Guitarra de colo", - "zither": "Citara", + "squawk": "Chilrear Estridente", + "patter": "Tamborilar", + "buzz": "Zumbido", + "steel_guitar": "Guitarra Steel", + "zither": "Cítara", "electric_piano": "Piano Elétrico", - "electronic_organ": "Órgão Elétrico", + "electronic_organ": "Órgão Eletrónico", "hammond_organ": "Órgão Hammond", - "sampler": "Amostrador", - "harpsichord": "Cravo", - "drum_machine": "Máquina de Tambor", + "sampler": "Sampler", + "harpsichord": "Cravo (Instrumento)", + "drum_machine": "Máquina de Ritmos", "drum": "Tambor", - "snare_drum": "Tambor de Laço", - "rimshot": "Som circular", - "drum_roll": "Tambor de Rolo", - "bass_drum": "Tambor Baixo", - "timpani": "Tímpanos", + "snare_drum": "Tarola", + "rimshot": "Tocada de Caixa (Rimshot)", + "drum_roll": "Rufar de Tambor", + "bass_drum": "Bombo", + "timpani": "Tímpano", "tabla": "Tabla", - "cymbal": "Címbalo", - "hi_hat": "Conjunto Címbalos", - "wood_block": "Bloco de madeira", - "tubular_bells": "Sinos tubulares", - "mallet_percussion": "Percussão de malho", - "glockenspiel": "Carrilhão", - "electronic_dance_music": "Música de Dança Eletrônica", + "cymbal": "Prato de Bateria", + "hi_hat": "Prato Hi-Hat", + "wood_block": "Bloco de Madeira", + "tubular_bells": "Sinos Tubulares", + "mallet_percussion": "Percussão com Baquetas", + "glockenspiel": "Glockenspiel", + "electronic_dance_music": "Música de Dança Eletrónica", "ambient_music": "Música Ambiente", - "trance_music": "Música de Trance", + "trance_music": "Música Trance", "music_of_latin_america": "Música da América Latina", "salsa_music": "Música Salsa", - "flamenco": "Flamengo", + "flamenco": "Flamenco", "blues": "Blues", - "music_for_children": "Música para crianças", + "music_for_children": "Música para Crianças", "new-age_music": "Música New Age", "vocal_music": "Música Vocal", - "a_capella": "A cappella", + "a_capella": "A Capella", "music_of_africa": "Música de África", - "lullaby": "Canção de embalar", - "video_game_music": "Música de vídeo-game", + "lullaby": "Canção de Embalar", + "video_game_music": "Música de Videogame", "christmas_music": "Música de Natal", - "dance_music": "Música Dance", + "dance_music": "Música de Dança", "wedding_music": "Música de Casamento", "happy_music": "Música Alegre", "sad_music": "Música Triste", - "tender_music": "Música Ternurenta", + "tender_music": "Música Suave", "exciting_music": "Música Excitante", "scary_music": "Música Assustadora", "wind": "Vento", - "rustling_leaves": "Folhas a farfalhar", - "wind_noise": "Vento ruidoso", - "thunderstorm": "Tempestade", + "rustling_leaves": "Folhas a Mexer", + "wind_noise": "Ruído do Vento", + "thunderstorm": "Trovoada", "thunder": "Trovão", "water": "Água", "rain": "Chuva", - "raindrop": "Gotas de chuva", - "rain_on_surface": "Chuva numa superfície", - "stream": "Transmissão", - "gurgling": "Giratório", + "raindrop": "Gota de Chuva", + "rain_on_surface": "Chuva a Cair na Superfície", + "stream": "Torrente", + "gurgling": "Gorgolejar", "train_whistle": "Apito de Comboio", "train_horn": "Buzina de Comboio", - "railroad_car": "Carruagem de comboio", - "train_wheels_squealing": "Rodas do comboio a chiar", + "railroad_car": "Carruagem Ferroviária", + "train_wheels_squealing": "Rodas de Comboio a Ranger", "subway": "Metro", "aircraft": "Aeronave", - "aircraft_engine": "Motor Aeronave", + "aircraft_engine": "Motor de Aeronave", "jet_engine": "Motor a Jato", "propeller": "Hélice", "jackhammer": "Britadeira", "sawing": "Serrar", - "filing": "Depósito", - "power_tool": "Ferramenta elétrica", - "sanding": "Lixar", - "drill": "Perfurar", + "filing": "Lixar", + "power_tool": "Ferramenta Elétrica", + "sanding": "Lixar Madeira", + "drill": "Berbequim", "explosion": "Explosão", - "gunshot": "Tiro", + "gunshot": "Disparo de Arma", "machine_gun": "Metralhadora", - "fusillade": "Fuzilada", + "fusillade": "Rajada de Disparos", "artillery_fire": "Fogo de Artilharia", - "cap_gun": "Pistola de ar comprimido", - "fireworks": "Fogo Artificio", + "cap_gun": "Pistola de Brincar", + "fireworks": "Fogo de Artifício", "firecracker": "Bombinha", - "burst": "Rebentar", - "typing": "Digitando", + "burst": "Ruptura", + "typing": "Digitar", "angry_music": "Música Zangada", - "typewriter": "Máquina de escrever", + "typewriter": "Máquina de Escrever", "marimba": "Marimba", "vibraphone": "Vibrafone", "steelpan": "Tambor de aço", - "brass_instrument": "Instrumento de sopro", - "french_horn": "Trompa Francesa", + "brass_instrument": "Instrumento de Metal", + "french_horn": "Trompa", "trombone": "Trombone", "heavy_metal": "Heavy Metal", - "bowed_string_instrument": "Instrumento de corda curvada", - "string_section": "Seção de cordas", + "bowed_string_instrument": "Instrumento de Cordas com Arco", + "string_section": "Secção de Cordas", "bell": "Sino", - "jingle_bell": "Jingle Bell", + "jingle_bell": "Sino de Natal", "tuning_fork": "Diapasão", - "wind_chime": "Carrilhão de Vento", - "pizzicato": "beliscar", - "chime": "harmonia", + "wind_chime": "Sino de Vento", + "pizzicato": "Pizzicato", + "chime": "Carrilhão", "accordion": "Acordeão", "didgeridoo": "Didgeridoo", - "theremin": "Teremim", - "singing_bowl": "Tigela Cantante", - "scratching": "Coçar", + "theremin": "Theremin", + "singing_bowl": "Tigela Sonora", + "scratching": "Raspar", "hip_hop_music": "Música Hip-Hop", - "beatboxing": "Beatboxing", - "rock_music": "Música rock", + "beatboxing": "Beatbox", + "rock_music": "Música Rock", "punk_rock": "Punk Rock", "grunge": "Grunge", "rock_and_roll": "Rock and Roll", @@ -322,21 +322,21 @@ "bluegrass": "Bluegrass", "funk": "Funk", "folk_music": "Música Folclórica", - "swing_music": "Musica Swing", - "middle_eastern_music": "Música do Oriente Médio", + "swing_music": "Música Swing", + "middle_eastern_music": "Música do Médio Oriente", "jazz": "Jazz", "disco": "Disco", - "classical_music": "Música clássica", - "opera": "Opera", - "electronic_music": "Música Eletrônica", + "classical_music": "Música Clássica", + "opera": "Ópera", + "electronic_music": "Música Eletrónica", "house_music": "Música House", "techno": "Techno", "dubstep": "Dubstep", "drum_and_bass": "Drum and Bass", - "electronica": "Eletrônica", + "electronica": "Eletrónica", "afrobeat": "Afrobeat", "christian_music": "Música Cristã", - "gospel_music": "Musica Gospel", + "gospel_music": "Música Gospel", "music_of_asia": "Música da Ásia", "carnatic_music": "Música Carnática", "music_of_bollywood": "Música de Bollywood", @@ -344,86 +344,86 @@ "traditional_music": "Música Tradicional", "independent_music": "Música Independente", "song": "Canção", - "background_music": "Música de fundo", - "theme_music": "Música Temática", - "jingle": "Tinir", - "soundtrack_music": "Música de trilha sonora", - "air_brake": "Freio a ar", - "air_horn": "Buzina de ar", - "reversing_beeps": "Bips de ré", - "crackle": "Estalar", - "traffic_noise": "Ruído de trânsito", - "power_windows": "Janelas elétricas", - "skidding": "Derrapando", - "tire_squeal": "Guincho de pneu", - "car_passing_by": "Carro passando", + "background_music": "Música de Fundo", + "theme_music": "Música de Tema", + "jingle": "Tilintar", + "soundtrack_music": "Música de Banda Sonora", + "air_brake": "Travão de Ar", + "air_horn": "Buzina de Ar", + "reversing_beeps": "Bip de Marcha-Atrás", + "crackle": "Estalidos", + "traffic_noise": "Ruído de Trânsito", + "power_windows": "Janelas Elétricas", + "skidding": "Derrapar", + "tire_squeal": "Guinada de Pneus", + "car_passing_by": "Carro a Passar", "sailboat": "Veleiro", - "rowboat": "Barco a remo", - "motorboat": "Barco a motor", - "motor_vehicle": "Veículo motorizado", - "fire_engine": "Carro de bombeiros", - "toot": "Apito", + "rowboat": "Barco a Remos", + "motorboat": "Barco a Motor", + "motor_vehicle": "Veículo Motorizado", + "fire_engine": "Carro dos Bombeiros", + "toot": "Buzina Curta", "rail_transport": "Transporte Ferroviário", - "accelerating": "Acelerando", - "dental_drill's_drill": "Broca dentária", - "lawn_mower": "Cortador de grama", + "accelerating": "Aceleração", + "dental_drill's_drill": "Broca Dentária", + "lawn_mower": "Corta-relva", "chainsaw": "Motosserra", "medium_engine": "Motor Médio", - "engine_knocking": "Batida do motor", - "engine_starting": "Partida do motor", - "idling": "Inativo", - "slam": "Bater", - "light_engine": "Motor leve", - "sliding_door": "Porta deslizante", - "knock": "Truz", - "fixed-wing_aircraft": "Aeronaves de asa fixa", - "doorbell": "Campainha", - "ding-dong": "Ding Dong", - "heavy_engine": "Motor pesado", - "squeak": "Rangido", - "cupboard_open_or_close": "Armário aberto ou fechado", - "drawer_open_or_close": "Gaveta aberta ou fechada", - "tap": "Tocar", + "engine_knocking": "Batidas do Motor", + "engine_starting": "Partida de Motor", + "idling": "Ao Ralenti", + "slam": "Bater Forte", + "light_engine": "Motor Leve", + "sliding_door": "Porta de Correr", + "knock": "Tocar à Porta", + "fixed-wing_aircraft": "Aeronave de Asa Fixa", + "doorbell": "Campainha de Porta", + "ding-dong": "Ding-Dong", + "heavy_engine": "Motor Pesado", + "squeak": "Ranger", + "cupboard_open_or_close": "Armário a Abrir ou Fechar", + "drawer_open_or_close": "Gaveta a Abrir ou Fechar", + "tap": "Toque", "dishes": "Pratos", "cutlery": "Talheres", "chopping": "Cortar", "frying": "Fritar", - "microwave_oven": "Forno de microondas", - "water_tap": "Torneira de água", + "microwave_oven": "Forno Micro-ondas", + "water_tap": "Torneira", "bathtub": "Banheira", - "keys_jangling": "Chaves tilintando", + "keys_jangling": "Chaves a Tilintar", "vacuum_cleaner": "Aspirador", - "zipper": "Zíper", - "shuffling_cards": "Embaralhando cartas", - "toilet_flush": "Descarga de vaso sanitário", - "electric_toothbrush": "Escova de dentes elétrica", - "writing": "Escrita", - "telephone_bell_ringing": "Campainha do telefone tocando", - "ringtone": "Toca a tocar", - "telephone_dialing": "Discagem telefônica", - "dial_tone": "Tom de discagem", - "busy_signal": "Sinal de ocupado", - "steam_whistle": "Apito a vapor", + "zipper": "Fecho Éclair", + "shuffling_cards": "Embaralhar Cartas", + "toilet_flush": "Descarga de Sanita", + "electric_toothbrush": "Escova de Dentes Elétrica", + "writing": "Escrever", + "telephone_bell_ringing": "Campainha de Telefone", + "ringtone": "Toque de Telemóvel", + "telephone_dialing": "Discar Telefone", + "dial_tone": "Tom de Marcações", + "busy_signal": "Sinal de Ocupado", + "steam_whistle": "Apito a Vapor", "mechanisms": "Mecanismos", "ratchet": "Catraca", - "civil_defense_siren": "Sirene da Defesa Civil", - "buzzer": "Besouro", - "foghorn": "Sirene de nevoeiro", - "alarm_clock": "Relógio de alarme", + "civil_defense_siren": "Sirene de Defesa Civil", + "buzzer": "Campainha", + "foghorn": "Buzina de Nevoeiro", + "alarm_clock": "Despertador", "gears": "Engrenagens", "pulleys": "Polias", - "sewing_machine": "Máquina de costura", - "mechanical_fan": "Ventilador mecânico", - "air_conditioning": "Ar condicionado", - "cash_register": "Caixa registradora", + "sewing_machine": "Máquina de Costura", + "mechanical_fan": "Ventoinha Mecânica", + "air_conditioning": "Ar Condicionado", + "cash_register": "Caixa Registadora", "printer": "Impressora", - "tick": "Marcação", - "tick-tock": "Tique-taque", - "single-lens_reflex_camera": "Câmera de Reflexo de lente única", + "tick": "Tique-taque", + "tick-tock": "Tique-Taque", + "single-lens_reflex_camera": "Câmara Reflex de Lente Única", "hammer": "Martelo", "boom": "Estrondo", - "chop": "Cortar", + "chop": "Corte", "eruption": "Erupção", - "environmental_noise": "Ruído ambiental", + "environmental_noise": "Ruído Ambiental", "field_recording": "Gravação de Campo" } diff --git a/web/public/locales/pt/common.json b/web/public/locales/pt/common.json index 4a7c32c33..ad63195c1 100644 --- a/web/public/locales/pt/common.json +++ b/web/public/locales/pt/common.json @@ -114,8 +114,8 @@ "close": "Fechar", "history": "Histórico", "back": "Voltar", - "fullscreen": "Tela cheia", - "exitFullscreen": "Sair da tela cheia", + "fullscreen": "Ecrã Completo", + "exitFullscreen": "Sair do Ecrã Completo", "twoWayTalk": "Conversa bidirecional", "cameraAudio": "Áudio da câmera", "edit": "Editar", @@ -134,7 +134,7 @@ "export": "Exportar", "next": "Próximo", "play": "Tocar", - "pictureInPicture": "Imagem na Imagem" + "pictureInPicture": "Sobrepor Imagem" }, "label": { "back": "Voltar" @@ -143,9 +143,9 @@ "user": { "logout": "Sair", "account": "Conta", - "current": "Usuário atual: {{user}}", + "current": "Utilizador atual: {{user}}", "setPassword": "Definir senha", - "title": "Usuário", + "title": "Utilizador", "anonymous": "anônimo" }, "faceLibrary": "Biblioteca de rostos", @@ -200,7 +200,8 @@ "ro": "Romeno (Română)", "hu": "Húngaro (Magyar)", "sk": "Eslovaco (Slovenčina)", - "th": "Tailandês" + "th": "Tailandês", + "ca": "Català (Catalão)" }, "appearance": "Aparência", "darkMode": { @@ -219,9 +220,9 @@ "restart": "Reiniciar Frigate", "live": { "title": "Ao vivo", - "allCameras": "Todas as câmeras", + "allCameras": "Todas as câmaras", "cameras": { - "title": "Câmeras", + "title": "Câmaras", "count_one": "{{count}} Câmera", "count_many": "{{count}} Câmeras", "count_other": "{{count}} Câmeras" diff --git a/web/public/locales/pt/components/auth.json b/web/public/locales/pt/components/auth.json index 5de4e07cb..5dcccd7d6 100644 --- a/web/public/locales/pt/components/auth.json +++ b/web/public/locales/pt/components/auth.json @@ -1,14 +1,14 @@ { "form": { - "user": "Nome de usuário", + "user": "Nome do utilizador", "login": "Login", "errors": { - "usernameRequired": "Nome de usuário é obrigatório", + "usernameRequired": "O nome do utilizador é obrigatório", "passwordRequired": "Senha é necessária", "rateLimit": "Limite de taxa excedido. Tente novamente mais tarde.", "loginFailed": "Falha no login", "unknownError": "Erro desconhecido. Verifique os logs.", - "webUnknownError": "Erro desconhecido. Verifique os logs do console." + "webUnknownError": "Erro desconhecido. Verifique os logs da consola." }, "password": "Senha" } diff --git a/web/public/locales/pt/components/camera.json b/web/public/locales/pt/components/camera.json index 08dd97493..fa4a5fdc1 100644 --- a/web/public/locales/pt/components/camera.json +++ b/web/public/locales/pt/components/camera.json @@ -1,31 +1,31 @@ { "group": { - "label": "Grupos de câmeras", - "add": "Adicionar grupo de câmeras", - "edit": "Editar grupo de câmeras", + "label": "Grupos de câmaras", + "add": "Adicionar grupo de câmaras", + "edit": "Editar grupo de câmaras", "delete": { - "label": "Excluir grupo de câmeras", + "label": "Excluir grupo de câmaras", "confirm": { "title": "Confirmar exclusão", - "desc": "Tem certeza de que deseja excluir o grupo de câmeras {{name}}?" + "desc": "Tem certeza de que deseja excluir o grupo de câmaras {{name}}?" } }, "name": { "label": "Nome", - "placeholder": "Digite um nome…", + "placeholder": "Digita um nome…", "errorMessage": { - "exists": "O nome do grupo de câmeras já existe.", - "nameMustNotPeriod": "O nome do grupo de câmeras não deve conter ponto.", - "mustLeastCharacters": "O nome do grupo de câmeras deve ter pelo menos 2 caracteres.", - "invalid": "Nome de grupo de câmeras inválido." + "exists": "O nome do grupo de câmaras já existe.", + "nameMustNotPeriod": "O nome do grupo de câmaras não deve conter pontos.", + "mustLeastCharacters": "O nome do grupo de câmaras deve ter pelo menos 2 caracteres.", + "invalid": "Nome de grupo de câmaras inválido." } }, "cameras": { - "desc": "Selecione câmeras para este grupo.", - "label": "Câmeras" + "desc": "Selecione câmaras para este grupo.", + "label": "Câmaras" }, "icon": "Ícone", - "success": "O grupo de câmeras ({{name}}) foi salvo.", + "success": "O grupo de câmaras ({{name}}) foi guardado.", "camera": { "setting": { "audioIsAvailable": "O áudio está disponível para esta transmissão", @@ -33,7 +33,7 @@ "audio": { "tips": { "document": "Leia a documentação ", - "title": "O áudio deve ser emitido pela sua câmera e configurado no go2rtc para esta transmissão." + "title": "O áudio deve ser emitido pela sua câmara e configurado no go2rtc para esta transmissão." } }, "streamMethod": { @@ -41,28 +41,28 @@ "method": { "smartStreaming": { "label": "Transmissão inteligente (recomendado)", - "desc": "A transmissão inteligente atualizará a imagem da sua câmera uma vez por minuto quando nenhuma atividade detectável estiver ocorrendo para conservar largura de banda e recursos. Quando a atividade é detectada, a imagem muda perfeitamente para uma transmissão ao vivo." + "desc": "A transmissão inteligente atualizará a imagem da sua câmara uma vez por minuto quando nenhuma atividade detectável estiver ocorrendo para conservar largura de banda e recursos. Quando a atividade é detectada, a imagem muda perfeitamente para uma transmissão ao vivo." }, "continuousStreaming": { "label": "Transmissão contínua", "desc": { - "warning": "A transmissão contínua pode causar alto uso de largura de banda e problemas de desempenho. Use com cautela.", - "title": "A imagem da câmera sempre será uma transmissão ao vivo quando visível no painel, mesmo que nenhuma atividade esteja sendo detectada." + "warning": "A transmissão contínua pode causar alto uso de largura de banda e problemas de desempenho. Use com precaução.", + "title": "A imagem da câmara sempre será uma transmissão ao vivo quando visível no painel, mesmo que nenhuma atividade esteja sendo detectada." } }, "noStreaming": { "label": "Sem transmissão", - "desc": "As imagens da câmera serão atualizadas apenas uma vez por minuto e não haverá transmissão ao vivo." + "desc": "As imagens da câmara serão atualizadas apenas uma vez por minuto e não haverá transmissão ao vivo." } }, "placeholder": "Escolha um método de transmissão" }, "compatibilityMode": { "label": "Modo de compatibilidade", - "desc": "Habilite esta opção somente se a transmissão ao vivo da sua câmera estiver exibindo artefatos de cor e tiver uma linha diagonal no lado direito da imagem." + "desc": "Habilite esta opção somente se a transmissão ao vivo da sua câmara estiver exibindo artefatos de cor e tiver uma linha diagonal no lado direito da imagem." }, - "label": "Configurações de transmissão da câmera", - "desc": "Altere as opções de transmissão ao vivo para o painel deste grupo de câmeras. Essas configurações são específicas do dispositivo/navegador.", + "label": "Configurações de transmissão da câmara", + "desc": "Altere as opções de transmissão ao vivo para o painel deste grupo de câmaras. Essas configurações são específicas do dispositivo/navegador.", "title": "{{cameraName}} configurações de transmissão", "placeholder": "Escolha uma transmissão", "stream": "Transmissão" diff --git a/web/public/locales/pt/components/dialog.json b/web/public/locales/pt/components/dialog.json index 04c623056..766711539 100644 --- a/web/public/locales/pt/components/dialog.json +++ b/web/public/locales/pt/components/dialog.json @@ -74,20 +74,20 @@ }, "select": "Selecione", "name": { - "placeholder": "Nomeie a exportação" + "placeholder": "Nome da exportação" } }, "streaming": { "showStats": { "label": "Mostrar estatísticas de transmissão", - "desc": "Habilite esta opção para mostrar estatísticas de transmissão como uma sobreposição no feed da câmera." + "desc": "Habilite esta opção para mostrar estatísticas de transmissão como uma sobreposição no feed da câmara." }, "restreaming": { "desc": { - "title": "Configure o go2rtc para obter opções adicionais de visualização ao vivo e áudio para esta câmera.", + "title": "Configure o go2rtc para obter opções adicionais de visualização ao vivo e áudio para esta câmara.", "readTheDocumentation": "Leia a documentação" }, - "disabled": "A retransmissão não está habilitada para esta câmera." + "disabled": "A retransmissão não está habilitada para esta câmara." }, "label": "Transmissão", "debugView": "Exibição de depuração" @@ -110,16 +110,16 @@ "confirmDelete": { "title": "Confirmar exclusão", "desc": { - "selected": "Tem certeza de que deseja excluir todos os vídeos gravados associados a este item de revisão?

    Segure a tecla Shift para ignorar esta caixa de diálogo no futuro." + "selected": "Tem certeza de que deseja excluir todos os vídeos gravados associados a este item de analise?

    Segure a tecla Shift para ignorar esta caixa de diálogo no futuro." }, "toast": { - "success": "As imagens de vídeo associadas aos itens de revisão selecionados foram excluídas com êxito.", + "success": "As imagens de vídeo associadas aos itens de analise selecionados foram excluídas com êxito.", "error": "Falhou a apagar: {{error}}" } }, "button": { "export": "Exportar", - "markAsReviewed": "Marcar como revisado", + "markAsReviewed": "Marcar como analisado", "deleteNow": "Excluir agora" } } diff --git a/web/public/locales/pt/components/filter.json b/web/public/locales/pt/components/filter.json index abdd429ff..f53bfb480 100644 --- a/web/public/locales/pt/components/filter.json +++ b/web/public/locales/pt/components/filter.json @@ -53,14 +53,14 @@ "relevance": "Relevância" }, "cameras": { - "label": "Filtro de câmeras", + "label": "Filtro de câmaras", "all": { - "short": "Câmeras", - "title": "Todas as câmeras" + "short": "Câmaras", + "title": "Todas as câmaras" } }, "review": { - "showReviewed": "Mostrar revisado" + "showReviewed": "Mostrar analisados" }, "motion": { "showMotionOnly": "Mostrar apenas movimento" @@ -97,7 +97,7 @@ "label": "Nível de log do filtro", "loading": { "title": "Carregando", - "desc": "Quando o painel de logs está rolado até o final, novos logs são transmitidos automaticamente à medida que são adicionados." + "desc": "Ao fazer scroll até ao fundo no painel de logs, novos registos são automaticamente apresentados à medida que são adicionados." }, "filterBySeverity": "Filtrar logs por gravidade", "disableLogStreaming": "Desativar transmissão de logs", @@ -117,11 +117,11 @@ "desc": "Excluir estes {{objectLength}} objetos rastreados remove a captura de imagem, quaisquer embeddings salvos e todas as entradas associadas ao ciclo de vida do objeto. As gravações desses objetos rastreados na visualização do Histórico NÃO serão excluídas.

    Tem certeza de que deseja continuar?

    Mantenha pressionada a tecla Shift para ignorar este diálogo no futuro." }, "recognizedLicensePlates": { - "title": "Placas Reconhecidas", - "noLicensePlatesFound": "Nenhuma placa encontrada.", - "selectPlatesFromList": "Selecione uma ou mais placas da lista.", - "loadFailed": "Falha ao carregar as placas reconhecidas.", - "loading": "Carregando placas reconhecidas…", - "placeholder": "Digite para buscar placas…" + "title": "Matrículas Reconhecidas", + "noLicensePlatesFound": "Nenhuma matrícula encontrada.", + "selectPlatesFromList": "Selecione uma ou mais matrículas da lista.", + "loadFailed": "Falha ao carregar as matrículas reconhecidas.", + "loading": "Carregando matrículas reconhecidas…", + "placeholder": "Digite para procurar matrículas…" } } diff --git a/web/public/locales/pt/components/input.json b/web/public/locales/pt/components/input.json index a78718405..3332f0820 100644 --- a/web/public/locales/pt/components/input.json +++ b/web/public/locales/pt/components/input.json @@ -1,9 +1,9 @@ { "button": { "downloadVideo": { - "label": "Baixar vídeo", + "label": "Descarregar vídeo", "toast": { - "success": "O vídeo do seu item de análise começou a ser baixado." + "success": "O vídeo do seu item de análise começou a ser descarregado." } } } diff --git a/web/public/locales/pt/components/player.json b/web/public/locales/pt/components/player.json index 851aa9547..301e3f60d 100644 --- a/web/public/locales/pt/components/player.json +++ b/web/public/locales/pt/components/player.json @@ -9,7 +9,7 @@ "title": "Transmissão offline", "desc": "Nenhum quadro foi recebido na transmissão de detecção {{cameraName}}, verifique os logs de erro" }, - "cameraDisabled": "A câmera está desativada", + "cameraDisabled": "A câmara está desativada", "stats": { "streamType": { "title": "Tipo de transmissão:", diff --git a/web/public/locales/pt/objects.json b/web/public/locales/pt/objects.json index a9d7f2664..ada61d184 100644 --- a/web/public/locales/pt/objects.json +++ b/web/public/locales/pt/objects.json @@ -1,29 +1,29 @@ { "giraffe": "Girafa", - "cup": "Xicara", + "cup": "Chávena", "person": "Pessoa", - "stop_sign": "Sinal de Pare", + "stop_sign": "Sinal de Stop", "sheep": "Ovelha", - "sandwich": "Lanche", + "sandwich": "Sandes", "carrot": "Cenoura", "dining_table": "Mesa de jantar", - "motorcycle": "Motocicleta", + "motorcycle": "Motociclo", "bicycle": "Bicicleta", "street_sign": "Sinal de rua", "pizza": "Pizza", - "parking_meter": "Medidor de estacionamento", + "parking_meter": "Parquímetro", "skateboard": "Skate", "bottle": "Garrafa", "car": "Carro", "airplane": "Avião", - "bus": "Ônibus", - "train": "Trem", + "bus": "Autocarro", + "train": "Comboio", "boat": "Barco", - "traffic_light": "Semaforo", - "fire_hydrant": "Hidratação de Fogo", + "traffic_light": "Semáforo", + "fire_hydrant": "Boca de Incêndio", "bird": "Pássaro", "cat": "Gato", - "bench": "Banco", + "bench": "Banco de jardim/rua", "elephant": "Elefante", "hat": "Chapéu", "backpack": "Mochila", @@ -31,30 +31,30 @@ "handbag": "Bolsa de mão", "tie": "Gravata", "suitcase": "Mala de viagem", - "frisbee": "Frisbee", + "frisbee": "Disco de Frisbee", "skis": "Esquis", "kite": "Kite", "baseball_bat": "Taco basebol", "tennis_racket": "Raquete de Tenis", - "plate": "Placa", - "wine_glass": "Taça de vinho", + "plate": "Prato", + "wine_glass": "Copo de Vinho", "fork": "Garfo", "spoon": "Colher", "bowl": "Tijela", "banana": "Banana", "apple": "Maça", - "hot_dog": "Cão quente", + "hot_dog": "Cachorro quente", "donut": "Donut", "cake": "Bolo", "chair": "Cadeira", "potted_plant": "Planta em vaso", "mirror": "Espelho", "desk": "Mesa", - "toilet": "Banheiro", + "toilet": "Casa de Banho", "door": "Porta", "baseball_glove": "Luva de beisebol", - "surfboard": "Prancha", - "broccoli": "Brócolis", + "surfboard": "Prancha de surf", + "broccoli": "Brócolos", "snowboard": "Snowboard", "dog": "Cão", "bear": "Urso", @@ -72,25 +72,25 @@ "keyboard": "Teclado", "animal": "Animal", "bark": "Latido", - "goat": "Bode", + "goat": "Cabra", "vehicle": "Veículo", "scissors": "Tesoura", "mouse": "Rato", - "teddy_bear": "Urso de pelúcia", + "teddy_bear": "Urso de peluche", "hair_dryer": "Secador de cabelo", "toothbrush": "Escova de dentes", "hair_brush": "Escova de Cabelo", "squirrel": "Esquilo", "couch": "Sofá", "tv": "TV", - "laptop": "Laptop", - "remote": "Remoto", - "cell_phone": "Celular", + "laptop": "Portátil", + "remote": "Controlo Remoto", + "cell_phone": "Telemóvel", "microwave": "Microondas", "oven": "Forno", "toaster": "Torradeira", "sink": "Pia", - "refrigerator": "Refrigerador", + "refrigerator": "Frigorífico", "blender": "Liquidificador", "book": "Livro", "vase": "Vaso", @@ -98,19 +98,19 @@ "fox": "Raposa", "rabbit": "Coelho", "raccoon": "Guaxinim", - "robot_lawnmower": "Robô cortador de grama", - "waste_bin": "Lixeira", - "on_demand": "Sob demanda", + "robot_lawnmower": "Robô corta relva", + "waste_bin": "Contentor do Lixo", + "on_demand": "On Demand", "face": "Rosto", - "license_plate": "Placa", + "license_plate": "Matrícula", "package": "Pacote", "bbq_grill": "Churrasqueira", - "amazon": "Amazonas", + "amazon": "Amazon", "usps": "USPS", "ups": "UPS", "fedex": "FedEx", "dhl": "DHL", - "an_post": "Uma postagem", + "an_post": "An Post", "purolator": "Purolator", "postnl": "PostNL", "nzpost": "NZPost", diff --git a/web/public/locales/pt/views/configEditor.json b/web/public/locales/pt/views/configEditor.json index 86cb6d52d..6d6c98166 100644 --- a/web/public/locales/pt/views/configEditor.json +++ b/web/public/locales/pt/views/configEditor.json @@ -2,7 +2,7 @@ "configEditor": "Editor de configuração", "copyConfig": "Copiar configuração", "saveAndRestart": "Salvar e reiniciar", - "saveOnly": "Somente salvar", + "saveOnly": "Salvar Apenas", "toast": { "success": { "copyToClipboard": "Configuração copiada para a área de transferência." diff --git a/web/public/locales/pt/views/events.json b/web/public/locales/pt/views/events.json index 5c6e604a4..6478001c6 100644 --- a/web/public/locales/pt/views/events.json +++ b/web/public/locales/pt/views/events.json @@ -4,11 +4,11 @@ "label": "Movimento", "only": "Somente movimento" }, - "allCameras": "Todas as câmeras", + "allCameras": "Todas as câmaras", "empty": { "motion": "Nenhum dado de movimento encontrado", - "alert": "Não há alertas para revisar", - "detection": "Não há detecções para revisar" + "alert": "Não há alertas para análise", + "detection": "Não há detecções para análise" }, "timeline": "Linha do tempo", "events": { @@ -25,13 +25,13 @@ "calendarFilter": { "last24Hours": "Últimas 24 horas" }, - "markAsReviewed": "Marcar como revisado", - "markTheseItemsAsReviewed": "Marque esses itens como revisados", + "markAsReviewed": "Marcar como analisado", + "markTheseItemsAsReviewed": "Marque esses itens como analisados", "newReviewItems": { - "label": "Ver novos itens de revisão", - "button": "Novos itens para revisar" + "label": "Ver novos itens para analisar", + "button": "Novos itens para analisar" }, - "camera": "Câmera", + "camera": "Câmara", "detected": "detectado", "selected_one": "{{count}} selecionado", "selected_other": "{{count}} selecionados" diff --git a/web/public/locales/pt/views/explore.json b/web/public/locales/pt/views/explore.json index 5c8a0ccdc..a271d1df7 100644 --- a/web/public/locales/pt/views/explore.json +++ b/web/public/locales/pt/views/explore.json @@ -19,9 +19,9 @@ "textTokenizer": "Tokenizador de texto", "visionModelFeatureExtractor": "Extrator de características de modelo de visão" }, - "context": "O Frigate está baixando os modelos de incorporação necessários para dar suporte a funcionalidade de pesquisa semântica. Isso pode levar vários minutos, dependendo da velocidade da sua conexão de rede.", + "context": "O Frigate está descarregando os modelos de incorporação necessários para dar suporte a funcionalidade de pesquisa semântica. Isso pode levar vários minutos, dependendo da velocidade da sua conexão de rede.", "tips": { - "context": "Talvez você queira reindexar as incorporações dos seus objetos rastreados depois que os modelos forem baixados.", + "context": "Talvez você queira reindexar as incorporações dos seus objetos rastreados depois que os modelos forem descarregados.", "documentation": "Leia a documentação" }, "error": "Ocorreu um erro. Verifique os logs do Frigate." @@ -31,24 +31,24 @@ "details": { "timestamp": "Carimbo de hora", "item": { - "title": "Revisar detalhes do item", - "desc": "Revisar detalhes do item", + "title": "Analisar detalhes do item", + "desc": "Analisar detalhes do item", "tips": { - "hasMissingObjects": "Ajuste sua configuração se você quiser que o Frigate salve os objetos rastreados para os seguintes rótulos: {{objects}}", + "hasMissingObjects": "Ajuste sua configuração se você quiser que o Frigate guarde os objetos rastreados para os seguintes rótulos: {{objects}}", "mismatch_one": "{{count}} objeto indisponível foi detectado e incluído neste item de análise. Esses objetos não qualificaram como alerta ou detecção ou já foram limpos/excluídos.", "mismatch_many": "{{count}} objetos indisponíveis foram detectados e incluídos neste item de análise. Esses objetos não qualificaram como alerta ou detecção ou já foram limpos/excluídos.", "mismatch_other": "{{count}} objetos indisponíveis foram detectados e incluídos neste item de análise. Esses objetos não qualificaram como alerta ou detecção ou já foram limpos/excluídos." }, "toast": { "success": { - "regenerate": "Uma nova descrição foi solicitada pelo {{provider}}. Dependendo da velocidade do seu provedor, a nova descrição pode levar algum tempo para ser regenerada.", + "regenerate": "Uma nova descrição foi solicitada pelo {{provider}}. Dependendo da velocidade do seu fornecedor, a nova descrição pode levar algum tempo para ser regenerada.", "updatedSublabel": "Sub-rotulo atualizado com sucesso.", - "updatedLPR": "Placa de veículo atualizada com sucesso." + "updatedLPR": "Matrícula atualizada com sucesso." }, "error": { "regenerate": "Falha ao chamar {{provider}} para uma nova descrição: {{errorMessage}}", "updatedSublabelFailed": "Falha ao atualizar o sub-rotulo: {{errorMessage}}", - "updatedLPRFailed": "Falha ao atualizar a placa de veículo: {{errorMessage}}" + "updatedLPRFailed": "Falha ao atualizar a matrícula: {{errorMessage}}" } }, "button": { @@ -59,7 +59,7 @@ "zones": "Zonas", "description": { "label": "Descrição", - "aiTips": "O Frigate não solicitará uma descrição do seu provedor de IA Generativa até que o ciclo de vida do objeto rastreado tenha terminado.", + "aiTips": "O Frigate não solicitará uma descrição do seu fornecedor de IA Generativa até que o ciclo de vida do objeto rastreado tenha terminado.", "placeholder": "Descrição do objeto rastreado" }, "camera": "Câmera", @@ -84,11 +84,11 @@ "descNoLabel": "Digite um novo sub-rotulo para este objeto rastreado" }, "editLPR": { - "title": "Editar placa de veículo", - "desc": "Digite um novo valor de placa de veículo para este {{label}}", - "descNoLabel": "Digite um novo valor de placa de veículo para este objeto rastreado" + "title": "Editar matrícula", + "desc": "Digite um novo valor da matrícula para este {{label}}", + "descNoLabel": "Digite um novo valor da matrícula para este objeto rastreado" }, - "recognizedLicensePlate": "Placa de veículo reconhecida", + "recognizedLicensePlate": "Matrícula reconhecida", "estimatedSpeed": "Velocidade estimada", "objects": "Objetos", "expandRegenerationMenu": "Expandir menu de regeneração", @@ -131,8 +131,8 @@ "title": "Configurações de anotação", "offset": { "documentation": "Leia a documentação ", - "desc": "Esses dados vêm do feed de detecção da sua câmera, mas são sobrepostos nas imagens do feed de gravação. É improvável que os dois streams estejam perfeitamente sincronizados. Como resultado, a caixa delimitadora e o vídeo não se alinharão perfeitamente. No entanto, o campo annotation_offset pode ser usado para ajustar isso.", - "tips": "DICA: Imagine que há um clipe de evento com uma pessoa andando da esquerda para a direita. Se a caixa delimitadora da linha do tempo do evento estiver consistentemente à esquerda da pessoa, o valor deve ser diminuído. Da mesma forma, se uma pessoa estiver andando da esquerda para a direita e a caixa delimitadora estiver consistentemente à frente da pessoa, o valor deve ser aumentado.", + "desc": "Esses dados vêm do feed de detecção da sua câmara, mas são sobrepostos nas imagens do feed de gravação. É improvável que os dois streams estejam perfeitamente sincronizados. Como resultado, a caixa delimitadora e o vídeo não se alinharão perfeitamente. No entanto, o campo annotation_offset pode ser usado para ajustar isso.", + "tips": "DICA: Imagine que há um clipe de evento com uma pessoa a andar da esquerda para a direita. Se a caixa delimitadora da linha do tempo do evento estiver consistentemente à esquerda da pessoa, o valor deve ser diminuído. Da mesma forma, se uma pessoa estiver andando da esquerda para a direita e a caixa delimitadora estiver consistentemente à frente da pessoa, o valor deve ser aumentado.", "label": "Deslocamento de Anotação", "millisecondsToOffset": "Milissegundos para deslocar as anotações de detecção. Padrão: 0", "toast": { @@ -152,14 +152,14 @@ "createObjectMask": "Criar Máscara de Objeto", "adjustAnnotationSettings": "Ajustar configurações de anotação", "autoTrackingTips": "As posições da caixa delimitadora serão imprecisas para câmeras com rastreamento automático.", - "scrollViewTips": "Role para ver os momentos significativos do ciclo de vida deste objeto.", + "scrollViewTips": "Faça scroll para ver os momentos significativos do ciclo de vida deste objeto.", "count": "{{first}} de {{second}}", "trackedPoint": "Ponto Rastreado" }, "itemMenu": { "downloadSnapshot": { - "aria": "Baixar captura", - "label": "Baixar captura" + "aria": "Descarregar captura", + "label": "Descarregar captura" }, "viewObjectLifecycle": { "label": "Ver ciclo de vida do objeto", @@ -170,8 +170,8 @@ "aria": "Ver no Histórico" }, "downloadVideo": { - "label": "Baixar vídeo", - "aria": "Baixar vídeo" + "label": "Descarregar vídeo", + "aria": "Descarregar vídeo" }, "findSimilar": { "label": "Encontrar similar", diff --git a/web/public/locales/pt/views/faceLibrary.json b/web/public/locales/pt/views/faceLibrary.json index e163ec8fe..057e01569 100644 --- a/web/public/locales/pt/views/faceLibrary.json +++ b/web/public/locales/pt/views/faceLibrary.json @@ -17,13 +17,13 @@ "documentTitle": "Biblioteca de rostos - Frigate", "uploadFaceImage": { "title": "Carregar imagem do rosto", - "desc": "Carregue uma imagem para escanear rostos e incluir em {{pageToggle}}" + "desc": "Carregue uma imagem para procurar rostos e incluir em {{pageToggle}}" }, "createFaceLibrary": { "title": "Criar coleção", "desc": "Criar uma nova coleção", "new": "Criar novo rosto", - "nextSteps": "Para construir uma base sólida:
  • Use a aba Treinar para selecionar e treinar em imagens para cada pessoa detectada.
  • Concentre-se em imagens diretas para obter melhores resultados; evite imagens de treinamento que capturem rostos em ângulo.
  • " + "nextSteps": "Para construir uma base sólida:
  • Use a aba Treinar para selecionar e treinar em imagens para cada pessoa detectada.
  • Concentre-se em imagens diretas para obter melhores resultados; evite imagens de treino que capturem rostos em ângulo.
  • " }, "train": { "aria": "Selecionar treino", diff --git a/web/public/locales/pt/views/live.json b/web/public/locales/pt/views/live.json index 12956f88a..eb0330a97 100644 --- a/web/public/locales/pt/views/live.json +++ b/web/public/locales/pt/views/live.json @@ -2,56 +2,56 @@ "documentTitle": "Ao vivo - Frigate", "documentTitle.withCamera": "{{camera}} - Ao vivo - Frigate", "twoWayTalk": { - "disable": "Desativar conversação bidirecional", - "enable": "Habilitar conversação bidirecional" + "disable": "Desativar conversa bidirecional", + "enable": "Habilitar conversa bidirecional" }, "cameraAudio": { - "enable": "Habilitar áudio da câmera", - "disable": "Desativar áudio da câmera" + "enable": "Habilitar áudio da câmara", + "disable": "Desativar áudio da câmara" }, "ptz": { "move": { "clickMove": { - "label": "Clique no quadro para centralizar a câmera", + "label": "Clique no quadro para centralizar a câmara", "enable": "Habilitar clique para mover", "disable": "Desativar clique para mover" }, "down": { - "label": "Mover a câmera PTZ para baixo" + "label": "Mover a câmara PTZ para baixo" }, "up": { - "label": "Mover a câmera PTZ para cima" + "label": "Mover a câmara PTZ para cima" }, "left": { - "label": "Mover a câmera PTZ para a esquerda" + "label": "Mover a câmara PTZ para a esquerda" }, "right": { - "label": "Mover a câmera PTZ para a direita" + "label": "Mover a câmara PTZ para a direita" } }, "zoom": { "in": { - "label": "Aumentar zoom da câmera PTZ" + "label": "Aumentar zoom da câmara PTZ" }, "out": { - "label": "Diminuir zoom da câmera PTZ" + "label": "Diminuir zoom da câmara PTZ" } }, - "presets": "Predefinições de câmera PTZ", + "presets": "Predefinições de câmara PTZ", "frame": { "center": { - "label": "Clique no quadro para centralizar a câmera PTZ" + "label": "Clique no quadro para centralizar a câmara PTZ" } } }, "lowBandwidthMode": "Modo de baixa largura de banda", "camera": { - "enable": "Habilitar câmera", - "disable": "Desativar câmera" + "enable": "Habilitar câmara", + "disable": "Desativar câmara" }, "muteCameras": { - "disable": "Ativar áudio de todas as câmeras", - "enable": "Silenciar todas as câmeras" + "disable": "Ativar áudio de todas as câmaras", + "enable": "Silenciar todas as câmaras" }, "detect": { "enable": "Habilitar detecção", @@ -74,23 +74,23 @@ "disable": "Ocultar estatísticas de transmissão" }, "manualRecording": { - "tips": "Inicie um evento manual com base nas configurações de retenção de gravação desta câmera.", + "tips": "Inicie um evento manual com base nas configurações de retenção de gravação desta câmara.", "playInBackground": { "label": "Reproduzir em segundo plano", "desc": "Habilite esta opção para continuar a transmissão quando o player estiver oculto." }, "showStats": { "label": "Mostrar estatísticas", - "desc": "Habilite esta opção para mostrar estatísticas de transmissão como uma sobreposição no feed da câmera." + "desc": "Habilite esta opção para mostrar estatísticas de transmissão como uma sobreposição no feed da câmara." }, - "start": "Iniciar gravação sob demanda", - "recordDisabledTips": "Como a gravação está desabilitada ou restrita na configuração desta câmera, apenas um snapshot será salvo.", - "end": "Encerrar gravação sob demanda", - "ended": "Fim da gravação manual sob demanda.", - "failedToEnd": "Falha ao finalizar a gravação manual sob demanda.", - "failedToStart": "Falha ao iniciar a gravação manual sob demanda.", - "title": "Gravação sob demanda", - "started": "Iniciou a gravação manual sob demanda.", + "start": "Iniciar gravação on-demand", + "recordDisabledTips": "Como a gravação está desabilitada ou restrita na configuração desta câmara, apenas um snapshot será salvo.", + "end": "Encerrar gravação on-demand", + "ended": "Fim da gravação manual on-demand.", + "failedToEnd": "Falha ao finalizar a gravação manual on-demand.", + "failedToStart": "Falha ao iniciar a gravação manual on-demand.", + "title": "Gravação on-demand", + "started": "Iniciou a gravação manual on-demand.", "debugView": "Exibição de depuração" }, "streamingSettings": "Configurações de transmissão", @@ -102,7 +102,7 @@ "title": "Transmissão", "audio": { "tips": { - "title": "O áudio deve ser emitido pela sua câmera e configurado no go2rtc para esta transmissão.", + "title": "O áudio deve ser emitido pela sua câmara e configurado no go2rtc para esta transmissão.", "documentation": "Leia a documentação " }, "available": "O áudio está disponível para esta transmissão", @@ -110,8 +110,8 @@ }, "twoWayTalk": { "tips.documentation": "Leia a documentação ", - "unavailable": "Conversa bidirecional não está disponível para este fluxo", - "tips": "Seu dispositivo deve suportar o recurso e o WebRTC deve ser configurado para conversação bidirecional.", + "unavailable": "Conversa bidirecional não está disponível para esta transmissão", + "tips": "Seu dispositivo deve suportar o recurso e o WebRTC deve ser configurado para conversa bidirecional.", "available": "Conversa bidirecional está disponível para esta transmissão" }, "lowBandwidth": { @@ -125,7 +125,7 @@ }, "cameraSettings": { "title": "{{camera}} configurações", - "cameraEnabled": "Câmera habilitada", + "cameraEnabled": "Câmara habilitada", "objectDetection": "Detecção de objeto", "recording": "Gravando", "audioDetection": "Detecção de áudio", @@ -138,12 +138,12 @@ "motion": "Movimento", "all": "Todos" }, - "notAllTips": "Sua configuração de retenção de gravação {{source}} está definida como modo: {{effectiveRetainMode}}, portanto, esta gravação sob demanda manterá apenas segmentos com {{effectiveRetainModeName}}." + "notAllTips": "Sua configuração de retenção de gravação {{source}} está definida como modo: {{effectiveRetainMode}}, portanto, esta gravação on-demand manterá apenas segmentos com {{effectiveRetainModeName}}." }, "editLayout": { "label": "Editar layout", "group": { - "label": "Editar grupo de câmeras" + "label": "Editar grupo de câmaras" }, "exitEdit": "Sair da edição" }, diff --git a/web/public/locales/pt/views/search.json b/web/public/locales/pt/views/search.json index cd0093d27..4443f2788 100644 --- a/web/public/locales/pt/views/search.json +++ b/web/public/locales/pt/views/search.json @@ -14,7 +14,7 @@ "label": { "sub_labels": "Sub etiquetas", "zones": "Zonas", - "cameras": "Câmeras", + "cameras": "Câmaras", "labels": "Etiquetas", "search_type": "Tipo de pesquisa", "time_range": "Intervalo de tempo", @@ -24,7 +24,7 @@ "max_score": "Pontuação máxima", "min_speed": "Velocidade mínima", "max_speed": "Velocidade máxima", - "recognized_license_plate": "Placa reconhecida", + "recognized_license_plate": "Matrícula reconhecida", "has_clip": "Tem Clipe", "has_snapshot": "Tem Captura de Imagem" }, @@ -42,7 +42,7 @@ "text": "Os filtros ajudam você a restringir os resultados da sua pesquisa. Veja como usá-los no campo de entrada:", "example": "Exemplo: cameras:front_door label:person before:01012024 time_range:3:00PM-4:00PM ", "step": "", - "step1": "Digite um nome para o filtro seguido de dois pontos (exemplo \"cameras:\").", + "step1": "Digite um nome para o filtro seguido de dois pontos (exemplo \"camaras:\").", "step2": "Selecione um valor entre as sugestões ou digite o seu próprio.", "step3": "Use vários filtros adicionando-os um após o outro com um espaço entre eles.", "step5": "O filtro de intervalo de tempo usa o formato {{exampleTime}}.", diff --git a/web/public/locales/pt/views/settings.json b/web/public/locales/pt/views/settings.json index b1b326d92..62be5540c 100644 --- a/web/public/locales/pt/views/settings.json +++ b/web/public/locales/pt/views/settings.json @@ -10,16 +10,16 @@ "frigatePlus": "Configurações do Frigate+ - Frigate", "default": "Configurações - Frigate", "notifications": "Configuração de Notificações - Frigate", - "enrichments": "Configurações Avançadas" + "enrichments": "Configurações Avançadas - Frigate" }, "menu": { "ui": "UI", "masksAndZones": "Máscaras / Zonas", - "cameras": "Configurações da câmera", + "cameras": "Configurações da câmara", "classification": "Classificação", "motionTuner": "Ajuste de movimento", - "debug": "Depurar", - "users": "Usuários", + "debug": "Depuração", + "users": "Utilizadores", "notifications": "Notificações", "frigateplus": "Frigate+", "enrichments": "Avançado" @@ -31,8 +31,8 @@ } }, "cameraSetting": { - "camera": "Câmera", - "noCamera": "Sem câmera" + "camera": "Câmara", + "noCamera": "Sem câmara" }, "general": { "title": "Configurações gerais", @@ -40,7 +40,7 @@ "title": "Painel ao vivo", "automaticLiveView": { "label": "Visualização ao vivo automática", - "desc": "Alternar automaticamente para a visualização ao vivo de uma câmera quando uma atividade for detectada. Desativar esta opção faz com que as imagens estáticas das câmeras no painel Ao Vivo sejam atualizadas apenas uma vez por minuto." + "desc": "Alternar automaticamente para a visualização ao vivo de uma câmara quando uma atividade for detectada. Desativar esta opção faz com que as imagens estáticas das câmaras no painel Ao Vivo sejam atualizadas apenas uma vez por minuto." }, "playAlertVideos": { "label": "Reproduzir vídeos de alerta", @@ -53,12 +53,12 @@ "label": "Primeiro dia da semana", "sunday": "Domingo", "monday": "Segunda-feira", - "desc": "O dia em que as semanas do calendário de revisão começam." + "desc": "O dia em que as semanas do calendário de análise começam." } }, "storedLayouts": { "title": "Layouts armazenados", - "desc": "O layout das câmeras em um grupo de câmeras pode ser arrastado/redimensionado. As posições são armazenadas no armazenamento local do seu navegador.", + "desc": "O layout das câmaras em um grupo de câmaras pode ser arrastado/redimensionado. As posições são armazenadas no armazenamento local do seu navegador.", "clearAll": "Limpar todos os layouts" }, "recordingsViewer": { @@ -69,13 +69,13 @@ "title": "Visualizador de gravações" }, "cameraGroupStreaming": { - "desc": "As configurações de transmissão de cada grupo de câmeras são armazenadas no armazenamento local do seu navegador.", - "title": "Configurações de transmissão do grupo de câmeras", + "desc": "As configurações de transmissão de cada grupo de câmaras são armazenadas no armazenamento local do seu navegador.", + "title": "Configurações de transmissão do grupo de câmaras", "clearAll": "Limpar todas as configurações de transmissão" }, "toast": { "success": { - "clearStreamingSettings": "Configurações de transmissão para todos os grupos de câmeras limpas.", + "clearStreamingSettings": "Configurações de transmissão para todos os grupos de câmaras limpas.", "clearStoredLayout": "Limpo layout armazenado para {{cameraName}}" }, "error": { @@ -162,7 +162,7 @@ "desc": "As notificações push da Web exigem um contexto seguro (https://…). Esta é uma limitação do navegador. Acesse o Frigate com segurança para usar as notificações." }, "cameras": { - "title": "Câmeras", + "title": "Câmaras", "noCameras": "Nenhuma câmara disponível", "desc": "Selecione para que câmaras as notificações serão ativadas." }, @@ -188,11 +188,11 @@ "cancelSuspension": "Cancelar Suspensão", "toast": { "success": { - "registered": "Cadastrado com sucesso para receber notificações. É necessário reiniciar o Frigate antes que qualquer notificação (incluindo uma notificação de teste) possa ser enviada.", + "registered": "Registo para notificações concluído com sucesso. É necessário reiniciar o Frigate antes que qualquer notificação (incluindo uma notificação de teste) possa ser enviada.", "settingSaved": "As configurações de notificação foram salvas." }, "error": { - "registerFailed": "Falha ao salvar o registro de notificação." + "registerFailed": "Falha ao guardar o registo das notificações." } }, "sendTestNotification": "Envie uma notificação de teste", @@ -206,12 +206,12 @@ "documentation": "Leia a documentação", "table": { "snapshots": "Snapshots", - "camera": "Câmera", - "cleanCopySnapshots": "clean_copy Instantâneos" + "camera": "Câmara", + "cleanCopySnapshots": "clean_copy Snapshots" }, - "title": "Configuração de instantâneo", + "title": "Configuração de snapshots", "desc": "O envio para o Frigate+ requer que tanto os snapshots quanto os snapshots clean_copy estejam habilitados na sua configuração.", - "cleanCopyWarning": "Algumas câmeras têm snapshots habilitados, mas a cópia limpa está desabilitada. Você precisa habilitar clean_copy na sua configuração de snapshot para poder enviar imagens dessas câmeras para o Frigate+." + "cleanCopyWarning": "Algumas câmaras têm snapshots habilitados, mas a cópia limpa está desabilitada. É necessário habilitar clean_copy na sua configuração de snapshot para poder enviar imagens dessas câmaras para o Frigate+." }, "toast": { "success": "As definições do Frigate+ foram guardadas. Reinicie o Frigate para aplicar as alterações.", @@ -230,13 +230,13 @@ }, "supportedDetectors": "Detectores Suportados", "loading": "Carregando informações do modelo…", - "cameras": "Câmeras", + "cameras": "Câmaras", "loadingAvailableModels": "Carregando modelos disponíveis…", "modelSelect": "Os modelos disponíveis no Frigate+ podem ser selecionados aqui. Observe que apenas modelos compatíveis com a configuração atual do seu detector podem ser selecionados." }, - "title": "Fragata+ Configurações", + "title": "Configurações Frigate+", "apiKey": { - "validated": "A chave da API Frigate+ foi detectada e validada", + "validated": "A chave da API do Frigate+ foi detectada e validada", "notValidated": "A chave da API do Frigate+ não foi detectada ou não foi validada", "desc": "A chave de API do Frigate+ permite a integração com o serviço Frigate+.", "plusLink": "Saiba mais sobre o Frigate+", @@ -257,7 +257,7 @@ "polygonAreaTooLarge": { "documentation": "Leia a documentação", "tips": "As máscaras de movimento não impedem que objetos sejam detectados. Você deve usar uma zona obrigatória em vez disso.", - "title": "A máscara de movimento está cobrindo {{polygonArea}}% da área da câmera. Máscaras de movimento grandes não são recomendadas." + "title": "A máscara de movimento está cobrindo {{polygonArea}}% da área da câmara. Máscaras de movimento grandes não são recomendadas." }, "label": "Máscara de movimento", "desc": { @@ -291,7 +291,7 @@ "name": { "title": "Nome", "inputPlaceHolder": "Digite um nome…", - "tips": "O nome deve ter pelo menos 2 caracteres e não pode ser o nome de uma câmera ou de outra zona." + "tips": "O nome deve ter pelo menos 2 caracteres e não pode ser o nome de uma câmara ou de outra zona." }, "inertia": { "title": "Inércia", @@ -346,8 +346,8 @@ "mustBeAtLeastTwoCharacters": "O nome da zona deve ter pelo menos 2 caracteres.", "mustNotContainPeriod": "O nome da zona não pode conter pontos.", "hasIllegalCharacter": "O nome da zona contém caracteres ilegais.", - "mustNotBeSameWithCamera": "O nome da zona não pode ser o mesmo que o nome da câmera.", - "alreadyExists": "Já existe uma zona com esse nome para esta câmera." + "mustNotBeSameWithCamera": "O nome da zona não pode ser o mesmo que o nome da câmara.", + "alreadyExists": "Já existe uma zona com esse nome para esta câmara." } }, "distance": { @@ -444,7 +444,7 @@ } }, "objectShapeFilterDrawing": { - "tips": "Habilite esta opção para desenhar um retângulo na imagem da câmera para mostrar sua área e proporção. Esses valores podem ser usados para definir parâmetros de filtro de formato de objeto na sua configuração.", + "tips": "Habilite esta opção para desenhar um retângulo na imagem da câmara para mostrar sua área e proporção. Esses valores podem ser usados para definir parâmetros de filtro de formato de objeto na sua configuração.", "document": "Leia a documentação ", "score": "Pontuação", "ratio": "Razão", @@ -470,33 +470,33 @@ "camera": { "reviewClassification": { "readTheDocumentation": "Leia a documentação", - "title": "Classificação de Revisão", - "noDefinedZones": "Nenhuma zona está definida para esta câmera.", - "objectAlertsTips": "Todos os objetos {{alertsLabels}} na câmera {{cameraName}} serão exibidos como Alertas.", + "title": "Classificação da Análise", + "noDefinedZones": "Nenhuma zona está definida para esta câmara.", + "objectAlertsTips": "Todos os objetos {{alertsLabels}} na câmara {{cameraName}} serão exibidos como Alertas.", "zoneObjectDetectionsTips": { - "text": "Todos os objetos {{detectionsLabels}} não categorizados na zona {{zone}} na câmera {{cameraName}} serão exibidos como Detecções.", - "regardlessOfZoneObjectDetectionsTips": "Todos os objetos {{detectionsLabels}} não categorizados na câmera {{cameraName}} serão exibidos como Detecções, independentemente da zona em que se encontram.", - "notSelectDetections": "Todos os objetos {{detectionsLabels}} detectados na zona {{zone}} na câmera {{cameraName}} que não forem categorizados como Alertas serão exibidos como Detecções, independentemente da zona em que se encontram." + "text": "Todos os objetos {{detectionsLabels}} não categorizados na zona {{zone}} na câmara {{cameraName}} serão exibidos como Detecções.", + "regardlessOfZoneObjectDetectionsTips": "Todos os objetos {{detectionsLabels}} não categorizados na câmara {{cameraName}} serão exibidos como Detecções, independentemente da zona em que se encontram.", + "notSelectDetections": "Todos os objetos {{detectionsLabels}} detectados na zona {{zone}} na câmara {{cameraName}} que não forem categorizados como Alertas serão exibidos como Detecções, independentemente da zona em que se encontram." }, "selectAlertsZones": "Selecionar zonas para Alertas", "selectDetectionsZones": "Selecionar zonas para Detecções", "limitDetections": "Limitar detecções a zonas específicas", - "desc": "O Frigate categoriza os itens de revisão como Alertas e Detecções. Por padrão, todos os objetos do tipo pessoa e carro são considerados Alertas. Você pode refinar a categorização dos seus itens de revisão configurando as zonas necessárias para eles.", - "objectDetectionsTips": "Todos os objetos {{detectionsLabels}} não categorizados na câmera {{cameraName}} serão exibidos como Detecções, independentemente da zona em que se encontram.", - "zoneObjectAlertsTips": "Todos os objetos {{alertsLabels}} detectados na zona {{zone}} na câmera {{cameraName}} serão exibidos como Alertas.", + "desc": "O Frigate categoriza os itens de análise como Alertas e Detecções. Por padrão, todos os objetos do tipo pessoa e carro são considerados Alertas. Você pode refinar a categorização dos seus itens de análise configurando as zonas necessárias para eles.", + "objectDetectionsTips": "Todos os objetos {{detectionsLabels}} não categorizados na câmara {{cameraName}} serão exibidos como Detecções, independentemente da zona em que se encontram.", + "zoneObjectAlertsTips": "Todos os objetos {{alertsLabels}} detectados na zona {{zone}} na câmara {{cameraName}} serão exibidos como Alertas.", "toast": { - "success": "A configuração de Classificação de revisão foi salva. Reinicie o Frigate para aplicar as alterações." + "success": "A configuração de Classificação de análise foi salva. Reinicie o Frigate para aplicar as alterações." }, - "unsavedChanges": "Configurações de classificação de revisão não salvas para {{camera}}" + "unsavedChanges": "Configurações de classificação de análises não salvas para {{camera}}" }, - "title": "Configurações da câmera", + "title": "Configurações da câmara", "streams": { - "title": "fluxos", - "desc": "Desativar uma câmera interrompe completamente o processamento dos fluxos dessa câmera pelo Frigate. Detecção, gravação e depuração ficarão indisponíveis.
    Observação: Isso não desativa as retransmissões do go2rtc." + "title": "Transmissões", + "desc": "Desativar uma câmara interrompe completamente o processamento das transmissões dessa câmara pelo Frigate. Detecção, gravação e depuração ficarão indisponíveis.
    Observação: Isso não desativa as retransmissões do go2rtc." }, "review": { - "title": "Revisão", - "desc": "Ative ou desative alertas e detecções para esta câmera. Quando desativado, nenhum novo item de revisão será gerado.", + "title": "Análise", + "desc": "Ative ou desative alertas e detecções para esta câmara. Quando desativado, nenhum novo item de análise será gerado. ", "alerts": "Alertas ", "detections": "Detecções " } @@ -526,14 +526,14 @@ }, "enrichments": { "faceRecognition": { - "desc": "O reconhecimento facial permite que as pessoas recebam nomes e, quando o rosto delas for reconhecido, o Frigate atribuirá o nome da pessoa como um subrótulo. Essas informações estão incluídas na interface do usuário, nos filtros e nas notificações.", + "desc": "O reconhecimento facial permite que as pessoas recebam nomes e, quando o rosto delas for reconhecido, o Frigate atribuirá o nome da pessoa como um subrótulo. Essas informações estão incluídas na interface do utilizador, nos filtros e nas notificações.", "modelSize": { "small": { - "desc": "O uso de pequeno emprega um modelo de incorporação facial do FaceNet que funciona eficientemente na maioria das CPUs.", + "desc": "O uso de pequeno emprega um modelo de incorporação facial do FaceNet que funciona eficientemente na maioria dos CPUs.", "title": "pequeno" }, "large": { - "desc": "O uso de grande emprega um modelo de incorporação de rostos do ArcFace e será executado automaticamente na GPU, se aplicável.", + "desc": "O uso de grande emprega um modelo de incorporação de rostos do ArcFace e será executado automaticamente no GPU, se aplicável.", "title": "grande" }, "label": "Tamanho do modelo", @@ -545,37 +545,37 @@ "semanticSearch": { "modelSize": { "small": { - "desc": "Usar pequeno emprega uma versão quantizada do modelo que usa menos RAM e roda mais rápido na CPU, com uma diferença muito insignificante na qualidade de incorporação.", + "desc": "Usar pequeno emprega uma versão quantizada do modelo que usa menos RAM e roda mais rápido no CPU, com uma diferença muito insignificante na qualidade de incorporação.", "title": "pequeno" }, "label": "Tamanho do modelo", "desc": "O tamanho do modelo usado para incorporações de pesquisa semântica.", "large": { "title": "grande", - "desc": "Usar grande emprega o modelo Jina completo e será executado automaticamente na GPU, se aplicável." + "desc": "Usar grande emprega o modelo Jina completo e será executado automaticamente no GPU, se aplicável." } }, "reindexNow": { - "desc": "A reindexação regenerará os embeddings para todos os objetos rastreados. Esse processo é executado em segundo plano e pode sobrecarregar sua CPU e levar um tempo considerável, dependendo do número de objetos rastreados.", + "desc": "A reindexação regenerará os embeddings para todos os objetos rastreados. Esse processo é executado em segundo plano e pode sobrecarregar o seu CPU e levar um tempo considerável, dependendo do número de objetos rastreados.", "label": "Reindexar agora", "confirmTitle": "Confirmar reindexação", - "confirmDesc": "Tem certeza de que deseja reindexar todos os objetos incorporados rastreados? Este processo será executado em segundo plano, mas pode sobrecarregar sua CPU e levar bastante tempo. Você pode acompanhar o progresso na página Explorar.", + "confirmDesc": "Tem certeza de que deseja reindexar todos os objetos incorporados rastreados? Este processo será executado em segundo plano, mas pode sobrecarregar o seu CPU e levar bastante tempo. Você pode acompanhar o progresso na página Explorar.", "confirmButton": "Reindexar", "success": "Reindexação iniciada com sucesso.", "alreadyInProgress": "A reindexação já está em andamento.", "error": "Falha ao iniciar a reindexação: {{errorMessage}}" }, - "desc": "A Pesquisa Semântica no Frigate permite que você encontre objetos rastreados dentro dos seus itens de revisão usando a própria imagem, uma descrição de texto definida pelo usuário ou uma gerada automaticamente.", + "desc": "A Pesquisa Semântica no Frigate permite que você encontre objetos rastreados dentro dos seus itens de análise usando a própria imagem, uma descrição de texto definida pelo utilizador ou uma gerada automaticamente.", "readTheDocumentation": "Leia a documentação", "title": "Busca semântica" }, "licensePlateRecognition": { - "desc": "O Frigate pode reconhecer placas de veículos e adicionar automaticamente os caracteres detectados ao campo recognized_license_plate ou um nome conhecido como subrótulo para objetos do tipo carro. Um caso de uso comum pode ser a leitura de placas de carros entrando em uma garagem ou de carros passando por uma rua.", - "title": "Reconhecimento de placas", + "desc": "O Frigate pode reconhecer matrículas de veículos e adicionar automaticamente os caracteres detectados ao campo recognized_license_plate ou um nome conhecido como subrótulo para objetos do tipo carro. Um caso de uso comum pode ser a leitura de matrículas de carros entrando numa garagem ou de carros passando por uma rua.", + "title": "Reconhecimento de matrículas", "readTheDocumentation": "Leia a documentação" }, "birdClassification": { - "desc": "A classificação de aves identifica aves conhecidas usando um modelo quantizado do Tensorflow. Quando uma ave conhecida é reconhecida, seu nome comum é adicionado como um sub_label. Essas informações são incluídas na interface do usuário, nos filtros e nas notificações.", + "desc": "A classificação de aves identifica aves conhecidas usando um modelo quantizado do Tensorflow. Quando uma ave conhecida é reconhecida, seu nome comum é adicionado como um sub_label. Essas informações são incluídas na interface do utilizador, nos filtros e nas notificações.", "title": "Classificação de aves" }, "unsavedChanges": "Alterações nas configurações de enriquecimentos não salvos", @@ -592,24 +592,24 @@ "roleInfo": { "admin": "Administrador", "adminDesc": "Acesso total a todos os recursos.", - "viewer": "Visualizador", - "viewerDesc": "Limitado apenas a painéis ao vivo, revisão, exploração e exportações.", - "intro": "Selecione a função apropriada para este usuário:" + "viewer": "Visualização", + "viewerDesc": "Limitado apenas a painéis ao vivo, análise, exploração e exportações.", + "intro": "Selecione a função apropriada para este utilizador:" }, - "title": "Alterar função do usuário", + "title": "Alterar função do utilizador", "desc": "Atualizar permissões para {{username}}", "select": "Selecione uma função" }, "deleteUser": { - "title": "Excluir usuário", - "desc": "Esta ação não pode ser desfeita. Isso excluirá permanentemente a conta do usuário e removerá todos os dados associados.", + "title": "Excluir utilizador", + "desc": "Esta ação não pode ser desfeita. Isso excluirá permanentemente a conta do utilizador e removerá todos os dados associados.", "warn": "Tem certeza de que deseja excluir {{username}}?" }, "form": { "user": { - "title": "Nome de usuário", + "title": "Nome de utilizador", "desc": "Somente letras, números, pontos e sublinhados são permitidos.", - "placeholder": "Digite o nome de usuário" + "placeholder": "Digite o nome de utilizador" }, "password": { "strength": { @@ -635,17 +635,17 @@ "placeholder": "Digite novamente a nova senha" } }, - "usernameIsRequired": "O nome de usuário é obrigatório", + "usernameIsRequired": "O nome de utilizador é obrigatório", "passwordIsRequired": "A senha é obrigatória" }, "createUser": { - "title": "Criar novo usuário", - "desc": "Adicione uma nova conta de usuário e especifique uma função para acesso a áreas da interface do usuário do Frigate.", - "usernameOnlyInclude": "O nome de usuário pode incluir apenas letras, números, . ou _", + "title": "Criar novo utilizador", + "desc": "Adicione uma nova conta de utilizador e especifique uma função para acesso a áreas da interface do utilizador do Frigate.", + "usernameOnlyInclude": "O nome de utilizador pode incluir apenas letras, números, . ou _", "confirmPassword": "Por favor confirme sua senha" }, "passwordSetting": { - "setPassword": "Set Password", + "setPassword": "Definir Senha", "desc": "Crie uma senha forte para proteger esta conta.", "updatePassword": "Atualizar senha para {{username}}", "cannotBeEmpty": "A senha não pode ficar vazia", @@ -653,32 +653,32 @@ } }, "management": { - "desc": "Gerenciar as contas de usuário desta instância do Frigate.", - "title": "Gerenciamento de usuários" + "desc": "Gestão de utilizadores desta instância do Frigate.", + "title": "Gestão de Utilizadores" }, "table": { - "noUsers": "Nenhum usuário encontrado.", + "noUsers": "Nenhum utilizador encontrado.", "password": "Senha", - "deleteUser": "Excluir usuário", - "changeRole": "Alterar função do usuário", - "username": "Nome de usuário", + "deleteUser": "Excluir utilizador", + "changeRole": "Alterar função do utilizador", + "username": "Nome de utilizador", "actions": "Ações", "role": "Papel" }, - "title": "Usuários", - "addUser": "Adicionar usuário", + "title": "Utilizadores", + "addUser": "Adicionar utilizador", "updatePassword": "Atualizar senha", "toast": { "success": { - "createUser": "Usuário {{user}} criado com sucesso", - "deleteUser": "Usuário {{user}} excluído com sucesso", + "createUser": "Utilizador {{user}} criado com sucesso", + "deleteUser": "Utilizador {{user}} excluído com sucesso", "updatePassword": "Senha atualizada com sucesso.", "roleUpdated": "Função atualizada para {{user}}" }, "error": { "setPasswordFailed": "Falha ao salvar a senha: {{errorMessage}}", - "createUserFailed": "Falha ao criar usuário: {{errorMessage}}", - "deleteUserFailed": "Falha ao excluir o usuário: {{errorMessage}}", + "createUserFailed": "Falha ao criar utilizador: {{errorMessage}}", + "deleteUserFailed": "Falha ao excluir o utilizador: {{errorMessage}}", "roleUpdateFailed": "Falha ao atualizar a função: {{errorMessage}}" } } diff --git a/web/public/locales/pt/views/system.json b/web/public/locales/pt/views/system.json index 93183652b..2934c1395 100644 --- a/web/public/locales/pt/views/system.json +++ b/web/public/locales/pt/views/system.json @@ -8,7 +8,7 @@ "go2rtc": "Logs do Go2RTC - Frigate", "nginx": "Logs do Nginx - Frigate" }, - "cameras": "Estatísticas das câmeras - Frigate" + "cameras": "Estatísticas das câmaras - Frigate" }, "title": "Sistema", "metrics": "Métricas do sistema", @@ -25,9 +25,9 @@ "error": "Não foi possível copiar os logs para a área de transferência" }, "download": { - "label": "Baixar logs" + "label": "Descarregar logs" }, - "tips": "Os logs estão sendo transmitidos do servidor", + "tips": "Os logs estão a ser transmitidos do servidor", "toast": { "error": { "fetchingLogsFailed": "Erro ao buscar logs: {{errorMessage}}", @@ -37,50 +37,50 @@ }, "storage": { "cameraStorage": { - "camera": "Câmera", + "camera": "Câmara", "storageUsed": "Armazenamento", "percentageOfTotalUsed": "Porcentagem do total", "bandwidth": "Largura de banda", "unused": { - "tips": "Este valor pode não representar com precisão o espaço livre disponível para o Frigate se você tiver outros arquivos armazenados em sua unidade além das gravações do Frigate. O Frigate não rastreia o uso de armazenamento fora de suas gravações.", + "tips": "Este valor pode não representar com precisão o espaço livre disponível para o Frigate se você tiver outros ficheiros armazenados em sua unidade além das gravações do Frigate. O Frigate não rastreia o uso de armazenamento fora de suas gravações.", "title": "Não utilizado" }, "unusedStorageInformation": "Informações de armazenamento não utilizado", - "title": "Armazenamento da câmera" + "title": "Armazenamento da câmara" }, "title": "Armazenamento", "overview": "Visão geral", "recordings": { "title": "Gravações", "earliestRecording": "Primeira gravação disponível:", - "tips": "Esse valor representa o armazenamento total usado pelas gravações no banco de dados do Frigate. O Frigate não acompanha o uso de armazenamento de todos os arquivos no seu disco." + "tips": "Esse valor representa o armazenamento total usado pelas gravações na base de dados do Frigate. O Frigate não acompanha o uso de armazenamento de todos os ficheiros no seu disco." } }, "cameras": { - "title": "Câmeras", + "title": "Câmaras", "info": { "video": "Vídeo:", "unknown": "Desconhecido", "error": "Erro: {{error}}", - "fetching": "Obtendo dados da câmera", + "fetching": "Obtendo dados da câmara", "resolution": "Resolução:", "codec": "Codec:", "fps": "FPS:", "stream": "Transmissão {{idx}}", "audio": "Áudio:", - "cameraProbeInfo": "{{camera}} Explorar informações da Camera", + "cameraProbeInfo": "{{camera}} Explorar informações da Camara", "tips": { - "title": "Explorar informações da Camera" + "title": "Explorar informações da Camara" }, - "streamDataFromFFPROBE": "Os dados de fluxo são obtidos com ffprobe.", + "streamDataFromFFPROBE": "Os dados de transmissão são obtidos com ffprobe.", "aspectRatio": "relação de aspeto" }, "framesAndDetections": "Quadros / Detecções", "label": { - "camera": "câmera", + "camera": "câmara", "detect": "detectar", "capture": "capturar", - "skipped": "pulado", + "skipped": "ignorado", "ffmpeg": "FFmpeg", "cameraFfmpeg": "{{camName}} FFmpeg", "cameraFramesPerSecond": "quadros por segundo de {{camName}}", @@ -98,7 +98,7 @@ "copyToClipboard": "Dados de Exploração copiados para a área de transferência." }, "error": { - "unableToProbeCamera": "Não foi possível explorar a câmera: {{errorMessage}}" + "unableToProbeCamera": "Não foi possível explorar a câmara: {{errorMessage}}" } } }, @@ -116,15 +116,15 @@ "title": "Geral", "detector": { "title": "Detectores", - "cpuUsage": "Uso da CPU do detector", - "memoryUsage": "Uso da memória do detector", + "cpuUsage": "Utilização do CPU do Detector", + "memoryUsage": "Utilização da memória do Detector", "inferenceSpeed": "Velocidade de Inferência do Detector", - "temperature": "Detector de Temperatura" + "temperature": "Temperatura do Detector" }, "hardwareInfo": { "title": "Informações de hardware", - "gpuUsage": "Uso da GPU", - "gpuMemory": "Memória da GPU", + "gpuUsage": "Utilização GPU", + "gpuMemory": "Memória GPU", "gpuInfo": { "nvidiaSMIOutput": { "driver": "Driver: {{driver}}", @@ -134,13 +134,13 @@ "title": "Saída Nvidia SMI" }, "copyInfo": { - "label": "Copiar informações da GPU" + "label": "Copiar informações do GPU" }, "closeInfo": { - "label": "Fechar informações da GPU" + "label": "Fechar informações do GPU" }, "toast": { - "success": "Informações da GPU copiadas para a área de transferência" + "success": "Informações do GPU copiadas para a área de transferência" }, "vainfoOutput": { "title": "Saída do Vainfo", @@ -149,8 +149,8 @@ "processError": "Erro no processo:" } }, - "gpuEncoder": "Codificador de GPU", - "gpuDecoder": "Decodificador de GPU", + "gpuEncoder": "GPU Encoder", + "gpuDecoder": "GPU Decoder", "npuUsage": "Utilização NPU", "npuMemory": "Memória NPU" }, @@ -166,15 +166,15 @@ "embeddings": { "image_embedding_speed": "Velocidade de incorporação de imagem", "face_embedding_speed": "Velocidade de incorporação facial", - "plate_recognition_speed": "Velocidade de reconhecimento de placas", + "plate_recognition_speed": "Velocidade de reconhecimento de matrículas", "text_embedding_speed": "Velocidade de incorporação de texto", "face_recognition_speed": "Velocidade de Reconhecimento Facial", - "plate_recognition": "Reconhecimento de Placas", + "plate_recognition": "Reconhecimento de Matrículas", "image_embedding": "Incorporação de Imagem", "text_embedding": "Incorporação de Texto", "face_recognition": "Reconhecimento Facial", - "yolov9_plate_detection_speed": "Velocidade de Detecção de Placas YOLOv9", - "yolov9_plate_detection": "Detecção de Placas YOLOv9" + "yolov9_plate_detection_speed": "Velocidade de Detecção de Matrículas YOLOv9", + "yolov9_plate_detection": "Detecção de Matrículas YOLOv9" } } } diff --git a/web/public/locales/ro/audio.json b/web/public/locales/ro/audio.json index 084ddd8c6..dc0d24191 100644 --- a/web/public/locales/ro/audio.json +++ b/web/public/locales/ro/audio.json @@ -294,5 +294,9 @@ "white_noise": "Zgomot alb", "television": "Televizor", "radio": "Radio", - "scream": "Tipa" + "scream": "Tipa", + "chant": "Cântec", + "synthetic_singing": "Cântat sintetic", + "rapping": "Rap", + "shuffle": "Amestecă" } diff --git a/web/public/locales/ro/common.json b/web/public/locales/ro/common.json index 0296d08ee..96d8d7e3a 100644 --- a/web/public/locales/ro/common.json +++ b/web/public/locales/ro/common.json @@ -4,6 +4,219 @@ "untilForRestart": "Pana la repornirea Frigate.", "untilRestart": "Pana la repornire", "ago": "{{timeAgo}} in urma", - "justNow": "Acum" - } + "justNow": "Acum", + "today": "Azi", + "yesterday": "Ieri", + "last7": "Ultimele 7 zile", + "last14": "Ultimele 14 zile", + "last30": "Ultimele 30 de zile", + "thisWeek": "Săptămâna aceasta", + "lastWeek": "Săptămâna trecută", + "thisMonth": "Luna aceasta", + "lastMonth": "Luna trecuta", + "5minutes": "5 minute", + "10minutes": "10 minute", + "formattedTimestampMonthDayYear": { + "12hour": "d MMM, yyyy", + "24hour": "d MMM, yyy" + }, + "formattedTimestampHourMinute": { + "12hour": "h:mm aaa", + "24hour": "HH:mm" + }, + "formattedTimestampHourMinuteSecond": { + "12hour": "h:mm:ss aaa", + "24hour": "HH:mm:ss" + }, + "formattedTimestampMonthDayHourMinute": { + "12hour": "d MMM, h:mm aaa", + "24hour": "d MMM, HH:mm" + }, + "formattedTimestampMonthDayYearHourMinute": { + "12hour": "d MMM yyyy, h:mm aaa", + "24hour": "d MMM yyyy, HH:mm" + }, + "formattedTimestampMonthDay": "d MMM", + "formattedTimestampFilename": { + "12hour": "dd-MM-yy-h-mm-ss-a", + "24hour": "dd-MM-yy-HH-mm-ss" + }, + "30minutes": "30 de minute", + "1hour": "O oră", + "12hours": "12 ore", + "24hours": "24 ore", + "pm": "PM", + "am": "AM", + "mo": "{{time}}lună", + "yr": "{{time}}an", + "year_one": "{{time}} an", + "year_few": "{{time}} ani", + "year_other": "{{time}} de ani", + "d": "{{time}}z", + "h": "{{time}}o", + "m": "{{time}}m", + "s": "{{time}}s", + "formattedTimestamp": { + "12hour": "d MMM, h:mm:ss aaa", + "24hour": "d MMM, HH:mm:ss" + }, + "formattedTimestamp2": { + "12hour": "dd/MM h:mm:ssa", + "24hour": "d MMM HH:mm:ss" + }, + "month_one": "{{time}} lună", + "month_few": "{{time}} luni", + "month_other": "{{time}} de luni", + "day_one": "{{time}} zi", + "day_few": "{{time}} zile", + "day_other": "{{time}} de zile", + "hour_one": "{{time}} oră", + "hour_few": "{{time}} ore", + "hour_other": "{{time}} de ore", + "minute_one": "{{time}} minut", + "minute_few": "{{time}} minute", + "minute_other": "{{time}} de minute", + "second_one": "{{time}} secundă", + "second_few": "{{time}} secunde", + "second_other": "{{time}} de secunde" + }, + "menu": { + "documentation": { + "title": "Documentație", + "label": "Documentație Frigate" + }, + "explore": "Explorează", + "uiPlayground": "UI Playground", + "faceLibrary": "Biblioteca de fețe", + "export": "Exportă", + "language": { + "ca": "Català (Catalană)", + "withSystem": { + "label": "Utilizează setările de limbă ale sistemului" + }, + "ja": "日本語 (Japoneză)", + "fa": "فارسی (Persiană)", + "pl": "Polski (Poloneză)", + "uk": "Українська (Ucrainiană)", + "he": "עברית (Ebraică)", + "yue": "粵語 (Cantoneză)", + "en": "English (Engleză)", + "de": "Deutsch (Germană)", + "es": "Español (Spaniolă)", + "zhCN": "简体中文 (Chineză simplificată)", + "hi": "हिन्दी (Hindi)", + "fr": "Français (Franceză)", + "ar": "العربية (Arabă)", + "pt": "Português (Portugheză)", + "ru": "Русский (Rusă)", + "tr": "Türkçe (Turcă)", + "it": "Italiano (Italiană)", + "nl": "Nederlands (Olandeză)", + "sv": "Svenska (Suedeză)", + "cs": "Čeština (Cehă)", + "nb": "Norsk Bokmål (Norvegiană Bokmål)", + "ko": "한국어 (Coreană)", + "vi": "Tiếng Việt (Vietnameză)", + "da": "Dansk (Daneză)", + "sk": "Slovenčina (Slovacă)", + "el": "Ελληνικά (Greacă)", + "ro": "Română (Română)", + "hu": "Magyar (Maghiară)", + "fi": "Suomi (Finlandeză)", + "th": "ไทย (Thailandeză)" + }, + "theme": { + "default": "Implicit", + "highcontrast": "Contrast ridicat", + "label": "Temă", + "blue": "Albastru", + "green": "Verde", + "nord": "Nord", + "red": "Roșu" + }, + "user": { + "title": "Utilizator" + }, + "live": { + "cameras": { + "count_one": "{{count}} cameră", + "count_few": "{{count}} camere", + "count_other": "{{count}} de camere", + "title": "Camere" + }, + "title": "Live", + "allCameras": "Toate camerele" + }, + "help": "Ajutor", + "system": "Sistem", + "systemMetrics": "Metricile sistemului", + "configuration": "Configurație", + "systemLogs": "Jurnale de sistem", + "settings": "Setări", + "configurationEditor": "Editor de configurare", + "languages": "Limba", + "appearance": "Aspect", + "darkMode": { + "label": "Modul întunecat", + "light": "Deschis", + "dark": "Întunecat", + "withSystem": { + "label": "Utilizează setările de sistem pentru modul deschis sau întunecat" + } + }, + "withSystem": "Sistem", + "restart": "Repornește Frigate", + "review": "Revizuire" + }, + "button": { + "cameraAudio": "Sunet cameră", + "apply": "Aplică", + "reset": "Resetare", + "done": "Gata", + "enabled": "Activat", + "copyCoordinates": "Copiază coordonate", + "on": "PORNIT", + "off": "OPRIT", + "edit": "Editează", + "delete": "Șterge", + "yes": "Da", + "no": "Nu", + "download": "Descarcă", + "info": "Informații", + "enable": "Activează", + "twoWayTalk": "Conversație bidirecțională", + "disabled": "Dezactivat", + "disable": "Dezactivează", + "save": "Salvează", + "saving": "Se salvează…", + "cancel": "Renunță", + "close": "Închide", + "copy": "Copiază", + "back": "Înapoi", + "history": "Istorie", + "fullscreen": "Ecran complet", + "exitFullscreen": "ieși din ecran complet", + "pictureInPicture": "Imagine în imagine", + "suspended": "Suspendat", + "unsuspended": "Nesuspendat", + "play": "Redă", + "unselect": "Deselectează", + "export": "Exportă", + "deleteNow": "Șterge acum", + "next": "Următorul" + }, + "unit": { + "speed": { + "mph": "mile/h", + "kph": "km/h" + }, + "length": { + "feet": "picioare", + "meters": "metri" + } + }, + "label": { + "back": "Mergi înapoi" + }, + "selectItem": "Selectează {{item}}" } diff --git a/web/public/locales/ro/components/auth.json b/web/public/locales/ro/components/auth.json index 918a0435b..4fa303853 100644 --- a/web/public/locales/ro/components/auth.json +++ b/web/public/locales/ro/components/auth.json @@ -1,6 +1,6 @@ { "form": { - "user": "Utilizator", + "user": "Nume utilizator", "password": "Parola", "login": "Logare", "errors": { diff --git a/web/public/locales/ro/components/camera.json b/web/public/locales/ro/components/camera.json index a3fa10887..1f36c0706 100644 --- a/web/public/locales/ro/components/camera.json +++ b/web/public/locales/ro/components/camera.json @@ -29,7 +29,42 @@ "camera": { "setting": { "label": "Setarile de Stream ale Camerei", - "title": "{{cameraName}} Setari de Stream" + "title": "{{cameraName}} Setari de Stream", + "stream": "Stream", + "placeholder": "Alege un stream", + "desc": "Schimbă opțiunile de streaming live pentru panoul acestui grup de camere. Aceste setări sunt specifice dispozitivului/browser-ului.", + "audioIsUnavailable": "Sunetul nu este disponibil pentru acest stream", + "audioIsAvailable": "Sunetul este disponibil pentru acest stream", + "audio": { + "tips": { + "title": "Sunetul trebuie să fie redat de camera ta și configurat în go2rtc pentru acest stream.", + "document": "Citește documentația " + } + }, + "streamMethod": { + "label": "Metoda de streaming", + "placeholder": "Alege o metodă de streaming", + "method": { + "noStreaming": { + "label": "Fără streaming", + "desc": "Imaginile camerelor se vor actualiza doar o dată pe minut și nu va exista streaming live." + }, + "smartStreaming": { + "label": "Streaming Inteligent (recomandat)", + "desc": "Streaming-ul inteligent va actualiza imaginea camerei o dată pe minut când nu există activitate detectabilă, pentru a economisi trafic de date și resurse. Când se detectează activitate, imaginea trece la streaming live." + }, + "continuousStreaming": { + "label": "Streaming continu", + "desc": { + "title": "Imaginea camerei va fi întotdeauna un stream live când este vizibilă pe panou, chiar dacă nu se detectează activitate.", + "warning": "Streaming-ul continuu poate provoca un consum mare de lățime de bandă și probleme de performanță. Folosește cu prudență." + } + } + } + }, + "compatibilityMode": { + "label": "Mod compatibilitate" + } } } }, diff --git a/web/public/locales/ro/components/dialog.json b/web/public/locales/ro/components/dialog.json index 203cb5424..951adc80f 100644 --- a/web/public/locales/ro/components/dialog.json +++ b/web/public/locales/ro/components/dialog.json @@ -25,16 +25,74 @@ }, "state": { "submitted": "Trimis" + }, + "question": { + "label": "Confirmă această etichetă pentru Frigate Plus", + "ask_a": "Este acest obiect un {{label}}?", + "ask_an": "Este acest obiect un {{label}}?", + "ask_full": "Este acest obiect un {{untranslatedLabel}} ({{translatedLabel}})?" } }, "submitToPlus": { - "label": "Trimite catre Frigate+" + "label": "Trimite catre Frigate+", + "desc": "Obiectele din locațiile pe care dorești să le eviți nu sunt false-pozitive. Marcarea lor ca false-pozitive va induce confuzie modelul." } + }, + "video": { + "viewInHistory": "Vezi în istoric" } }, "recording": { "button": { "deleteNow": "Sterge Acum" } + }, + "export": { + "time": { + "custom": "personalizat", + "fromTimeline": "Selectează din Cronologie", + "lastHour_one": "Ultima oră", + "lastHour_few": "Ultimele {{count}} ore", + "lastHour_other": "Ultimele {{count}} ore", + "start": { + "title": "Ora de început", + "label": "Selectează ora de început" + }, + "end": { + "title": "Oră terminare", + "label": "Selectează ora de terminare" + } + }, + "name": { + "placeholder": "Denumește exportul" + }, + "select": "Selectează", + "export": "Exportă", + "selectOrExport": "Selectează sau exportă", + "toast": { + "success": "Exportul a început cu succes. Vizualizați fișierul în dosarul /exports.", + "error": { + "failed": "Eroare la pornirea exportului: {{error}}", + "endTimeMustAfterStartTime": "Ora de sfârșit trebuie să fie după ora de început", + "noVaildTimeSelected": "Nu a fost selectat un interval de timp valid" + } + }, + "fromTimeline": { + "saveExport": "Salvează exportul", + "previewExport": "Previzualizează exportul" + } + }, + "streaming": { + "label": "Stream", + "restreaming": { + "disabled": "Restreaming-ul nu este activat pentru această cameră.", + "desc": { + "title": "Configurează go2rtc pentru opțiuni suplimentare de vizualizare live și audio pentru această cameră.", + "readTheDocumentation": "Citește documentația" + } + }, + "showStats": { + "label": "Afișează statistici streaming" + } } } diff --git a/web/public/locales/ro/components/filter.json b/web/public/locales/ro/components/filter.json index 785575a32..41fbae497 100644 --- a/web/public/locales/ro/components/filter.json +++ b/web/public/locales/ro/components/filter.json @@ -5,6 +5,59 @@ "all": { "title": "Toate etichetele", "short": "Etichete" + }, + "count_one": "Etichetă {{count}}", + "count_other": "{{count}} etichete" + }, + "dates": { + "selectPreset": "Selectează o presetare…", + "all": { + "title": "Toate datele", + "short": "Date" } + }, + "zones": { + "label": "Zone", + "all": { + "title": "Toate zonele", + "short": "Zone" + } + }, + "reset": { + "label": "Resetează filtrele la valorile implicite" + }, + "timeRange": "Interval de timp", + "subLabels": { + "label": "Sub-etichete", + "all": "Toate sub-etichetele" + }, + "more": "Mai multe filtre", + "score": "Scor", + "estimatedSpeed": "Viteza estimată ({{unit}})", + "features": { + "label": "Caracteristici", + "hasSnapshot": "Are snapshot", + "hasVideoClip": "Are un videoclip", + "submittedToFrigatePlus": { + "label": "Trimis către Frigate+", + "tips": "Trebuie mai întâi să filtrezi obiectele urmărite care au un snapshot.

    Obiectele urmărite fără snapshot nu pot fi trimise către Frigate+." + } + }, + "sort": { + "label": "Sortează", + "dateAsc": "Dată (crescător)", + "dateDesc": "Dată (descrescător)", + "scoreAsc": "Scor obiect (crescător)", + "scoreDesc": "Scor obiect (descrescător)", + "speedAsc": "Viteză estimată (crescător)", + "speedDesc": "Viteză estimată (descrescător)", + "relevance": "Relevanță" + }, + "cameras": { + "all": { + "short": "Camere", + "title": "Toate camerele" + }, + "label": "Filtru camere" } } diff --git a/web/public/locales/ro/views/configEditor.json b/web/public/locales/ro/views/configEditor.json index 45f667989..5308e44fa 100644 --- a/web/public/locales/ro/views/configEditor.json +++ b/web/public/locales/ro/views/configEditor.json @@ -11,5 +11,6 @@ "error": { "savingError": "Eroare la salvarea setarilor" } - } + }, + "confirm": "Ieși fără să salvezi?" } diff --git a/web/public/locales/ro/views/events.json b/web/public/locales/ro/views/events.json index db092ca62..7bb12ac3b 100644 --- a/web/public/locales/ro/views/events.json +++ b/web/public/locales/ro/views/events.json @@ -31,5 +31,8 @@ "button": "Articole Noi de Revizuit" }, "camera": "Camera foto", - "detections": "Detectii" + "detections": "Detectii", + "detected": "detectat", + "selected_one": "{{count}} selectate", + "selected_other": "{{count}} selectate" } diff --git a/web/public/locales/ro/views/explore.json b/web/public/locales/ro/views/explore.json index e208948f3..e50ddb279 100644 --- a/web/public/locales/ro/views/explore.json +++ b/web/public/locales/ro/views/explore.json @@ -6,15 +6,53 @@ "embeddingsReindexing": { "startingUp": "Porneste…", "estimatedTime": "Timp ramas estimat:", - "finishingShortly": "Termina curand" + "finishingShortly": "Termina curand", + "step": { + "descriptionsEmbedded": "Descrieri încorporate: ", + "trackedObjectsProcessed": "Obiecte urmărite procesate: ", + "thumbnailsEmbedded": "Miniaturi încorporate: " + }, + "context": "Funcția de căutare poate fi utilizată după ce reindexarea obiectelor urmărite este finalizată." + }, + "downloadingModels": { + "context": "Frigate descarcă modelele de încorporare necesare pentru a susține funcția de Căutare Semantică. Acest lucru poate dura câteva minute, în funcție de viteza conexiunii rețelei dvs.", + "setup": { + "visionModel": "Model viziune", + "visionModelFeatureExtractor": "Extractor de caracteristici pentru modelul de viziune", + "textModel": "Model de text", + "textTokenizer": "Tokenizer text" + }, + "tips": { + "context": "S-ar putea să doriți să reindexați încorporările obiectelor urmărite odată ce modelele sunt descărcate.", + "documentation": "Citește documentația" + }, + "error": "A apărut o eroare. Verifică jurnalele Frigate." } }, "type": { - "details": "detalii" + "details": "detalii", + "snapshot": "snapshot", + "video": "video", + "object_lifecycle": "ciclul de viață al obiectului" }, "objectLifecycle": { "lifecycleItemDesc": { - "visible": "{{label}} detectata" - } - } + "visible": "{{label}} detectata", + "active": "{{label}} a devenit activ", + "entered_zone": "{{label}} a intrat în {{zones}}" + }, + "title": "Ciclul de viață al obiectului", + "count": "{{first}} din {{second}}", + "trackedPoint": "Punct urmărit", + "noImageFound": "Nicio imagine găsită pentru această marcă temporală.", + "createObjectMask": "Creează mască de obiect", + "adjustAnnotationSettings": "Ajustează setările de adnotare", + "scrollViewTips": "Derulează pentru a vizualiza momentele semnificative din ciclul de viață al acestui obiect.", + "autoTrackingTips": "Pozițiile casetelor de delimitare vor fi inexacte pentru camerele cu urmărire automată." + }, + "details": { + "timestamp": "Marcaj timp" + }, + "exploreMore": "Explorează mai multe obiecte {{label}}", + "trackedObjectDetails": "Detalii despre obiectul urmărit" } diff --git a/web/public/locales/ro/views/faceLibrary.json b/web/public/locales/ro/views/faceLibrary.json index 9105a4ab0..3365c28b4 100644 --- a/web/public/locales/ro/views/faceLibrary.json +++ b/web/public/locales/ro/views/faceLibrary.json @@ -1,9 +1,61 @@ { "description": { "addFace": "Parcurge adaugare unei colectii noi la Libraria de Fete.", - "placeholder": "Introduceti un nume pentru aceasta colectie" + "placeholder": "Introduceti un nume pentru aceasta colectie", + "invalidName": "Nume invalid. Numele poate conține doar litere, cifre, spații, apostrofuri, liniuțe de subliniere și cratime." }, "details": { - "person": "Persoana" - } + "person": "Persoana", + "subLabelScore": "Scor subetichetă", + "unknown": "Necunoscut", + "scoreInfo": "Scorul sub-etichetă este scorul ponderat pentru toate fețele recunoscute, așa că acesta poate diferi de scorul afișat în snapshot.", + "face": "Detalii față", + "faceDesc": "Detalii despre obiectul urmărit care a generat această față", + "timestamp": "Marcaj timp" + }, + "uploadFaceImage": { + "desc": "Încarcă o imagine pentru a scana fețele și a include pentru {{pageToggle}}", + "title": "Încarcă imaginea feței" + }, + "createFaceLibrary": { + "desc": "Creează o colecție nouă", + "title": "Creează colecție", + "nextSteps": "Pentru a construi o bază solidă:
  • Folosește fila „antrenare” pentru a selecta și antrena pe imagini pentru fiecare persoană detectată.
  • Concentrează-te pe imagini frontale pentru cele mai bune rezultate; evită imaginile de antrenament care surprind fețe din unghiuri laterale.
  • ", + "new": "Crează o față nouă" + }, + "collections": "Colecții", + "documentTitle": "Bibliotecă fețe - Frigate", + "train": { + "empty": "Nu există încercări recente de recunoaștere facială", + "title": "Antrenează", + "aria": "Selectează antrenarea" + }, + "steps": { + "description": { + "uploadFace": "Încarcă o imagine cu {{name}} care să arate fața dintr-un unghi frontal. Imaginea nu trebuie să fie decupată doar la nivelul feței." + }, + "faceName": "Introdu numele feței", + "uploadFace": "Încarcă imaginea feței", + "nextSteps": "Pașii următori" + }, + "selectFace": "Selectează fața", + "deleteFaceLibrary": { + "title": "Șterge numele", + "desc": "Ești sigur că vrei să ștergi colecția {{name}}? Aceasta va șterge definitiv toate fețele asociate." + }, + "renameFace": { + "title": "Redenumește fața", + "desc": "Introdu un nume nou pentru {{name}}" + }, + "deleteFaceAttempts": { + "title": "Șterge fețele", + "desc_one": "Ești sigur că vrei să ștergi {{count}} față? Această acțiune nu poate fi anulată.", + "desc_few": "Ești sigur că vrei să ștergi {{count}} fețe? Această acțiune nu poate fi anulată.", + "desc_other": "Ești sigur că vrei să ștergi {{count}} de fețe? Această acțiune nu poate fi anulată." + }, + "button": { + "addFace": "Adaugă față", + "deleteFaceAttempts": "Șterge fețele" + }, + "selectItem": "Selectează {{item}}" } diff --git a/web/public/locales/ro/views/live.json b/web/public/locales/ro/views/live.json index e235ebe3d..87531bd4d 100644 --- a/web/public/locales/ro/views/live.json +++ b/web/public/locales/ro/views/live.json @@ -1,9 +1,83 @@ { - "documentTitle": "Live - Frigate", - "documentTitle.withCamera": "{{camera}} - Live - Frigate", + "documentTitle": "Frigate - Live", + "documentTitle.withCamera": "{{camera}} - Frigate - Live", "lowBandwidthMode": "Mod Latime de Banda Limitata", "twoWayTalk": { "enable": "Activare dialog", "disable": "Dezactivați conversația bidirecțională" + }, + "ptz": { + "zoom": { + "out": { + "label": "Îndepărtează camera PTZ" + }, + "in": { + "label": "Apropie camera PTZ" + } + }, + "move": { + "clickMove": { + "label": "Apasă în cadrul imaginii pentru a centra camera", + "enable": "Activează clic pentru a muta", + "disable": "Dezactivează clic pentru a muta" + }, + "left": { + "label": "Mișcă camera PTZ spre stânga" + }, + "up": { + "label": "Mișcă camera PTZ în sus" + }, + "down": { + "label": "Mișcă camera PTZ în jos" + }, + "right": { + "label": "Mișcă camera PTZ spre dreapta" + } + }, + "frame": { + "center": { + "label": "Fă clic în cadru pentru a centra camera PTZ" + } + }, + "presets": "Presetări cameră PTZ" + }, + "cameraAudio": { + "enable": "Activează sunetul camerei", + "disable": "Dezactivează sunetul camerei" + }, + "camera": { + "enable": "Activează camera", + "disable": "Dezactivează camera" + }, + "muteCameras": { + "enable": "Dezactivează sunetul pentru toate camerele", + "disable": "Activează sunetul pentru toate camerele" + }, + "detect": { + "enable": "Activează detectarea", + "disable": "Dezactivează detectarea" + }, + "recording": { + "enable": "Activează înregistrarea", + "disable": "Dezactivează înregistrarea" + }, + "snapshots": { + "disable": "Dezactivează snapshoturile", + "enable": "Activează snapshoturile" + }, + "audioDetect": { + "enable": "Activează detectarea audio", + "disable": "Dezactivează detectarea audio" + }, + "autotracking": { + "enable": "Activează urmărirea automată", + "disable": "Dezactivează urmărirea automată" + }, + "streamStats": { + "enable": "Afișează statistici streaming", + "disable": "Ascunde statisticile de streaming" + }, + "manualRecording": { + "title": "Înregistrare la cerere" } } diff --git a/web/public/locales/ro/views/search.json b/web/public/locales/ro/views/search.json index 88783b440..4b89d94dd 100644 --- a/web/public/locales/ro/views/search.json +++ b/web/public/locales/ro/views/search.json @@ -4,6 +4,69 @@ "searchFor": "Cauta {{inputValue}}", "button": { "clear": "Șterge căutarea", - "save": "Salvează căutarea" + "save": "Salvează căutarea", + "filterInformation": "Filtrează informațiile", + "delete": "Șterge căutarea salvată", + "filterActive": "Filtre active" + }, + "trackedObjectId": "ID-ul obiectului urmărit", + "filter": { + "label": { + "cameras": "Camere", + "labels": "Etichete", + "zones": "Zone", + "sub_labels": "Sub-etichete", + "search_type": "Tip căutare", + "time_range": "Interval de timp", + "max_score": "Scor maxim", + "before": "Înainte", + "after": "După", + "min_score": "Scor minim", + "min_speed": "Viteza minimă", + "max_speed": "Viteza maximă", + "recognized_license_plate": "Număr de înmatriculare recunoscut", + "has_clip": "Are videoclip", + "has_snapshot": "Are snapshot" + }, + "tips": { + "desc": { + "step1": "Tastează un nume de filtru urmat de două puncte (ex. „camere:” ).", + "step3": "Folosește mai multe filtre adăugându-le unul după altul, separate prin spațiu.", + "step4": "Filtrele de dată (înainte: și după:) folosesc formatul {{DateFormat}}.", + "step6": "Elimină filtrele făcând clic pe „X”-ul de lângă ele.", + "exampleLabel": "Exemplu:", + "step5": "Filtrul pentru intervalul de timp folosește formatul {{exampleTime}}.", + "step2": "Selectează o valoare din sugestii sau tastează propria valoare.", + "text": "Filtrele te ajută să restrângi rezultatele căutării. Iată cum să le folosești în câmpul de introducere:" + }, + "title": "Cum să folosești filtrele de text" + }, + "header": { + "noFilters": "Filtre", + "currentFilterType": "Valori filtru", + "activeFilters": "Filtre active" + }, + "searchType": { + "thumbnail": "Miniatură", + "description": "Descriere" + }, + "toast": { + "error": { + "beforeDateBeLaterAfter": "Data „înainte” trebuie să fie ulterioară datei „după”.", + "afterDatebeEarlierBefore": "Data „după” trebuie să fie mai recentă decât data „înainte”.", + "minScoreMustBeLessOrEqualMaxScore": "Valoarea „min_score” trebuie să fie mai mică sau egală cu „max_score”.", + "maxScoreMustBeGreaterOrEqualMinScore": "Valoarea „max_score” trebuie să fie mai mare sau egală cu „min_score”.", + "minSpeedMustBeLessOrEqualMaxSpeed": "Valoarea „min_speed” trebuie să fie mai mică sau egală cu „max_speed”.", + "maxSpeedMustBeGreaterOrEqualMinSpeed": "Valoarea „max_speed” trebuie să fie mai mare sau egală cu „min_speed”." + } + } + }, + "similaritySearch": { + "title": "Căutare după similaritate", + "active": "Căutarea după similaritate este activată", + "clear": "Șterge căutarea după similaritate" + }, + "placeholder": { + "search": "Căutare…" } } diff --git a/web/public/locales/ro/views/settings.json b/web/public/locales/ro/views/settings.json index 25f1492fc..a32854c48 100644 --- a/web/public/locales/ro/views/settings.json +++ b/web/public/locales/ro/views/settings.json @@ -4,6 +4,56 @@ "camera": "Setari Camera - Frigate", "default": "Setari - Frigate", "classification": "Setări de clasificare - Frigate", - "masksAndZones": "Editor Zonă si Mască - Frigate" + "masksAndZones": "Editor Zonă si Mască - Frigate", + "notifications": "Setări notificări - Frigate", + "motionTuner": "Ajustare mișcare - Frigate", + "object": "Depanare - Frigate", + "general": "Setări generale - Frigate", + "frigatePlus": "Setări Frigate+ - Frigate", + "enrichments": "Setări de Îmbogățire - Frigate" + }, + "menu": { + "ui": "Interfață utilizator", + "cameras": "Setări cameră", + "masksAndZones": "Măști / Zone", + "motionTuner": "Reglaj mișcare", + "enrichments": "Îmbogățiri", + "debug": "Depanare", + "users": "Utilizatori", + "notifications": "Notificări", + "frigateplus": "Frigate+" + }, + "dialog": { + "unsavedChanges": { + "title": "Ai modificări nesalvate.", + "desc": "Vrei să salvezi modificările înainte de a continua?" + } + }, + "cameraSetting": { + "camera": "Cameră", + "noCamera": "Nicio cameră" + }, + "general": { + "title": "Setări generale", + "liveDashboard": { + "title": "Tabloul de bord live", + "automaticLiveView": { + "desc": "Comută automat la vizualizarea live a unei camere când este detectată activitate. Dezactivarea acestei opțiuni face ca imaginile statice ale camerelor din panoul Live să se actualizeze doar o dată pe minut.", + "label": "Vizualizare Live Automată" + }, + "playAlertVideos": { + "label": "Redă videoclipurile de alertă", + "desc": "În mod implicit, alertele recente din panoul Live se redau ca videoclipuri mici, ce ruleaza repetat. Dezactivează această opțiune pentru a afișa doar o imagine statică a alertelor recente pe acest dispozitiv/browser." + } + }, + "storedLayouts": { + "title": "Layout-uri salvate", + "desc": "Aranjamentul camerelor într-un grup de camere poate fi tras și redimensionat. Pozițiile sunt salvate în stocarea locală a browserului tău.", + "clearAll": "Șterge toate layout-urile" + }, + "cameraGroupStreaming": { + "title": "Setări de streaming pentru grupul de camere", + "desc": "Setările de streaming pentru fiecare grup de camere sunt stocate în memoria locală a browserului tău." + } } } diff --git a/web/public/locales/ro/views/system.json b/web/public/locales/ro/views/system.json index 34bfbf2ef..e75a860e0 100644 --- a/web/public/locales/ro/views/system.json +++ b/web/public/locales/ro/views/system.json @@ -18,11 +18,21 @@ "gpuMemory": "Utilizare Memorie", "title": "Informații hardware", "gpuEncoder": "Codificator GPU", - "gpuDecoder": "Decodificator GPU" + "gpuDecoder": "Decodificator GPU", + "gpuInfo": { + "vainfoOutput": { + "returnCode": "Cod de retur: {{code}}", + "processOutput": "Rezultatul procesului:", + "title": "Rezultat vainfo" + } + } }, "detector": { "temperature": "Temperatura Detectorului", - "title": "Detectori" + "title": "Detectori", + "cpuUsage": "Utilizarea procesorului detectorului", + "inferenceSpeed": "Viteza inferenței detectorului", + "memoryUsage": "Utilizare memorie detector" }, "otherProcesses": { "title": "Alte Procese" @@ -50,6 +60,13 @@ "timestamp": "Marca temporală", "tag": "Etichetă", "message": "Mesaj" + }, + "tips": "Jurnalele se transmit de pe server", + "toast": { + "error": { + "fetchingLogsFailed": "Eroare la preluarea jurnalelor: {{errorMessage}}", + "whileStreamingLogs": "Eroare la transmiterea jurnalelor: {{errorMessage}}" + } } }, "metrics": "Date Sistem" diff --git a/web/public/locales/ru/common.json b/web/public/locales/ru/common.json index 896d1018d..caeb81fb0 100644 --- a/web/public/locales/ru/common.json +++ b/web/public/locales/ru/common.json @@ -181,7 +181,8 @@ "label": "Использовать системные настройки языка" }, "yue": "粵語 (Кантонский)", - "th": "ไทย (Тайский)" + "th": "ไทย (Тайский)", + "ca": "Català (Каталонский)" }, "darkMode": { "withSystem": { diff --git a/web/public/locales/ru/views/settings.json b/web/public/locales/ru/views/settings.json index 4ef3accb6..1ad71e719 100644 --- a/web/public/locales/ru/views/settings.json +++ b/web/public/locales/ru/views/settings.json @@ -301,7 +301,7 @@ "camera": { "review": { "alerts": "Тревоги ", - "desc": "Включить или отключить тревоги и обнаружения для этой камеры. В отключенном состоянии новые события не будут записываться.", + "desc": "Временно включить/отключить тревоги и обнаружения для этой камеры до перезапуска Frigate. В отключенном состоянии новые события не будут записываться. ", "detections": "Обнаружения ", "title": "Обзор событий" }, @@ -329,7 +329,7 @@ "title": "Настройки камеры", "streams": { "title": "Потоки", - "desc": "Отключение камеры полностью останавливает обработку Frigate потоков с этой камеры. Обнаружение, запись и отладка будут недоступны.
    Примечание: Это не отключает рестриминг go2rtc." + "desc": "Временно отключить камеру до перезапуска Frigate. Отключение камеры полностью останавливает обработку потоков этой камеры в Frigate. Обнаружение, запись и отладка будут недоступны.
    Примечание: Это не отключает рестриминг go2rtc." } }, "masksAndZones": { diff --git a/web/public/locales/sl/audio.json b/web/public/locales/sl/audio.json index ea7b0efac..31562e8c9 100644 --- a/web/public/locales/sl/audio.json +++ b/web/public/locales/sl/audio.json @@ -20,7 +20,7 @@ "cat": "Maček", "meow": "Mijav", "horse": "Konj", - "moo": "Mu", + "moo": "Muu", "cowbell": "Kravji zvonec", "pig": "Pujs", "goat": "Koza", @@ -37,7 +37,7 @@ "train": "Vlak", "toothbrush": "Ščetka za zobe", "bark": "Lajanje", - "mouse": "Miška", + "mouse": "Miš", "keyboard": "Tipkovnica", "boat": "Ladja", "vehicle": "Prevozno sredstvo", @@ -53,5 +53,58 @@ "clock": "Ura", "camera": "Kamera", "bellow": "Spodaj", - "whoop": "Ups" + "whoop": "Ups", + "musical_instrument": "Glasbeni inštrument", + "choir": "Zbor", + "burping": "Riganje", + "hiccup": "Kolcanje", + "fart": "Prdenje", + "hands": "Roke", + "finger_snapping": "Tleskanje s prsti", + "clapping": "Ploskanje", + "heartbeat": "Utrip srca", + "cheering": "Navijanje", + "applause": "Aplavz", + "crowd": "Množica", + "children_playing": "Igranje otrok", + "howl": "Auuu", + "purr": "Predenje", + "hiss": "Sikanje", + "livestock": "Živina", + "cattle": "Govedo", + "quack": "Ga-ga", + "cluck": "Kokodak", + "cock_a_doodle_doo": "Kikiriki", + "bleat": "Mee", + "neigh": "I-ha ha", + "chirp": "Čiv-čiv", + "pigeon": "Golob", + "coo": "Gru-gru", + "crow": "Vrana", + "caw": "Kra", + "owl": "Sova", + "hoot": "Hu-hu", + "flapping_wings": "Plapolanje kril", + "dogs": "Psi", + "rats": "Podgane", + "insect": "Insekt", + "cricket": "Čriček", + "mosquito": "Komar", + "fly": "Muha", + "frog": "Žaba", + "snake": "Kača", + "music": "Glasba", + "guitar": "Kitara", + "electric_guitar": "Električna kitara", + "bass_guitar": "Bas kitara", + "acoustic_guitar": "Akustična kitara", + "strum": "Brenkanje", + "banjo": "Bendžo", + "sitar": "Sitar", + "mandolin": "Mandolina", + "ukulele": "Ukulele", + "piano": "Klavir", + "electric_piano": "Digitalni klavir", + "organ": "Orgle", + "electronic_organ": "Digitalne orgle" } diff --git a/web/public/locales/sl/common.json b/web/public/locales/sl/common.json index 9cdbae244..ff21c10ce 100644 --- a/web/public/locales/sl/common.json +++ b/web/public/locales/sl/common.json @@ -31,7 +31,27 @@ "minute_one": "{{time}} minuta", "minute_two": "{{time}} minuti", "minute_few": "{{time}} minute", - "minute_other": "{{time}} minut" + "minute_other": "{{time}} minut", + "10minutes": "10 minut", + "lastMonth": "Prejšnji mesec", + "5minutes": "5 minut", + "today": "Danes", + "yesterday": "Včeraj", + "last7": "Zadnjih 7 dni", + "last14": "Zadnjih 14 dni", + "last30": "Zadnjih 30 dni", + "1hour": "1 ura", + "12hours": "12 ur", + "24hours": "24 ur", + "30minutes": "30 minut", + "am": "am", + "pm": "pm", + "mo": "{{time}}mes", + "d": "{{time}}d", + "h": "{{time}}h", + "m": "{{time}}m", + "s": "{{time}}s", + "yr": "le" }, "menu": { "live": { @@ -39,8 +59,53 @@ "count_one": "{{count}} kamera", "count_two": "{{count}} kameri", "count_few": "{{count}} kamere", - "count_other": "{{count}} kamer" - } + "count_other": "{{count}} kamer", + "title": "Kamere" + }, + "allCameras": "Vse Kamere", + "title": "V Živo" + }, + "explore": "Brskanje", + "theme": { + "nord": "Nord" + }, + "review": "Pregled" + }, + "button": { + "apply": "Uporabi", + "reset": "Ponastavi", + "done": "Končano", + "disable": "Izklopi", + "close": "Zapri", + "back": "Nazaj", + "pictureInPicture": "Slika v Sliki", + "history": "Zgodovina", + "disabled": "Izklopljeno", + "copy": "Kopiraj", + "exitFullscreen": "Izhod iz Celozaslonskega načina", + "enabled": "Omogočen", + "enable": "Vklopi", + "save": "Shrani", + "saving": "Shranjevanje …", + "cancel": "Prekliči", + "fullscreen": "Celozaslonski način" + }, + "unit": { + "speed": { + "kph": "km/h", + "mph": "mi/h" + }, + "length": { + "feet": "čevelj", + "meters": "metri" + } + }, + "label": { + "back": "Pojdi nazaj" + }, + "pagination": { + "next": { + "label": "Pojdi na naslednjo stran" } } } diff --git a/web/public/locales/sl/components/filter.json b/web/public/locales/sl/components/filter.json index 56c90df03..b202e1554 100644 --- a/web/public/locales/sl/components/filter.json +++ b/web/public/locales/sl/components/filter.json @@ -6,7 +6,8 @@ "title": "Vse oznake", "short": "Oznake" }, - "count_one": "{{count}} oznak" + "count_one": "{{count}} oznaka", + "count_other": "{{count}} oznak" }, "dates": { "selectPreset": "Izberite nastavitev …", @@ -15,5 +16,46 @@ "short": "Datumi" } }, - "more": "Več filtrov" + "more": "Več filtrov", + "explore": { + "settings": { + "defaultView": { + "summary": "Povzetek" + } + } + }, + "subLabels": { + "all": "Vse podoznake", + "label": "Podoznake" + }, + "sort": { + "relevance": "Ustreznost", + "dateAsc": "Datum (naraščajoče)" + }, + "zones": { + "label": "Cone", + "all": { + "title": "Vse cone", + "short": "Cone" + } + }, + "timeRange": "Časovno obdobje", + "reset": { + "label": "Ponastavi filtre na privzete vrednosti" + }, + "logSettings": { + "disableLogStreaming": "Izklopite zapisovanje dnevnika", + "allLogs": "Vsi dnevniki" + }, + "trackedObjectDelete": { + "title": "Potrdite brisanje", + "desc": "Izbris teh {{objectLength}} sledenih predmetov odstrani pripadajoče slikovne posneteke, shranjene vstavke in povezane vnose življenskega cikla predmetov. Posnetki teh sledenih predmetov v pogledu Zgodovina se NE bodo izbrisali.

    Ste prepričani, da želite nadaljevati?

    Pritisnite tipko Shift , da v prihodnje preskočite dialog.", + "toast": { + "success": "Uspešno izbrisani sledeni predmeti.", + "error": "Ni uspelo izbrisati sledenih predmetov: {{errorMessage}}" + } + }, + "zoneMask": { + "filterBy": "Filtrirajte po maski območja" + } } diff --git a/web/public/locales/sl/objects.json b/web/public/locales/sl/objects.json index 5233179fe..19b21bfe0 100644 --- a/web/public/locales/sl/objects.json +++ b/web/public/locales/sl/objects.json @@ -78,7 +78,7 @@ "toilet": "Stranišče", "door": "Vrata", "tv": "Televizija", - "mouse": "Miška", + "mouse": "Miš", "remote": "Daljinec", "keyboard": "Tipkovnica", "cell_phone": "Telefon", diff --git a/web/public/locales/sl/views/explore.json b/web/public/locales/sl/views/explore.json index 018b81cbc..97e7ca664 100644 --- a/web/public/locales/sl/views/explore.json +++ b/web/public/locales/sl/views/explore.json @@ -16,5 +16,58 @@ }, "documentTitle": "Razišči - Frigate", "generativeAI": "Generativna UI", - "exploreMore": "Razišči več {{label}} objektov" + "exploreMore": "Razišči več {{label}} objektov", + "details": { + "button": { + "regenerate": { + "label": "Regeneriraj opise sledenih predmetov", + "title": "Regeneriraj" + }, + "findSimilar": "Najdi podobno" + }, + "camera": "Kamera", + "estimatedSpeed": "Ocenjena hitrost", + "description": { + "placeholder": "Opis sledenega predmeta", + "label": "Opis" + }, + "recognizedLicensePlate": "Prepoznana registrska tablica", + "objects": "Predmeti", + "zones": "Območja", + "timestamp": "Časovni žig" + }, + "itemMenu": { + "findSimilar": { + "aria": "Najdi podobne sledene predmete", + "label": "Najdi podobno" + }, + "submitToPlus": { + "label": "Predloži v Frigate+", + "aria": "Predloži v Frigate Plus" + }, + "viewInHistory": { + "label": "Poglej v zgodovini", + "aria": "Poglej v zgodovini" + }, + "deleteTrackedObject": { + "label": "Izbriši ta sledeni predmet" + }, + "viewObjectLifecycle": { + "aria": "Pokaži življenjski cikel predmeta", + "label": "Poglej življenjski cikel predmeta" + }, + "downloadVideo": { + "label": "Prenesi video", + "aria": "Prenesi video" + }, + "downloadSnapshot": { + "label": "Prenesi posnetek", + "aria": "Prenesi posnetek" + } + }, + "dialog": { + "confirmDelete": { + "title": "Potrdi brisanje" + } + } } diff --git a/web/public/locales/sl/views/faceLibrary.json b/web/public/locales/sl/views/faceLibrary.json index b70d762fd..d59acc47e 100644 --- a/web/public/locales/sl/views/faceLibrary.json +++ b/web/public/locales/sl/views/faceLibrary.json @@ -6,7 +6,8 @@ }, "details": { "person": "Oseba", - "unknown": "Nenznano" + "unknown": "Nenznano", + "timestamp": "Časovni žig" }, "uploadFaceImage": { "title": "Naloži nov obraz" diff --git a/web/public/locales/sl/views/live.json b/web/public/locales/sl/views/live.json index a01245425..212137ba7 100644 --- a/web/public/locales/sl/views/live.json +++ b/web/public/locales/sl/views/live.json @@ -3,7 +3,8 @@ "documentTitle.withCamera": "{{camera}} - v živo - Frigate", "lowBandwidthMode": "Nizkopasovni način", "twoWayTalk": { - "enable": "Omogoči dvosmerni pogovor" + "enable": "Omogoči dvosmerni pogovor", + "disable": "Onemogoči Obojesmerni Pogovor" }, "ptz": { "move": { diff --git a/web/public/locales/sl/views/settings.json b/web/public/locales/sl/views/settings.json index 52f133c90..af8f70748 100644 --- a/web/public/locales/sl/views/settings.json +++ b/web/public/locales/sl/views/settings.json @@ -3,11 +3,22 @@ "default": "Nastavitve - Frigate", "authentication": "Nastavitve preverjanja pristnosti - Frigate", "camera": "Nastavitve kamere - Frigate", - "notifications": "Nastavitve obvestil - Frigate" + "notifications": "Nastavitve obvestil - Frigate", + "masksAndZones": "Urejevalnik mask in območij - Frigate", + "object": "Odpravljanje napak - Frigate", + "general": "Splošne Nastavitve - Frigate", + "frigatePlus": "Frigate+ Nastavitve - Frigate", + "enrichments": "Nastavitve Obogatitev - Frigate" }, "menu": { "ui": "Uporabniški vmesnik", - "enrichments": "Obogatitve" + "enrichments": "Obogatitve", + "cameras": "Nastavitve Kamere", + "masksAndZones": "Maske / Cone", + "debug": "Razhroščevanje", + "users": "Uporabniki", + "notifications": "Obvestila", + "frigateplus": "Frigate+" }, "masksAndZones": { "zones": { @@ -28,5 +39,32 @@ "point_few": "{{count}} točke", "point_other": "{{count}} točk" } + }, + "dialog": { + "unsavedChanges": { + "title": "Imate neshranjene spremembe.", + "desc": "Ali želite shraniti spremembe, preden nadaljujete?" + } + }, + "cameraSetting": { + "camera": "Kamera", + "noCamera": "Brez Kamere" + }, + "general": { + "title": "Splošne Nastavitve", + "liveDashboard": { + "title": "Nadzorna plošča (v živo)", + "automaticLiveView": { + "label": "Samodejni pogled v živo", + "desc": "Samodejno preklopite na pogled kamere v živo, ko je zaznana aktivnost. Če onemogočite to možnost, se statične slike kamere na nadzorni plošči v živo posodobijo le enkrat na minuto." + }, + "playAlertVideos": { + "label": "Predvajajte opozorilne videoposnetke" + } + }, + "storedLayouts": { + "title": "Sharnjene Postavitve", + "desc": "Postaviteve kamer v skupini kamer je mogoče povleči/prilagoditi. Položaji so shranjeni v lokalnem pomnilniku vašega brskalnika." + } } } diff --git a/web/public/locales/sl/views/system.json b/web/public/locales/sl/views/system.json index 80d438934..4a19721c0 100644 --- a/web/public/locales/sl/views/system.json +++ b/web/public/locales/sl/views/system.json @@ -2,7 +2,12 @@ "documentTitle": { "cameras": "Statistika kamer - Frigate", "storage": "Statistika prostora - Frigate", - "general": "Statistika - Frigate" + "general": "Statistika - Frigate", + "logs": { + "frigate": "Frigate dnevniki - Frigate", + "go2rtc": "Go2RTC dnevniki - Frigate", + "nginx": "Nginx dnevniki - Frigate" + } }, "logs": { "download": { @@ -10,7 +15,92 @@ }, "copy": { "label": "Kopiraj v odložišče", - "success": "Dnevniki kopirani v odložišče" + "success": "Dnevniki kopirani v odložišče", + "error": "Dnevnika ni bilo mogoče kopirati v odložišče" + }, + "type": { + "label": "Tip", + "timestamp": "Časovni žig", + "message": "Sporočilo", + "tag": "Oznaka" + } + }, + "storage": { + "recordings": { + "title": "Posnetki", + "tips": "Ta vrednost predstavlja velikost podatkovne zbirke posnetkov Frigate. Frigate ne spremlja velikost drugih datotek na disku.", + "earliestRecording": "Najstarejši posnetki:" + }, + "title": "Hramba", + "overview": "Pregled", + "cameraStorage": { + "title": "Hramba kamer", + "camera": "Kamera", + "unusedStorageInformation": "Informacija neporabljenega prostora", + "storageUsed": "Hramba", + "percentageOfTotalUsed": "Procent celote", + "bandwidth": "Pasovna širina", + "unused": { + "title": "Neporabljeno", + "tips": "Ta vrednost ne predstavlja dejanske proste kapacitete za Frigate posnetke, če na disku shranjujete še druge datoteke. Frigate ne spremlja velikost drugih datotek na disku." + } + } + }, + "general": { + "hardwareInfo": { + "npuMemory": "Pomnilnik NPE", + "title": "Podatki strojne opreme", + "gpuUsage": "Poraba GPE", + "gpuMemory": "Pomnilnik GPE", + "gpuEncoder": "GPE kodirnik", + "gpuDecoder": "GPE dekoder", + "gpuInfo": { + "vainfoOutput": { + "title": "Vainfo izpis", + "returnCode": "Povratna koda: {{code}}", + "processOutput": "Izpis procesa:", + "processError": "Napaka procesa:" + }, + "nvidiaSMIOutput": { + "title": "Nvidia SMI izpis", + "name": "Ime: {{name}}", + "driver": "Gonilnik: {{driver}}", + "cudaComputerCapability": "Zmožnost računanja CUDA: {{cuda_compute}}", + "vbios": "VBios info: {{vbios}}" + }, + "closeInfo": { + "label": "Zapri GPU info" + }, + "copyInfo": { + "label": "Kopiraj GPU info" + }, + "toast": { + "success": "GPU informacije kopirane v odložišče" + } + }, + "npuUsage": "Poraba NPE" + }, + "title": "Splošno", + "detector": { + "title": "Detektorji", + "inferenceSpeed": "Hitrost sklepanja detektorja", + "temperature": "Temperatura detektorja", + "cpuUsage": "Poraba CPE detektorja", + "memoryUsage": "Poraba pomnilnika detektorja" + }, + "otherProcesses": { + "title": "Ostali procesi", + "processMemoryUsage": "Poraba pomnilnika", + "processCpuUsage": "Poraba CPE" + } + }, + "title": "Sistem", + "metrics": "Sistemske meritve", + "cameras": { + "title": "Kamere", + "overview": "Pregled", + "info": { + "aspectRatio": "razmerje stranic" } } } diff --git a/web/public/locales/th/common.json b/web/public/locales/th/common.json index f312442cc..c7044976d 100644 --- a/web/public/locales/th/common.json +++ b/web/public/locales/th/common.json @@ -26,7 +26,7 @@ "day_other": "{{time}} วัน", "h": "{{time}} ชั่วโมง", "hour_other": "{{time}} ชั่วโมง", - "m": "{{time}} เดือน", + "m": "{{time}} นาที", "s": "{{time}} วินาที", "mo": "{{time}} เดือน", "minute_other": "{{time}} นาที", @@ -114,7 +114,7 @@ "logout": "ออกจากระบบ", "title": "ผู้ใช้", "account": "บัญชี", - "current": "จำนวนผู้ใช้: {{user}}", + "current": "ผู้ใช้ปัจจุบัน: {{user}}", "anonymous": "ไม่ระบุตัวตน", "setPassword": "ตั้งรหัสผ่าน" }, diff --git a/web/public/locales/th/components/dialog.json b/web/public/locales/th/components/dialog.json index ae71dc059..d1a85ec0c 100644 --- a/web/public/locales/th/components/dialog.json +++ b/web/public/locales/th/components/dialog.json @@ -8,12 +8,98 @@ "save": { "label": "บันทึกการค้นหานี้" } - } + }, + "overwrite": "{{searchName}} มีอยู่แล้ว. การบันทึกจะทำการทับของเดิมลงไป.", + "placeholder": "ใส่ชื่อสําหรับการค้นหาของคุณ" } }, "export": { "fromTimeline": { - "saveExport": "บันทึกส่งออก" + "saveExport": "บันทึกส่งออก", + "previewExport": "ตัวอย่างส่งออก" + }, + "toast": { + "error": { + "endTimeMustAfterStartTime": "เวลาสิ้นสุดต้องอยู่หลังเวลาเริ่มต้น", + "noVaildTimeSelected": "ไม่ได้เลือกช่วงเวลาที่ถูกต้อง", + "failed": "เริ่มต้นการส่งออกผิดพลาด: {{error}}" + }, + "success": "เริ่มต้นการส่งออก ดูไฟล์ในโฟลเดอร์ /exports." + }, + "time": { + "fromTimeline": "เลือกจากเวลา", + "lastHour_other": "ก่อนหน้านี้ {{count}} ชั่วโมง", + "custom": "กําหนดเอง", + "start": { + "title": "เวลาเริ่มต้น", + "label": "เลือกเวลาเริ่มต้น" + }, + "end": { + "title": "เวลาสิ้นสุด", + "label": "เลือกเวลาสิ้นสุด" + } + }, + "name": { + "placeholder": "ชื่อส่งออก" + }, + "select": "เลือก", + "export": "ส่งออก", + "selectOrExport": "เลือกหรือส่งออก" + }, + "restart": { + "restarting": { + "button": "โหลดหน้าใหม่ตอนนี้", + "title": "Frigate กำลังรีสตาร์ท", + "content": "หน้านี้จะถูกโหลดในอีก {{countdown}} วินาที." + }, + "title": "คุณแน่ใจหรือว่าต้องการรีสตาร์ท Frigate?", + "button": "รีสตาร์ท" + }, + "explore": { + "plus": { + "review": { + "question": { + "ask_full": "วัตถุนี้คือ {{untranslatedLabel}} ({{translatedLabel}})?", + "label": "ยืนยันหมวดหมู่นี้สําหรับ Frigate+", + "ask_a": "วัตถุนี้คือ {{label}}?", + "ask_an": "วัตถุนี้คือ {{label}}?" + }, + "state": { + "submitted": "ส่งเรียบร้อย" + } + }, + "submitToPlus": { + "label": "ส่งไปยัง Frigate+" + } + }, + "video": { + "viewInHistory": "ดูประวัติ" + } + }, + "recording": { + "button": { + "deleteNow": "ลบตอนนี้", + "export": "ส่งออก", + "markAsReviewed": "ทำเครื่องหมายว่ารีวิวแล้ว" + }, + "confirmDelete": { + "title": "ยืนยันการลบ", + "toast": { + "error": "ลบไม่ได้: {{error}}" + } + } + }, + "streaming": { + "label": "สตรีม", + "restreaming": { + "disabled": "รีสตรีมไม่ได้เปิดใช้งานสําหรับกล้องนี้.", + "desc": { + "readTheDocumentation": "อ่านเอกสาร" + } + }, + "showStats": { + "label": "แสดงสถานะสตรีม", + "desc": "เปิดใช้งานตัวเลือกนี้เพื่อจะแสดงสถิติในกล้อง." } } } diff --git a/web/public/locales/th/components/filter.json b/web/public/locales/th/components/filter.json index 3e4434115..aea9fc5a7 100644 --- a/web/public/locales/th/components/filter.json +++ b/web/public/locales/th/components/filter.json @@ -60,7 +60,7 @@ "label": "กรองกล้อง" }, "review": { - "showReviewed": "แสดงรีวิว" + "showReviewed": "แสดงที่รีวิวแล้ว" }, "motion": { "showMotionOnly": "แสดงเฉพาะการเคลื่อนไหวเท่านั้น" diff --git a/web/public/locales/th/views/explore.json b/web/public/locales/th/views/explore.json index 9b5bb9d00..b74d29e78 100644 --- a/web/public/locales/th/views/explore.json +++ b/web/public/locales/th/views/explore.json @@ -9,6 +9,24 @@ "startingUp": "เริ่มต้น…", "estimatedTime": "ระยะเวลาโดยประมาณ:", "finishingShortly": "เสร็จเร็วๆนี้" + }, + "downloadingModels": { + "tips": { + "documentation": "อ่านเอกสาร" + } } - } + }, + "type": { + "details": "รายละเอียด", + "video": "วิดีโอ" + }, + "objectLifecycle": { + "noImageFound": "ไม่มีภาพสําหรับช่วงเวลานี้.", + "annotationSettings": { + "offset": { + "documentation": "อ่านเอกสาร " + } + } + }, + "trackedObjectsCount_other": "{{count}} วัตถุที่เจอ " } diff --git a/web/public/locales/th/views/faceLibrary.json b/web/public/locales/th/views/faceLibrary.json index d16f0a2c3..4372d09b5 100644 --- a/web/public/locales/th/views/faceLibrary.json +++ b/web/public/locales/th/views/faceLibrary.json @@ -7,11 +7,15 @@ "steps": { "faceName": "ใส่ชื่อหน้า", "uploadFace": "ใส่รูปหน้า", - "nextSteps": "ต่อไป" + "nextSteps": "ต่อไป", + "description": { + "uploadFace": "อัพโหลดภาพ {{name}} ที่แสดงให้เห็นใบหน้าของเขาจากมุมข้างหน้า. รูปภาพไม่จําเป็นต้องตัดให้เห็นเฉพาะใบหน้าของเขา." + } }, "selectFace": "เลือกหน้า", "deleteFaceLibrary": { - "title": "ลบชื่อ" + "title": "ลบชื่อ", + "desc": "คุณแน่ใจหรือไม่ว่าต้องการลบคอลเลกชัน {{name}}? การลบนี้จะเป็นการลบอย่างถาวร." }, "deleteFaceAttempts": { "title": "ลบหน้า" @@ -29,10 +33,24 @@ "reprocessFace": "คำนวนหน้าใหม่" }, "imageEntry": { - "dropActive": "ลากรูปลงที่นี้" + "dropActive": "ลากรูปลงที่นี้", + "dropInstructions": "ลากและวางภาพที่นี่, หรือคลิกเลือก" }, "selectItem": "เลือก {{item}}", "createFaceLibrary": { - "new": "สร้างหน้าใหม่" - } + "new": "สร้างหน้าใหม่", + "nextSteps": "สร้างรากฐานที่แข็งแรง:
  • ใช้แท็บฝึกเพื่อเลือกและฝึกบนภาพแต่ละบุคคล.
  • เน้นไปที่ภาพหน้าตรงเพื่อผลลัพธ์ที่ดีที่สุด; หลีกเลี่ยงภาพที่จับภาพใบหน้าแบบมุม
  • " + }, + "collections": "คอลเลกชัน", + "description": { + "addFace": "ทำตามวิธีการเพิ่มคอลเลกชันใหม่ไปยังที่เก็บหน้า.", + "placeholder": "ใส่ชื่อสําหรับคอลเลกชันนี้" + }, + "toast": { + "success": { + "addFaceLibrary": "{{name}} เพิ่มลงที่เก็บหน้าเรียบร้อยแล้ว!", + "deletedName_other": "{{count}} หน้าถูกลบไปเรียบร้อยแล้ว." + } + }, + "readTheDocs": "อ่านเอกสาร" } diff --git a/web/public/locales/th/views/live.json b/web/public/locales/th/views/live.json index cf5cfef7d..ccf620b84 100644 --- a/web/public/locales/th/views/live.json +++ b/web/public/locales/th/views/live.json @@ -2,6 +2,14 @@ "stream": { "playInBackground": { "label": "เล่นในพื้นหลัง" + }, + "audio": { + "tips": { + "documentation": "อ่านเอกสาร " + } + }, + "twoWayTalk": { + "tips.documentation": "อ่านเอกสาร " } }, "documentTitle": "สด - Frigate", @@ -28,5 +36,14 @@ } }, "documentTitle.withCamera": "{{camera}} - สด - Frigate", - "streamingSettings": "การตั้งค่าการสตรีม" + "streamingSettings": "การตั้งค่าการสตรีม", + "camera": { + "disable": "ปิดกล้อง" + }, + "detect": { + "disable": "ปิดการตรวจจับ" + }, + "recording": { + "disable": "ปิดการบันทึก" + } } diff --git a/web/public/locales/th/views/settings.json b/web/public/locales/th/views/settings.json index b85a58d4f..421620708 100644 --- a/web/public/locales/th/views/settings.json +++ b/web/public/locales/th/views/settings.json @@ -61,10 +61,12 @@ "username": "ชื่อผู้ใช้", "noUsers": "ไม่เจอผู้ใช้", "password": "รหัสผ่าน", - "deleteUser": "ลบผู้ใช้" + "deleteUser": "ลบผู้ใช้", + "actions": "การดำเนินการ" }, "management": { - "title": "จัดการผู้ใช้" + "title": "จัดการผู้ใช้", + "desc": "จัดการบัญชีของ Frigate นี้." }, "addUser": "แก้ไขผู้ใช้", "title": "ผู้ใช้", @@ -87,6 +89,12 @@ }, "email": { "title": "อีเมล" + }, + "notificationSettings": { + "documentation": "อ่านเอกสาร" + }, + "notificationUnavailable": { + "documentation": "อ่านเอกสาร" } }, "documentTitle": { @@ -177,6 +185,9 @@ "title": "รีวิว", "alerts": "การแจ้งเตือน ", "detections": "การเคลื่อนไหว " + }, + "reviewClassification": { + "readTheDocumentation": "อ่านเอกสาร" } }, "masksAndZones": { @@ -188,10 +199,19 @@ }, "add": "เพิ่มโซน", "edit": "แก้โซน", - "point_other": "{{count}} จุด" + "point_other": "{{count}} จุด", + "speedEstimation": { + "docs": "อ่านเอกสาร" + } }, "motionMasks": { - "point_other": "{{count}} จุด" + "point_other": "{{count}} จุด", + "context": { + "documentation": "อ่านเอกสาร" + }, + "polygonAreaTooLarge": { + "documentation": "อ่านเอกสาร" + } }, "objectMasks": { "point_other": "{{count}} จุด" @@ -204,6 +224,25 @@ }, "toast": { "error": "ผิดพลาดในการบันทึกการกำหนดค่า: {{errorMessage}}" + }, + "snapshotConfig": { + "documentation": "อ่านเอกสาร" + } + }, + "debug": { + "objectShapeFilterDrawing": { + "document": "อ่านเอกสาร " + } + }, + "enrichments": { + "semanticSearch": { + "readTheDocumentation": "อ่านเอกสาร" + }, + "faceRecognition": { + "readTheDocumentation": "อ่านเอกสาร" + }, + "licensePlateRecognition": { + "readTheDocumentation": "อ่านเอกสาร" } } } diff --git a/web/public/locales/th/views/system.json b/web/public/locales/th/views/system.json index 9ed782172..2084d91a3 100644 --- a/web/public/locales/th/views/system.json +++ b/web/public/locales/th/views/system.json @@ -6,8 +6,29 @@ "nvidiaSMIOutput": { "driver": "ไดรเวอร์: {{driver}}", "name": "ชื่อ: {{name}}" + }, + "copyInfo": { + "label": "คัดลอกข้อมูล GPU" + }, + "closeInfo": { + "label": "ปิดข้อมูล GPU" + }, + "toast": { + "success": "คัดลอกข้อมูล GPU ไปยังคลิปบอร์ดแล้ว" } - } + }, + "gpuUsage": "การใช้งาน GPU", + "gpuMemory": "หน่วยความจํา GPU", + "title": "รายละเอียดของอุปกรณ์", + "gpuEncoder": "ใช้ GPU เข้ารหัส", + "gpuDecoder": "ใช้ GPU ถอดรหัส" + }, + "detector": { + "cpuUsage": "ตัวตรวจจับใช้งานหน่วยประมวลผลกลาง", + "title": "ตัวตรวจจับ", + "inferenceSpeed": "ความเร็วในการตรวจจับ", + "temperature": "อุณภูมิตัวตรวจจับ", + "memoryUsage": "ตัวตรวจจับใช้งานหน่วยความจำ" } }, "enrichments": { @@ -25,7 +46,14 @@ "cameraStorage": { "unused": { "title": "ไม่ได้ใช้" - } - } + }, + "storageUsed": "พื้นที่จัดเก็บ", + "title": "พื้นที่จัดเก็บกล้อง" + }, + "title": "พื้นที่จัดเก็บ" + }, + "stats": { + "cameraIsOffline": "{{camera}} ออฟไลน์", + "detectIsVerySlow": "{{detect}} ช้ามาก ({{speed}} มิลลิวินาที)" } } diff --git a/web/public/locales/tr/common.json b/web/public/locales/tr/common.json index 208f24a33..e23b402ca 100644 --- a/web/public/locales/tr/common.json +++ b/web/public/locales/tr/common.json @@ -165,7 +165,8 @@ "ar": "العربية (Arapça)", "ru": "Русский (Rusça)", "yue": "粵語 (Kantonca)", - "th": "ไทย (Tayca)" + "th": "ไทย (Tayca)", + "ca": "Català (Katalanca)" }, "withSystem": "Sistem", "theme": { diff --git a/web/public/locales/tr/components/dialog.json b/web/public/locales/tr/components/dialog.json index d37094865..acdb8ef1e 100644 --- a/web/public/locales/tr/components/dialog.json +++ b/web/public/locales/tr/components/dialog.json @@ -107,7 +107,7 @@ "confirmDelete": { "title": "Silmeyi Onayla", "desc": { - "selected": "Bu inceleme öğesiyle ilişkili tüm kaydedilmiş videoları silmek istediğinizden emin misiniz?

    Gelecekte bu diyaloğu pas geçmek için Shift tuşuna basılı tutarak tıklayın." + "selected": "Bu inceleme öğesiyle ilişkili tüm kaydedilmiş videoları silmek istediğinizden emin misiniz?

    Gelecekte bu diyaloğu pas geçmek için Shift tuşuna basılı tutarak tıklatın." }, "toast": { "success": "Seçili incele öğelerinin ilişkili olduğu video kayıtları başarıyla silinmiştir.", diff --git a/web/public/locales/tr/views/faceLibrary.json b/web/public/locales/tr/views/faceLibrary.json index 8620015f3..4b9ef612f 100644 --- a/web/public/locales/tr/views/faceLibrary.json +++ b/web/public/locales/tr/views/faceLibrary.json @@ -92,8 +92,8 @@ "collections": "Koleksiyonlar", "deleteFaceAttempts": { "title": "Yüzleri Sil", - "desc_one": "Bu {{count}} yüzü silmek istediğine emin misin? Bu işlem geri alınamaz.", - "desc_other": "Bu {{count}} yüzü silmek istediğine emin misin? Bu işlem geri alınamaz." + "desc_one": "Bir adet yüzü silmek istediğinize emin misiniz? Bu işlem geri alınamaz.", + "desc_other": "{{count}} adet yüzü silmek istediğinize emin misiniz? Bu işlem geri alınamaz." }, "nofaces": "Yüz bulunamadı", "pixels": "{{area}}px" diff --git a/web/public/locales/tr/views/settings.json b/web/public/locales/tr/views/settings.json index 9e2177cd3..c9924658b 100644 --- a/web/public/locales/tr/views/settings.json +++ b/web/public/locales/tr/views/settings.json @@ -151,7 +151,7 @@ "title": "İncele", "alerts": "Alarmlar ", "detections": "Tespitler ", - "desc": "Bu kamera için uyarıları ve algılamaları etkinleştirin/devre dışı bırakın. Devre dışı bırakıldığında, yeni inceleme öğeleri oluşturulmaz." + "desc": "Bu kamera için uyarıları ve algılamaları geçici olarak etkinleştirin/devre dışı bırakın. Frigate yeniden başlatıldığında yapılandırmanızdaki tercihlere geri dönülür. Devre dışı bırakıldığında, yeni inceleme öğeleri oluşturulamaz. " }, "reviewClassification": { "readTheDocumentation": "Dökümantasyonu Oku", @@ -175,7 +175,7 @@ "unsavedChanges": "{{camera}} için Kaydedilmemiş Sınıflandırma Ayarları" }, "streams": { - "desc": "Bir kameranın devre dışı bırakılması, Frigate'in bu kamerayı işlemesini tamamen durdurur. Algılama, kayıt ve hata ayıklama özellikleri kullanılamaz.
    Not: Bu eylem, go2rtc'deki yeniden akışları devre dışı bırakmaz.", + "desc": "Frigate yeniden başlataılana kadar bir kamerayı devre dışı bırakın. Bir kameranın devre dışı bırakılması, Frigate'in bu kamerayı işlemesini tamamen durdurur. Algılama, kayıt ve hata ayıklama özellikleri kullanılamaz.
    Not: Bu eylem, go2rtc'deki yeniden akışları devre dışı bırakmaz.", "title": "Akışlar" } }, diff --git a/web/public/locales/uk/common.json b/web/public/locales/uk/common.json index 5f02f58a8..029364971 100644 --- a/web/public/locales/uk/common.json +++ b/web/public/locales/uk/common.json @@ -47,37 +47,37 @@ "untilForRestart": "Доки Frigate не перезавантажиться.", "untilRestart": "До перезавантаження", "formattedTimestamp": { - "12hour": "МММ д, г:мм:сс ааа", - "24hour": "МММ д, ГГ:мм:сс" + "12hour": "MMM d, h:mm:ss aaa", + "24hour": "MMM d, HH:mm:ss" }, "formattedTimestampHourMinute": { "12hour": "h:mm aaa", "24hour": "HH:mm" }, "formattedTimestampHourMinuteSecond": { - "12hour": "г:мм:сс ааа", + "12hour": "h:mm:ss aaa", "24hour": "HH:mm:ss" }, "formattedTimestampMonthDayHourMinute": { - "12hour": "МММ д, г:мм ааа", - "24hour": "МММ д, ГГ:мм" + "12hour": "MMM d, h:mm aaa", + "24hour": "MMM d, HH:mm" }, "formattedTimestampMonthDayYearHourMinute": { - "12hour": "МММ д рррр, г:мм ааа", - "24hour": "МММ д рррр, ГГ:мм" + "12hour": "MMM d yyyy, h:mm aaa", + "24hour": "MMM d yyyy, HH:mm" }, - "formattedTimestampMonthDay": "МММ д", + "formattedTimestampMonthDay": "MMM d", "formattedTimestampFilename": { "12hour": "MM-dd-yy-h-mm-ss-a", "24hour": "MM-dd-yy-HH-mm-ss" }, "formattedTimestamp2": { - "12hour": "ММ/дд г:мм:сс", - "24hour": "д МММ ГГ:мм:сс" + "12hour": "dd.MM h:mm:ssa", + "24hour": "d MMM HH:mm:ss" }, "formattedTimestampMonthDayYear": { - "24hour": "МММ д, рррр", - "12hour": "МММ д, рррр" + "24hour": "MMM d, yyyy", + "12hour": "MMM d, yyyy" } }, "button": { @@ -106,7 +106,7 @@ "enable": "Увімкнути", "disabled": "Вимкнено", "disable": "Вимкнути", - "save": "Зберігати", + "save": "Зберегти", "download": "Завантажити", "info": "Інфо", "suspended": "Призупинено", @@ -151,7 +151,8 @@ }, "en": "Англійська", "yue": "粵語 (Кантонська)", - "th": "ไทย (Тайська)" + "th": "ไทย (Тайська)", + "ca": "Català (Каталанська)" }, "system": "Система", "systemMetrics": "Системна метріка", diff --git a/web/public/locales/uk/views/settings.json b/web/public/locales/uk/views/settings.json index 3c232d758..a5e7d511f 100644 --- a/web/public/locales/uk/views/settings.json +++ b/web/public/locales/uk/views/settings.json @@ -57,7 +57,7 @@ "camera": { "streams": { "title": "Потоки", - "desc": "Вимкнення камери повністю зупиняє обробку потоків цієї камери програмою Frigate. Виявлення, запис і налагодження будуть недоступні.
    Примітка. Це не вимикає повторні потоки go2rtc." + "desc": "Тимчасово вимкніть камеру до перезавантаження Frigate. Вимкнення камери повністю зупиняє обробку потоків цієї камери Frigate. Виявлення, запис і налагодження будуть недоступні.
    Примітка. Це не вимикає повторні потоки go2rtc." }, "reviewClassification": { "readTheDocumentation": "Прочитати документацію", @@ -84,7 +84,7 @@ "alerts": "Сповіщення ", "detections": "Виявлення ", "title": "Огляд", - "desc": "Увімкнути/вимкнути сповіщення та виявлення для цієї камери. Якщо вимкнено, нові елементи огляду не створюватимуться." + "desc": "Тимчасово ввімкнути/вимкнути сповіщення та виявлення для цієї камери до перезавантаження Frigate. Якщо вимкнено, нові елементи огляду не створюватимуться. " }, "title": "Налаштування камери" }, diff --git a/web/public/locales/vi/audio.json b/web/public/locales/vi/audio.json index 4a55da6aa..07561cc51 100644 --- a/web/public/locales/vi/audio.json +++ b/web/public/locales/vi/audio.json @@ -41,27 +41,27 @@ "burping": "Ợ", "hiccup": "Nấc cụt", "fart": "Đánh rắm", - "artillery_fire": "tiếng pháo kích", - "cap_gun": "tiếng súng giấy", - "fireworks": "tiếng pháo hoa", - "firecracker": "tiếng pháo nổ", - "burst": "tiếng nổ bung", - "eruption": "tiếng phun trào", - "boom": "tiếng bùm", - "wood": "tiếng gỗ", - "chop": "tiếng chặt", - "splinter": "tiếng gỗ vỡ", - "crack": "tiếng nứt", - "glass": "tiếng thủy tinh", - "chink": "tiếng leng keng", - "shatter": "tiếng vỡ vụn", - "silence": "sự im lặng", - "sound_effect": "hiệu ứng âm thanh", - "environmental_noise": "tiếng ồn môi trường", - "static": "tiếng nhiễu", - "white_noise": "tiếng trắng", - "pink_noise": "tiếng hồng", - "television": "tiếng tivi", + "artillery_fire": "Tiếng pháo kích", + "cap_gun": "Tiếng súng giấy", + "fireworks": "Tiếng pháo hoa", + "firecracker": "Tiếng pháo nổ", + "burst": "Tiếng nổ bung", + "eruption": "Tiếng phun trào", + "boom": "Tiếng bùm", + "wood": "Tiếng gỗ", + "chop": "Tiếng chặt", + "splinter": "Tiếng gỗ vỡ", + "crack": "Tiếng nứt", + "glass": "Tiếng thủy tinh", + "chink": "Tiếng leng keng", + "shatter": "Tiếng vỡ vụn", + "silence": "Sự im lặng", + "sound_effect": "Hiệu ứng âm thanh", + "environmental_noise": "Tiếng ồn môi trường", + "static": "Tiếng nhiễu", + "white_noise": "Tiếng trắng", + "pink_noise": "Tiếng hồng", + "television": "Tiếng tivi", "hands": "Tay", "finger_snapping": "Búng tay", "clapping": "Vỗ tay", @@ -135,295 +135,295 @@ "snake": "Rắn", "rattle": "Lắc lư / lách cách", "whale_vocalization": "Tiếng cá voi", - "music": "âm nhạc", - "musical_instrument": "nhạc cụ", - "plucked_string_instrument": "nhạc cụ dây gảy", - "guitar": "đàn guitar", - "electric_guitar": "đàn guitar điện", - "bass_guitar": "đàn guitar bass", - "acoustic_guitar": "đàn guitar acoustic", - "steel_guitar": "đàn steel guitar", - "tapping": "kỹ thuật tapping", - "strum": "gảy đàn", - "banjo": "đàn banjo", - "sitar": "đàn sitar", - "mandolin": "đàn mandolin", - "zither": "đàn tranh", - "ukulele": "đàn ukulele", - "keyboard": "bàn phím nhạc", - "piano": "đàn piano", + "music": "Âm nhạc", + "musical_instrument": "Nhạc cụ", + "plucked_string_instrument": "Nhạc cụ dây gảy", + "guitar": "Đàn guitar", + "electric_guitar": "Đàn guitar điện", + "bass_guitar": "Đàn guitar bass", + "acoustic_guitar": "Đàn guitar acoustic", + "steel_guitar": "Đàn steel guitar", + "tapping": "Kỹ thuật tapping", + "strum": "Gảy đàn", + "banjo": "Đàn banjo", + "sitar": "Đàn sitar", + "mandolin": "Đàn mandolin", + "zither": "Đàn tranh", + "ukulele": "Đàn ukulele", + "keyboard": "Bàn phím nhạc", + "piano": "Đàn piano", "electric_piano": "đàn piano điện", - "organ": "đàn organ", - "electronic_organ": "đàn organ điện tử", - "hammond_organ": "đàn organ Hammond", - "synthesizer": "bộ tổng hợp âm", - "sampler": "thiết bị lấy mẫu âm thanh", - "harpsichord": "đàn harpsichord", - "percussion": "bộ gõ", - "drum_kit": "bộ trống", - "drum_machine": "máy trống", - "drum": "trống", - "snare_drum": "trống snare", - "rimshot": "gõ vành trống", - "drum_roll": "cuộn trống", - "bass_drum": "trống bass", - "timpani": "trống timpani", - "tabla": "trống tabla", - "cymbal": "tiếng chũm chọe", - "hi_hat": "tiếng hi-hat", - "wood_block": "khối gỗ gõ", - "tambourine": "trống lắc", - "maraca": "tiếng lắc maraca", - "gong": "tiếng chiêng", - "tubular_bells": "chuông ống", - "mallet_percussion": "nhạc cụ gõ bằng dùi", - "marimba": "đàn marimba", - "glockenspiel": "chuông gõ glockenspiel", - "vibraphone": "đàn vibraphone", - "steelpan": "trống thép", - "orchestra": "dàn nhạc giao hưởng", - "brass_instrument": "nhạc cụ đồng", - "french_horn": "kèn Pháp", - "trumpet": "kèn trumpet", - "trombone": "kèn trombone", - "bowed_string_instrument": "nhạc cụ dây kéo", - "string_section": "dàn dây", - "violin": "đàn violin", - "pizzicato": "gảy dây pizzicato", - "cello": "đàn cello", - "double_bass": "đàn contrabass", - "wind_instrument": "nhạc cụ hơi", - "flute": "tiếng sáo", - "saxophone": "kèn saxophone", - "clarinet": "kèn clarinet", - "harp": "đàn harp", - "bell": "chuông", - "church_bell": "chuông nhà thờ", - "jingle_bell": "chuông leng keng", - "bicycle_bell": "chuông xe đạp", - "tuning_fork": "âm thoa", - "chime": "tiếng chuỗi chuông", - "wind_chime": "tiếng chuông gió", - "harmonica": "tiếng kèn harmonica", - "accordion": "tiếng đàn accordion", - "bagpipes": "tiếng kèn túi", - "didgeridoo": "tiếng kèn didgeridoo", - "theremin": "tiếng nhạc cụ theremin", - "singing_bowl": "tiếng chuông xoay Tây Tạng", - "scratching": "scratch nhạc (xoay đĩa)", - "pop_music": "nhạc pop", - "hip_hop_music": "nhạc hip hop", - "beatboxing": "beatbox", - "rock_music": "nhạc rock", - "heavy_metal": "nhạc heavy metal", - "punk_rock": "nhạc punk rock", - "grunge": "nhạc grunge", - "progressive_rock": "nhạc rock tiến bộ", - "rock_and_roll": "nhạc rock and roll", - "psychedelic_rock": "nhạc rock ảo giác", - "rhythm_and_blues": "nhạc R&B", - "soul_music": "nhạc soul", - "reggae": "nhạc reggae", - "country": "nhạc đồng quê", - "swing_music": "nhạc swing", - "bluegrass": "nhạc bluegrass", - "funk": "nhạc funk", - "folk_music": "nhạc dân gian", - "middle_eastern_music": "nhạc Trung Đông", - "jazz": "nhạc jazz", - "disco": "nhạc disco", - "classical_music": "nhạc cổ điển", - "opera": "nhạc opera", - "electronic_music": "nhạc điện tử", - "house_music": "nhạc house", - "techno": "nhạc techno", - "dubstep": "nhạc dubstep", - "drum_and_bass": "nhạc trống và bass", - "electronica": "nhạc electronica", - "electronic_dance_music": "nhạc nhảy điện tử", - "ambient_music": "nhạc nền", - "trance_music": "nhạc trance", - "music_of_latin_america": "nhạc Mỹ Latinh", - "salsa_music": "nhạc salsa", - "flamenco": "nhạc flamenco", - "blues": "nhạc blues", - "music_for_children": "nhạc thiếu nhi", - "new-age_music": "nhạc thời đại mới", - "vocal_music": "nhạc thanh nhạc", - "a_capella": "nhạc a cappella", - "music_of_africa": "nhạc châu Phi", - "afrobeat": "nhạc afrobeat", - "christian_music": "nhạc Cơ Đốc", - "gospel_music": "nhạc phúc âm", - "music_of_asia": "nhạc châu Á", - "carnatic_music": "nhạc Carnatic", - "music_of_bollywood": "nhạc Bollywood", - "ska": "nhạc ska", - "traditional_music": "nhạc truyền thống", - "independent_music": "nhạc indie", - "song": "bài hát", - "background_music": "nhạc nền", - "theme_music": "nhạc chủ đề", - "jingle": "nhạc quảng cáo", - "soundtrack_music": "nhạc phim", - "lullaby": "tiếng ru", - "video_game_music": "nhạc trò chơi", - "christmas_music": "nhạc Giáng Sinh", - "dance_music": "nhạc khiêu vũ", - "wedding_music": "nhạc đám cưới", - "happy_music": "nhạc vui", - "sad_music": "nhạc buồn", - "tender_music": "nhạc nhẹ nhàng", - "exciting_music": "nhạc sôi động", - "angry_music": "nhạc tức giận", - "scary_music": "nhạc rùng rợn", - "wind": "tiếng gió", - "rustling_leaves": "tiếng lá xào xạc", - "wind_noise": "tiếng gió rít", - "thunderstorm": "tiếng giông bão", - "water": "tiếng nước", - "thunder": "tiếng sấm", - "rain": "tiếng mưa", - "raindrop": "tiếng giọt mưa", - "rain_on_surface": "tiếng mưa rơi", - "stream": "tiếng suối", - "waterfall": "tiếng thác nước", - "ocean": "tiếng biển", - "waves": "tiếng sóng", - "steam": "tiếng hơi nước", - "gurgling": "tiếng róc rách", - "fire": "tiếng lửa", - "crackle": "tiếng tí tách", - "vehicle": "tiếng phương tiện", - "boat": "tiếng thuyền", - "sailboat": "tiếng thuyền buồm", - "rowboat": "tiếng chèo thuyền", - "motorboat": "tiếng xuồng máy", - "ship": "tiếng tàu", - "motor_vehicle": "tiếng xe cơ giới", - "car": "tiếng xe ô tô", - "toot": "tiếng bấm còi", - "car_alarm": "tiếng báo động ô tô", - "power_windows": "tiếng cửa kính xe", - "skidding": "tiếng trượt bánh", - "tire_squeal": "tiếng lốp rít", - "car_passing_by": "tiếng xe chạy qua", - "race_car": "tiếng xe đua", - "truck": "tiếng xe tải", - "ice_cream_truck": "tiếng xe kem", - "air_brake": "tiếng phanh hơi", - "air_horn": "tiếng còi hơi", - "reversing_beeps": "tiếng kêu lùi xe", - "bus": "tiếng xe buýt", - "emergency_vehicle": "tiếng xe khẩn cấp", - "police_car": "tiếng xe cảnh sát", - "ambulance": "tiếng xe cứu thương", - "fire_engine": "tiếng xe cứu hỏa", - "motorcycle": "tiếng xe máy", - "traffic_noise": "tiếng giao thông", - "rail_transport": "tiếng đường sắt", - "train_horn": "tiếng còi tàu hỏa", - "railroad_car": "tiếng toa tàu", - "train": "tiếng tàu hỏa", - "train_whistle": "tiếng còi tàu", - "train_wheels_squealing": "tiếng bánh tàu rít", - "subway": "tiếng tàu điện ngầm", - "aircraft": "tiếng máy bay", - "aircraft_engine": "tiếng động cơ máy bay", - "jet_engine": "tiếng động cơ phản lực", - "propeller": "tiếng cánh quạt", - "helicopter": "tiếng trực thăng", - "fixed-wing_aircraft": "tiếng máy bay cánh cố định", - "bicycle": "tiếng xe đạp", - "skateboard": "tiếng ván trượt", - "engine": "tiếng động cơ", - "light_engine": "tiếng động cơ nhẹ", - "dental_drill's_drill": "tiếng khoan nha khoa", - "lawn_mower": "tiếng máy cắt cỏ", - "chainsaw": "tiếng cưa máy", - "medium_engine": "tiếng động cơ vừa", - "heavy_engine": "tiếng động cơ nặng", - "engine_knocking": "tiếng gõ máy", - "engine_starting": "tiếng khởi động động cơ", - "ding-dong": "tiếng ding-dong", - "idling": "tiếng nổ không tải", - "accelerating": "tiếng tăng tốc", - "door": "tiếng cửa", - "doorbell": "tiếng chuông cửa", - "sliding_door": "tiếng cửa trượt", - "slam": "tiếng đóng sầm", - "knock": "tiếng gõ cửa", - "tap": "tiếng gõ nhẹ", - "squeak": "tiếng kêu cót két", - "cupboard_open_or_close": "tiếng mở/đóng tủ", - "drawer_open_or_close": "tiếng mở/đóng ngăn kéo", - "dishes": "tiếng bát đĩa", - "cutlery": "tiếng dao nĩa", - "chopping": "tiếng băm chặt", - "frying": "tiếng chiên xào", - "microwave_oven": "tiếng lò vi sóng", - "blender": "tiếng máy xay", - "water_tap": "tiếng vòi nước", - "sink": "tiếng bồn rửa", - "bathtub": "tiếng bồn tắm", - "coin": "tiếng đồng xu", - "hair_dryer": "tiếng máy sấy tóc", - "toilet_flush": "tiếng xả nước", - "toothbrush": "tiếng bàn chải", - "electric_toothbrush": "tiếng bàn chải điện", - "vacuum_cleaner": "tiếng máy hút bụi", - "zipper": "tiếng dây kéo", - "keys_jangling": "tiếng chìa khóa leng keng", - "scissors": "tiếng kéo cắt", - "electric_shaver": "tiếng máy cạo râu", - "shuffling_cards": "tiếng xào bài", - "typing": "tiếng gõ phím", - "typewriter": "tiếng máy đánh chữ", - "computer_keyboard": "tiếng bàn phím", - "writing": "tiếng viết", - "alarm": "tiếng báo động", - "telephone": "tiếng điện thoại", - "telephone_bell_ringing": "tiếng chuông điện thoại", - "ringtone": "tiếng nhạc chuông", - "telephone_dialing": "tiếng quay số", - "dial_tone": "tiếng âm quay số", - "busy_signal": "tiếng tín hiệu bận", - "alarm_clock": "tiếng đồng hồ báo thức", - "siren": "tiếng còi báo động", - "civil_defense_siren": "tiếng còi phòng không", - "buzzer": "tiếng chuông báo", - "smoke_detector": "tiếng báo khói", - "fire_alarm": "tiếng báo cháy", - "foghorn": "tiếng còi sương", - "whistle": "tiếng còi", - "steam_whistle": "tiếng còi hơi", - "mechanisms": "tiếng cơ khí", - "ratchet": "tiếng cơ cấu bánh cóc", - "clock": "tiếng đồng hồ", - "tick": "tiếng tích", - "tick-tock": "tiếng tích tắc", - "gears": "tiếng bánh răng", - "pulleys": "tiếng ròng rọc", - "sewing_machine": "tiếng máy may", - "camera": "tiếng máy ảnh", - "single-lens_reflex_camera": "tiếng máy ảnh DSLR", - "mechanical_fan": "tiếng quạt máy", - "air_conditioning": "tiếng máy lạnh", - "cash_register": "tiếng máy tính tiền", - "printer": "tiếng máy in", - "tools": "tiếng dụng cụ", - "hammer": "tiếng búa", - "jackhammer": "tiếng khoan bê tông", - "sawing": "tiếng cưa", - "filing": "tiếng giũa", - "sanding": "tiếng chà nhám", - "power_tool": "tiếng dụng cụ điện", - "drill": "tiếng máy khoan", - "explosion": "tiếng nổ", - "gunshot": "tiếng súng", - "machine_gun": "tiếng súng máy", - "fusillade": "tiếng loạt súng", - "radio": "tiếng radio", - "field_recording": "ghi âm hiện trường", - "scream": "tiếng hét" + "organ": "Đàn organ", + "electronic_organ": "Đàn organ điện tử", + "hammond_organ": "Đàn organ Hammond", + "synthesizer": "Bộ tổng hợp âm", + "sampler": "Thiết bị lấy mẫu âm thanh", + "harpsichord": "Đàn harpsichord", + "percussion": "Bộ gõ", + "drum_kit": "Bộ trống", + "drum_machine": "Máy trống", + "drum": "Tiếng trống", + "snare_drum": "Trống snare", + "rimshot": "Gõ vành trống", + "drum_roll": "Cuộn trống", + "bass_drum": "Trống bass", + "timpani": "Trống timpani", + "tabla": "Trống tabla", + "cymbal": "Tiếng chũm chọe", + "hi_hat": "Tiếng hi-hat", + "wood_block": "Khối gỗ gõ", + "tambourine": "Trống lắc", + "maraca": "Tiếng lắc maraca", + "gong": "Tiếng chiêng", + "tubular_bells": "Chuông ống", + "mallet_percussion": "Nhạc cụ gõ bằng dùi", + "marimba": "Đàn marimba", + "glockenspiel": "Chuông gõ glockenspiel", + "vibraphone": "Đàn vibraphone", + "steelpan": "Trống thép", + "orchestra": "Dàn nhạc giao hưởng", + "brass_instrument": "Nhạc cụ đồng", + "french_horn": "Kèn Pháp", + "trumpet": "Kèn trumpet", + "trombone": "Kèn trombone", + "bowed_string_instrument": "Nhạc cụ dây kéo", + "string_section": "Dàn dây", + "violin": "Đàn violin", + "pizzicato": "Gảy dây pizzicato", + "cello": "Đàn cello", + "double_bass": "Đàn contrabass", + "wind_instrument": "Nhạc cụ hơi", + "flute": "Tiếng sáo", + "saxophone": "Kèn saxophone", + "clarinet": "Kèn clarinet", + "harp": "Đàn harp", + "bell": "Chuông", + "church_bell": "Chuông nhà thờ", + "jingle_bell": "Chuông leng keng", + "bicycle_bell": "Chuông xe đạp", + "tuning_fork": "Âm thoa", + "chime": "Tiếng chuỗi chuông", + "wind_chime": "Tiếng chuông gió", + "harmonica": "Tiếng kèn harmonica", + "accordion": "Tiếng đàn accordion", + "bagpipes": "Tiếng kèn túi", + "didgeridoo": "Tiếng kèn didgeridoo", + "theremin": "Tiếng nhạc cụ theremin", + "singing_bowl": "Tiếng chuông xoay Tây Tạng", + "scratching": "Scratch nhạc (xoay đĩa)", + "pop_music": "Nhạc pop", + "hip_hop_music": "Nhạc hip hop", + "beatboxing": "Beatbox", + "rock_music": "Nhạc rock", + "heavy_metal": "Nhạc heavy metal", + "punk_rock": "Nhạc punk rock", + "grunge": "Nhạc grunge", + "progressive_rock": "Nhạc rock tiến bộ", + "rock_and_roll": "Nhạc rock and roll", + "psychedelic_rock": "Nhạc rock ảo giác", + "rhythm_and_blues": "Nhạc R&B", + "soul_music": "Nhạc soul", + "reggae": "Nhạc reggae", + "country": "Nhạc đồng quê", + "swing_music": "Nhạc swing", + "bluegrass": "Nhạc bluegrass", + "funk": "Nhạc funk", + "folk_music": "Nhạc dân gian", + "middle_eastern_music": "Nhạc Trung Đông", + "jazz": "Nhạc jazz", + "disco": "Nhạc disco", + "classical_music": "Nhạc cổ điển", + "opera": "Nhạc opera", + "electronic_music": "Nhạc điện tử", + "house_music": "Nhạc house", + "techno": "Nhạc techno", + "dubstep": "Nhạc dubstep", + "drum_and_bass": "Nhạc trống và bass", + "electronica": "Nhạc electronica", + "electronic_dance_music": "Nhạc nhảy điện tử", + "ambient_music": "Nhạc nền", + "trance_music": "Nhạc trance", + "music_of_latin_america": "Nhạc Mỹ Latinh", + "salsa_music": "Nhạc salsa", + "flamenco": "Nhạc flamenco", + "blues": "Nhạc blues", + "music_for_children": "Nhạc thiếu nhi", + "new-age_music": "Nhạc thời đại mới", + "vocal_music": "Nhạc thanh nhạc", + "a_capella": "Nhạc a cappella", + "music_of_africa": "Nhạc châu Phi", + "afrobeat": "Nhạc afrobeat", + "christian_music": "Nhạc Cơ Đốc", + "gospel_music": "Nhạc phúc âm", + "music_of_asia": "Nhạc châu Á", + "carnatic_music": "Nhạc Carnatic", + "music_of_bollywood": "Nhạc Bollywood", + "ska": "Nhạc ska", + "traditional_music": "Nhạc truyền thống", + "independent_music": "Nhạc indie", + "song": "Bài hát", + "background_music": "Nhạc nền", + "theme_music": "Nhạc chủ đề", + "jingle": "Nhạc quảng cáo", + "soundtrack_music": "Nhạc phim", + "lullaby": "Tiếng ru", + "video_game_music": "Nhạc trò chơi", + "christmas_music": "Nhạc Giáng Sinh", + "dance_music": "Nhạc khiêu vũ", + "wedding_music": "Nhạc đám cưới", + "happy_music": "Nhạc vui", + "sad_music": "Nhạc buồn", + "tender_music": "Nhạc nhẹ nhàng", + "exciting_music": "Nhạc sôi động", + "angry_music": "Nhạc tức giận", + "scary_music": "Nhạc rùng rợn", + "wind": "Tiếng gió", + "rustling_leaves": "Tiếng lá xào xạc", + "wind_noise": "Tiếng gió rít", + "thunderstorm": "Tiếng giông bão", + "water": "Tiếng nước", + "thunder": "Tiếng sấm", + "rain": "Tiếng mưa", + "raindrop": "Tiếng giọt mưa", + "rain_on_surface": "Tiếng mưa rơi", + "stream": "Tiếng suối", + "waterfall": "Tiếng thác nước", + "ocean": "Tiếng biển", + "waves": "Tiếng sóng", + "steam": "Tiếng hơi nước", + "gurgling": "Tiếng róc rách", + "fire": "Tiếng lửa", + "crackle": "Tiếng tí tách", + "vehicle": "Tiếng phương tiện", + "boat": "Tiếng thuyền", + "sailboat": "Tiếng thuyền buồm", + "rowboat": "Tiếng chèo thuyền", + "motorboat": "Tiếng xuồng máy", + "ship": "Tiếng tàu", + "motor_vehicle": "Tiếng xe cơ giới", + "car": "Tiếng xe ô tô", + "toot": "Tiếng bấm còi", + "car_alarm": "Tiếng báo động ô tô", + "power_windows": "Tiếng cửa kính xe", + "skidding": "Tiếng trượt bánh", + "tire_squeal": "Tiếng lốp rít", + "car_passing_by": "Tiếng xe chạy qua", + "race_car": "Tiếng xe đua", + "truck": "Tiếng xe tải", + "ice_cream_truck": "Tiếng xe kem", + "air_brake": "Tiếng phanh hơi", + "air_horn": "Tiếng còi hơi", + "reversing_beeps": "Tiếng kêu lùi xe", + "bus": "Tiếng xe buýt", + "emergency_vehicle": "Tiếng xe khẩn cấp", + "police_car": "Tiếng xe cảnh sát", + "ambulance": "Tiếng xe cứu thương", + "fire_engine": "Tiếng xe cứu hỏa", + "motorcycle": "Tiếng xe máy", + "traffic_noise": "Tiếng giao thông", + "rail_transport": "Tiếng đường sắt", + "train_horn": "Tiếng còi tàu hỏa", + "railroad_car": "Tiếng toa tàu", + "train": "Tiếng tàu hỏa", + "train_whistle": "Tiếng còi tàu", + "train_wheels_squealing": "Tiếng bánh tàu rít", + "subway": "Tiếng tàu điện ngầm", + "aircraft": "Tiếng máy bay", + "aircraft_engine": "Tiếng động cơ máy bay", + "jet_engine": "Tiếng động cơ phản lực", + "propeller": "Tiếng cánh quạt", + "helicopter": "Tiếng trực thăng", + "fixed-wing_aircraft": "Tiếng máy bay cánh cố định", + "bicycle": "Tiếng xe đạp", + "skateboard": "Tiếng ván trượt", + "engine": "Tiếng động cơ", + "light_engine": "Tiếng động cơ nhẹ", + "dental_drill's_drill": "Tiếng khoan nha khoa", + "lawn_mower": "Tiếng máy cắt cỏ", + "chainsaw": "Tiếng cưa máy", + "medium_engine": "Tiếng động cơ vừa", + "heavy_engine": "Tiếng động cơ nặng", + "engine_knocking": "Tiếng gõ máy", + "engine_starting": "Tiếng khởi động động cơ", + "ding-dong": "Tiếng ding-dong", + "idling": "Tiếng nổ không tải", + "accelerating": "Tiếng tăng tốc", + "door": "Tiếng cửa", + "doorbell": "Tiếng chuông cửa", + "sliding_door": "Tiếng cửa trượt", + "slam": "Tiếng đóng sầm", + "knock": "Tiếng gõ cửa", + "tap": "Tiếng gõ nhẹ", + "squeak": "Tiếng kêu cót két", + "cupboard_open_or_close": "Tiếng mở/đóng tủ", + "drawer_open_or_close": "Tiếng mở/đóng ngăn kéo", + "dishes": "Tiếng bát đĩa", + "cutlery": "Tiếng dao nĩa", + "chopping": "Tiếng băm chặt", + "frying": "Tiếng chiên xào", + "microwave_oven": "Tiếng lò vi sóng", + "blender": "Tiếng máy xay", + "water_tap": "Tiếng vòi nước", + "sink": "Tiếng bồn rửa", + "bathtub": "Tiếng bồn tắm", + "coin": "Tiếng đồng xu", + "hair_dryer": "Tiếng máy sấy tóc", + "toilet_flush": "Tiếng xả nước", + "toothbrush": "Tiếng bàn chải", + "electric_toothbrush": "Tiếng bàn chải điện", + "vacuum_cleaner": "Tiếng máy hút bụi", + "zipper": "Tiếng dây kéo", + "keys_jangling": "Tiếng chìa khóa leng keng", + "scissors": "Tiếng kéo cắt", + "electric_shaver": "Tiếng máy cạo râu", + "shuffling_cards": "Tiếng xào bài", + "typing": "Tiếng gõ phím", + "typewriter": "Tiếng máy đánh chữ", + "computer_keyboard": "Tiếng bàn phím", + "writing": "Tiếng viết", + "alarm": "Tiếng báo động", + "telephone": "Tiếng điện thoại", + "telephone_bell_ringing": "Tiếng chuông điện thoại", + "ringtone": "Tiếng nhạc chuông", + "telephone_dialing": "Tiếng quay số", + "dial_tone": "Tiếng âm quay số", + "busy_signal": "Tiếng tín hiệu bận", + "alarm_clock": "Tiếng đồng hồ báo thức", + "siren": "Tiếng còi báo động", + "civil_defense_siren": "Tiếng còi phòng không", + "buzzer": "Tiếng chuông báo", + "smoke_detector": "Tiếng báo khói", + "fire_alarm": "Tiếng báo cháy", + "foghorn": "Tiếng còi sương", + "whistle": "Tiếng còi", + "steam_whistle": "Tiếng còi hơi", + "mechanisms": "Tiếng cơ khí", + "ratchet": "Tiếng cơ cấu bánh cóc", + "clock": "Tiếng đồng hồ", + "tick": "Tiếng tích", + "tick-tock": "Tiếng tích tắc", + "gears": "Tiếng bánh răng", + "pulleys": "Tiếng ròng rọc", + "sewing_machine": "Tiếng máy may", + "camera": "Tiếng máy ảnh", + "single-lens_reflex_camera": "Tiếng máy ảnh DSLR", + "mechanical_fan": "Tiếng quạt máy", + "air_conditioning": "Tiếng máy lạnh", + "cash_register": "Tiếng máy tính tiền", + "printer": "Tiếng máy in", + "tools": "Tiếng dụng cụ", + "hammer": "Tiếng búa", + "jackhammer": "Tiếng khoan bê tông", + "sawing": "Tiếng cưa", + "filing": "Tiếng giũa", + "sanding": "Tiếng chà nhám", + "power_tool": "Tiếng dụng cụ điện", + "drill": "Tiếng máy khoan", + "explosion": "Tiếng nổ", + "gunshot": "Tiếng súng", + "machine_gun": "Tiếng súng máy", + "fusillade": "Tiếng loạt súng", + "radio": "Tiếng radio", + "field_recording": "Ghi âm hiện trường", + "scream": "Tiếng hét" } diff --git a/web/public/locales/vi/common.json b/web/public/locales/vi/common.json index 97b5d2b75..6a0b803a7 100644 --- a/web/public/locales/vi/common.json +++ b/web/public/locales/vi/common.json @@ -1,12 +1,12 @@ { "time": { - "untilRestart": "còn lại đến khi khởi động lại", + "untilRestart": "Đến khi khởi động lại", "untilForTime": "Cho đến khi {{time}}", "untilForRestart": "Cho đến khi Frigate khởi động lại.", "ago": "{{timeAgo}} trước", "formattedTimestamp": { - "12hour": "định dạng thời gian 12 giờ", - "24hour": "định dạng thời gian 24 giờ" + "12hour": "d MMM, h:mm:ss aaa", + "24hour": "d MMM, HH:mm:ss" }, "year_other": "{{time}} năm", "month_other": "{{time}} tháng", @@ -14,31 +14,31 @@ "hour_other": "{{time}} giờ", "minute_other": "{{time}} phút", "second_other": "{{time}} giây", - "justNow": "vừa xong", - "today": "hôm nay", - "yesterday": "hôm qua", + "justNow": "Vừa xong", + "today": "Hôm nay", + "yesterday": "Hôm qua", "last7": "7 ngày qua", "last14": "14 ngày qua", "last30": "30 ngày qua", - "thisWeek": "tuần này", - "lastWeek": "tuần trước", - "thisMonth": "tháng này", - "lastMonth": "tháng trước", + "thisWeek": "Tuần này", + "lastWeek": "Tuần trước", + "thisMonth": "Tháng này", + "lastMonth": "Tháng trước", "5minutes": "5 phút", "10minutes": "10 phút", "30minutes": "30 phút", "1hour": "1 giờ", "12hours": "12 giờ", "24hours": "24 giờ", - "pm": "chiều", - "am": "sáng", - "mo": "{{time}}tháng", - "d": "{{time}}ngày", - "m": "{{time}}phút", - "s": "{{time}}giây", + "pm": "pm", + "am": "am", + "mo": "{{time}} tháng", + "d": "{{time}} ngày", + "m": "{{time}} phút", + "s": "{{time}} giây", "formattedTimestamp2": { - "12hour": "định dạng thời gian 12 giờ (2)", - "24hour": "định dạng thời gian 24 giờ (2)" + "12hour": "dd/MM h:mm:ssa", + "24hour": "d MMM HH:mm:ss" }, "formattedTimestampExcludeSeconds": { "12hour": "thời gian 12 giờ (không giây)", @@ -49,18 +49,43 @@ "24hour": "thời gian 24 giờ kèm năm" }, "formattedTimestampOnlyMonthAndDay": "chỉ tháng và ngày", - "yr": "{{time}}năm", - "h": "{{time}}giờ" + "yr": "{{time}} năm", + "h": "{{time}} giờ", + "formattedTimestampMonthDayYear": { + "12hour": "d MMM, yyyy", + "24hour": "d MMM, yyyy" + }, + "formattedTimestampHourMinute": { + "12hour": "h:mm aaa", + "24hour": "HH:mm" + }, + "formattedTimestampHourMinuteSecond": { + "12hour": "h:mm:ss aaa", + "24hour": "HH:mm:ss" + }, + "formattedTimestampMonthDayHourMinute": { + "12hour": "d MMM, h:mm aaa", + "24hour": "d MMM, HH:mm" + }, + "formattedTimestampMonthDayYearHourMinute": { + "12hour": "d MMM yyyy, h:mm aaa", + "24hour": "d MMM yyyy, HH:mm" + }, + "formattedTimestampMonthDay": "d MMM", + "formattedTimestampFilename": { + "12hour": "dd-MM-yy-h-mm-ss-a", + "24hour": "dd-MM-yy-HH-mm-s" + } }, "menu": { - "systemLogs": "nhật ký hệ thống", + "systemLogs": "Nhật ký hệ thống", "user": { - "account": "tài khoản", - "anonymous": "ẩn danh", - "logout": "đăng xuất", - "setPassword": "đặt mật khẩu", + "account": "Tài khoản", + "anonymous": "Ẩn danh", + "logout": "Đăng xuất", + "setPassword": "Đặt mật khẩu", "current": "Người dùng hiện tại: {{user}}", - "title": "người dùng" + "title": "Người dùng" }, "language": { "en": "Tiếng Anh", @@ -93,136 +118,144 @@ "sk": "Tiếng Slovakia", "withSystem": { "label": "Theo hệ thống" - } + }, + "yue": "Tiếng Quảng Đông", + "ca": "Tiếng Catalan", + "th": "Tiếng Thái Lan" }, - "system": "hệ thống", - "systemMetrics": "thông số hệ thống", - "configuration": "cấu hình", - "settings": "cài đặt", - "configurationEditor": "trình chỉnh sửa cấu hình", - "languages": "ngôn ngữ", - "appearance": "giao diện", + "system": "Hệ thống", + "systemMetrics": "Thông số hệ thống", + "configuration": "Cấu hình", + "settings": "Cài đặt", + "configurationEditor": "Trình chỉnh sửa cấu hình", + "languages": "Ngôn ngữ", + "appearance": "Giao diện", "darkMode": { - "label": "chế độ tối", - "light": "sáng", - "dark": "tối", + "label": "Chế độ tối", + "light": "Sáng", + "dark": "Tối", "withSystem": { - "label": "theo hệ thống" + "label": "Theo hệ thống" } }, - "withSystem": "theo hệ thống", + "withSystem": "Hệ thống", "theme": { - "label": "giao diện", - "red": "đỏ", + "label": "Giao diện", + "red": "Đỏ", "contrast": "tương phản", - "blue": "xanh dương", - "green": "xanh lá", - "nord": "nord", - "default": "mặc định" + "blue": "Xanh dương", + "green": "Xanh lá", + "nord": "Nord", + "default": "Mặc định", + "highcontrast": "Độ tương phản cao" }, - "help": "trợ giúp", + "help": "Trợ giúp", "documentation": { - "title": "tài liệu", - "label": "hướng dẫn" + "title": "Tài liệu", + "label": "Hướng dẫn" }, - "restart": "khởi động lại", + "restart": "Khởi động lại", "live": { - "title": "trực tiếp", - "allCameras": "tất cả camera", + "title": "Trực tiếp", + "allCameras": "Tất cả Camera", "cameras": { - "title": "camera", + "title": "Camera", "count_other": "{{count}} Camera" } }, - "review": "xem lại", - "explore": "khám phá", - "export": "xuất", + "review": "Xem lại", + "explore": "Khám phá", + "export": "Xuất", "uiPlayground": "UI Playground", - "faceLibrary": "thư viện khuôn mặt" + "faceLibrary": "Thư viện khuôn mặt" }, "unit": { "speed": { "mph": "mph (dặm/giờ)", "kph": "km/h (kilômét/giờ)" + }, + "length": { + "meters": "mét (m)", + "feet": "feet (ft)" } }, "label": { - "back": "quay lại" + "back": "Quay lại" }, "button": { - "apply": "áp dụng", - "reset": "đặt lại", - "done": "xong", - "enabled": "đã bật", - "enable": "bật", - "disabled": "đã tắt", - "disable": "tắt", + "apply": "Áp dụng", + "reset": "Đặt lại", + "done": "Xong", + "enabled": "Đã bật", + "enable": "Bật", + "disabled": "Đã tắt", + "disable": "Tắt", "save": "Lưu", - "cancel": "hủy", - "close": "đóng", - "copy": "sao chép", - "back": "quay lại", - "history": "lịch sử", - "fullscreen": "toàn màn hình", - "on": "bật", - "exitFullscreen": "thoát toàn màn hình", - "pictureInPicture": "hình trong hình", - "twoWayTalk": "đàm thoại hai chiều", - "cameraAudio": "âm thanh camera", - "off": "tắt", - "edit": "chỉnh sửa", - "copyCoordinates": "sao chép tọa độ", + "cancel": "Hủy", + "close": "Đóng", + "copy": "Sao chép", + "back": "Quay lại", + "history": "Lịch sử", + "fullscreen": "Toàn màn hình", + "on": "Bật", + "exitFullscreen": "Thoát toàn màn hình", + "pictureInPicture": "Hình trong hình", + "twoWayTalk": "Đàm thoại hai chiều", + "cameraAudio": "Âm thanh Camera", + "off": "Tắt", + "edit": "Chỉnh sửa", + "copyCoordinates": "Sao chép tọa độ", "delete": "Xóa", - "yes": "có", - "no": "không", - "download": "tải xuống", - "info": "thông tin", - "suspended": "tạm dừng", - "unsuspended": "khôi phục", - "play": "phát", - "unselect": "bỏ chọn", - "export": "xuất", - "deleteNow": "xóa ngay", - "next": "tiếp theo", + "yes": "Có", + "no": "Không", + "download": "Tải xuống", + "info": "Thông tin", + "suspended": "Đã tạm dừng", + "unsuspended": "Khôi phục", + "play": "Phát", + "unselect": "Bỏ chọn", + "export": "Xuất", + "deleteNow": "Xóa ngay", + "next": "Tiếp theo", "saving": "Đang lưu…" }, "toast": { "copyUrlToClipboard": "Đã sao chép liên kết.", "save": { - "title": "lưu thành công", + "title": "Lưu thành công", "error": { - "noMessage": "không có thông báo lỗi", + "noMessage": "Không thể lưu thay đổi cấu hình", "title": "Lỗi khi lưu thay đổi cấu hình: {{errorMessage}}" } } }, "role": { - "title": "vai trò", - "admin": "quản trị viên", - "viewer": "người xem", + "title": "Vai trò", + "admin": "Quản trị viên", + "viewer": "Người xem", "desc": "Quản trị viên có toàn quyền truy cập tất cả các tính năng trong giao diện Frigate. Người xem chỉ được phép xem camera, mục đã ghi lại và các đoạn video lịch sử trong giao diện." }, "pagination": { - "label": "trang", + "label": "Trang", "previous": { - "title": "trước đó", - "label": "trước" + "title": "Trước đó", + "label": "Trước" }, "next": { - "title": "kế tiếp", - "label": "tiếp" + "title": "Kế tiếp", + "label": "Tiếp" }, - "more": "xem thêm" + "more": "Xem thêm" }, "accessDenied": { - "documentTitle": "từ chối truy cập", - "title": "truy cập bị từ chối", + "documentTitle": "Từ chối truy cập", + "title": "Truy cập bị từ chối", "desc": "Bạn không có quyền truy cập vào trang này." }, "notFound": { - "documentTitle": "không tìm thấy", - "title": "không tìm thấy", - "desc": "trang bạn đang tìm không tồn tại" + "documentTitle": "Không tìm thấy", + "title": "Không tìm thấy", + "desc": "Trang bạn đang tìm không tồn tại" }, "selectItem": "Chọn mục {{item}}" } diff --git a/web/public/locales/vi/components/camera.json b/web/public/locales/vi/components/camera.json index 2e74eeb29..07617eb47 100644 --- a/web/public/locales/vi/components/camera.json +++ b/web/public/locales/vi/components/camera.json @@ -1,12 +1,86 @@ { "group": { "delete": { - "label": "Xóa nhóm camera", + "label": "Xóa nhóm Camera", "confirm": { - "title": "Xác nhận xóa" + "title": "Xác nhận xóa", + "desc": "Bạn có chắc chắn muốn xóa nhóm camera {{name}} không?" } }, "label": "Các nhóm Camera", - "add": "Thêm nhóm Camera" + "add": "Thêm nhóm Camera", + "camera": { + "setting": { + "stream": "Trực tiếp", + "audio": { + "tips": { + "title": "Âm thanh phải được xuất từ camera của bạn và được định cấu hình trong go2rtc cho luồng này.", + "document": "Đọc tài liệu " + } + }, + "desc": "Thay đổi các tùy chọn truyền phát trực tiếp cho bảng điều khiển của nhóm camera này.Các cài đặt này dành riêng cho thiết bị/trình duyệt..", + "streamMethod": { + "method": { + "noStreaming": { + "desc": "Hình ảnh camera sẽ chỉ cập nhật mỗi phút một lần và không có truyền phát nào xảy ra.", + "label": "Không truyền phát" + }, + "continuousStreaming": { + "desc": { + "title": "Hình ảnh camera sẽ luôn là luồng trực tiếp khi hiển thị trên bảng điều khiển, ngay cả khi không có hoạt động nào được phát hiện.", + "warning": "Truyền phát liên tục có thể gây ra sử dụng băng thông cao và các vấn đề về hiệu suất. Sử dụng một cách thận trọng." + }, + "label": "Truyền phát liên tục" + }, + "smartStreaming": { + "label": "Truyền phát Thông minh (khuyến nghị)", + "desc": "Truyền phát thông minh sẽ cập nhật hình ảnh camera của bạn mỗi phút một lần khi không có hoạt động nào được phát hiện để tiết kiệm băng thông và tài nguyên. Khi phát hiện hoạt động, hình ảnh sẽ chuyển đổi liền mạch sang luồng trực tiếp." + } + }, + "placeholder": "Chọn phương thức truyền phát", + "label": "Phương thức truyền phát" + }, + "placeholder": "Chọn phát trực tiếp", + "compatibilityMode": { + "label": "Chế độ tương thích", + "desc": "Chỉ bật tùy chọn này nếu luồng trực tiếp của camera của bạn hiển thị các hiện vật màu và có một đường chéo ở phía bên phải của hình ảnh." + }, + "title": "Cài đặt trực tiếp {{cameraName}}", + "audioIsAvailable": "Âm thanh có sẵn cho luồng này", + "audioIsUnavailable": "Âm thanh không có sẵn cho luồng này", + "label": "Cài đặt trực tiếp Camera" + } + }, + "name": { + "label": "Tên", + "errorMessage": { + "mustLeastCharacters": "Tên nhóm Camera phải có ít nhất 2 ký tự.", + "nameMustNotPeriod": "Tên nhóm camera không được chứa dấu chấm.", + "exists": "Tên nhóm Camera đã tồn tại.", + "invalid": "Tên nhóm camera không hợp lệ." + }, + "placeholder": "Nhập tên…" + }, + "icon": "Biểu tượng", + "success": "Nhóm camera ({{name}}) đã được lưu.", + "cameras": { + "desc": "Chọn camera cho nhóm này.", + "label": "Camera" + }, + "edit": "Sửa nhóm Camera" + }, + "debug": { + "boundingBox": "Hộp giới hạn", + "options": { + "hideOptions": "Ẩn tùy chọn", + "label": "Cài đặt", + "title": "Tùy chọn", + "showOptions": "Hiện thị tùy chọn" + }, + "timestamp": "Dấu thời gian", + "zones": "Khu vực", + "mask": "Mặt nạ", + "motion": "Chuyển động", + "regions": "Vùng" } } diff --git a/web/public/locales/vi/components/dialog.json b/web/public/locales/vi/components/dialog.json index 49edf5f85..53b1226b1 100644 --- a/web/public/locales/vi/components/dialog.json +++ b/web/public/locales/vi/components/dialog.json @@ -4,17 +4,18 @@ "button": "Khởi động lại", "restarting": { "title": "Đang khởi động lại Frigate", - "content": "Trang này sẽ tải lại sau {{countdown}} giây." + "content": "Trang này sẽ tải lại sau {{countdown}} giây.", + "button": "Tải lại ngay" } }, "explore": { "plus": { "review": { "question": { - "ask_a": "Đây có phải là {{label}} không?", - "ask_an": "Đây có phải là {{label}} không?", + "ask_a": "Đối tượng này có phải là một {{label}} không?", + "ask_an": "Đối tượng này có phải là một {{label}} không?", "label": "Xác nhận nhãn này cho Frigate Plus", - "ask_full": "Đây có phải là {{untranslatedLabel}} ({{translatedLabel}}) không?" + "ask_full": "Đối tượng này có phải là một {{untranslatedLabel}} ({{translatedLabel}}) không?" }, "state": { "submitted": "Đã gửi" @@ -40,7 +41,8 @@ "end": { "title": "Thời gian kết thúc", "label": "Chọn thời gian kết thúc" - } + }, + "lastHour_other": "{{count}} giờ trước" }, "name": { "placeholder": "Đặt tên cho bản xuất" @@ -51,12 +53,60 @@ "toast": { "error": { "endTimeMustAfterStartTime": "Thời gian kết thúc phải sau thời gian bắt đầu", - "noVaildTimeSelected": "Chưa chọn khoảng thời gian hợp lệ" - } + "noVaildTimeSelected": "Chưa chọn khoảng thời gian hợp lệ", + "failed": "Không thể bắt đầu xuất: {{error}}" + }, + "success": "Đã bắt đầu xuất thành công. Xem tệp trong thư mục /exports." }, "fromTimeline": { "saveExport": "Lưu bản xuất", "previewExport": "Xem trước bản xuất" } + }, + "streaming": { + "debugView": "Chế độ xem Gỡ lỗi", + "label": "Luồng", + "restreaming": { + "disabled": "Tính năng phát lại luồng không được bật cho camera này.", + "desc": { + "title": "Thiết lập go2rtc để có thêm tùy chọn xem trực tiếp và âm thanh cho camera này.", + "readTheDocumentation": "Đọc tài liệu" + } + }, + "showStats": { + "label": "Hiển thị số liệu thống kê luồng", + "desc": "Bật tùy chọn này để hiển thị số liệu thống kê luồng dưới dạng lớp phủ trên nguồn cấp dữ liệu camera." + } + }, + "recording": { + "confirmDelete": { + "title": "Xác nhận xóa", + "toast": { + "success": "Đoạn video liên quan đến các mục đánh giá đã chọn đã được xóa thành công.", + "error": "Không thể xóa: {{error}}" + }, + "desc": { + "selected": "Bạn có chắc chắn muốn xóa tất cả video đã ghi liên quan đến mục đánh giá này không?

    Giữ phím Shift để bỏ qua hộp thoại này trong tương lai." + } + }, + "button": { + "deleteNow": "Xóa ngay", + "export": "Xuất", + "markAsReviewed": "Đánh dấu là đã xem xét" + } + }, + "search": { + "saveSearch": { + "success": "Tìm kiếm ({{searchName}}) đã được lưu.", + "button": { + "save": { + "label": "Lưu tìm kiếm này" + } + }, + "label": "Lưu tìm kiếm", + "desc": "Cung cấp tên cho tìm kiếm đã lưu này.", + "placeholder": "Nhập tên cho tìm kiếm của bạn", + "overwrite": "{{searchName}} đã tồn tại. Lưu sẽ ghi đè lên giá trị hiện có." + } } } diff --git a/web/public/locales/vi/components/filter.json b/web/public/locales/vi/components/filter.json index d8b825b31..1570067ab 100644 --- a/web/public/locales/vi/components/filter.json +++ b/web/public/locales/vi/components/filter.json @@ -5,6 +5,122 @@ "all": { "title": "Tất cả các nhãn", "short": "Nhãn" + }, + "count_one": "{{count}} nhãn", + "count_other": "{{count}} nhãn" + }, + "features": { + "submittedToFrigatePlus": { + "tips": "Trước tiên, bạn phải lọc các đối tượng được theo dõi có ảnh chụp nhanh.

    Không thể gửi các đối tượng được theo dõi không có ảnh chụp nhanh tới Frigate+.", + "label": "Đã gửi tới Frigate+" + }, + "label": "Tính năng", + "hasSnapshot": "Có ảnh chụp nhanh", + "hasVideoClip": "Có video clip" + }, + "sort": { + "scoreDesc": "Điểm Đối tượng (Giảm dần)", + "speedAsc": "Tốc độ Ước tính (Tăng dần)", + "relevance": "Mức độ liên quan", + "label": "Sắp xếp", + "dateAsc": "Ngày (Tăng dần)", + "dateDesc": "Ngày (Giảm dần)", + "scoreAsc": "Điểm Đối tượng (Tăng dần)", + "speedDesc": "Tốc độ Ước tính (Giảm dần)" + }, + "cameras": { + "label": "Bộ lọc Camera", + "all": { + "title": "Tất cả Camera", + "short": "Camera" + } + }, + "review": { + "showReviewed": "Hiển thị đã xem xét" + }, + "motion": { + "showMotionOnly": "Chỉ Hiển thị Chuyển động" + }, + "explore": { + "settings": { + "title": "Cài đặt", + "defaultView": { + "title": "Chế độ xem Mặc định", + "desc": "Khi không có bộ lọc nào được chọn, hiển thị bản tóm tắt các đối tượng được theo dõi gần đây nhất cho mỗi nhãn, hoặc hiển thị lưới không được lọc.", + "summary": "Tóm tắt", + "unfilteredGrid": "Lưới không được lọc" + }, + "gridColumns": { + "title": "Cột Lưới", + "desc": "Chọn số lượng cột trong chế độ xem lưới." + }, + "searchSource": { + "label": "Nguồn Tìm kiếm", + "desc": "Chọn tìm kiếm hình thu nhỏ hay mô tả của các đối tượng được theo dõi của bạn.", + "options": { + "thumbnailImage": "Hình thu nhỏ", + "description": "Mô tả" + } + } + }, + "date": { + "selectDateBy": { + "label": "Chọn một ngày để lọc theo" + } + } + }, + "logSettings": { + "allLogs": "Tất cả nhật ký", + "label": "Lọc cấp độ nhật ký", + "filterBySeverity": "Lọc nhật ký theo mức độ nghiêm trọng", + "loading": { + "title": "Đang tải", + "desc": "Khi bảng nhật ký được cuộn xuống dưới cùng, nhật ký mới sẽ tự động truyền trực tuyến khi chúng được thêm vào." + }, + "disableLogStreaming": "Tắt truyền phát nhật ký" + }, + "trackedObjectDelete": { + "title": "Xác nhận Xóa", + "toast": { + "success": "Đã xóa thành công các đối tượng được theo dõi.", + "error": "Không thể xóa các đối tượng được theo dõi: {{errorMessage}}" + }, + "desc": "Việc xóa {{objectLength}} đối tượng được theo dõi này sẽ xóa ảnh chụp nhanh, mọi nội dung nhúng đã lưu và mọi mục nhập vòng đời đối tượng liên quan. Đoạn ghi hình đã ghi của các đối tượng được theo dõi này trong chế độ xem Lịch sử sẽ KHÔNG bị xóa.

    Bạn có chắc chắn muốn tiếp tục không?

    Giữ phím Shift để bỏ qua hộp thoại này trong tương lai." + }, + "recognizedLicensePlates": { + "selectPlatesFromList": "Chọn một hoặc nhiều biển số từ danh sách.", + "title": "Biển số xe được Nhận dạng", + "loadFailed": "Không thể tải biển số xe được nhận dạng.", + "loading": "Đang tải biển số xe được nhận dạng…", + "placeholder": "Nhập để tìm kiếm biển số xe…", + "noLicensePlatesFound": "Không tìm thấy biển số xe nào." + }, + "more": "Thêm Bộ lọc", + "reset": { + "label": "Đặt lại bộ lọc về giá trị mặc định" + }, + "timeRange": "Phạm vi Thời gian", + "subLabels": { + "label": "Nhãn phụ", + "all": "Tất cả Nhãn phụ" + }, + "score": "Điểm", + "estimatedSpeed": "Tốc độ Ước tính ({{unit}})", + "dates": { + "selectPreset": "Chọn thiết lập sẵn…", + "all": { + "title": "Tất cả Ngày", + "short": "Ngày" + } + }, + "zoneMask": { + "filterBy": "Lọc theo mặt nạ khu vực" + }, + "zones": { + "label": "Khu vực", + "all": { + "title": "Tất cả Khu vực", + "short": "Khu vực" } } } diff --git a/web/public/locales/vi/components/input.json b/web/public/locales/vi/components/input.json index bc5aa1a5a..c12a614b5 100644 --- a/web/public/locales/vi/components/input.json +++ b/web/public/locales/vi/components/input.json @@ -1,7 +1,10 @@ { "button": { "downloadVideo": { - "label": "Tải xuống video" + "label": "Tải xuống video", + "toast": { + "success": "Video trong mục xem lại của bạn đã bắt đầu tải xuống." + } } } } diff --git a/web/public/locales/vi/components/player.json b/web/public/locales/vi/components/player.json index cd4112d89..3ce29ac46 100644 --- a/web/public/locales/vi/components/player.json +++ b/web/public/locales/vi/components/player.json @@ -1,5 +1,51 @@ { "noRecordingsFoundForThisTime": "Không tìm thấy bản ghi nào cho thời điểm này", "noPreviewFound": "Không tìm thấy bản xem trước", - "noPreviewFoundFor": "Không tìm thấy bản xem trước cho {{cameraName}}" + "noPreviewFoundFor": "Không tìm thấy bản xem trước cho {{cameraName}}", + "stats": { + "droppedFrameRate": "Tỷ lệ khung hình bị rớt:", + "droppedFrames": { + "short": { + "title": "Bị rớt", + "value": "{{droppedFrames}} khung hình" + }, + "title": "Khung hình bị rớt:" + }, + "decodedFrames": "Khung hình đã giải mã:", + "latency": { + "short": { + "value": "{{seconds}} giây", + "title": "Độ trễ" + }, + "title": "Độ trễ:", + "value": "{{seconds}} giây" + }, + "totalFrames": "Tổng số khung hình:", + "streamType": { + "title": "Loại luồng:", + "short": "Loại" + }, + "bandwidth": { + "title": "Băng thông:", + "short": "Băng thông" + } + }, + "toast": { + "success": { + "submittedFrigatePlus": "Đã gửi thành công khung hình tới Frigate+" + }, + "error": { + "submitFrigatePlusFailed": "Không gửi được khung hình tới Frigate+" + } + }, + "submitFrigatePlus": { + "title": "Gửi khung hình này tới Frigate+?", + "submit": "Gửi" + }, + "livePlayerRequiredIOSVersion": "Yêu cầu iOS 17.1 trở lên cho loại luồng trực tiếp này.", + "streamOffline": { + "title": "Luồng ngoại tuyến", + "desc": "Không nhận được khung hình nào trên luồng detect của {{cameraName}}, hãy kiểm tra nhật ký lỗi" + }, + "cameraDisabled": "Camera đã bị tắt" } diff --git a/web/public/locales/vi/objects.json b/web/public/locales/vi/objects.json index e5d369d14..d7168ee4e 100644 --- a/web/public/locales/vi/objects.json +++ b/web/public/locales/vi/objects.json @@ -1,8 +1,8 @@ { "mouse": "Chuột nhắt", - "keyboard": "bàn phím nhạc", - "blender": "tiếng máy xay", - "sink": "tiếng bồn rửa", + "keyboard": "Bàn phím nhạc", + "blender": "Tiếng máy xay", + "sink": "Tiếng bồn rửa", "animal": "Động vật", "dog": "Chó", "bark": "Sủa", @@ -11,19 +11,110 @@ "goat": "Dê", "sheep": "Cừu", "bird": "Chim", - "vehicle": "tiếng phương tiện", - "boat": "tiếng thuyền", - "car": "tiếng xe ô tô", - "bus": "tiếng xe buýt", - "motorcycle": "tiếng xe máy", - "train": "tiếng tàu hỏa", - "bicycle": "tiếng xe đạp", - "skateboard": "tiếng ván trượt", - "door": "tiếng cửa", - "hair_dryer": "tiếng máy sấy tóc", - "toothbrush": "tiếng bàn chải", - "scissors": "tiếng kéo cắt", - "clock": "tiếng đồng hồ", + "vehicle": "Tiếng phương tiện", + "boat": "Tiếng thuyền", + "car": "Tiếng xe ô tô", + "bus": "Tiếng xe buýt", + "motorcycle": "Tiếng xe máy", + "train": "Tiếng tàu hỏa", + "bicycle": "Tiếng xe đạp", + "skateboard": "Tiếng ván trượt", + "door": "Tiếng cửa", + "hair_dryer": "Tiếng máy sấy tóc", + "toothbrush": "Tiếng bàn chải", + "scissors": "Tiếng kéo cắt", + "clock": "Tiếng đồng hồ", "person": "Người", - "airplane": "Máy bay" + "airplane": "Máy bay", + "zebra": "Ngựa vằn", + "tennis_racket": "Vợt tennis", + "plate": "Đĩa", + "wine_glass": "Ly rượu vang", + "cup": "Cốc", + "fork": "Nĩa", + "knife": "Dao", + "spoon": "Thìa", + "bowl": "Bát", + "banana": "Chuối", + "apple": "Táo", + "sandwich": "Bánh mì kẹp", + "orange": "Cam", + "broccoli": "Bông cải xanh", + "carrot": "Cà rốt", + "hot_dog": "Xúc xích", + "pizza": "Pizza", + "donut": "Bánh rán", + "chair": "Ghế", + "couch": "Ghế sofa", + "potted_plant": "Cây trồng trong chậu", + "bed": "Giường", + "mirror": "Gương", + "window": "Cửa sổ", + "desk": "Bàn làm việc", + "toilet": "Nhà vệ sinh", + "tv": "Ti vi", + "microwave": "Lò vi sóng", + "oven": "Lò nướng", + "toaster": "Máy nướng bánh mì", + "refrigerator": "Tủ lạnh", + "book": "Sách", + "face": "Mặt", + "license_plate": "Biển số xe", + "package": "Gói hàng", + "bbq_grill": "Vỉ nướng BBQ", + "amazon": "Amazon", + "usps": "USPS", + "ups": "UPS", + "fedex": "FedEx", + "dhl": "DHL", + "an_post": "An Post", + "purolator": "Purolator", + "postnl": "PostNL", + "nzpost": "NZ Post", + "postnord": "PostNord", + "gls": "GLS", + "dpd": "DPD", + "traffic_light": "Đèn giao thông", + "fire_hydrant": "Trụ cứu hỏa", + "street_sign": "Biển báo đường phố", + "stop_sign": "Biển báo dừng", + "parking_meter": "Đồng hồ đỗ xe", + "bench": "Ghế dài", + "cow": "Bò", + "elephant": "Voi", + "bear": "Gấu", + "giraffe": "Hươu cao cổ", + "hat": "Mũ", + "backpack": "Ba lô", + "umbrella": "Ô", + "shoe": "Giày", + "snowboard": "Ván trượt tuyết", + "eye_glasses": "Kính mắt", + "handbag": "Túi xách", + "tie": "Cà vạt", + "suitcase": "Va li", + "frisbee": "Đĩa ném", + "skis": "Ván trượt tuyết", + "sports_ball": "Bóng thể thao", + "kite": "Diều", + "baseball_bat": "Gậy bóng chày", + "baseball_glove": "Găng tay bóng chày", + "surfboard": "Ván lướt sóng", + "bottle": "Chai", + "cake": "Bánh ngọt", + "dining_table": "Bàn ăn", + "laptop": "Máy tính xách tay", + "remote": "Điều khiển từ xa", + "cell_phone": "Điện thoại di động", + "vase": "Bình hoa", + "teddy_bear": "Gấu bông", + "hair_brush": "Lược chải tóc", + "squirrel": "Sóc", + "deer": "Hươu", + "fox": "Cáo", + "rabbit": "Thỏ", + "raccoon": "Gấu mèo", + "robot_lawnmower": "Máy cắt cỏ robot", + "waste_bin": "Thùng rác", + "on_demand": "Theo yêu cầu" } diff --git a/web/public/locales/vi/views/configEditor.json b/web/public/locales/vi/views/configEditor.json index c9577f82a..cbd19441c 100644 --- a/web/public/locales/vi/views/configEditor.json +++ b/web/public/locales/vi/views/configEditor.json @@ -1,5 +1,16 @@ { "copyConfig": "Sao chép cấu hình", "saveAndRestart": "Lưu & Khởi động lại", - "saveOnly": "Chỉ lưu" + "saveOnly": "Chỉ lưu", + "confirm": "Thoát mà không lưu?", + "toast": { + "error": { + "savingError": "Lỗi khi lưu cấu hình" + }, + "success": { + "copyToClipboard": "Đã sao chép cấu hình vào bộ nhớ tạm." + } + }, + "configEditor": "Trình chỉnh sửa Cấu hình", + "documentTitle": "Trình chỉnh sửa Cấu hình - Frigate" } diff --git a/web/public/locales/vi/views/events.json b/web/public/locales/vi/views/events.json index ad469617b..4259ab2cc 100644 --- a/web/public/locales/vi/views/events.json +++ b/web/public/locales/vi/views/events.json @@ -1,9 +1,38 @@ { - "camera": "tiếng máy ảnh", + "camera": "Tiếng máy ảnh", "alerts": "Cảnh báo", "detections": "Phát hiện", "motion": { - "only": "Chỉ chuyển động" + "only": "Chỉ chuyển động", + "label": "Chuyển động" }, - "allCameras": "Tất cả Camera" + "allCameras": "Tất cả Camera", + "detected": "Đã phát hiện", + "recordings": { + "documentTitle": "Bản ghi - Frigate" + }, + "events": { + "aria": "Chọn sự kiện", + "label": "Sự kiện", + "noFoundForTimePeriod": "Không tìm thấy sự kiện nào trong khoảng thời gian này." + }, + "timeline.aria": "Chọn dòng thời gian", + "selected_one": "{{count}} đã chọn", + "selected_other": "{{count}} đã chọn", + "empty": { + "alert": "Không có cảnh báo nào để xem xét", + "detection": "Không có phát hiện nào để xem xét", + "motion": "Không tìm thấy dữ liệu chuyển động" + }, + "timeline": "Dòng thời gian", + "documentTitle": "Xem lại - Frigate", + "calendarFilter": { + "last24Hours": "24 giờ qua" + }, + "newReviewItems": { + "label": "Xem các mục mới cần xem xét", + "button": "Các mục mới cần xem xét" + }, + "markAsReviewed": "Đánh dấu là đã xem xét", + "markTheseItemsAsReviewed": "Đánh dấu các mục này là đã xem xét" } diff --git a/web/public/locales/vi/views/explore.json b/web/public/locales/vi/views/explore.json index 0967ef424..2829d8303 100644 --- a/web/public/locales/vi/views/explore.json +++ b/web/public/locales/vi/views/explore.json @@ -1 +1,205 @@ -{} +{ + "objectLifecycle": { + "lifecycleItemDesc": { + "header": { + "zones": "Vùng", + "ratio": "Tỷ lệ", + "area": "Diện tích" + }, + "gone": "{{label}} đã rời đi", + "heard": "{{label}} đã nghe thấy", + "external": "{{label}} được phát hiện", + "visible": "{{label}} được phát hiện", + "entered_zone": "{{label}} đã đi vào {{zones}}", + "active": "{{label}} trở nên hoạt động", + "stationary": "{{label}} trở nên đứng yên", + "attribute": { + "faceOrLicense_plate": "Đã phát hiện {{attribute}} cho {{label}}", + "other": "{{label}} được nhận dạng là {{attribute}}" + } + }, + "carousel": { + "previous": "Trang trước", + "next": "Trang tiếp theo" + }, + "annotationSettings": { + "showAllZones": { + "desc": "Luôn hiển thị các vùng trên các khung hình mà đối tượng đã đi vào.", + "title": "Hiển thị tất cả các Vùng" + }, + "offset": { + "millisecondsToOffset": "Số mili giây để lệch các chú thích phát hiện. Mặc định: 0", + "documentation": "Đọc tài liệu ", + "desc": "Dữ liệu này đến từ luồng phát hiện của máy quay nằm ở trên hình ảnh từ luồng ghi hình. Có khả năng hai luồng này không đồng bộ hoàn hảo. Do đó, hộp giới hạn và đoạn ghi hình sẽ không khớp nhau một cách hoàn hảo. Tuy nhiên, trường annotation_offset có thể được sử dụng để điều chỉnh điều này.", + "label": "Độ lệch Chú thích", + "tips": "MẸO: Hãy tưởng tượng có một clip sự kiện với một người đi từ trái sang phải. Nếu hộp giới hạn trên dòng thời gian sự kiện luôn ở bên trái của người đó thì giá trị nên được giảm xuống. Tương tự, nếu một người đi từ trái sang phải và hộp giới hạn luôn ở phía trước người đó thì giá trị nên được tăng lên.", + "toast": { + "success": "Độ lệch chú thích cho {{camera}} đã được lưu vào tệp cấu hình. Khởi động lại Frigate để áp dụng các thay đổi của bạn." + } + }, + "title": "Cài đặt Chú thích" + }, + "count": "{{first}} trên {{second}}", + "title": "Vòng đời Đối tượng", + "noImageFound": "Không tìm thấy hình ảnh cho dấu thời gian này.", + "createObjectMask": "Tạo Mặt nạ Đối tượng", + "adjustAnnotationSettings": "Điều chỉnh cài đặt chú thích", + "trackedPoint": "Điểm được theo dõi", + "scrollViewTips": "Cuộn để xem những khoảnh khắc quan trọng trong vòng đời của đối tượng này.", + "autoTrackingTips": "Vị trí hộp giới hạn sẽ không chính xác đối với các máy quay tự động theo dõi." + }, + "details": { + "item": { + "title": "Chi tiết Mục Xem lại", + "desc": "Chi tiết mục xem lại", + "button": { + "share": "Chia sẻ mục xem lại này", + "viewInExplore": "Xem trong Khám phá" + }, + "toast": { + "error": { + "updatedSublabelFailed": "Không thể cập nhật nhãn phụ: {{errorMessage}}", + "updatedLPRFailed": "Không thể cập nhật biển số xe: {{errorMessage}}", + "regenerate": "Không thể gọi {{provider}} để lấy mô tả mới: {{errorMessage}}" + }, + "success": { + "regenerate": "Một mô tả mới đã được yêu cầu từ {{provider}}. Tùy thuộc vào tốc độ của nhà cung cấp của bạn, mô tả mới có thể mất một chút thời gian để tạo lại.", + "updatedLPR": "Cập nhật biển số xe thành công.", + "updatedSublabel": "Cập nhật nhãn phụ thành công." + } + }, + "tips": { + "mismatch_other": "{{count}} đối tượng không khả dụng đã được phát hiện và bao gồm trong mục xem lại này. Những đối tượng đó hoặc không đủ điều kiện là một cảnh báo hoặc phát hiện hoặc đã được dọn dẹp/xóa.", + "hasMissingObjects": "Điều chỉnh cấu hình của bạn nếu bạn muốn Frigate lưu các đối tượng được theo dõi cho các nhãn sau: {{objects}}" + } + }, + "expandRegenerationMenu": "Mở rộng menu tạo lại", + "label": "Nhãn", + "editSubLabel": { + "title": "Chỉnh sửa nhãn phụ", + "desc": "Nhập một nhãn phụ mới cho {{label}} này", + "descNoLabel": "Nhập một nhãn phụ mới cho đối tượng được theo dõi này" + }, + "snapshotScore": { + "label": "Điểm Ảnh chụp nhanh" + }, + "topScore": { + "info": "Điểm cao nhất là điểm trung vị cao nhất cho đối tượng được theo dõi, vì vậy điểm này có thể khác với điểm được hiển thị trên ảnh thu nhỏ của kết quả tìm kiếm.", + "label": "Điểm Cao nhất" + }, + "estimatedSpeed": "Tốc độ ước tính", + "objects": "Đối tượng", + "timestamp": "Dấu thời gian", + "button": { + "findSimilar": "Tìm đối tượng tương tự", + "regenerate": { + "title": "Tạo lại", + "label": "Tạo lại mô tả đối tượng được theo dõi" + } + }, + "description": { + "label": "Mô tả", + "placeholder": "Mô tả của đối tượng được theo dõi", + "aiTips": "Frigate sẽ không yêu cầu mô tả từ nhà cung cấp AI tạo sinh của bạn cho đến khi vòng đời của đối tượng được theo dõi kết thúc." + }, + "tips": { + "descriptionSaved": "Lưu mô tả thành công", + "saveDescriptionFailed": "Không thể cập nhật mô tả: {{errorMessage}}" + }, + "camera": "Camera", + "recognizedLicensePlate": "Biển số xe được nhận dạng", + "regenerateFromSnapshot": "Tạo lại từ Ảnh chụp nhanh", + "regenerateFromThumbnails": "Tạo lại từ Ảnh thu nhỏ", + "zones": "Vùng", + "editLPR": { + "title": "Chỉnh sửa biển số xe", + "desc": "Nhập một giá trị biển số xe mới cho {{label}} này", + "descNoLabel": "Nhập một giá trị biển số xe mới cho đối tượng được theo dõi này" + } + }, + "itemMenu": { + "viewObjectLifecycle": { + "label": "Xem vòng đời đối tượng", + "aria": "Hiển thị vòng đời đối tượng" + }, + "downloadSnapshot": { + "label": "Tải xuống ảnh chụp nhanh", + "aria": "Tải xuống ảnh chụp nhanh" + }, + "downloadVideo": { + "aria": "Tải xuống video", + "label": "Tải xuống video" + }, + "findSimilar": { + "label": "Tìm đối tượng tương tự", + "aria": "Tìm các đối tượng được theo dõi tương tự" + }, + "submitToPlus": { + "aria": "Gửi đến Frigate Plus", + "label": "Gửi đến Frigate+" + }, + "viewInHistory": { + "label": "Xem trong Lịch sử", + "aria": "Xem trong Lịch sử" + }, + "deleteTrackedObject": { + "label": "Xóa đối tượng được theo dõi này" + } + }, + "exploreIsUnavailable": { + "embeddingsReindexing": { + "step": { + "descriptionsEmbedded": "Mô tả đã được nhúng: ", + "trackedObjectsProcessed": "Đối tượng được theo dõi đã xử lý: ", + "thumbnailsEmbedded": "Ảnh thu nhỏ đã được nhúng: " + }, + "finishingShortly": "Sẽ hoàn thành trong giây lát", + "context": "Tính năng Khám phá có thể được sử dụng sau khi quá trình tái lập chỉ mục dữ liệu nhúng (embeddings) của đối tượng được theo dõi hoàn tất.", + "startingUp": "Đang khởi động…", + "estimatedTime": "Thời gian ước tính còn lại:" + }, + "downloadingModels": { + "context": "Frigate đang tải xuống các mô hình dữ liệu nhúng cần thiết để hỗ trợ tính năng Tìm kiếm theo Ngữ nghĩa. Quá trình này có thể mất vài phút tùy thuộc vào tốc độ kết nối mạng của bạn.", + "setup": { + "visionModel": "Mô hình thị giác", + "visionModelFeatureExtractor": "Trình trích xuất đặc trưng mô hình thị giác", + "textModel": "Mô hình văn bản", + "textTokenizer": "Trình mã hóa văn bản" + }, + "tips": { + "context": "Bạn có thể muốn tái lập chỉ mục dữ liệu nhúng của các đối tượng được theo dõi sau khi các mô hình được tải xuống.", + "documentation": "Đọc tài liệu" + }, + "error": "Đã xảy ra lỗi. Vui lòng kiểm tra nhật ký của Frigate." + }, + "title": "Tính năng Khám phá không khả dụng" + }, + "dialog": { + "confirmDelete": { + "desc": "Việc xóa đối tượng được theo dõi này sẽ xóa ảnh chụp nhanh, mọi dữ liệu nhúng đã lưu và mọi mục nhập vòng đời đối tượng liên quan. Đoạn ghi hình đã ghi của đối tượng được theo dõi này trong chế độ xem Lịch sử sẽ KHÔNG bị xóa.

    Bạn có chắc chắn muốn tiếp tục không?", + "title": "Xác nhận Xóa" + } + }, + "noTrackedObjects": "Không tìm thấy Đối tượng được theo dõi nào", + "searchResult": { + "deleteTrackedObject": { + "toast": { + "success": "Đã xóa đối tượng được theo dõi thành công.", + "error": "Không thể xóa đối tượng được theo dõi: {{errorMessage}}" + } + }, + "tooltip": "Khớp {{type}} ở mức {{confidence}}%" + }, + "exploreMore": "Khám phá thêm các đối tượng {{label}}", + "trackedObjectDetails": "Chi tiết Đối tượng được theo dõi", + "type": { + "details": "chi tiết", + "snapshot": "ảnh chụp nhanh", + "video": "video", + "object_lifecycle": "vòng đời đối tượng" + }, + "fetchingTrackedObjectsFailed": "Lỗi khi tìm nạp các đối tượng được theo dõi: {{errorMessage}}", + "documentTitle": "Khám phá - Frigate", + "generativeAI": "AI Tạo sinh", + "trackedObjectsCount_other": "{{count}} đối tượng được theo dõi " +} diff --git a/web/public/locales/vi/views/exports.json b/web/public/locales/vi/views/exports.json index ee3936522..6206f5821 100644 --- a/web/public/locales/vi/views/exports.json +++ b/web/public/locales/vi/views/exports.json @@ -1,3 +1,17 @@ { - "search": "Tìm kiếm" + "search": "Tìm kiếm", + "documentTitle": "Xuất tệp - Frigate", + "noExports": "Không tìm thấy tệp xuất nào", + "deleteExport": "Xóa tệp xuất", + "deleteExport.desc": "Bạn có chắc chắn muốn xóa {{exportName}} không?", + "editExport": { + "title": "Đổi tên tệp xuất", + "desc": "Nhập tên mới cho tệp xuất này.", + "saveExport": "Lưu tệp xuất" + }, + "toast": { + "error": { + "renameExportFailed": "Đổi tên tệp xuất thất bại: {{errorMessage}}" + } + } } diff --git a/web/public/locales/vi/views/faceLibrary.json b/web/public/locales/vi/views/faceLibrary.json index 9cc90f14f..e27adcf65 100644 --- a/web/public/locales/vi/views/faceLibrary.json +++ b/web/public/locales/vi/views/faceLibrary.json @@ -1,9 +1,96 @@ { "selectItem": "Chọn mục {{item}}", "description": { - "addFace": "Hướng dẫn thêm bộ sưu tập mới vào Thư viện khuôn mặt." + "addFace": "Hướng dẫn thêm bộ sưu tập mới vào Thư viện khuôn mặt.", + "invalidName": "Tên không hợp lệ. Tên chỉ được phép chứa chữ cái, số, khoảng trắng, dấu nháy đơn, dấu gạch dưới và dấu gạch ngang.", + "placeholder": "Nhập tên cho bộ sưu tập này" }, "details": { - "person": "Người" + "person": "Người", + "unknown": "Không xác định", + "subLabelScore": "Điểm nhãn phụ", + "scoreInfo": "Điểm nhãn phụ là điểm số có trọng số cho tất cả các độ tin cậy của khuôn mặt được nhận dạng, vì vậy điểm này có thể khác với điểm hiển thị trên ảnh chụp nhanh.", + "timestamp": "Dấu thời gian", + "face": "Chi tiết khuôn mặt", + "faceDesc": "Chi tiết của đối tượng được theo dõi đã tạo ra khuôn mặt này" + }, + "renameFace": { + "title": "Đổi tên khuôn mặt", + "desc": "Nhập tên mới cho {{name}}" + }, + "button": { + "renameFace": "Đổi tên khuôn mặt", + "deleteFaceAttempts": "Xóa khuôn mặt", + "addFace": "Thêm khuôn mặt", + "deleteFace": "Xóa khuôn mặt", + "uploadImage": "Tải lên hình ảnh", + "reprocessFace": "Xử lý lại khuôn mặt" + }, + "imageEntry": { + "dropActive": "Thả hình ảnh vào đây…", + "validation": { + "selectImage": "Vui lòng chọn một tệp hình ảnh." + }, + "dropInstructions": "Kéo và thả hình ảnh vào đây, hoặc nhấp để chọn", + "maxSize": "Kích thước tối đa: {{size}}MB" + }, + "toast": { + "success": { + "uploadedImage": "Tải lên hình ảnh thành công.", + "trainedFace": "Huấn luyện khuôn mặt thành công.", + "updatedFaceScore": "Cập nhật điểm khuôn mặt thành công.", + "addFaceLibrary": "{{name}} đã được thêm thành công vào Thư viện Khuôn mặt!", + "deletedFace_other": "Đã xóa thành công {{count}} khuôn mặt.", + "deletedName_other": "{{count}} khuôn mặt đã được xóa thành công.", + "renamedFace": "Đổi tên khuôn mặt thành {{name}} thành công" + }, + "error": { + "uploadingImageFailed": "Tải lên hình ảnh thất bại: {{errorMessage}}", + "addFaceLibraryFailed": "Đặt tên khuôn mặt thất bại: {{errorMessage}}", + "renameFaceFailed": "Đổi tên khuôn mặt thất bại: {{errorMessage}}", + "deleteFaceFailed": "Xóa thất bại: {{errorMessage}}", + "deleteNameFailed": "Xóa tên thất bại: {{errorMessage}}", + "trainFailed": "Huấn luyện thất bại: {{errorMessage}}", + "updateFaceScoreFailed": "Cập nhật điểm khuôn mặt thất bại: {{errorMessage}}" + } + }, + "collections": "Bộ sưu tập", + "steps": { + "description": { + "uploadFace": "Tải lên một hình ảnh của {{name}} cho thấy khuôn mặt của họ từ góc nhìn trực diện. Hình ảnh không cần phải được cắt chỉ lấy khuôn mặt." + }, + "faceName": "Nhập tên khuôn mặt", + "uploadFace": "Tải lên hình ảnh khuôn mặt", + "nextSteps": "Các bước tiếp theo" + }, + "deleteFaceLibrary": { + "title": "Xóa tên", + "desc": "Bạn có chắc chắn muốn xóa bộ sưu tập {{name}} không? Thao tác này sẽ xóa vĩnh viễn tất cả các khuôn mặt liên quan." + }, + "deleteFaceAttempts": { + "title": "Xóa khuôn mặt", + "desc_other": "Bạn có chắc chắn muốn xóa {{count}} khuôn mặt không? Hành động này không thể hoàn tác." + }, + "readTheDocs": "Đọc tài liệu", + "trainFaceAs": "Huấn luyện khuôn mặt với tên:", + "trainFace": "Huấn luyện khuôn mặt", + "nofaces": "Không có khuôn mặt nào", + "createFaceLibrary": { + "nextSteps": "Để xây dựng một nền tảng vững chắc:
  • Sử dụng tab Huấn luyện để chọn và huấn luyện trên hình ảnh cho mỗi người được phát hiện.
  • Tập trung vào hình ảnh chụp thẳng để có kết quả tốt nhất; tránh huấn luyện các hình ảnh chụp khuôn mặt ở một góc.
  • ", + "title": "Tạo bộ sưu tập", + "desc": "Tạo một bộ sưu tập mới", + "new": "Tạo khuôn mặt mới" + }, + "train": { + "title": "Huấn luyện", + "empty": "Không có nỗ lực nhận dạng khuôn mặt nào gần đây", + "aria": "Chọn huấn luyện" + }, + "selectFace": "Chọn khuôn mặt", + "pixels": "{{area}}px", + "documentTitle": "Thư viện Khuôn mặt - Frigate", + "uploadFaceImage": { + "title": "Tải lên hình ảnh khuôn mặt", + "desc": "Tải lên một hình ảnh để quét khuôn mặt và bao gồm cho {{pageToggle}}" } } diff --git a/web/public/locales/vi/views/live.json b/web/public/locales/vi/views/live.json index b75aa66db..3e8ab44f6 100644 --- a/web/public/locales/vi/views/live.json +++ b/web/public/locales/vi/views/live.json @@ -3,6 +3,156 @@ "documentTitle.withCamera": "{{camera}} - Trực tiếp - Frigate", "lowBandwidthMode": "Chế độ băng thông thấp", "twoWayTalk": { - "enable": "Bật chế độ đàm thoại hai chiều" + "enable": "Bật đàm thoại hai chiều", + "disable": "Tắt đàm thoại hai chiều" + }, + "stream": { + "lowBandwidth": { + "tips": "Chế độ xem trực tiếp đang ở chế độ băng thông thấp do bộ đệm hoặc lỗi luồng.", + "resetStream": "Đặt lại luồng" + }, + "playInBackground": { + "label": "Phát trong nền", + "tips": "\"Bật tùy chọn này để tiếp tục phát khi trình phát bị ẩn." + }, + "title": "Luồng", + "audio": { + "tips": { + "title": "Âm thanh phải được phát ra từ camera của bạn và cấu hình trong go2rtc cho luồng này.", + "documentation": "Đọc tài liệu " + }, + "available": "Âm thanh khả dụng cho luồng này", + "unavailable": "Âm thanh không khả dụng cho luồng này" + }, + "twoWayTalk": { + "tips": "hiết bị của bạn phải hỗ trợ tính năng này và WebRTC phải được cấu hình để đàm thoại hai chiều.", + "tips.documentation": "Đọc tài liệu ", + "available": "Đàm thoại hai chiều khả dụng cho luồng này", + "unavailable": "Đàm thoại hai chiều không khả dụng cho luồng này" + } + }, + "editLayout": { + "group": { + "label": "Chỉnh sửa nhóm Camera" + }, + "label": "Chỉnh sửa bố cục", + "exitEdit": "Thoát chế độ chỉnh sửa" + }, + "ptz": { + "zoom": { + "out": { + "label": "Thu nhỏ camera PTZ" + }, + "in": { + "label": "Phóng to camera PTZ" + } + }, + "frame": { + "center": { + "label": "Nhấp vào khung hình để căn giữa camera PTZ" + } + }, + "move": { + "clickMove": { + "label": "Nhấp vào khung hình để căn giữa camera", + "enable": "Bật nhấp để di chuyển", + "disable": "Tắt nhấp để di chuyển" + }, + "left": { + "label": "Di chuyển camera PTZ sang trái" + }, + "up": { + "label": "Di chuyển camera PTZ lên" + }, + "down": { + "label": "Di chuyển camera PTZ xuống" + }, + "right": { + "label": "Di chuyển camera PTZ sang phải" + } + }, + "presets": "Các thiết lập sẵn cho camera PTZ" + }, + "manualRecording": { + "playInBackground": { + "label": "Phát trong nền", + "desc": "Bật tùy chọn này để tiếp tục phát khi trình phát bị ẩn." + }, + "end": "Kết thúc ghi hình theo yêu cầu", + "failedToStart": "Không thể bắt đầu ghi hình theo yêu cầu.", + "started": "Đã bắt đầu ghi hình theo yêu cầu.", + "ended": "Đã kết thúc ghi hình theo yêu cầu.", + "title": "Ghi hình theo yêu cầu", + "tips": "Bắt đầu sự kiện ghi hình thủ công dựa trên cài đặt lưu trữ của camera này.", + "showStats": { + "label": "Hiện thống kê", + "desc": "Bật tùy chọn này để hiển thị thống kê luồng trên khung hình." + }, + "debugView": "Chế độ gỡ lỗi", + "start": "Bắt đầu ghi hình theo yêu cầu", + "recordDisabledTips": "Vì ghi hình đã bị vô hiệu hóa hoặc bị giới hạn trong cấu hình của camera này, chỉ ảnh chụp sẽ được lưu.", + "failedToEnd": "Không thể kết thúc ghi hình theo yêu cầu." + }, + "cameraAudio": { + "enable": "Bật âm thanh Camera", + "disable": "Tắt âm thanh Camera" + }, + "camera": { + "enable": "Bật camera", + "disable": "Tắt camera" + }, + "muteCameras": { + "enable": "Tắt tiếng tất cả Camera", + "disable": "Bật tiếng tất cả Camera" + }, + "detect": { + "enable": "Bật phát hiện", + "disable": "Tắt phát hiện" + }, + "recording": { + "enable": "Bật ghi hình", + "disable": "Tắt ghi hình" + }, + "snapshots": { + "enable": "Bật ảnh chụp", + "disable": "Tắt ảnh chụp" + }, + "audioDetect": { + "enable": "Bật phát hiện âm thanh", + "disable": "Tắt phát hiện âm thanh" + }, + "autotracking": { + "enable": "Bật tự động theo dõi", + "disable": "Tắt tự động theo dõi" + }, + "streamStats": { + "enable": "Hiện thống kê luồng", + "disable": "Ẩn thống kê luồng" + }, + "streamingSettings": "Cài đặt truyền phát", + "notifications": "Thông báo", + "audio": "Âm thanh", + "suspend": { + "forTime": "Tạm dừng trong: " + }, + "cameraSettings": { + "title": "Cài đặt {{camera}}", + "cameraEnabled": "Camera đã bật", + "objectDetection": "Phát hiện đối tượng", + "recording": "Ghi hình", + "snapshots": "Ảnh chụp", + "audioDetection": "Phát hiện âm thanh", + "autotracking": "Tự động theo dõi" + }, + "history": { + "label": "Hiện cảnh quay lịch sử" + }, + "effectiveRetainMode": { + "modes": { + "all": "Tất cả", + "motion": "Chuyển động", + "active_objects": "Đối tượng hoạt động" + }, + "notAllTips": "Cấu hình giữ lại ghi hình {{source}} của bạn được đặt là mode: {{effectiveRetainMode}}, vì vậy lần ghi hình theo yêu cầu này chỉ giữ lại các đoạn có {{effectiveRetainModeName}}." } } diff --git a/web/public/locales/vi/views/recording.json b/web/public/locales/vi/views/recording.json index 27146b13d..de52f8b7d 100644 --- a/web/public/locales/vi/views/recording.json +++ b/web/public/locales/vi/views/recording.json @@ -2,5 +2,11 @@ "filter": "Lọc", "export": "Xuất", "calendar": "Lịch", - "filters": "Bộ lọc" + "filters": "Bộ lọc", + "toast": { + "error": { + "noValidTimeSelected": "Thời gian chọn không hợp lệ", + "endTimeMustAfterStartTime": "Thời gian kết thúc phải sau thời gian bắt đầu" + } + } } diff --git a/web/public/locales/vi/views/search.json b/web/public/locales/vi/views/search.json index 873702ca7..d95cd175b 100644 --- a/web/public/locales/vi/views/search.json +++ b/web/public/locales/vi/views/search.json @@ -1,10 +1,72 @@ { "search": "Tìm kiếm", - "savedSearches": "Lưu tìm kiếm", + "savedSearches": "Tìm kiếm đã lưu", "searchFor": "Tìm kiếm {{inputValue}}", "button": { "clear": "Xóa tìm kiếm", "save": "Lưu tìm kiếm", - "delete": "Xóa lưu tìm kiếm" - } + "delete": "Xóa tìm kiếm đã lưu", + "filterInformation": "Thông tin bộ lọc", + "filterActive": "Bộ lọc đang hoạt động" + }, + "filter": { + "tips": { + "desc": { + "step2": "Chọn một giá trị từ các gợi ý hoặc tự nhập.", + "step1": "Nhập tên khóa bộ lọc theo sau là dấu hai chấm (ví dụ: \"cameras:\").", + "step3": "Sử dụng nhiều bộ lọc bằng cách thêm chúng nối tiếp nhau, cách nhau bằng dấu cách.", + "step5": "Bộ lọc phạm vi thời gian sử dụng định dạng {{exampleTime}}.", + "exampleLabel": "Ví dụ:", + "step6": "Xóa bộ lọc bằng cách nhấp vào dấu 'x' bên cạnh chúng..", + "step4": "Bộ lọc ngày (before: và after:) sử dụng định dạng {{DateFormat}}.", + "text": "Bộ lọc giúp bạn thu hẹp kết quả tìm kiếm. Dưới đây là cách sử dụng chúng trong trường nhập liệu:" + }, + "title": "Cách sử dụng bộ lọc văn bản" + }, + "header": { + "activeFilters": "Bộ lọc đang hoạt động", + "currentFilterType": "Giá trị bộ lọc", + "noFilters": "Bộ lọc" + }, + "label": { + "has_clip": "Có clip", + "min_score": "Điểm tối thiểu", + "has_snapshot": "Có ảnh chụp nhanh", + "max_score": "Điểm tối đa", + "search_type": "Loại tìm kiếm", + "after": "Sau", + "cameras": "Camera", + "labels": "Nhãn", + "zones": "Khu vực", + "sub_labels": "Nhãn phụ", + "time_range": "Phạm vi thời gian", + "before": "Trước", + "min_speed": "Tốc độ tối thiểu", + "max_speed": "Tốc độ tối đa", + "recognized_license_plate": "Biển số xe được nhận dạng" + }, + "toast": { + "error": { + "afterDatebeEarlierBefore": "Ngày 'Sau' phải trước ngày 'Trước'.", + "beforeDateBeLaterAfter": "Ngày 'Trước' phải sau ngày 'Sau'.", + "minScoreMustBeLessOrEqualMaxScore": "'Điểm tối thiểu' phải nhỏ hơn hoặc bằng 'Điểm tối đa'.", + "maxScoreMustBeGreaterOrEqualMinScore": "'Điểm tối đa' phải lớn hơn hoặc bằng 'Điểm tối thiểu.", + "minSpeedMustBeLessOrEqualMaxSpeed": "'Tốc độ tối thiểu' phải nhỏ hơn hoặc bằng 'Tốc độ tối đa'.", + "maxSpeedMustBeGreaterOrEqualMinSpeed": "'Tốc độ tối đa' phải lớn hơn hoặc bằng 'Tốc độ tối thiểu'." + } + }, + "searchType": { + "thumbnail": "Hình thu nhỏ", + "description": "Mô tả" + } + }, + "similaritySearch": { + "title": "Tìm kiếm tương đồng", + "clear": "Xóa tìm kiếm tương đồng", + "active": "Tìm kiếm tương đồng đang hoạt động" + }, + "placeholder": { + "search": "Tìm kiếm…" + }, + "trackedObjectId": "ID đối tượng được theo dõi" } diff --git a/web/public/locales/vi/views/settings.json b/web/public/locales/vi/views/settings.json index 54c2f22a2..d777ac12e 100644 --- a/web/public/locales/vi/views/settings.json +++ b/web/public/locales/vi/views/settings.json @@ -1,7 +1,616 @@ { "documentTitle": { "default": "Cài đặt - Frigate", - "authentication": "Cài đặt xác thực - Frigate", - "camera": "Cài đặt camera - Frigate" + "authentication": "Cài đặt Xác thực - Frigate", + "camera": "Cài đặt Camera - Frigate", + "enrichments": "Cài đặt Làm giàu Dữ liệu - Frigate", + "notifications": "Cài đặt Thông báo - Frigate", + "masksAndZones": "Trình chỉnh sửa Mặt nạ và Vùng - Frigate", + "object": "Gỡ lỗi - Frigate", + "general": "Cài đặt Chung - Frigate", + "frigatePlus": "Cài đặt Frigate+ - Frigate", + "motionTuner": "Bộ tinh chỉnh Chuyển động - Frigate" + }, + "notification": { + "toast": { + "error": { + "registerFailed": "Không thể lưu đăng ký thông báo." + }, + "success": { + "settingSaved": "Cài đặt thông báo đã được lưu.", + "registered": "Đã đăng ký nhận thông báo thành công. Cần khởi động lại Frigate trước khi có thể gửi bất kỳ thông báo nào (kể cả thông báo thử)." + } + }, + "unsavedChanges": "Các thay đổi Thông báo chưa được lưu", + "registerDevice": "Đăng ký Thiết bị này", + "unregisterDevice": "Hủy đăng ký Thiết bị này", + "unsavedRegistrations": "Các đăng ký Thông báo chưa được lưu", + "suspended": "Thông báo bị đình chỉ {{time}}", + "cancelSuspension": "Hủy tạm dừng", + "email": { + "desc": "Một email hợp lệ là bắt buộc và sẽ được sử dụng để thông báo cho bạn nếu có bất kỳ vấn đề nào với dịch vụ đẩy.", + "placeholder": "ví dụ: example@email.com", + "title": "Email" + }, + "cameras": { + "noCameras": "Không có máy quay nào", + "title": "Máy quay", + "desc": "Chọn máy quay nào để bật thông báo." + }, + "deviceSpecific": "Cài đặt dành riêng cho thiết bị", + "sendTestNotification": "Gửi một thông báo thử", + "active": "Thông báo đang hoạt động", + "suspendTime": { + "24hours": "Tạm dừng trong 24 giờ", + "untilRestart": "Tạm dừng cho đến khi khởi động lại", + "30minutes": "Tạm dừng trong 30 phút", + "1hour": "Tạm dừng trong 1 giờ", + "suspend": "Tạm dừng", + "12hours": "Tạm dừng trong 12 giờ", + "5minutes": "Tạm dừng trong 5 phút", + "10minutes": "Tạm dừng trong 10 phút" + }, + "notificationSettings": { + "desc": "Frigate có thể gửi thông báo đẩy tự nhiên đến thiết bị của bạn khi nó đang chạy trong trình duyệt hoặc được cài đặt dưới dạng PWA.", + "title": "Cài đặt Thông báo", + "documentation": "Đọc tài liệu" + }, + "notificationUnavailable": { + "desc": "Thông báo đẩy web yêu cầu một ngữ cảnh an toàn (https://…). Đây là một hạn chế của trình duyệt. Truy cập Frigate một cách an toàn để sử dụng thông báo.", + "title": "Thông báo không khả dụng", + "documentation": "Đọc tài liệu" + }, + "globalSettings": { + "desc": "Tạm thời đình chỉ thông báo cho các máy quay cụ thể trên tất cả các thiết bị đã đăng ký.", + "title": "Cài đặt Chung" + }, + "title": "Thông báo" + }, + "frigatePlus": { + "title": "Cài đặt Frigate+", + "apiKey": { + "title": "Khóa API Frigate+", + "validated": "Khóa API Frigate+ đã được phát hiện và xác thực", + "notValidated": "Khóa API Frigate+ không được phát hiện hoặc chưa được xác thực", + "desc": "Khóa API Frigate+ cho phép tích hợp với dịch vụ Frigate+.", + "plusLink": "Đọc thêm về Frigate+" + }, + "snapshotConfig": { + "table": { + "camera": "Máy quay", + "cleanCopySnapshots": "Ảnh chụp nhanh clean_copy", + "snapshots": "Ảnh chụp nhanh" + }, + "desc": "Việc gửi đến Frigate+ yêu cầu cả ảnh chụp nhanh và ảnh chụp nhanh clean_copy phải được bật trong cấu hình của bạn.", + "cleanCopyWarning": "Một số máy quay đã bật ảnh chụp nhanh nhưng đã tắt bản sao sạch. Bạn cần bật clean_copy trong cấu hình ảnh chụp nhanh của mình để có thể gửi hình ảnh từ các máy quay này đến Frigate+.", + "title": "Cấu hình Ảnh chụp nhanh", + "documentation": "Đọc tài liệu" + }, + "modelInfo": { + "error": "Không thể tải thông tin mô hình", + "plusModelType": { + "userModel": "Đã tinh chỉnh", + "baseModel": "Mô hình Cơ sở" + }, + "supportedDetectors": "Các bộ phát hiện được hỗ trợ", + "title": "Thông tin Mô hình", + "baseModel": "Mô hình Cơ sở", + "availableModels": "Các mô hình có sẵn", + "loadingAvailableModels": "Đang tải các mô hình có sẵn…", + "modelSelect": "Các mô hình có sẵn của bạn trên Frigate+ có thể được chọn ở đây. Lưu ý rằng chỉ những mô hình tương thích với cấu hình bộ phát hiện hiện tại của bạn mới có thể được chọn.", + "cameras": "Máy quay", + "loading": "Đang tải thông tin mô hình…", + "modelType": "Loại Mô hình", + "trainDate": "Ngày Huấn luyện" + }, + "unsavedChanges": "Các thay đổi cài đặt Frigate+ chưa được lưu", + "toast": { + "success": "Cài đặt Frigate+ đã được lưu. Khởi động lại Frigate để áp dụng các thay đổi.", + "error": "Không thể lưu các thay đổi cấu hình: {{errorMessage}}" + }, + "restart_required": "Yêu cầu khởi động lại (mô hình Frigate+ đã thay đổi)" + }, + "camera": { + "title": "Cài đặt Máy quay", + "review": { + "alerts": "Cảnh báo ", + "detections": "Phát hiện ", + "title": "Xem lại", + "desc": "Tạm thời bật/tắt cảnh báo và phát hiện cho máy quay này cho đến khi Frigate khởi động lại. Khi bị vô hiệu hóa, sẽ không có mục xem lại mới nào được tạo ra. " + }, + "reviewClassification": { + "title": "Phân loại mục Xem lại", + "unsavedChanges": "Các thay đổi cài đặt Phân loại mục Xem lại chưa được lưu cho {{camera}}", + "readTheDocumentation": "Đọc tài liệu", + "objectDetectionsTips": "Tất cả các đối tượng {{detectionsLabels}} không được phân loại trên {{cameraName}} sẽ được hiển thị dưới dạng Phát hiện bất kể chúng ở trong vùng nào.", + "desc": "Frigate phân loại các mục xem lại thành Cảnh báo và Phát hiện. Theo mặc định, tất cả các đối tượng ngườiô tô được coi là Cảnh báo. Bạn có thể tinh chỉnh việc phân loại các mục xem lại của mình bằng cách định cấu hình các vùng bắt buộc cho chúng.", + "zoneObjectDetectionsTips": { + "text": "Tất cả các đối tượng {{detectionsLabels}} không được phân loại trong vùng {{zone}} trên {{cameraName}} sẽ được hiển thị dưới dạng Phát hiện.", + "notSelectDetections": "Tất cả các đối tượng {{detectionsLabels}} được phát hiện trong vùng {{zone}} trên {{cameraName}} không được phân loại là Cảnh báo sẽ được hiển thị dưới dạng Phát hiện bất kể chúng ở trong vùng nào.", + "regardlessOfZoneObjectDetectionsTips": "Tất cả các đối tượng {{detectionsLabels}} không được phân loại trên {{cameraName}} sẽ được hiển thị dưới dạng Phát hiện bất kể chúng ở trong vùng nào." + }, + "toast": { + "success": "Cấu hình Phân loại mục Xem lại đã được lưu. Khởi động lại Frigate để áp dụng các thay đổi." + }, + "limitDetections": "Giới hạn phát hiện trong các vùng cụ thể", + "selectDetectionsZones": "Chọn vùng cho Phát hiện", + "zoneObjectAlertsTips": "Tất cả các đối tượng {{alertsLabels}} được phát hiện trong vùng {{zone}} trên {{cameraName}} sẽ được hiển thị dưới dạng Cảnh báo.", + "noDefinedZones": "Không có vùng nào được xác định cho máy quay này.", + "objectAlertsTips": "Tất cả các đối tượng {{alertsLabels}} trên {{cameraName}} sẽ được hiển thị dưới dạng Cảnh báo.", + "selectAlertsZones": "Chọn vùng cho Cảnh báo" + }, + "streams": { + "title": "Luồng phát", + "desc": "Tạm thời vô hiệu hóa một máy quay cho đến khi Frigate khởi động lại. Vô hiệu hóa một máy quay sẽ dừng hoàn toàn quá trình xử lý các luồng của máy quay này của Frigate. Việc phát hiện, ghi hình và gỡ lỗi sẽ không khả dụng.
    Lưu ý: Điều này không vô hiệu hóa các luồng phát lại của go2rtc." + } + }, + "masksAndZones": { + "form": { + "zoneName": { + "error": { + "mustNotBeSameWithCamera": "Tên vùng không được trùng với tên máy quay.", + "mustBeAtLeastTwoCharacters": "Tên vùng phải có ít nhất 2 ký tự.", + "mustNotContainPeriod": "Tên vùng không được chứa dấu chấm.", + "alreadyExists": "Một vùng với tên này đã tồn tại cho máy quay này.", + "hasIllegalCharacter": "Tên vùng chứa các ký tự không hợp lệ." + } + }, + "inertia": { + "error": { + "mustBeAboveZero": "Quán tính phải lớn hơn 0." + } + }, + "loiteringTime": { + "error": { + "mustBeGreaterOrEqualZero": "Thời gian lảng vảng phải lớn hơn hoặc bằng 0." + } + }, + "polygonDrawing": { + "delete": { + "desc": "Bạn có chắc muốn xóa {{type}} {{name}} không?", + "title": "Xác nhận Xóa", + "success": "{{name}} đã được xóa." + }, + "removeLastPoint": "Xóa điểm cuối", + "snapPoints": { + "true": "Bắt dính điểm", + "false": "Không bắt dính điểm" + }, + "reset": { + "label": "Xóa tất cả các điểm" + }, + "error": { + "mustBeFinished": "Việc vẽ đa giác phải được hoàn thành trước khi lưu." + } + }, + "speed": { + "error": { + "mustBeGreaterOrEqualTo": "Ngưỡng tốc độ phải lớn hơn hoặc bằng 0.1." + } + }, + "distance": { + "error": { + "text": "Khoảng cách phải lớn hơn hoặc bằng 0.1.", + "mustBeFilled": "Tất cả các trường khoảng cách phải được điền để sử dụng ước tính tốc độ." + } + } + }, + "objectMasks": { + "add": "Thêm Mặt nạ đối tượng", + "edit": "Chỉnh sửa Mặt nạ đối tượng", + "context": "Mặt nạ lọc đối tượng được sử dụng để lọc ra các kết quả dương tính giả cho một loại đối tượng nhất định dựa trên vị trí.", + "objects": { + "allObjectTypes": "Tất cả các loại đối tượng", + "title": "Đối tượng", + "desc": "Loại đối tượng áp dụng cho mặt nạ đối tượng này." + }, + "documentTitle": "Chỉnh sửa Mặt nạ đối tượng - Frigate", + "desc": { + "title": "Mặt nạ lọc đối tượng được sử dụng để lọc ra các kết quả dương tính giả cho một loại đối tượng nhất định dựa trên vị trí.", + "documentation": "Tài liệu" + }, + "point_other": "{{count}} điểm", + "toast": { + "success": { + "noName": "Mặt nạ đối tượng đã được lưu. Khởi động lại Frigate để áp dụng các thay đổi.", + "title": "{{polygonName}} đã được lưu. Khởi động lại Frigate để áp dụng các thay đổi." + } + }, + "label": "Mặt nạ đối tượng", + "clickDrawPolygon": "Nhấp để vẽ một đa giác trên hình ảnh." + }, + "zones": { + "speedEstimation": { + "docs": "Đọc tài liệu", + "desc": "Bật ước tính tốc độ cho các đối tượng trong vùng này. Vùng phải có chính xác 4 điểm.", + "title": "Ước tính Tốc độ", + "lineADistance": "Khoảng cách đường A ({{unit}})", + "lineBDistance": "Khoảng cách đường B ({{unit}})", + "lineCDistance": "Khoảng cách đường C ({{unit}})", + "lineDDistance": "Khoảng cách đường D ({{unit}})" + }, + "desc": { + "documentation": "Tài liệu", + "title": "Các vùng cho phép bạn xác định một khu vực cụ thể của khung hình để bạn có thể xác định xem một đối tượng có ở trong một khu vực cụ thể hay không." + }, + "add": "Thêm Vùng", + "allObjects": "Tất cả Đối tượng", + "speedThreshold": { + "toast": { + "error": { + "loiteringTimeError": "Các vùng có thời gian lảng vảng lớn hơn 0 không nên được sử dụng với ước tính tốc độ.", + "pointLengthError": "Ước tính tốc độ đã bị vô hiệu hóa cho vùng này. Các vùng có ước tính tốc độ phải có chính xác 4 điểm." + } + }, + "desc": "Chỉ định tốc độ tối thiểu để các đối tượng được coi là ở trong vùng này.", + "title": "Ngưỡng Tốc độ ({{unit}})" + }, + "loiteringTime": { + "title": "Thời gian lảng vảng", + "desc": "Đặt một khoảng thời gian tối thiểu tính bằng giây mà đối tượng phải ở trong vùng để kích hoạt nó. Mặc định: 0" + }, + "point_other": "{{count}} điểm", + "clickDrawPolygon": "Nhấp để vẽ một đa giác trên hình ảnh.", + "objects": { + "title": "Đối tượng", + "desc": "Danh sách các đối tượng áp dụng cho vùng này." + }, + "toast": { + "success": "Vùng ({{zoneName}}) đã được lưu. Khởi động lại Frigate để áp dụng các thay đổi." + }, + "name": { + "inputPlaceHolder": "Nhập tên…", + "tips": "Tên phải có ít nhất 2 ký tự và không được trùng với tên của máy quay hoặc một vùng khác.", + "title": "Tên" + }, + "edit": "Chỉnh sửa Vùng", + "label": "Vùng", + "documentTitle": "Chỉnh sửa Vùng - Frigate", + "inertia": { + "title": "Quán tính", + "desc": "Chỉ định số khung hình mà một đối tượng phải ở trong một vùng trước khi được coi là ở trong vùng. Mặc định: 3" + } + }, + "motionMasks": { + "documentTitle": "Chỉnh sửa Mặt nạ chuyển động - Frigate", + "desc": { + "documentation": "Tài liệu", + "title": "Mặt nạ chuyển động được sử dụng để ngăn các loại chuyển động không mong muốn kích hoạt phát hiện. Việc che quá nhiều sẽ khiến việc theo dõi đối tượng trở nên khó khăn hơn." + }, + "point_other": "{{count}} điểm", + "polygonAreaTooLarge": { + "documentation": "Đọc tài liệu", + "tips": "Mặt nạ chuyển động không ngăn chặn việc phát hiện đối tượng. Bạn nên sử dụng một vùng bắt buộc thay thế.", + "title": "Mặt nạ chuyển động đang che {{polygonArea}}% khung hình của máy quay. Không khuyến khích sử dụng mặt nạ chuyển động lớn." + }, + "add": "Mặt nạ chuyển động mới", + "edit": "Chỉnh sửa Mặt nạ chuyển động", + "context": { + "documentation": "Đọc tài liệu", + "title": "Mặt nạ chuyển động được sử dụng để ngăn chặn các loại chuyển động không mong muốn kích hoạt việc phát hiện (ví dụ: cành cây, dấu thời gian của máy quay). Mặt nạ chuyển động nên được sử dụng rất hạn chế, việc che quá nhiều sẽ làm cho việc theo dõi đối tượng trở nên khó khăn hơn." + }, + "label": "Mặt nạ chuyển động", + "clickDrawPolygon": "Nhấp để vẽ một đa giác trên hình ảnh.", + "toast": { + "success": { + "title": "{{polygonName}} đã được lưu. Khởi động lại Frigate để áp dụng các thay đổi.", + "noName": "Mặt nạ chuyển động đã được lưu. Khởi động lại Frigate để áp dụng các thay đổi." + } + } + }, + "toast": { + "success": { + "copyCoordinates": "Đã sao chép tọa độ của {{polyName}} vào clipboard." + }, + "error": { + "copyCoordinatesFailed": "Không thể sao chép tọa độ vào clipboard." + } + }, + "restart_required": "Yêu cầu khởi động lại (mặt nạ/vùng đã thay đổi)", + "motionMaskLabel": "Mặt nạ chuyển động {{number}}", + "objectMaskLabel": "Mặt nạ đối tượng {{number}} ({{label}})", + "filter": { + "all": "Tất cả Mặt nạ và Vùng" + } + }, + "motionDetectionTuner": { + "unsavedChanges": "Các thay đổi Tinh chỉnh Chuyển động chưa được lưu ({{camera}})", + "Threshold": { + "title": "Ngưỡng", + "desc": "Giá trị ngưỡng quy định mức độ thay đổi độ sáng của một pixel cần thiết để được coi là chuyển động. Mặc định: 30" + }, + "contourArea": { + "title": "Diện tích đường viền", + "desc": "Giá trị diện tích đường viền được sử dụng để quyết định nhóm pixel nào đã thay đổi đủ điều kiện là chuyển động. Mặc định: 10" + }, + "title": "Bộ tinh chỉnh Phát hiện Chuyển động", + "desc": { + "title": "Frigate sử dụng phát hiện chuyển động như một bước kiểm tra đầu tiên để xem có điều gì đang xảy ra trong khung hình đáng để kiểm tra bằng phát hiện đối tượng hay không.", + "documentation": "Đọc Hướng dẫn Tinh chỉnh Chuyển động" + }, + "improveContrast": { + "desc": "Cải thiện độ tương phản cho các cảnh tối hơn. Mặc định: BẬT", + "title": "Cải thiện độ tương phản" + }, + "toast": { + "success": "Cài đặt chuyển động đã được lưu." + } + }, + "debug": { + "objectShapeFilterDrawing": { + "title": "Vẽ bộ lọc hình dạng đối tượng", + "desc": "Vẽ một hình chữ nhật trên hình ảnh để xem chi tiết diện tích và tỷ lệ", + "document": "Đọc tài liệu ", + "score": "Điểm", + "tips": "Bật tùy chọn này để vẽ một hình chữ nhật trên hình ảnh của máy quay để hiển thị diện tích và tỷ lệ của nó. Các giá trị này sau đó có thể được sử dụng để đặt các tham số bộ lọc hình dạng đối tượng trong cấu hình của bạn.", + "ratio": "Tỷ lệ", + "area": "Diện tích" + }, + "detectorDesc": "Frigate sử dụng các bộ phát hiện của bạn ({{detectors}}) để phát hiện các đối tượng trong luồng video của máy quay.", + "boundingBoxes": { + "colors": { + "label": "Màu sắc Hộp giới hạn Đối tượng", + "info": "
  • Khi khởi động, các màu khác nhau sẽ được gán cho mỗi nhãn đối tượng
  • Một đường mỏng màu xanh đậm cho biết đối tượng không được phát hiện tại thời điểm hiện tại
  • Một đường mỏng màu xám cho biết đối tượng được phát hiện là đang đứng yên
  • Một đường dày cho biết đối tượng là chủ thể của việc theo dõi tự động (khi được bật)
  • " + }, + "desc": "Hiển thị các hộp giới hạn xung quanh các đối tượng được theo dõi", + "title": "Hộp giới hạn" + }, + "desc": "Chế độ xem gỡ lỗi hiển thị chế độ xem thời gian thực của các đối tượng được theo dõi và các thống kê của chúng. Danh sách đối tượng hiển thị một bản tóm tắt có độ trễ về các đối tượng được phát hiện.", + "debugging": "Gỡ lỗi", + "timestamp": { + "desc": "Chồng một dấu thời gian lên hình ảnh", + "title": "Dấu thời gian" + }, + "regions": { + "title": "Khu vực", + "tips": "

    Hộp khu vực


    Các hộp màu xanh lá cây sáng sẽ được chồng lên các khu vực quan tâm trong khung hình đang được gửi đến bộ phát hiện đối tượng.

    ", + "desc": "Hiển thị một hộp của khu vực quan tâm được gửi đến bộ phát hiện đối tượng" + }, + "zones": { + "title": "Vùng", + "desc": "Hiển thị đường viền của bất kỳ vùng nào đã được xác định" + }, + "mask": { + "title": "Mặt nạ chuyển động", + "desc": "Hiển thị các đa giác mặt nạ chuyển động" + }, + "title": "Gỡ lỗi", + "objectList": "Danh sách đối tượng", + "noObjects": "Không có đối tượng", + "motion": { + "desc": "Hiển thị các hộp xung quanh các khu vực phát hiện có chuyển động", + "tips": "

    Hộp chuyển động


    Các hộp màu đỏ sẽ được chồng lên các khu vực của khung hình nơi chuyển động đang được phát hiện

    ", + "title": "Hộp chuyển động" + } + }, + "users": { + "title": "Người dùng", + "management": { + "title": "Quản lý Người dùng", + "desc": "Quản lý các tài khoản người dùng của phiên bản Frigate này." + }, + "table": { + "noUsers": "Không tìm thấy người dùng nào.", + "username": "Tên người dùng", + "actions": "Hành động", + "role": "Vai trò", + "changeRole": "Thay đổi vai trò người dùng", + "password": "Mật khẩu", + "deleteUser": "Xóa người dùng" + }, + "dialog": { + "form": { + "password": { + "strength": { + "strong": "Mạnh", + "title": "Độ mạnh mật khẩu: ", + "medium": "Trung bình", + "veryStrong": "Rất mạnh", + "weak": "Yếu" + }, + "title": "Mật khẩu", + "placeholder": "Nhập mật khẩu", + "confirm": { + "title": "Xác nhận Mật khẩu", + "placeholder": "Xác nhận Mật khẩu" + }, + "notMatch": "Mật khẩu không trùng khớp", + "match": "Mật khẩu trùng khớp" + }, + "newPassword": { + "placeholder": "Nhập mật khẩu mới", + "confirm": { + "placeholder": "Nhập lại mật khẩu mới" + }, + "title": "Mật khẩu mới" + }, + "usernameIsRequired": "Tên người dùng là bắt buộc", + "user": { + "title": "Tên người dùng", + "desc": "Chỉ cho phép chữ cái, số, dấu chấm và dấu gạch dưới.", + "placeholder": "Nhập tên người dùng" + }, + "passwordIsRequired": "Mật khẩu là bắt buộc" + }, + "createUser": { + "desc": "Thêm một tài khoản người dùng mới và chỉ định một vai trò để truy cập vào các khu vực của giao diện người dùng Frigate.", + "usernameOnlyInclude": "Tên người dùng chỉ có thể bao gồm chữ cái, số, . hoặc _", + "title": "Tạo Người dùng Mới", + "confirmPassword": "Vui lòng xác nhận mật khẩu của bạn" + }, + "deleteUser": { + "desc": "Hành động này không thể được hoàn tác. Điều này sẽ xóa vĩnh viễn tài khoản người dùng và xóa tất cả dữ liệu liên quan.", + "warn": "Bạn có chắc muốn xóa {{username}} không?", + "title": "Xóa Người dùng" + }, + "passwordSetting": { + "setPassword": "Đặt Mật khẩu", + "updatePassword": "Cập nhật Mật khẩu cho {{username}}", + "cannotBeEmpty": "Mật khẩu không được để trống", + "desc": "Tạo một mật khẩu mạnh để bảo mật tài khoản này.", + "doNotMatch": "Mật khẩu không khớp" + }, + "changeRole": { + "title": "Thay đổi Vai trò Người dùng", + "roleInfo": { + "intro": "Chọn vai trò thích hợp cho người dùng này:", + "admin": "Quản trị viên", + "adminDesc": "Toàn quyền truy cập vào tất cả các tính năng.", + "viewer": "Người xem", + "viewerDesc": "Chỉ giới hạn ở các bảng điều khiển Trực tiếp, Xem lại, Khám phá và Xuất file." + }, + "select": "Chọn một vai trò", + "desc": "Cập nhật quyền cho {{username}}" + } + }, + "addUser": "Thêm Người dùng", + "updatePassword": "Cập nhật Mật khẩu", + "toast": { + "error": { + "setPasswordFailed": "Không thể lưu mật khẩu: {{errorMessage}}", + "createUserFailed": "Không thể tạo người dùng: {{errorMessage}}", + "deleteUserFailed": "Không thể xóa người dùng: {{errorMessage}}", + "roleUpdateFailed": "Không thể cập nhật vai trò: {{errorMessage}}" + }, + "success": { + "roleUpdated": "Vai trò đã được cập nhật cho {{user}}", + "createUser": "Người dùng {{user}} đã được tạo thành công", + "deleteUser": "Người dùng {{user}} đã được xóa thành công", + "updatePassword": "Mật khẩu đã được cập nhật thành công." + } + } + }, + "general": { + "calendar": { + "firstWeekday": { + "sunday": "Chủ nhật", + "monday": "Thứ hai", + "label": "Ngày đầu tuần", + "desc": "Ngày bắt đầu của các tuần trong lịch xem lại." + }, + "title": "Lịch" + }, + "storedLayouts": { + "desc": "Bố cục của các máy quay trong một nhóm máy quay có thể được kéo/thay đổi kích thước. Các vị trí được lưu trữ trong bộ nhớ cục bộ của trình duyệt của bạn.", + "title": "Bố cục đã lưu", + "clearAll": "Xóa tất cả Bố cục" + }, + "cameraGroupStreaming": { + "title": "Cài đặt Phát luồng Nhóm Máy quay", + "desc": "Cài đặt phát luồng cho mỗi nhóm máy quay được lưu trữ trong bộ nhớ cục bộ của trình duyệt của bạn.", + "clearAll": "Xóa tất cả Cài đặt Phát luồng" + }, + "toast": { + "success": { + "clearStoredLayout": "Đã xóa bố cục đã lưu cho {{cameraName}}", + "clearStreamingSettings": "Đã xóa cài đặt phát luồng cho tất cả các nhóm máy quay." + }, + "error": { + "clearStoredLayoutFailed": "Không thể xóa bố cục đã lưu: {{errorMessage}}", + "clearStreamingSettingsFailed": "Không thể xóa cài đặt phát luồng: {{errorMessage}}" + } + }, + "liveDashboard": { + "automaticLiveView": { + "desc": "Tự động chuyển sang chế độ xem trực tiếp của máy quay khi phát hiện hoạt động. Việc tắt tùy chọn này sẽ khiến hình ảnh tĩnh của máy quay trên bảng điều khiển Trực tiếp chỉ cập nhật mỗi phút một lần.", + "label": "Chế độ xem trực tiếp tự động" + }, + "playAlertVideos": { + "desc": "Theo mặc định, các cảnh báo gần đây trên bảng điều khiển Trực tiếp sẽ phát dưới dạng các video lặp lại nhỏ. Tắt tùy chọn này để chỉ hiển thị hình ảnh tĩnh của các cảnh báo gần đây trên thiết bị/trình duyệt này.", + "label": "Phát video cảnh báo" + }, + "title": "Bảng điều khiển trực tiếp" + }, + "recordingsViewer": { + "defaultPlaybackRate": { + "label": "Tốc độ phát mặc định", + "desc": "Tốc độ phát mặc định cho việc xem lại các bản ghi." + }, + "title": "Trình xem Bản ghi" + }, + "title": "Cài đặt Chung" + }, + "dialog": { + "unsavedChanges": { + "desc": "Bạn có muốn lưu các thay đổi trước khi tiếp tục không?", + "title": "Bạn có các thay đổi chưa được lưu." + } + }, + "enrichments": { + "title": "Cài đặt Làm giàu Dữ liệu", + "unsavedChanges": "Các thay đổi cài đặt Làm giàu Dữ liệu chưa được lưu", + "birdClassification": { + "title": "Phân loại Chim", + "desc": "Phân loại chim xác định các loài chim đã biết bằng mô hình Tensorflow lượng tử hóa. Khi một loài chim đã biết được nhận dạng, tên thông thường của nó sẽ được thêm vào dưới dạng nhãn phụ (sub_label). Thông tin này được bao gồm trong giao diện người dùng, bộ lọc, cũng như trong các thông báo." + }, + "semanticSearch": { + "title": "Tìm kiếm theo Ngữ nghĩa", + "desc": "Tìm kiếm theo Ngữ nghĩa trong Frigate cho phép bạn tìm các đối tượng được theo dõi trong các mục xem lại của mình bằng cách sử dụng chính hình ảnh, mô tả văn bản do người dùng xác định hoặc mô tả được tạo tự động.", + "reindexNow": { + "desc": "Việc tái lập chỉ mục sẽ tạo lại các nhúng (embeddings) cho tất cả các đối tượng được theo dõi. Quá trình này chạy ở chế độ nền và có thể làm CPU của bạn hoạt động tối đa và mất một khoảng thời gian đáng kể tùy thuộc vào số lượng đối tượng bạn đã theo dõi.", + "confirmTitle": "Xác nhận Tái lập chỉ mục", + "confirmDesc": "Bạn có chắc muốn tái lập chỉ mục cho tất cả các nhúng của đối tượng được theo dõi không? Quá trình này sẽ chạy ở chế độ nền nhưng có thể làm CPU của bạn hoạt động tối đa và mất một khoảng thời gian đáng kể. Bạn có thể theo dõi tiến trình trên trang Khám phá.", + "success": "Đã bắt đầu tái lập chỉ mục thành công.", + "alreadyInProgress": "Quá trình tái lập chỉ mục đang được tiến hành.", + "error": "Không thể bắt đầu tái lập chỉ mục: {{errorMessage}}", + "label": "Tái lập chỉ mục ngay", + "confirmButton": "Tái lập chỉ mục" + }, + "modelSize": { + "label": "Kích thước Mô hình", + "desc": "Kích thước của mô hình được sử dụng cho các nhúng tìm kiếm theo ngữ nghĩa.", + "small": { + "title": "nhỏ", + "desc": "Sử dụng mô hình nhỏ sẽ dùng phiên bản lượng tử hóa của mô hình, tiêu thụ ít RAM hơn và chạy nhanh hơn trên CPU với sự khác biệt không đáng kể về chất lượng nhúng." + }, + "large": { + "title": "lớn", + "desc": "Sử dụng mô hình lớn sẽ dùng mô hình Jina đầy đủ và sẽ tự động chạy trên GPU nếu có." + } + }, + "readTheDocumentation": "Đọc tài liệu" + }, + "faceRecognition": { + "title": "Nhận dạng Khuôn mặt", + "desc": "Nhận dạng khuôn mặt cho phép gán tên cho người và khi khuôn mặt của họ được nhận dạng, Frigate sẽ gán tên của người đó làm nhãn phụ. Thông tin này được bao gồm trong giao diện người dùng, bộ lọc, cũng như trong các thông báo.", + "readTheDocumentation": "Đọc tài liệu", + "modelSize": { + "label": "Kích thước Mô hình", + "desc": "Kích thước của mô hình được sử dụng để nhận dạng khuôn mặt.", + "small": { + "title": "nhỏ", + "desc": "Sử dụng mô hình nhỏ sẽ dùng mô hình nhúng khuôn mặt FaceNet, chạy hiệu quả trên hầu hết các CPU." + }, + "large": { + "title": "lớn", + "desc": "Sử dụng mô hình lớn sẽ dùng mô hình nhúng khuôn mặt ArcFace và sẽ tự động chạy trên GPU nếu có." + } + } + }, + "licensePlateRecognition": { + "title": "Nhận dạng Biển số xe", + "desc": "Frigate có thể nhận dạng biển số xe trên các phương tiện và tự động thêm các ký tự được phát hiện vào trường recognized_license_plate hoặc một tên đã biết làm nhãn phụ cho các đối tượng thuộc loại ô tô. Một trường hợp sử dụng phổ biến có thể là đọc biển số xe ô tô đi vào đường lái xe hoặc ô tô đi ngang qua trên đường phố.", + "readTheDocumentation": "Đọc tài liệu" + }, + "restart_required": "Yêu cầu khởi động lại (cài đặt Làm giàu Dữ liệu đã thay đổi)", + "toast": { + "success": "Cài đặt Làm giàu Dữ liệu đã được lưu. Khởi động lại Frigate để áp dụng các thay đổi của bạn.", + "error": "Không thể lưu các thay đổi cấu hình: {{errorMessage}}" + } + }, + "menu": { + "frigateplus": "Frigate+", + "ui": "Giao diện người dùng", + "masksAndZones": "Mặt nạ / Vùng", + "debug": "Gỡ lỗi", + "users": "Người dùng", + "notifications": "Thông báo", + "motionTuner": "Tinh chỉnh Chuyển động", + "cameras": "Cài đặt Camera", + "enrichments": "Làm giàu Dữ liệu" + }, + "cameraSetting": { + "camera": "Camera", + "noCamera": "Không có Camera" } } diff --git a/web/public/locales/vi/views/system.json b/web/public/locales/vi/views/system.json index 7bb2dcc99..eeb841096 100644 --- a/web/public/locales/vi/views/system.json +++ b/web/public/locales/vi/views/system.json @@ -1,6 +1,180 @@ { "documentTitle": { "storage": "Thống kê lưu trữ - Frigate", - "general": "Thống kê chung - Frigate" + "general": "Thống kê Chung - Frigate", + "enrichments": "Thống kê Làm giàu Dữ liệu - Frigate", + "logs": { + "frigate": "Nhật ký Frigate - Frigate", + "go2rtc": "Nhật ký Go2RTC - Frigate", + "nginx": "Nhật ký Nginx - Frigate" + }, + "cameras": "Thống kê Camera - Frigate" + }, + "general": { + "hardwareInfo": { + "npuUsage": "Mức sử dụng NPU", + "npuMemory": "Bộ nhớ NPU", + "gpuInfo": { + "vainfoOutput": { + "title": "Đầu ra Vainfo", + "returnCode": "Mã trả về: {{code}}", + "processOutput": "Đầu ra Tiến trình:", + "processError": "Lỗi Tiến trình:" + }, + "nvidiaSMIOutput": { + "title": "Đầu ra Nvidia SMI", + "name": "Tên: {{name}}", + "driver": "Trình điều khiển: {{driver}}", + "cudaComputerCapability": "Khả năng Tính toán CUDA: {{cuda_compute}}", + "vbios": "Thông tin VBios: {{vbios}}" + }, + "closeInfo": { + "label": "Đóng thông tin GPU" + }, + "copyInfo": { + "label": "Sao chép thông tin GPU" + }, + "toast": { + "success": "Đã sao chép thông tin GPU vào clipboard" + } + }, + "title": "Thông tin Phần cứng", + "gpuUsage": "Mức sử dụng GPU", + "gpuMemory": "Bộ nhớ GPU", + "gpuEncoder": "Bộ mã hóa GPU", + "gpuDecoder": "Bộ giải mã GPU" + }, + "otherProcesses": { + "processCpuUsage": "Mức sử dụng CPU của Tiến trình", + "processMemoryUsage": "Mức sử dụng Bộ nhớ của Tiến trình", + "title": "Các Tiến trình Khác" + }, + "detector": { + "temperature": "Nhiệt độ Bộ phát hiện", + "memoryUsage": "Mức sử dụng Bộ nhớ của Bộ phát hiện", + "title": "Bộ phát hiện", + "inferenceSpeed": "Tốc độ Suy luận của Bộ phát hiện", + "cpuUsage": "Mức sử dụng CPU của Bộ phát hiện" + }, + "title": "Chung" + }, + "storage": { + "overview": "Tổng quan", + "cameraStorage": { + "title": "Lưu trữ Máy quay", + "camera": "Camera", + "unusedStorageInformation": "Thông tin Lưu trữ Chưa sử dụng", + "storageUsed": "Lưu trữ", + "percentageOfTotalUsed": "Phần trăm Tổng dung lượng Đã sử dụng", + "bandwidth": "Băng thông", + "unused": { + "title": "Chưa sử dụng", + "tips": "Giá trị này có thể không phản ánh chính xác dung lượng trống có sẵn cho Frigate nếu bạn có các tệp khác được lưu trữ trên ổ đĩa ngoài các bản ghi của Frigate. Frigate không theo dõi việc sử dụng dung lượng lưu trữ bên ngoài các bản ghi của nó." + } + }, + "title": "Lưu trữ", + "recordings": { + "title": "Bản ghi", + "tips": "Giá trị này thể hiện tổng dung lượng lưu trữ được sử dụng bởi các bản ghi trong cơ sở dữ liệu của Frigate. Frigate không theo dõi việc sử dụng dung lượng lưu trữ cho tất cả các tệp trên đĩa của bạn.", + "earliestRecording": "Bản ghi sớm nhất hiện có:" + } + }, + "cameras": { + "label": { + "detect": "phát hiện", + "skipped": "bỏ qua", + "ffmpeg": "FFmpeg", + "capture": "ghi hình", + "overallDetectionsPerSecond": "tổng số phát hiện mỗi giây", + "cameraFramesPerSecond": "{{camName}} khung hình mỗi giây", + "cameraDetectionsPerSecond": "{{camName}} phát hiện mỗi giây", + "overallFramesPerSecond": "tổng số khung hình mỗi giây", + "camera": "máy quay", + "overallSkippedDetectionsPerSecond": "tổng số phát hiện bị bỏ qua mỗi giây", + "cameraFfmpeg": "{{camName}} FFmpeg", + "cameraCapture": "{{camName}} ghi hình", + "cameraDetect": "{{camName}} phát hiện", + "cameraSkippedDetectionsPerSecond": "{{camName}} phát hiện bị bỏ qua mỗi giây" + }, + "toast": { + "success": { + "copyToClipboard": "Đã sao chép dữ liệu thăm dò vào clipboard." + }, + "error": { + "unableToProbeCamera": "Không thể thăm dò máy quay: {{errorMessage}}" + } + }, + "info": { + "stream": "Luồng {{idx}}", + "streamDataFromFFPROBE": "Dữ liệu luồng được lấy bằng ffprobe.", + "video": "Video:", + "fetching": "Đang tìm nạp Dữ liệu Máy quay", + "codec": "Codec:", + "unknown": "Không xác định", + "audio": "Âm thanh:", + "error": "Lỗi: {{error}}", + "tips": { + "title": "Thông tin Thăm dò Máy quay" + }, + "resolution": "Độ phân giải:", + "fps": "FPS:", + "cameraProbeInfo": "Thông tin Thăm dò Máy quay {{camera}}", + "aspectRatio": "tỉ lệ khung hình" + }, + "overview": "Tổng quan", + "framesAndDetections": "Khung hình / Phát hiện", + "title": "Camera" + }, + "lastRefreshed": "Làm mới lần cuối: ", + "stats": { + "detectIsSlow": "{{detect}} đang chậm ({{speed}} ms)", + "detectIsVerySlow": "{{detect}} đang rất chậm ({{speed}} ms)", + "cameraIsOffline": "{{camera}} đang ngoại tuyến", + "ffmpegHighCpuUsage": "{{camera}} có mức sử dụng CPU FFmpeg cao ({{ffmpegAvg}}%)", + "detectHighCpuUsage": "{{camera}} có mức sử dụng CPU phát hiện cao ({{detectAvg}}%)", + "healthy": "Hệ thống đang hoạt động tốt", + "reindexingEmbeddings": "Đang lập chỉ mục lại các embedding (hoàn thành {{processed}}%)" + }, + "enrichments": { + "embeddings": { + "image_embedding": "Embedding Hình ảnh", + "text_embedding_speed": "Tốc độ Embedding Văn bản", + "face_embedding_speed": "Tốc độ Embedding Khuôn mặt", + "text_embedding": "Embedding Văn bản", + "face_recognition": "Nhận dạng Khuôn mặt", + "plate_recognition": "Nhận dạng Biển số", + "image_embedding_speed": "Tốc độ Embedding Hình ảnh", + "face_recognition_speed": "Tốc độ Nhận dạng Khuôn mặt", + "plate_recognition_speed": "Tốc độ Nhận dạng Biển số", + "yolov9_plate_detection_speed": "Tốc độ Phát hiện Biển số YOLOv9", + "yolov9_plate_detection": "Phát hiện Biển số YOLOv9" + }, + "title": "Làm giàu Dữ liệu", + "infPerSecond": "Suy luận Mỗi Giây" + }, + "title": "Hệ thống", + "metrics": "Số liệu hệ thống", + "logs": { + "download": { + "label": "Tải xuống Nhật ký" + }, + "copy": { + "label": "Sao chép vào Clipboard", + "success": "Đã sao chép nhật ký vào clipboard", + "error": "Không thể sao chép nhật ký vào clipboard" + }, + "type": { + "label": "Loại", + "timestamp": "Dấu thời gian", + "tag": "Thẻ", + "message": "Thông báo" + }, + "tips": "Nhật ký đang được truyền trực tiếp từ máy chủ", + "toast": { + "error": { + "fetchingLogsFailed": "Lỗi khi tìm nạp nhật ký: {{errorMessage}}", + "whileStreamingLogs": "Lỗi trong khi truyền trực tiếp nhật ký: {{errorMessage}}" + } + } } } diff --git a/web/public/locales/yue-Hant/common.json b/web/public/locales/yue-Hant/common.json index ed87dbb86..03f4f89b4 100644 --- a/web/public/locales/yue-Hant/common.json +++ b/web/public/locales/yue-Hant/common.json @@ -159,7 +159,8 @@ "uk": "Українська (烏克蘭文)", "he": "עברית (希伯來文)", "yue": "粵語 (廣東話)", - "th": "ไทย (泰文)" + "th": "ไทย (泰文)", + "ca": "Català (加泰羅尼亞語)" }, "appearance": "外觀", "darkMode": { diff --git a/web/public/locales/yue-Hant/views/settings.json b/web/public/locales/yue-Hant/views/settings.json index c644b6b96..a68c9d2bd 100644 --- a/web/public/locales/yue-Hant/views/settings.json +++ b/web/public/locales/yue-Hant/views/settings.json @@ -150,11 +150,11 @@ "title": "鏡頭設定", "streams": { "title": "串流", - "desc": "停用鏡頭會完全停止 Frigate 處理此鏡頭的串流。將會無法使用偵測、錄影和除錯功能。
    注意:這不會停用 go2rtc 的轉播功能。" + "desc": "暫時停用鏡頭直到Frigate重新啟動。停用鏡頭會完全停止 Frigate 處理此鏡頭的串流。將會無法使用偵測、錄影和除錯功能。
    注意:這不會停用 go2rtc 的轉播功能。" }, "review": { "title": "審查", - "desc": "啟用或停用此鏡頭的警報和偵測。停用後,將不會產生新的審查項目。", + "desc": "暫時啟用或停用此鏡頭的警報和偵測直到Frigate重新啟動。停用後,將不會產生新的審查項目。 ", "alerts": "警報 ", "detections": "偵測 " }, diff --git a/web/public/locales/zh-CN/audio.json b/web/public/locales/zh-CN/audio.json index 86a9259c8..bd97f632f 100644 --- a/web/public/locales/zh-CN/audio.json +++ b/web/public/locales/zh-CN/audio.json @@ -54,7 +54,7 @@ "animal": "动物", "pets": "宠物", "dog": "狗", - "bark": "吠叫", + "bark": "狗叫", "yip": "吠叫", "howl": "嚎叫", "bow_wow": "汪汪", @@ -371,7 +371,7 @@ "siren": "警笛", "civil_defense_siren": "防空警报", "buzzer": "蜂鸣器", - "smoke_detector": "烟雾探测器", + "smoke_detector": "烟雾检测器", "fire_alarm": "火灾警报器", "foghorn": "雾笛", "whistle": "哨子", diff --git a/web/public/locales/zh-CN/common.json b/web/public/locales/zh-CN/common.json index dd6d34fa2..1c253aee4 100644 --- a/web/public/locales/zh-CN/common.json +++ b/web/public/locales/zh-CN/common.json @@ -180,7 +180,8 @@ "ru": "俄语 (Русский)", "cs": "捷克语 (Čeština)", "yue": "粤语 (粵語)", - "th": "泰语(ไทย)" + "th": "泰语(ไทย)", + "ca": "加泰罗尼亚语 (Català )" }, "appearance": "外观", "darkMode": { @@ -216,7 +217,7 @@ } }, "review": "核查", - "explore": "探测", + "explore": "浏览", "export": "导出", "uiPlayground": "UI 演示", "faceLibrary": "人脸管理", diff --git a/web/public/locales/zh-CN/components/filter.json b/web/public/locales/zh-CN/components/filter.json index 4a87b2da0..5824a421d 100644 --- a/web/public/locales/zh-CN/components/filter.json +++ b/web/public/locales/zh-CN/components/filter.json @@ -41,7 +41,7 @@ "hasVideoClip": "包含视频片段", "submittedToFrigatePlus": { "label": "提交至 Frigate+", - "tips": "你必须要先筛选具有快照的探测对象。

    没有快照的跟踪对象无法提交至 Frigate+." + "tips": "你必须要先筛选具有快照的检测对象。

    没有快照的跟踪对象无法提交至 Frigate+." } }, "sort": { diff --git a/web/public/locales/zh-CN/objects.json b/web/public/locales/zh-CN/objects.json index 270db56c1..161821a9d 100644 --- a/web/public/locales/zh-CN/objects.json +++ b/web/public/locales/zh-CN/objects.json @@ -93,7 +93,7 @@ "squirrel": "松鼠", "deer": "鹿", "animal": "动物", - "bark": "树皮", + "bark": "狗叫", "fox": "狐狸", "goat": "山羊", "rabbit": "兔子", diff --git a/web/public/locales/zh-CN/views/events.json b/web/public/locales/zh-CN/views/events.json index b7cefb7e8..72a93104f 100644 --- a/web/public/locales/zh-CN/views/events.json +++ b/web/public/locales/zh-CN/views/events.json @@ -8,7 +8,7 @@ "allCameras": "所有摄像头", "empty": { "alert": "还没有“警报”类核查项", - "detection": "还没有“探测”类核查项", + "detection": "还没有“检测”类核查项", "motion": "还没有运动类数据" }, "timeline": "时间线", diff --git a/web/public/locales/zh-CN/views/explore.json b/web/public/locales/zh-CN/views/explore.json index 2552f552a..959a761b5 100644 --- a/web/public/locales/zh-CN/views/explore.json +++ b/web/public/locales/zh-CN/views/explore.json @@ -146,7 +146,7 @@ }, "editLPR": { "desc": "为 {{label}} 输入新的车牌值", - "descNoLabel": "为探测到的对象输入新的车牌值", + "descNoLabel": "为检测到的对象输入新的车牌值", "title": "编辑车牌" }, "recognizedLicensePlate": "识别的车牌", diff --git a/web/public/locales/zh-CN/views/settings.json b/web/public/locales/zh-CN/views/settings.json index 8c8689d2f..935a22658 100644 --- a/web/public/locales/zh-CN/views/settings.json +++ b/web/public/locales/zh-CN/views/settings.json @@ -10,7 +10,7 @@ "general": "常规设置 - Frigate", "frigatePlus": "Frigate+ 设置 - Frigate", "notifications": "通知设置 - Frigate", - "enrichments": "增强功能 - Frigate" + "enrichments": "增强功能设置 - Frigate" }, "menu": { "ui": "界面设置", @@ -150,11 +150,11 @@ "title": "摄像头设置", "streams": { "title": "视频流", - "desc": "禁用摄像头将完全停止 Frigate 对该摄像头视频流的处理。检测、录制和调试功能都将不可用。
    注意:该选项不会禁用 go2rtc 转播。" + "desc": "暂时禁用摄像头,除非重启Frigate否则将保持禁用。禁用摄像头将完全停止 Frigate 对该摄像头视频流的处理。检测、录制和调试功能都将不可用。
    注意:该选项不会禁用 go2rtc 转播。" }, "review": { "title": "核查", - "desc": "启用/禁用摄像头的警报和检测。禁用后,不会生成新的核查项。", + "desc": "启用/禁用摄像头的警报和检测。禁用后,除非重启Frigate,否则不会生成新的核查项。 ", "alerts": "警报 ", "detections": "检测 " }, @@ -374,7 +374,7 @@ }, "debug": { "title": "调试", - "detectorDesc": "Frigate 将使用探测器({{detectors}})来检测摄像头视频流中的对象。", + "detectorDesc": "Frigate 将使用检测器({{detectors}})来检测摄像头视频流中的对象。", "desc": "调试界面将实时显示被追踪的对象以及统计信息,对象列表将显示检测到的对象和延迟显示的概览。", "debugging": "调试选项", "objectList": "对象列表", @@ -603,7 +603,7 @@ "error": "加载模型信息失败", "availableModels": "可用模型", "loadingAvailableModels": "正在加载可用模型…", - "modelSelect": "您可以在Frigate+上选择可用的模型。请注意,只能选择与当前探测器配置兼容的模型。", + "modelSelect": "您可以在Frigate+上选择可用的模型。请注意,只能选择与当前检测器配置兼容的模型。", "plusModelType": { "baseModel": "基础模型", "userModel": "定向调优" diff --git a/web/public/locales/zh-CN/views/system.json b/web/public/locales/zh-CN/views/system.json index e8c9f1495..72ba79049 100644 --- a/web/public/locales/zh-CN/views/system.json +++ b/web/public/locales/zh-CN/views/system.json @@ -38,11 +38,11 @@ "general": { "title": "常规", "detector": { - "title": "探测器", - "inferenceSpeed": "探测器推理速度", - "cpuUsage": "探测器CPU使用率", - "memoryUsage": "探测器内存使用率", - "temperature": "探测器温度" + "title": "检测器", + "inferenceSpeed": "检测器推理速度", + "cpuUsage": "检测器CPU使用率", + "memoryUsage": "检测器内存使用率", + "temperature": "检测器温度" }, "hardwareInfo": { "title": "硬件信息", @@ -127,7 +127,7 @@ "framesAndDetections": "帧数/检测次数", "label": { "camera": "摄像头", - "detect": "探测", + "detect": "检测", "skipped": "跳过", "ffmpeg": "FFmpeg编码器", "capture": "捕获", @@ -143,17 +143,17 @@ }, "toast": { "success": { - "copyToClipboard": "已复制探测数据到剪贴板。" + "copyToClipboard": "已复制检测数据到剪贴板。" }, "error": { - "unableToProbeCamera": "无法探测摄像头:{{errorMessage}}" + "unableToProbeCamera": "无法检测到摄像头:{{errorMessage}}" } } }, "lastRefreshed": "最后刷新时间:", "stats": { "ffmpegHighCpuUsage": "{{camera}} 的 FFmpeg CPU 使用率较高({{ffmpegAvg}}%)", - "detectHighCpuUsage": "{{camera}} 的 探测 CPU 使用率较高({{detectAvg}}%)", + "detectHighCpuUsage": "{{camera}} 的 检测器 CPU 使用率较高({{detectAvg}}%)", "healthy": "系统运行正常", "reindexingEmbeddings": "正在重新索引嵌入(已完成 {{processed}}%)", "detectIsSlow": "{{detect}} 运行缓慢({{speed}}毫秒)",