{
"documentTitle": {
"default": "Настройки - Frigate",
"masksAndZones": "Маски и Зоны - Frigate",
"motionTuner": "Детекции движения - Frigate",
"general": "Настройки интерфейса - Frigate",
"frigatePlus": "Настройки Frigate+ - Frigate",
"authentication": "Настройки аутентификации - Frigate",
"object": "Отладка - Frigate",
"notifications": "Настройки уведомлений - Frigate",
"enrichments": "Настройки обогащения - Frigate",
"cameraManagement": "Управление камерами - Frigate",
"cameraReview": "Настройки просмотра камеры - Frigate",
"globalConfig": "Глобальная конфигурация - Frigate",
"cameraConfig": "Настройки камеры - Frigate",
"maintenance": "Обслуживание - Frigate",
"profiles": "Профили - Frigate",
"detectorsAndModel": "Обнаружения и модель - Frigate"
},
"menu": {
"cameras": "Настройки камеры",
"masksAndZones": "Маски / Зоны",
"motionTuner": "Детекции движения",
"debug": "Отладка",
"users": "Пользователи",
"notifications": "Уведомления",
"frigateplus": "Frigate+",
"ui": "Интерфейс",
"enrichments": "Обогащения",
"triggers": "Триггеры",
"cameraManagement": "Управление камерой",
"cameraReview": "Обзор",
"roles": "Роли",
"general": "Общее",
"globalConfig": "Глобальная конфигурация",
"system": "Система",
"integrations": "Интеграции",
"uiSettings": "Настройки интерфейса",
"profiles": "Профили",
"globalDetect": "Обнаружение объектов",
"globalReview": "Обзор событий",
"globalAudioEvents": "Обнаружение аудио",
"systemAuthentication": "Аутентификация",
"systemNetworking": "Сеть",
"systemProxy": "Прокси",
"systemUi": "Интерфейс",
"systemLogging": "Логирование",
"systemEnvironmentVariables": "Переменные окружения",
"systemTelemetry": "Телеметрия",
"systemBirdseye": "Режим Birdseye",
"systemFfmpeg": "FFmpeg",
"systemDetectorsAndModel": "Детекторы и модель",
"systemMqtt": "MQTT",
"systemGo2rtcStreams": "потоки go2rtc",
"integrationSemanticSearch": "Семантический поиск",
"integrationGenerativeAi": "Генеративный ИИ",
"integrationFaceRecognition": "Распознавание лиц",
"integrationLpr": "Распознавание номерных знаков",
"integrationObjectClassification": "Классификация объектов",
"integrationAudioTranscription": "Расшифровка аудиозаписи",
"cameraDetect": "Обнаружение объектов",
"cameraFfmpeg": "Потоки (FFmpeg)",
"cameraRecording": "Запись",
"cameraSnapshots": "Снимки",
"cameraMotion": "Обнаружение движения",
"cameraObjects": "Объекты",
"cameraConfigReview": "Обзор событий",
"cameraAudioEvents": "Обнаружение аудио",
"cameraAudioTranscription": "Расшифровка аудиозаписи",
"cameraNotifications": "Уведомления",
"globalRecording": "Запись",
"globalSnapshots": "Снимки",
"globalFfmpeg": "FFmpeg",
"globalMotion": "Обнаружение движения",
"globalObjects": "Объекты",
"globalLivePlayback": "Воспроизведение в реальном времени",
"globalTimestampStyle": "Стиль временной метки",
"systemDatabase": "База данных",
"systemTls": "TLS",
"cameraLivePlayback": "Воспроизведение в реальном времени",
"cameraBirdseye": "Birdseye",
"cameraFaceRecognition": "Распознавание лиц",
"cameraLpr": "Распознавание номерных знаков",
"cameraMqttConfig": "MQTT",
"cameraOnvif": "ONVIF",
"cameraUi": "Интерфейс камеры",
"cameraTimestampStyle": "Стиль временной метки",
"cameraMqtt": "MQTT камеры",
"maintenance": "Обслуживание",
"mediaSync": "Синхронизация медиа",
"regionGrid": "Сетка регионов"
},
"dialog": {
"unsavedChanges": {
"title": "У вас есть несохраненные изменения.",
"desc": "Хотите сохранить изменения перед продолжением?"
}
},
"cameraSetting": {
"camera": "Камера",
"noCamera": "Нет камеры"
},
"general": {
"title": "Настройки интерфейса",
"liveDashboard": {
"title": "Панель мониторинга",
"automaticLiveView": {
"desc": "Автоматически переключаться на просмотр камеры в реальном времени при обнаружении активности. Если отключить эту опцию, статичные изображения камер на панели мониторинга будут обновляться только раз в минуту.",
"label": "Автоматический просмотр в реальном времени"
},
"playAlertVideos": {
"label": "Воспроизводить видео с тревогами",
"desc": "По умолчанию последние тревоги на панели мониторинга воспроизводятся как короткие зацикленные видео. Отключите эту опцию, чтобы показывать только статичное изображение последних оповещений на этом устройстве/браузере."
},
"displayCameraNames": {
"label": "Всегда показывать названия камер",
"desc": "Всегда показывать названия камер в виде метки на панели мониторинга с несколькими камерами."
},
"liveFallbackTimeout": {
"label": "Таймаут переключения на низкое качество",
"desc": "Когда высококачественный поток камеры недоступен, переключиться на режим низкой пропускной способности через указанное количество секунд. По умолчанию: 3."
}
},
"calendar": {
"title": "Календарь",
"firstWeekday": {
"sunday": "Воскресенье",
"monday": "Понедельник",
"label": "Первый день недели",
"desc": "День, с которого начинаются недели в календаре обзора событий."
}
},
"recordingsViewer": {
"title": "Просмотр записей",
"defaultPlaybackRate": {
"label": "Скорость воспроизведения по умолчанию",
"desc": "Скорость воспроизведения записей по умолчанию."
}
},
"storedLayouts": {
"clearAll": "Сбросить все макеты",
"desc": "Расположение камер в группе можно настраивать перетаскиванием и изменением размера. Позиции сохраняются в локальном хранилище браузера.",
"title": "Сохранённые макеты"
},
"cameraGroupStreaming": {
"title": "Настройки трансляции группы камер",
"desc": "Настройки трансляции для каждой группы камер хранятся локально в вашем браузере.",
"clearAll": "Очистить все настройки трансляции"
},
"toast": {
"success": {
"clearStoredLayout": "Сохранённый макет для {{cameraName}} удалён",
"clearStreamingSettings": "Настройки потоков для всех групп камер сброшены."
},
"error": {
"clearStoredLayoutFailed": "Не удалось удалить макет: {{errorMessage}}",
"clearStreamingSettingsFailed": "Не удалось очистить настройки потока: {{errorMessage}}"
}
}
},
"users": {
"dialog": {
"passwordSetting": {
"updatePassword": "Обновить пароль для {{username}}",
"setPassword": "Установить пароль",
"desc": "Создайте надежный пароль для защиты аккаунта.",
"cannotBeEmpty": "Пароль не может быть пустым",
"doNotMatch": "Пароли не совпадают",
"currentPasswordRequired": "Текущий пароль обязателен",
"incorrectCurrentPassword": "Текущий пароль указан неверно",
"passwordVerificationFailed": "Не удалось проверить пароль",
"multiDeviceWarning": "Все остальные устройства, на которых вы вошли в систему, потребуют повторного входа в течение {{refresh_time}}.",
"multiDeviceAdmin": "Вы также можете принудительно заставить всех пользователей повторно пройти аутентификацию немедленно, обновив свой JWT-секрет."
},
"deleteUser": {
"warn": "Вы уверены, что хотите удалить пользователя {{username}}?",
"title": "Удалить пользователя",
"desc": "Это действие необратимо. Учётная запись пользователя и все связанные с ней данные будут удалены без возможности восстановления."
},
"changeRole": {
"title": "Изменить роль пользователя",
"desc": "Обновить права доступа для {{username}}",
"roleInfo": {
"intro": "Выберите подходящую роль для этого пользователя:",
"viewer": "Наблюдатель",
"viewerDesc": "Доступны только панель мониторинга, обзор событий, поиск и экспорт данных.",
"admin": "Администратор",
"adminDesc": "Полный доступ ко всем функциям.",
"customDesc": "Роль с настраиваемыми правами доступа к определённым камерам."
},
"select": "Выбрать роль"
},
"form": {
"user": {
"placeholder": "Введите имя пользователя",
"desc": "Допустимо использовать только буквы, цифры, точки и подчёркивания.",
"title": "Имя пользователя"
},
"password": {
"title": "Пароль",
"placeholder": "Введите пароль",
"confirm": {
"title": "Подтвердите пароль",
"placeholder": "Подтвердите пароль"
},
"strength": {
"title": "Сложность пароля: ",
"weak": "Слабый",
"medium": "Средний",
"strong": "Сложный",
"veryStrong": "Очень сложный"
},
"match": "Пароли совпадают",
"notMatch": "Пароли не совпадают",
"show": "Показать пароль",
"hide": "Скрыть пароль",
"requirements": {
"title": "Требования к паролю:",
"length": "Не менее 12 символов"
}
},
"newPassword": {
"title": "Новый пароль",
"confirm": {
"placeholder": "Повторно введите новый пароль"
},
"placeholder": "Введите новый пароль"
},
"usernameIsRequired": "Необходимо ввести имя пользователя",
"passwordIsRequired": "Требуется пароль",
"currentPassword": {
"title": "Текущий пароль",
"placeholder": "Введите ваш текущий пароль"
}
},
"createUser": {
"title": "Создать нового пользователя",
"usernameOnlyInclude": "Имя пользователя может включать только буквы, цифры, . или _",
"desc": "Добавить новую учетную запись пользователя и определить роль для доступа к разделам интерфейса Frigate.",
"confirmPassword": "Пожалуйста, подтвердите пароль"
}
},
"title": "Пользователи",
"toast": {
"success": {
"roleUpdated": "Обновлена роль для {{user}}",
"createUser": "Пользователь {{user}} успешно создан",
"deleteUser": "Пользователь {{user}} успешно удалён",
"updatePassword": "Пароль успешно обновлён."
},
"error": {
"setPasswordFailed": "Не удалось сохранить пароль: {{errorMessage}}",
"createUserFailed": "Не удалось создать пользователя: {{errorMessage}}",
"deleteUserFailed": "Не удалось удалить пользователя: {{errorMessage}}",
"roleUpdateFailed": "Не удалось обновить роль: {{errorMessage}}"
}
},
"table": {
"username": "Имя пользователя",
"actions": "Действия",
"password": "Сбросить пароль",
"noUsers": "Пользователей не найдено.",
"changeRole": "Изменить роль пользователя",
"role": "Роль",
"deleteUser": "Удалить пользователя"
},
"management": {
"title": "Управление пользователями",
"desc": "Управление учетными записями пользователей Frigate."
},
"updatePassword": "Сбросить пароль",
"addUser": "Добавить пользователя"
},
"notification": {
"title": "Уведомления",
"notificationSettings": {
"title": "Настройки уведомлений",
"desc": "Frigate может отправлять push-уведомления на ваше устройство, когда приложение открыто в браузере или установлено как PWA."
},
"notificationUnavailable": {
"title": "Уведомления недоступны",
"desc": "Веб-уведомления требуют защищённого контекста (https://…). Это ограничение браузера. Получите безопасный доступ к Frigate, чтобы использовать уведомления.",
"descPwa": "На iOS веб-уведомления доступны только в том случае, если Frigate установлен на главном экране. Откройте меню Поделиться, выберите Добавить на главный экран, затем откройте Frigate с помощью нового значка, чтобы зарегистрировать это устройство для уведомлений."
},
"email": {
"title": "Email",
"desc": "Для уведомлений о проблемах с push-сервисом требуется указать действующий адрес электронной почты.",
"placeholder": "например, example@email.com"
},
"globalSettings": {
"title": "Глобальные настройки",
"desc": "Временно приостановить уведомления для определённых камер на всех зарегистрированных устройствах."
},
"cameras": {
"title": "Камеры",
"noCameras": "Нет доступных камер",
"desc": "Выберите камеры для активации уведомлений."
},
"deviceSpecific": "Настройки для конкретного устройства",
"registerDevice": "Зарегистрировать это устройство",
"unregisterDevice": "Отменить регистрацию этого устройства",
"suspended": "Уведомления приостановлены {{time}}",
"sendTestNotification": "Отправить тестовое уведомление",
"active": "Уведомления активны",
"suspendTime": {
"30minutes": "Приостановить на 30 минут",
"1hour": "Приостановить на 1 час",
"12hours": "Приостановить на 12 часов",
"24hours": "Приостановить на 24 часа",
"untilRestart": "Приостановить до перезапуска",
"5minutes": "Приостановить на 5 минут",
"10minutes": "Приостановить на 10 минут",
"suspend": "Приостановить"
},
"toast": {
"success": {
"settingSaved": "Настройки уведомлений сохранены.",
"registered": "Регистрация для уведомлений успешно завершена. Перезапуск Frigate необходим перед отправкой любых уведомлений (включая тестовое уведомление)."
},
"error": {
"registerFailed": "Не удалось сохранить регистрацию уведомлений."
}
},
"cancelSuspension": "Отменить приостановку",
"unsavedChanges": "Изменения уведомлений не сохранены",
"unsavedRegistrations": "Регистрации уведомлений не сохранены"
},
"masksAndZones": {
"zones": {
"objects": {
"title": "Объекты",
"desc": "Список объектов, применяемых к этой зоне."
},
"speedEstimation": {
"desc": "Включить оценку скорости объектов в этой зоне. Зона должна состоять ровно из 4 точек.",
"title": "Расчёт скорости",
"lineBDistance": "Длина линии B ({{unit}})",
"lineADistance": "Длина линии A ({{unit}})",
"lineCDistance": "Длина линии C ({{unit}})",
"lineDDistance": "Длина линии D ({{unit}})"
},
"label": "Зоны",
"documentTitle": "Редактирование зоны - Frigate",
"desc": {
"title": "Зоны позволяют определить конкретную область кадра, чтобы можно было определить, находится ли объект в заданной области.",
"documentation": "Документация"
},
"add": "Добавить зону",
"edit": "Редактировать зону",
"point_one": "{{count}} точка",
"point_few": "{{count}} точки",
"point_many": "{{count}} точек",
"clickDrawPolygon": "Кликните, чтобы нарисовать полигон на изображении.",
"name": {
"title": "Название",
"inputPlaceHolder": "Введите название…",
"tips": "Имя должно содержать не менее 2 символов, включать хотя бы одну букву и не должно совпадать с названием камеры или другой зоны на этой камере."
},
"inertia": {
"title": "Инерция",
"desc": "Указывает, сколько кадров объект должен находиться в зоне, прежде чем он будет считаться находящимся в ней. Значение по умолчанию: 3"
},
"loiteringTime": {
"title": "Время присутствия",
"desc": "Устанавливает минимальное время в секундах, которое объект должен находиться в зоне для её активации. Значение по умолчанию: 0"
},
"allObjects": "Все объекты",
"speedThreshold": {
"title": "Предел скорости ({{unit}})",
"toast": {
"error": {
"loiteringTimeError": "Зоны с установленным временем присутствия более 0 не должны использоваться для вычисления скорости.",
"pointLengthError": "Расчёт скорости отключён для этой зоны. Зоны с расчётом скорости должны содержать ровно 4 точки."
}
},
"desc": "Задаёт минимальную скорость объектов для учёта в этой зоне."
},
"toast": {
"success": "Зона ({{zoneName}}) сохранена."
},
"enabled": {
"title": "Включено",
"description": "Активна ли эта зона и включена ли она в файле конфигурации. Если отключено, его нельзя включить с помощью MQTT. Отключенные зоны игнорируются во время выполнения."
}
},
"motionMasks": {
"desc": {
"documentation": "Документация",
"title": "Маски движения используются, чтобы предотвратить срабатывание обнаружений на нежелательные типы движения. Чрезмерная маскировка усложняет отслеживание объектов."
},
"add": "Новая маска движения",
"edit": "Редактировать маску движения",
"context": {
"title": "Маски движения используются, чтобы предотвратить срабатывание обнаружений на нежелательные типы движения (например, ветки деревьев, метки времени на камере). При этом маски движения нужно использовать очень умеренно: чрезмерное применение масок затруднит отслеживание объектов."
},
"clickDrawPolygon": "Нажмите, чтобы нарисовать полигон на изображении.",
"polygonAreaTooLarge": {
"title": "Маска движения покрывает {{polygonArea}}% кадра. Большие маски движения не рекомендуются.",
"tips": "Маски движения не предотвращают обнаружение объектов. Вместо этого следует использовать обязательную зону."
},
"point_one": "{{count}} точка",
"point_few": "{{count}} точки",
"point_many": "{{count}} точек",
"label": "Маска движения",
"documentTitle": "Редактирование маски движения - Frigate",
"toast": {
"success": {
"title": "{{polygonName}} сохранена.",
"noName": "Маска движения сохранена."
}
},
"defaultName": "Маска движения {{number}}",
"name": {
"title": "Имя",
"description": "Необязательное отображаемое имя для этой маски движения.",
"placeholder": "Введите имя…"
}
},
"filter": {
"all": "Все маски и зоны"
},
"form": {
"zoneName": {
"error": {
"mustBeAtLeastTwoCharacters": "Имя зоны должно содержать не менее 2 символов.",
"mustNotBeSameWithCamera": "Имя зоны не должно совпадать с именем камеры.",
"hasIllegalCharacter": "Имя зоны содержит недопустимые символы.",
"alreadyExists": "Зона с таким именем уже существует для этой камеры.",
"mustNotContainPeriod": "Имя зоны не должно содержать точки.",
"mustHaveAtLeastOneLetter": "Название зоны должно содержать хотя бы одну букву."
}
},
"distance": {
"error": {
"text": "Расстояние должно быть больше или равно 0.1.",
"mustBeFilled": "Все поля расстояния должны быть заполнены для расчёта скорости."
}
},
"inertia": {
"error": {
"mustBeAboveZero": "Инерция должна быть больше 0."
}
},
"loiteringTime": {
"error": {
"mustBeGreaterOrEqualZero": "Время присутствия должно быть больше или равно 0."
}
},
"polygonDrawing": {
"removeLastPoint": "Удалить последнюю точку",
"error": {
"mustBeFinished": "Рисование полигона должно быть завершено перед сохранением."
},
"delete": {
"success": "{{name}} удалён.",
"title": "Подтвердить удаление",
"desc": "Вы уверены, что хотите удалить {{type}} {{name}}?"
},
"snapPoints": {
"false": "Не привязывать к точкам",
"true": "Привязать точки"
},
"reset": {
"label": "Удалить все точки"
},
"type": {
"zone": "зона",
"motion_mask": "маска движения",
"object_mask": "маска объекта"
},
"revertOverride": {
"title": "Вернуться к базовой конфигурации",
"desc": "Это приведет к удалению переопределения профиля для {{type}} {{name}} и возврату к базовой конфигурации."
}
},
"speed": {
"error": {
"mustBeGreaterOrEqualTo": "Порог скорости должен быть не меньше 0,1."
}
},
"id": {
"error": {
"mustNotBeEmpty": "Идентификатор не должен быть пустым.",
"alreadyExists": "Маска с таким идентификатором уже существует для этой камеры."
}
},
"name": {
"error": {
"mustNotBeEmpty": "Имя не должно быть пустым."
}
}
},
"toast": {
"error": {
"copyCoordinatesFailed": "Не удалось скопировать координаты в буфер обмена."
},
"success": {
"copyCoordinates": "Координаты {{polyName}} скопированы в буфер обмена."
}
},
"objectMasks": {
"label": "Маски объектов",
"desc": {
"documentation": "Документация",
"title": "Маски фильтра объектов используются для исключения ложных срабатываний определённого типа объектов в зависимости от местоположения."
},
"documentTitle": "Редактирование маски объектов - Frigate",
"add": "Добавить маску объектов",
"clickDrawPolygon": "Кликните, чтобы нарисовать полигон на изображении.",
"edit": "Редактирование маски объектов",
"context": "Маски фильтра объектов используются для исключения ложных срабатываний определённого типа объектов в зависимости от местоположения.",
"point_one": "{{count}} точка",
"point_few": "{{count}} точки",
"point_many": "{{count}} точек",
"objects": {
"allObjectTypes": "Все типы объектов",
"title": "Объекты",
"desc": "Тип объекта, который применяется к этой маске объекта."
},
"toast": {
"success": {
"title": "{{polygonName}} сохранена.",
"noName": "Маска объектов сохранена."
}
},
"name": {
"title": "Имя",
"description": "Необязательное отображаемое имя для этой маски объекта.",
"placeholder": "Введите имя…"
}
},
"restart_required": "Требуется перезапуск (изменены маски/зоны)",
"objectMaskLabel": "Маска объекта {{number}}",
"motionMaskLabel": "Маска движения {{number}}",
"disabledInConfig": "Элемент отключен в файле конфигурации",
"addDisabledProfile": "Сначала добавьте в базовую конфигурацию, затем переопределите в профиле",
"profileBase": "(база)",
"profileOverride": "(переопределить)",
"masks": {
"enabled": {
"title": "Включено",
"description": "Включена ли эта маска в файле конфигурации. Если отключено, его нельзя включить с помощью MQTT. Отключенные маски игнорируются во время выполнения."
}
}
},
"motionDetectionTuner": {
"desc": {
"documentation": "Читать руководство по настройке детекции движения",
"title": "Frigate использует детекцию движения как первичную проверку, чтобы определить, есть ли в кадре что-то, что стоит анализировать с помощью детекции объектов."
},
"title": "Настройка детекции движения",
"contourArea": {
"title": "Площадь контура",
"desc": "Параметр площади контура определяет, какие группы изменённых пикселей считаются движением. По умолчанию: 10"
},
"improveContrast": {
"title": "Улучшить контрастность",
"desc": "Улучшение контрастности в тёмных сценах. По умолчанию: ВКЛ"
},
"Threshold": {
"title": "Порог",
"desc": "Пороговое значение определяет, насколько должна измениться яркость пикселя, чтобы считаться движением. По умолчанию: 30"
},
"toast": {
"success": "Настройки движения сохранены."
},
"unsavedChanges": "Настройки детекции движения для ({{camera}}) не сохранены"
},
"debug": {
"objectShapeFilterDrawing": {
"title": "Отрисовка фильтра формы объекта",
"desc": "Отображает прямоугольник на изображении, чтобы видеть данные о площади и соотношении сторон",
"tips": "Включите эту опцию, чтобы нарисовать прямоугольник на изображении с камеры для отображения его площади и соотношения сторон. Эти значения можно затем использовать для настройки параметров фильтра формы объектов в вашем конфигурационном файле.",
"area": "Площадь",
"ratio": "Соотношение",
"score": "Оценка"
},
"detectorDesc": "Frigate использует ваши детекторы ({{detectors}}) для обнаружения объектов в видеопотоке с камер.",
"desc": "Режим отладки отображает отслеживаемые объекты и их статистику в реальном времени. Список объектов показывает отложенную по времени сводку обнаруженных объектов.",
"debugging": "Отладка",
"title": "Отладка",
"boundingBoxes": {
"colors": {
"label": "Цвета ограничивающих рамок объектов",
"info": "
Области движения
Красные рамки будут наложены на участки кадра, где в данный момент обнаружено движение
" }, "regions": { "title": "Регионы", "desc": "Показать рамку области интереса, отправленной детектору объектов", "tips": "Рамки областей интереса
Ярко-зелёные рамки будут наложены на области интереса в кадре, которые отправляются детектору объектов.
" }, "paths": { "title": "Пути", "desc": "Показывать значимые точки пути отслеживаемого объекта", "tips": "Пути
Линии и круги будут обозначать важные точки, которые отслеживаемый объект посетил в течение своего жизненного цикла.
" }, "openCameraWebUI": "Открыть веб-интерфейс {{camera}}", "audio": { "title": "Аудио", "noAudioDetections": "Аудиообнаружений нет", "score": "оценка", "currentRMS": "Текущий RMS", "currentdbFS": "Текущий dbFS" } }, "frigatePlus": { "snapshotConfig": { "title": "Настройки снимков", "cleanCopyWarning": "У некоторых камер снимки отключены", "table": { "camera": "Камера", "snapshots": "Снимки" }, "desc": "Отправка в Frigate+ требует, чтобы в вашей конфигурации были включены снимки." }, "title": "Настройки Frigate+", "apiKey": { "title": "Ключ API Frigate+", "validated": "Ключ API Frigate+ найден и проверен", "notValidated": "Ключ API Frigate+ не найден или не проверен", "desc": "Ключ API Frigate+ включает интеграцию с сервисом Frigate+.", "plusLink": "Подробнее про Frigate+" }, "modelInfo": { "title": "Информация о модели", "modelType": "Тип модели", "trainDate": "Дата обучения", "error": "Не удалось загрузить информацию о модели", "availableModels": "Доступные Frigate+ модели", "loadingAvailableModels": "Загрузка доступных моделей…", "modelSelect": "Здесь можно выбрать ваши доступные модели на Frigate+. Обратите внимание, что могут быть выбраны только модели, совместимые с текущей конфигурацией детектора.", "baseModel": "Базовая модель", "supportedDetectors": "Поддерживаемые детекторы", "loading": "Загрузка информации о модели…", "cameras": "Камеры", "plusModelType": { "baseModel": "Базовая модель", "userModel": "Дообученная" }, "noModelLoaded": "Ни одна модель Frigate+ в настоящее время не загружена.", "selectModel": "Выберите модель", "noModelsAvailable": "Нет доступных моделей", "filter": { "ariaLabel": "Фильтровать модели по типу", "baseModels": "Базовые модели", "fineTunedModels": "Настроенные модели" } }, "toast": { "success": "Настройки Frigate+ были сохранены. Перезапустите Frigate, чтобы применить изменения.", "error": "Не удалось сохранить изменения конфигурации: {{errorMessage}}" }, "restart_required": "Требуется перезапуск (изменена модель Frigate+)", "unsavedChanges": "Настройки Frigate+ не сохранены", "description": "Frigate+ — это служба подписки, которая предоставляет доступ к дополнительным функциям и возможностям вашего экземпляра Frigate, включая возможность использовать пользовательские модели обнаружения объектов, обученные на ваших собственных данных. Здесь вы можете управлять настройками модели Frigate+.", "cardTitles": { "api": "API", "currentModel": "Текущая модель", "otherModels": "Другие модели", "configuration": "Конфигурация" }, "changeInDetectorsAndModel": "Изменить модель" }, "enrichments": { "title": "Настройки обогащения", "semanticSearch": { "desc": "Семантический поиск во Frigate позволяет находить отслеживаемые объекты в записях с помощью самого изображения, пользовательского текстового описания или автоматически сгенерированного описания.", "reindexNow": { "desc": "Переиндексация заново сгенерирует векторные представления для всех отслеживаемых объектов. Этот процесс выполняется в фоновом режиме и может максимально загрузить ваш процессор, а также занять значительное время в зависимости от количества отслеживаемых объектов.", "label": "Переиндексировать сейчас", "confirmTitle": "Подтвердить переиндексацию", "confirmDesc": "Вы уверены, что хотите переиндексировать все векторные представления отслеживаемых объектов? Этот процесс будет выполняться в фоновом режиме, но может максимально загрузить ваш процессор и занять довольно много времени. Вы можете следить за ходом выполнения на странице «Поиск событий».", "confirmButton": "Переиндексировать", "success": "Переиндексация успешно запущена.", "alreadyInProgress": "Переиндексация уже выполняется.", "error": "Не удалось запустить переиндексацию: {{errorMessage}}" }, "modelSize": { "desc": "Размер модели, используемой для создания векторных представлений для семантического поиска.", "small": { "desc": "Использование малой модели задействует квантованную версию модели, которая потребляет меньше оперативной памяти и работает быстрее на CPU с очень незначительной разницей в качестве эмбеддингов.", "title": "малый" }, "label": "Размер модели", "large": { "title": "большой", "desc": "Использование большой модели задействует полную модель Jina и автоматически запускается на GPU, если это возможно." } }, "title": "Семантический поиск" }, "birdClassification": { "desc": "Классификация птиц определяет известные виды с помощью квантованной модели TensorFlow. Когда птица распознана, её обиходное название добавляется в качестве дополнительной метки. Эти информация используется в интерфейсе, фильтрах и уведомлениях.", "title": "Классификация птиц" }, "faceRecognition": { "modelSize": { "large": { "desc": "При выборе большой модели используется модель векторизации лиц ArcFace, которая автоматически задействует GPU (если он доступен).", "title": "большой" }, "small": { "title": "малый", "desc": "Использование малой модели задействует модель FaceNet для векторного представления лиц, которая эффективно работает на большинстве CPU." }, "label": "Размер модели", "desc": "Размер модели, используемой для распознавания лиц." }, "desc": "Функция распознавания лиц позволяет присваивать людям имена, и когда их лицо будет распознано, Frigate присвоит имя человека в качестве дополнительной метки. Эта информация содержится в пользовательском интерфейсе, фильтрах, а также в уведомлениях.", "title": "Распознавание лиц" }, "licensePlateRecognition": { "desc": "Frigate может распознавать автомобильные номера и автоматически добавлять для объектов типа «автомобиль» обнаруженные символы в поле «распознанный номерной знак» или известное имя в качестве дополнительной метки. Типичный пример использования — чтение номеров автомобилей, заезжающих на подъездную дорожку или проезжающих по улице.", "title": "Распознавание номерных знаков" }, "unsavedChanges": "Несохранённые изменения настроек обогащений", "restart_required": "Требуется перезапуск (изменены настройки обогащений)", "toast": { "success": "Настройки обогащений сохранены. Перезапустите Frigate, чтобы применить изменения.", "error": "Не удалось сохранить изменения: {{errorMessage}}" } }, "triggers": { "documentTitle": "Триггеры", "management": { "title": "Триггеры", "desc": "Управление триггерами для камеры {{camera}}. Используйте тип миниатюры для срабатывания по миниатюрам, похожим на выбранный отслеживаемый объект, и тип описания для срабатывания по описаниям, похожим на указанный вами текст." }, "addTrigger": "Добавить Триггер", "table": { "name": "Имя", "type": "Тип", "content": "Содержимое", "threshold": "Порог", "actions": "Действия", "noTriggers": "Для этой камеры не настроены триггеры.", "edit": "Редактировать", "deleteTrigger": "Удалить триггер", "lastTriggered": "Последний сработавший" }, "type": { "thumbnail": "Миниатюра", "description": "Описание" }, "actions": { "notification": "Отправить оповещение", "sub_label": "Добавить подметку", "attribute": "Добавить атрибут" }, "dialog": { "createTrigger": { "title": "Создать триггер", "desc": "Создать триггер для камеры {{camera}}" }, "editTrigger": { "title": "Изменить триггер", "desc": "Изменить настройки триггера для камеры {{camera}}" }, "deleteTrigger": { "title": "Удалить триггер", "desc": "Вы уверены, что хотите удалить триггер {{triggerName}}? Это действие не может быть отменено." }, "form": { "name": { "title": "Имя", "placeholder": "Назовите этот триггер", "error": { "minLength": "Поле должно содержать не менее 2 символов.", "invalidCharacters": "Поле может содержать только буквы, цифры, символы подчеркивания и дефисы.", "alreadyExists": "Триггер с таким именем уже существует для этой камеры." }, "description": "Введите уникальное имя или описание для идентификации этого триггера" }, "enabled": { "description": "Включить или отключить этот триггер" }, "type": { "title": "Тип", "placeholder": "Выберите тип триггера", "description": "Срабатывать при обнаружении похожего описания отслеживаемого объекта", "thumbnail": "Срабатывать при обнаружении похожей миниатюры отслеживаемого объекта" }, "content": { "title": "Содержимое", "imagePlaceholder": "Выберите миниатюру", "textPlaceholder": "Введите текстовое содержимое", "imageDesc": "Отображаются только 100 последних миниатюр. Если вы не можете найти нужную миниатюру, просмотрите предыдущие объекты в разделе \"Обзор\" и настройте триггер оттуда через меню.", "textDesc": "Введите текст, чтобы активировать это действие при обнаружении похожего описания отслеживаемого объекта.", "error": { "required": "Требуется содержимое." } }, "threshold": { "title": "Порог", "error": { "min": "Порог должен быть не менее 0", "max": "Порог должен быть не более 1" }, "desc": "Установите порог схожести для этого триггера. Более высокое значение требует более точного совпадения для срабатывания триггера." }, "actions": { "title": "Действия", "desc": "По умолчанию Frigate отправляет MQTT-сообщение для всех триггеров. Подметки добавляют имя триггера к метке объекта. Атрибуты — это доступные для поиска метаданные, хранящиеся отдельно в метаданных отслеживаемого объекта.", "error": { "min": "Необходимо выбрать хотя бы одно действие." } } } }, "toast": { "success": { "createTrigger": "Триггер {{name}} успешно создан.", "updateTrigger": "Триггер {{name}} успешно обновлен.", "deleteTrigger": "Триггер {{name}} успешно удален." }, "error": { "createTriggerFailed": "Не удалось создать триггер: {{errorMessage}}", "updateTriggerFailed": "Не удалось обновить триггер: {{errorMessage}}", "deleteTriggerFailed": "Не удалось удалить триггер: {{errorMessage}}" } }, "semanticSearch": { "title": "Семантический поиск выключен", "desc": "Для использования триггеров необходимо включить семантический поиск." }, "wizard": { "title": "Создать триггер", "step1": { "description": "Настройте основные параметры вашего триггера." }, "step2": { "description": "Настройте содержимое, которое будет активировать это действие." }, "step3": { "description": "Настройте порог и действия для этого триггера." }, "steps": { "nameAndType": "Имя и тип", "configureData": "Настроить данные", "thresholdAndActions": "Порог и действия" } } }, "cameraWizard": { "title": "Добавить камеру", "description": "Следуйте инструкциям ниже, чтобы добавить новую камеру в вашу установку Frigate.", "steps": { "nameAndConnection": "Имя и подключение", "streamConfiguration": "Конфигурация потока", "validationAndTesting": "Проверка и тестирование", "probeOrSnapshot": "Проверка или снимок" }, "save": { "success": "Новая камера {{cameraName}} успешно сохранена.", "failure": "Ошибка при сохранении {{cameraName}}." }, "testResultLabels": { "resolution": "Разрешение", "video": "Видео", "audio": "Аудио", "fps": "Кадры в секунду (FPS)" }, "commonErrors": { "noUrl": "Пожалуйста, укажите корректный URL потока", "testFailed": "Тест потока не удался: {{error}}" }, "step1": { "description": "Введите параметры вашей камеры и выберите: автоматическое определение или ручной выбор производителя.", "cameraName": "Имя камеры", "cameraNamePlaceholder": "Например, front_door или Обзор заднего двора", "host": "Хост/IP-адрес", "port": "Порт", "username": "Имя пользователя", "usernamePlaceholder": "Необязательно", "password": "Пароль", "passwordPlaceholder": "Необязательно", "selectTransport": "Выберите транспортный протокол", "cameraBrand": "Бренд камеры", "selectBrand": "Выберите бренд камеры для шаблона URL", "customUrl": "Пользовательский URL потока", "brandInformation": "Информация о бренде", "brandUrlFormat": "Для камер с форматом RTSP-URL вида: {{exampleUrl}}", "customUrlPlaceholder": "rtsp://имя_пользователя:пароль@хост:порт/путь", "errors": { "brandOrCustomUrlRequired": "Выберите бренд камеры с указанием хоста/IP или выберите \"Другое\" и укажите пользовательский URL", "nameRequired": "Необходимо указать имя камеры", "nameLength": "Имя камеры должно содержать не более 64 символов", "invalidCharacters": "Имя камеры содержит недопустимые символы", "nameExists": "Имя камеры уже используется", "customUrlRtspRequired": "Пользовательские URL должны начинаться с \"rtsp://\" или \"rtsps://\". Для потоков камер, не использующих RTSP, требуется ручная настройка." }, "connectionSettings": "Настройки подключения", "detectionMethod": "Метод обнаружения потока", "onvifPort": "Порт ONVIF", "probeMode": "Проверить камеру", "manualMode": "Ручной выбор", "detectionMethodDescription": "Проверьте камеру с помощью ONVIF (если поддерживается) для поиска URL потоков камеры или вручную выберите бренд камеры для использования предопределённых URL. Чтобы ввести пользовательский RTSP URL, выберите ручной метод и выберите \"Другое\".", "onvifPortDescription": "Для камер, поддерживающих ONVIF, это обычно 80 или 8080.", "useDigestAuth": "Использовать digest-аутентификацию", "useDigestAuthDescription": "Использовать HTTP digest-аутентификацию для ONVIF. Некоторые камеры могут требовать отдельное имя пользователя/пароль ONVIF вместо стандартного пользователя администратора." }, "step2": { "description": "Проверьте камеру на наличие доступных потоков или настройте параметры вручную в зависимости от выбранного метода обнаружения.", "testSuccess": "Проверка соединения успешна!", "testFailed": "Проверка соединения не удалась. Проверьте введённые данные и попробуйте снова.", "testFailedTitle": "Проверка не удалась", "streamDetails": "Детали потока", "probing": "Проверка камеры…", "retry": "Повторить", "testing": { "probingMetadata": "Проверка метаданных камеры…", "fetchingSnapshot": "Получение снимка с камеры…" }, "probeFailed": "Не удалось проверить камеру: {{error}}", "probingDevice": "Проверка устройства…", "probeSuccessful": "Проверка успешна", "probeError": "Ошибка проверки", "probeNoSuccess": "Проверка не удалась", "deviceInfo": "Информация об устройстве", "manufacturer": "Производитель", "model": "Модель", "firmware": "Прошивка", "profiles": "Профили", "ptzSupport": "Поддержка PTZ", "autotrackingSupport": "Поддержка автотрекинга", "presets": "Предустановки", "rtspCandidates": "Кандидаты RTSP", "rtspCandidatesDescription": "Следующие RTSP URL были найдены при проверке камеры. Проверьте соединение, чтобы просмотреть метаданные потока.", "noRtspCandidates": "RTSP URL не найдены для камеры. Ваши учётные данные могут быть неверными, или камера может не поддерживать ONVIF или метод, используемый для получения RTSP URL. Вернитесь назад и введите RTSP URL вручную.", "candidateStreamTitle": "Кандидат {{number}}", "useCandidate": "Использовать", "uriCopy": "Копировать", "uriCopied": "URI скопирован в буфер обмена", "testConnection": "Проверить соединение", "toggleUriView": "Нажмите, чтобы переключить полный вид URI", "connected": "Подключено", "notConnected": "Не подключено", "errors": { "hostRequired": "Требуется хост/IP-адрес" } }, "step3": { "description": "Настройте роли потоков и добавьте дополнительные потоки для вашей камеры.", "streamsTitle": "Потоки камеры", "addStream": "Добавить поток", "addAnotherStream": "Добавить ещё поток", "streamTitle": "Поток {{number}}", "streamUrl": "URL потока", "streamUrlPlaceholder": "rtsp://имя_пользователя:пароль@хост:порт/путь", "selectStream": "Выбрать поток", "searchCandidates": "Поиск кандидатов…", "noStreamFound": "Поток не найден", "url": "URL", "resolution": "Разрешение", "selectResolution": "Выберите разрешение", "quality": "Качество", "selectQuality": "Выберите качество", "roles": "Роли", "roleLabels": { "detect": "Обнаружение объектов", "record": "Запись", "audio": "Аудио" }, "testStream": "Проверить соединение", "testSuccess": "Тест потока выполнен успешно!", "testFailed": "Тест потока не пройден", "testFailedTitle": "Тест не пройден", "connected": "Подключено", "notConnected": "Не подключено", "featuresTitle": "Функции", "go2rtc": "Уменьшить количество подключений к камере", "detectRoleWarning": "Хотя бы один поток должен иметь роль \"detect\" для продолжения.", "rolesPopover": { "title": "Роли потоков", "detect": "Основной поток для обнаружения объектов.", "record": "Сохраняет сегменты видеопотока на основе настроек конфигурации.", "audio": "Поток для обнаружения на основе аудио." }, "featuresPopover": { "title": "Функции потоков", "description": "Использовать рестриминг go2rtc для уменьшения количества подключений к камере." } }, "step4": { "description": "Финальная проверка и анализ перед сохранением новой камеры. Подключите каждый поток перед сохранением.", "validationTitle": "Проверка потоков", "connectAllStreams": "Подключить все потоки", "reconnectionSuccess": "Переподключение успешно.", "reconnectionPartial": "Некоторые потоки не удалось переподключить.", "streamUnavailable": "Предпросмотр потока недоступен", "reload": "Перезагрузить", "connecting": "Подключение…", "streamTitle": "Поток {{number}}", "valid": "Действителен", "failed": "Не удалось", "notTested": "Не проверен", "connectStream": "Подключить", "connectingStream": "Подключение", "disconnectStream": "Отключить", "estimatedBandwidth": "Расчётная пропускная способность", "roles": "Роли", "ffmpegModule": "Использовать режим совместимости потоков", "ffmpegModuleDescription": "Если поток не загружается после нескольких попыток, попробуйте включить это. При включении Frigate будет использовать модуль ffmpeg с go2rtc. Это может обеспечить лучшую совместимость с некоторыми потоками камер.", "none": "Нет", "error": "Ошибка", "streamValidated": "Поток {{number}} успешно проверен", "streamValidationFailed": "Проверка потока {{number}} не удалась", "saveAndApply": "Сохранить новую камеру", "saveError": "Неверная конфигурация. Пожалуйста, проверьте настройки.", "issues": { "title": "Проверка потоков", "videoCodecGood": "Видеокодек: {{codec}}.", "audioCodecGood": "Аудиокодек: {{codec}}.", "resolutionHigh": "Разрешение {{resolution}} может привести к увеличению использования ресурсов.", "resolutionLow": "Разрешение {{resolution}} может быть слишком низким для надёжного обнаружения мелких объектов.", "noAudioWarning": "Аудио не обнаружено для этого потока, записи не будут содержать аудио.", "audioCodecRecordError": "Для поддержки аудио в записях требуется аудиокодек AAC.", "audioCodecRequired": "Для поддержки обнаружения аудио требуется аудиопоток.", "restreamingWarning": "Уменьшение количества подключений к камере для потока записи может немного увеличить использование CPU.", "brands": { "reolink-rtsp": "RTSP от Reolink не рекомендуется. Включите HTTP в настройках прошивки камеры и перезапустите мастер.", "reolink-http": "HTTP потоки Reolink должны использовать FFmpeg для лучшей совместимости. Включите 'Использовать режим совместимости потоков' для этого потока." }, "dahua": { "substreamWarning": "Подпоток 1 заблокирован на низком разрешении. Многие камеры Dahua / Amcrest / EmpireTech поддерживают дополнительные подпотоки, которые необходимо включить в настройках камеры. Рекомендуется проверить и использовать эти потоки, если они доступны." }, "hikvision": { "substreamWarning": "Подпоток 1 заблокирован на низком разрешении. Многие камеры Hikvision поддерживают дополнительные подпотоки, которые необходимо включить в настройках камеры. Рекомендуется проверить и использовать эти потоки, если они доступны." }, "resolutionUnknown": "Разрешение этого потока проверить не удалось. Вам следует вручную установить разрешение обнаружения в настройках или вашей конфигурации." } } }, "roles": { "addRole": "Добавить роль", "table": { "role": "Роль", "cameras": "Камеры", "actions": "Действия", "editCameras": "Редактировать камеры", "deleteRole": "Удалить роль", "noRoles": "Пользовательских ролей не найдено." }, "toast": { "success": { "createRole": "Роль {{role}} успешно создана", "updateCameras": "Камеры обновлены для роли {{role}}", "deleteRole": "Роль {{role}} успешно удалена", "userRolesUpdated_one": "{{count}} пользователь, назначенный на эту роль, был обновлён до роли 'наблюдатель', которая имеет доступ ко всем камерам.", "userRolesUpdated_few": "{{count}} пользователя, назначенных на эту роль, были обновлены до роли 'наблюдатель', которая имеет доступ ко всем камерам.", "userRolesUpdated_many": "{{count}} пользователей, назначенных на эту роль, были обновлены до роли 'наблюдатель', которая имеет доступ ко всем камерам." }, "error": { "createRoleFailed": "Не удалось создать роль: {{errorMessage}}", "updateCamerasFailed": "Не удалось обновить камеры: {{errorMessage}}", "deleteRoleFailed": "Не удалось удалить роль: {{errorMessage}}", "userUpdateFailed": "Не удалось обновить роли пользователей: {{errorMessage}}" } }, "dialog": { "createRole": { "title": "Создать новую роль", "desc": "Добавьте новую роль и укажите права доступа к камерам." }, "editCameras": { "title": "Редактировать камеры роли", "desc": "Обновите доступ к камерам для роли {{role}}." }, "deleteRole": { "title": "Удалить роль", "desc": "Это действие нельзя отменить. Это действие навсегда удалит роль и назначит всех пользователей с этой ролью на роль 'наблюдатель', что даст наблюдателю доступ ко всем камерам.", "warn": "Вы уверены, что хотите удалить {{role}}?", "deleting": "Удаление…" }, "form": { "role": { "title": "Название роли", "placeholder": "Введите название роли", "desc": "Разрешены только буквы, цифры, точки и подчёркивания.", "roleIsRequired": "Требуется название роли", "roleOnlyInclude": "Название роли может содержать только буквы, цифры, . или _", "roleExists": "Роль с таким названием уже существует." }, "cameras": { "title": "Камеры", "desc": "Выберите камеры, к которым эта роль имеет доступ. Необходимо выбрать хотя бы одну камеру.", "required": "Необходимо выбрать хотя бы одну камеру." } } }, "management": { "title": "Управление ролями наблюдателя", "desc": "Управление пользовательскими ролями наблюдателя и их правами доступа к камерам для этого экземпляра Frigate." } }, "cameraManagement": { "title": "Управление камерами", "addCamera": "Добавить новую камеру", "editCamera": "Редактировать камеру:", "selectCamera": "Выбрать камеру", "backToSettings": "Вернуться к настройкам камеры", "streams": { "title": "Состояние и характеристики камеры", "label": "Состояние камеры", "status": { "disabled": "Отключено", "on": "Вкл", "off": "Выкл" }, "enableSuccess": "Включена {{cameraName}}. Перезапустите Frigate для применения изменений.", "disableSuccess": "Отключено {{cameraName}} и сохранено в конфигурации.", "reorderHandle": "Перетяните для изменения порядка", "saving": "Сохранение…", "saved": "Сохранено", "details": { "edit": "Редактировать детали камеры", "title": "Редактировать детали камеры", "description": "Обновите отображаемое имя, внешний URL и видимость для этой камеры в пользовательском интерфейсе Frigate.", "friendlyNameLabel": "Отображаемое Имя", "friendlyNameHelp": "Дружественное имя, которое отображается для этой камеры в пользовательском интерфейсе Frigate. Оставьте пустым для использования идентификатора камеры.", "webuiUrlLabel": "Ссылка на Web интерфейс камеры", "webuiUrlHelp": "URL-адрес для посещения веб-UI камеры непосредственно с отладочного меню. Оставьте пустым, чтобы отключить ссылку.", "webuiUrlInvalid": "Должен быть действительный URL (например, https://example.com).", "dashboardLabel": "Показывать на Live dashboard", "dashboardHelp": "Отобразить эту камеру на панели мониторинга «Все камеры» в режиме реального времени по умолчанию. Она остается доступной везде, включая группы камер.", "reviewLabel": "Показать в обзоре", "reviewHelp": "Покажите эту камеру в обзоре, включая фильтр камеры, обзор движения и просмотр истории." }, "description": "Задайте рабочее состояние для каждой камеры.