{
  "documentTitle": {
    "default": "Настройки - Frigate",
    "camera": "Настройки камеры - Frigate",
    "masksAndZones": "Маски и Зоны - Frigate",
    "motionTuner": "Детекции движения - Frigate",
    "general": "Настройки интерфейса - Frigate",
    "frigatePlus": "Настройки Frigate+ - Frigate",
    "authentication": "Настройки аутентификации - Frigate",
    "classification": "Настройки распознавания - Frigate",
    "object": "Отладка - Frigate",
    "notifications": "Настройки уведомлений - Frigate",
    "enrichments": "Настройки обогащения - Frigate",
    "cameraManagement": "Управление камерами - Frigate",
    "cameraReview": "Настройки просмотра камеры - Frigate"
  },
  "menu": {
    "cameras": "Настройки камеры",
    "masksAndZones": "Маски / Зоны",
    "motionTuner": "Детекции движения",
    "debug": "Отладка",
    "users": "Пользователи",
    "notifications": "Уведомления",
    "frigateplus": "Frigate+",
    "ui": "Интерфейс",
    "classification": "Распознавание",
    "enrichments": "Обогащения",
    "triggers": "Триггеры",
    "cameraManagement": "Управление",
    "cameraReview": "Обзор",
    "roles": "Роли"
  },
  "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}}"
      }
    }
  },
  "classification": {
    "semanticSearch": {
      "title": "Семантический поиск",
      "readTheDocumentation": "Читать документацию",
      "reindexNow": {
        "label": "Переиндексировать сейчас",
        "confirmButton": "Переиндексировать",
        "alreadyInProgress": "Переиндексация уже выполняется.",
        "desc": "Переиндексация заново сгенерирует векторные представления для всех отслеживаемых объектов. Этот процесс выполняется в фоновом режиме и может максимально загрузить ваш процессор, а также занять значительное время в зависимости от количества отслеживаемых объектов.",
        "confirmTitle": "Подтвердить переиндексацию",
        "success": "Реиндексация запущена успешно.",
        "error": "Не удалось начать реиндексацию: {{errorMessage}}",
        "confirmDesc": "Вы уверены, что хотите переиндексировать все векторные представления отслеживаемых объектов? Этот процесс будет выполняться в фоновом режиме, но может максимально загрузить ваш процессор и занять довольно много времени. Вы можете следить за ходом выполнения на странице «Поиск событий»."
      },
      "desc": "Семантический поиск во Frigate позволяет находить отслеживаемые объекты в записях с помощью самого изображения, пользовательского текстового описания или автоматически сгенерированного описания.",
      "modelSize": {
        "label": "Размер модели",
        "desc": "Размер модели, используемой для создания векторных представлений для семантического поиска.",
        "small": {
          "title": "малый",
          "desc": "Использование <em>малой</em> модели задействует квантованную версию модели, которая потребляет меньше оперативной памяти и работает быстрее на CPU с очень незначительной разницей в качестве эмбеддингов."
        },
        "large": {
          "title": "большой",
          "desc": "Использование <em>большой</em> модели задействует полную модель Jina и автоматически запускается на GPU, если это возможно."
        }
      }
    },
    "faceRecognition": {
      "desc": "Функция распознавания лиц позволяет присваивать людям имена, и когда их лицо будет распознано, Frigate присвоит имя человека в качестве дополнительной метки. Эта информация содержится в пользовательском интерфейсе, фильтрах, а также в уведомлениях.",
      "title": "Распознавание лиц",
      "readTheDocumentation": "Читать документацию",
      "modelSize": {
        "label": "Размер модели",
        "desc": "Размер модели, используемой для распознавания лиц.",
        "small": {
          "title": "малый",
          "desc": "Использование <em>малой</em> модели задействует модель FaceNet для векторного представления лиц, которая эффективно работает на большинстве CPU."
        },
        "large": {
          "title": "большой",
          "desc": "При выборе <em>большой</em> модели используется модель векторизации лиц ArcFace, которая автоматически задействует GPU (если он доступен)."
        }
      }
    },
    "licensePlateRecognition": {
      "title": "Распознавание номерных знаков",
      "readTheDocumentation": "Читать документацию",
      "desc": "Frigate может распознавать автомобильные номера и автоматически добавлять для объектов типа «автомобиль» обнаруженные символы в поле «распознанный номерной знак» или известное имя в качестве дополнительной метки. Типичный пример использования — чтение номеров автомобилей, заезжающих на подъездную дорожку или проезжающих по улице."
    },
    "toast": {
      "success": "Настройки классификации сохранены. Перезапустите Frigate, чтобы применить внесенные изменения.",
      "error": "Не удалось сохранить изменения конфигурации: {{errorMessage}}"
    },
    "title": "Настройки классификации",
    "birdClassification": {
      "title": "Классификация птиц",
      "desc": "Классификация птиц определяет известные виды с помощью квантованной модели TensorFlow. Когда птица распознана, её обиходное название добавляется в качестве дополнительной метки. Эти информация используется в интерфейсе, фильтрах и уведомлениях."
    },
    "restart_required": "Требуется перезапуск (изменены настройки классификации)",
    "unsavedChanges": "Настройки классификации не сохранены"
  },
  "users": {
    "dialog": {
      "passwordSetting": {
        "updatePassword": "Обновить пароль для {{username}}",
        "setPassword": "Установить пароль",
        "desc": "Создайте надежный пароль для защиты аккаунта.",
        "cannotBeEmpty": "Пароль не может быть пустым",
        "doNotMatch": "Пароли не совпадают",
        "currentPasswordRequired": "Текущий пароль обязателен",
        "incorrectCurrentPassword": "Текущий пароль указан неверно",
        "passwordVerificationFailed": "Не удалось проверить пароль",
        "multiDeviceWarning": "Все остальные устройства, на которых вы вошли в систему, потребуют повторного входа в течение {{refresh_time}}.",
        "multiDeviceAdmin": "Вы также можете принудительно заставить всех пользователей повторно пройти аутентификацию немедленно, обновив свой JWT-секрет."
      },
      "deleteUser": {
        "warn": "Вы уверены, что хотите удалить пользователя <strong>{{username}}</strong>?",
        "title": "Удалить пользователя",
        "desc": "Это действие необратимо. Учётная запись пользователя и все связанные с ней данные будут удалены без возможности восстановления."
      },
      "changeRole": {
        "title": "Изменить роль пользователя",
        "desc": "Обновить права доступа для <strong>{{username}}</strong>",
        "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": "Не менее 8 символов",
            "uppercase": "Как минимум одна заглавная буква",
            "digit": "Как минимум одна цифра",
            "special": "Хотя бы один специальный символ (!@#$%^&*(),.?\":{}|<>)"
          }
        },
        "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": {
      "documentation": "Читать документацию",
      "title": "Настройки уведомлений",
      "desc": "Frigate может отправлять push-уведомления на ваше устройство, когда приложение открыто в браузере или установлено как PWA."
    },
    "notificationUnavailable": {
      "documentation": "Читать документацию",
      "title": "Уведомления недоступны",
      "desc": "Веб-уведомления требуют защищённого контекста (<code>https://…</code>). Это ограничение браузера. Получите безопасный доступ к 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": "Регистрации уведомлений не сохранены"
  },
  "camera": {
    "review": {
      "alerts": "Тревоги ",
      "desc": "Временно включить/отключить тревоги и обнаружения для этой камеры до перезапуска Frigate. В отключенном состоянии новые события не будут записываться. ",
      "detections": "Обнаружения ",
      "title": "Обзор событий"
    },
    "reviewClassification": {
      "objectAlertsTips": "Все объекты {{alertsLabels}} на камере {{cameraName}} будут отображаться как тревоги.",
      "desc": "Frigate разделяет записи для проверки на два типа как «Тревоги» и «Обнаружения». По умолчанию все объекты <em>person</em> и <em>car</em> считаются тревогами. Вы можете уточнить эту классификацию, настроив для них требуемые зоны.",
      "selectAlertsZones": "Выберите зоны для тревог",
      "zoneObjectDetectionsTips": {
        "notSelectDetections": "Все объекты {{detectionsLabels}}, обнаруженные в {{zone}} на камере {{cameraName}}, которые не отнесены к тревогам, будут отображаться как обнаружения, независимо от того, в какой зоне они находятся.",
        "text": "Все объекты {{detectionsLabels}}, не отнесённые к категории в {{zone}} на камере {{cameraName}}, будут отображаться как обнаружения.",
        "regardlessOfZoneObjectDetectionsTips": "Все объекты {{detectionsLabels}}, не отнесённые к категории на камере {{cameraName}}, будут отображаться как обнаружения, независимо от того, в какой зоне они находятся."
      },
      "zoneObjectAlertsTips": "Все объекты {{alertsLabels}}, обнаруженные в {{zone}} на камере {{cameraName}}, будут отображаться как тревоги.",
      "selectDetectionsZones": "Выберите зоны для обнаружения",
      "noDefinedZones": "Для этой камеры не определено ни одной зоны.",
      "objectDetectionsTips": "Все объекты {{detectionsLabels}}, не отнесённые к категории на камере {{cameraName}}, будут отображаться как обнаружения, независимо от того, в какой зоне они находятся.",
      "title": "Классификация событий",
      "readTheDocumentation": "Читать документацию",
      "limitDetections": "Ограничение обнаружения отдельными зонами",
      "toast": {
        "success": "Конфигурация классификации событий была сохранена. Перезапустите Frigate для применения изменений."
      },
      "unsavedChanges": "Настройки классификации событий для {{camera}} не сохранены"
    },
    "title": "Настройки камеры",
    "streams": {
      "title": "Потоки",
      "desc": "Временно отключить камеру до перезапуска Frigate. Отключение камеры полностью останавливает обработку потоков этой камеры в Frigate. Обнаружение, запись и отладка будут недоступны.<br /> <em>Примечание: Это не отключает рестриминг go2rtc.</em>"
    },
    "object_descriptions": {
      "title": "Сгенерировать описания объектов при помощи ИИ",
      "desc": "Временно включить/отключить описание объектов при помощи генеративного ИИ для этой камеры. При отключении описания, описание объектов при помощи генеративного ИИ не будут запрашиваться для отслеживаемых объектов на этой камере."
    },
    "review_descriptions": {
      "title": "Описания обзоров генеративного ИИ",
      "desc": "Временно включить/отключить описания обзоров с помощью генеративного ИИ для этой камеры. Если отключено, описания, описания обзоров с помощью генеративного ИИ, не будут запрашиваться для элементов обзора для этой камеры."
    },
    "addCamera": "Добавить новую камеру",
    "editCamera": "Редактировать камеру:",
    "selectCamera": "Выбрать камеру",
    "backToSettings": "Вернуться к настройкам камеры",
    "cameraConfig": {
      "add": "Добавить камеру",
      "edit": "Редактировать камеру",
      "description": "Настройте параметры камеры, включая входные трансляции и роли.",
      "name": "Название камеры",
      "nameRequired": "Требуется имя камеры",
      "nameInvalid": "Имя камеры должно содержать только буквы, цифры, подчеркивания или дефисы",
      "namePlaceholder": "например, front_door",
      "enabled": "Включено",
      "ffmpeg": {
        "inputs": "Входные трансляции",
        "path": "Путь трансляции",
        "pathRequired": "Требуется путь трансляции",
        "pathPlaceholder": "rtsp://...",
        "roles": "Роли",
        "rolesRequired": "Требуется хотя бы одна роль",
        "rolesUnique": "Каждая роль (аудио, обнаружение, запись) может быть назначена только одной трансляции",
        "addInput": "Добавить входной поток",
        "removeInput": "Удалить входной поток",
        "inputsRequired": "Требуется хотя бы 1 входной поток"
      },
      "toast": {
        "success": "Камера {{cameraName}} успешно сохранена"
      },
      "nameLength": "Название камеры должно содержать не более 24 символов."
    }
  },
  "masksAndZones": {
    "zones": {
      "objects": {
        "title": "Объекты",
        "desc": "Список объектов, применяемых к этой зоне."
      },
      "speedEstimation": {
        "desc": "Включить оценку скорости объектов в этой зоне. Зона должна состоять ровно из 4 точек.",
        "title": "Расчёт скорости",
        "docs": "Читать документацию",
        "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": "Указывает, сколько кадров объект должен находиться в зоне, прежде чем он будет считаться находящимся в ней. <em>Значение по умолчанию: 3</em>"
      },
      "loiteringTime": {
        "title": "Время присутствия",
        "desc": "Устанавливает минимальное время в секундах, которое объект должен находиться в зоне для её активации. <em>Значение по умолчанию: 0</em>"
      },
      "allObjects": "Все объекты",
      "speedThreshold": {
        "title": "Предел скорости ({{unit}})",
        "toast": {
          "error": {
            "loiteringTimeError": "Зоны с установленным временем присутствия более 0 не должны использоваться для вычисления скорости.",
            "pointLengthError": "Расчёт скорости отключён для этой зоны. Зоны с расчётом скорости должны содержать ровно 4 точки."
          }
        },
        "desc": "Задаёт минимальную скорость объектов для учёта в этой зоне."
      },
      "toast": {
        "success": "Зона ({{zoneName}}) сохранена."
      }
    },
    "motionMasks": {
      "desc": {
        "documentation": "Документация",
        "title": "Маски движения используются, чтобы предотвратить срабатывание обнаружений на нежелательные типы движения. Чрезмерная маскировка усложняет отслеживание объектов."
      },
      "add": "Новая маска движения",
      "edit": "Редактировать маску движения",
      "context": {
        "documentation": "Читать документацию",
        "title": "Маски движения используются, чтобы предотвратить срабатывание обнаружений на нежелательные типы движения (например, ветки деревьев, метки времени на камере). При этом маски движения нужно использовать <em>очень умеренно</em>: чрезмерное применение масок затруднит отслеживание объектов."
      },
      "clickDrawPolygon": "Нажмите, чтобы нарисовать полигон на изображении.",
      "polygonAreaTooLarge": {
        "documentation": "Читать документацию",
        "title": "Маска движения покрывает {{polygonArea}}% кадра. Большие маски движения не рекомендуются.",
        "tips": "Маски движения не предотвращают обнаружение объектов. Вместо этого следует использовать обязательную зону."
      },
      "point_one": "{{count}} точка",
      "point_few": "{{count}} точки",
      "point_many": "{{count}} точек",
      "label": "Маска движения",
      "documentTitle": "Редактирование маски движения - Frigate",
      "toast": {
        "success": {
          "title": "{{polygonName}} сохранена.",
          "noName": "Маска движения сохранена."
        }
      }
    },
    "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}} <em>{{name}}</em>?"
        },
        "snapPoints": {
          "false": "Не привязывать к точкам",
          "true": "Привязать точки"
        },
        "reset": {
          "label": "Удалить все точки"
        }
      },
      "speed": {
        "error": {
          "mustBeGreaterOrEqualTo": "Порог скорости должен быть не меньше 0,1."
        }
      }
    },
    "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": "Маска объектов сохранена."
        }
      }
    },
    "restart_required": "Требуется перезапуск (изменены маски/зоны)",
    "objectMaskLabel": "Маска объекта {{number}} {{label}}",
    "motionMaskLabel": "Маска движения {{number}}"
  },
  "motionDetectionTuner": {
    "desc": {
      "documentation": "Читать руководство по настройке детекции движения",
      "title": "Frigate использует детекцию движения как первичную проверку, чтобы определить, есть ли в кадре что-то, что стоит анализировать с помощью детекции объектов."
    },
    "title": "Настройка детекции движения",
    "contourArea": {
      "title": "Площадь контура",
      "desc": "Параметр площади контура определяет, какие группы изменённых пикселей считаются движением. <em>По умолчанию: 10</em>"
    },
    "improveContrast": {
      "title": "Улучшить контрастность",
      "desc": "Улучшение контрастности в тёмных сценах. <em>По умолчанию: ВКЛ</em>"
    },
    "Threshold": {
      "title": "Порог",
      "desc": "Пороговое значение определяет, насколько должна измениться яркость пикселя, чтобы считаться движением. <em>По умолчанию: 30</em>"
    },
    "toast": {
      "success": "Настройки движения сохранены."
    },
    "unsavedChanges": "Настройки детекции движения для ({{camera}}) не сохранены"
  },
  "debug": {
    "objectShapeFilterDrawing": {
      "document": "Читать документацию ",
      "title": "Отрисовка фильтра формы объекта",
      "desc": "Отображает прямоугольник на изображении, чтобы видеть данные о площади и соотношении сторон",
      "tips": "Включите эту опцию, чтобы нарисовать прямоугольник на изображении с камеры для отображения его площади и соотношения сторон. Эти значения можно затем использовать для настройки параметров фильтра формы объектов в вашем конфигурационном файле.",
      "area": "Площадь",
      "ratio": "Соотношение",
      "score": "Оценка"
    },
    "detectorDesc": "Frigate использует ваши детекторы ({{detectors}}) для обнаружения объектов в видеопотоке с камер.",
    "desc": "Режим отладки отображает отслеживаемые объекты и их статистику в реальном времени. Список объектов показывает отложенную по времени сводку обнаруженных объектов.",
    "debugging": "Отладка",
    "title": "Отладка",
    "boundingBoxes": {
      "colors": {
        "label": "Цвета ограничивающих рамок объектов",
        "info": "<li>При запуске каждой метке объекта назначается уникальный цвет</li> <li>Тонкая синяя линия: объект в данный момент не обнаружен</li> <li>Тонкая серая линия: объект помечен как статичный</li> <li>Толстая линия: объект под автотрекингом (если включено)</li>"
      },
      "title": "Ограничивающие рамки",
      "desc": "Показывать ограничивающие рамки вокруг отслеживаемых объектов"
    },
    "objectList": "Список объектов",
    "noObjects": "Нет объектов",
    "timestamp": {
      "title": "Метка времени",
      "desc": "Наложить временную метку на изображение"
    },
    "zones": {
      "title": "Зоны",
      "desc": "Показать контур всех определённых зон"
    },
    "mask": {
      "title": "Маски движения",
      "desc": "Показать полигоны маски движения"
    },
    "motion": {
      "title": "Области движения",
      "desc": "Показать рамки вокруг областей, в которых определяется движение",
      "tips": "<p><strong>Области движения</strong></p><br><p>Красные рамки будут наложены на участки кадра, где в данный момент обнаружено движение</p>"
    },
    "regions": {
      "title": "Регионы",
      "desc": "Показать рамку области интереса, отправленной детектору объектов",
      "tips": "<p><strong>Рамки областей интереса</strong></p><br><p>Ярко-зелёные рамки будут наложены на области интереса в кадре, которые отправляются детектору объектов.</p>"
    },
    "paths": {
      "title": "Пути",
      "desc": "Показывать значимые точки пути отслеживаемого объекта",
      "tips": "<p><strong>Пути</strong></p><br><p>Линии и круги будут обозначать важные точки, которые отслеживаемый объект посетил в течение своего жизненного цикла.</p>"
    },
    "openCameraWebUI": "Открыть веб-интерфейс {{camera}}",
    "audio": {
      "title": "Аудио",
      "noAudioDetections": "Аудиообнаружений нет",
      "score": "оценка",
      "currentRMS": "Текущий RMS",
      "currentdbFS": "Текущий dbFS"
    }
  },
  "frigatePlus": {
    "snapshotConfig": {
      "documentation": "Читать документацию",
      "title": "Настройки снимков",
      "cleanCopyWarning": "У некоторых камер включены снимки (snapshots), но отключена опция чистой копии (clean copy). Чтобы иметь возможность отправлять изображения с этих камер в Frigate+, необходимо включить параметр <code>clean_copy</code> в конфигурации снимков.",
      "table": {
        "cleanCopySnapshots": "Снимки <code>clean_copy</code>",
        "camera": "Камера",
        "snapshots": "Снимки"
      },
      "desc": "Отправка в Frigate+ требует, чтобы в вашей конфигурации были включены как снимки (snapshots), так и снимки <code>clean_copy</code>."
    },
    "title": "Настройки Frigate+",
    "apiKey": {
      "title": "Ключ API Frigate+",
      "validated": "Ключ API Frigate+ найден и проверен",
      "notValidated": "Ключ API Frigate+ не найден или не проверен",
      "desc": "Ключ API Frigate+ включает интеграцию с сервисом Frigate+.",
      "plusLink": "Подробнее про Frigate+"
    },
    "modelInfo": {
      "title": "Информация о модели",
      "modelType": "Тип модели",
      "trainDate": "Дата обучения",
      "error": "Не удалось загрузить информацию о модели",
      "availableModels": "Доступные модели",
      "loadingAvailableModels": "Загрузка доступных моделей…",
      "modelSelect": "Здесь можно выбрать ваши доступные модели на Frigate+. Обратите внимание, что могут быть выбраны только модели, совместимые с текущей конфигурацией детектора.",
      "baseModel": "Базовая модель",
      "supportedDetectors": "Поддерживаемые детекторы",
      "dimensions": "Размеры",
      "loading": "Загрузка информации о модели…",
      "cameras": "Камеры",
      "plusModelType": {
        "baseModel": "Базовая модель",
        "userModel": "Дообученная"
      }
    },
    "toast": {
      "success": "Настройки Frigate+ были сохранены. Перезапустите Frigate, чтобы применить изменения.",
      "error": "Не удалось сохранить изменения конфигурации: {{errorMessage}}"
    },
    "restart_required": "Требуется перезапуск (изменена модель Frigate+)",
    "unsavedChanges": "Настройки Frigate+ не сохранены"
  },
  "enrichments": {
    "title": "Настройки обогащения",
    "semanticSearch": {
      "readTheDocumentation": "Читать документацию",
      "desc": "Семантический поиск во Frigate позволяет находить отслеживаемые объекты в записях с помощью самого изображения, пользовательского текстового описания или автоматически сгенерированного описания.",
      "reindexNow": {
        "desc": "Переиндексация заново сгенерирует векторные представления для всех отслеживаемых объектов. Этот процесс выполняется в фоновом режиме и может максимально загрузить ваш процессор, а также занять значительное время в зависимости от количества отслеживаемых объектов.",
        "label": "Переиндексировать сейчас",
        "confirmTitle": "Подтвердить переиндексацию",
        "confirmDesc": "Вы уверены, что хотите переиндексировать все векторные представления отслеживаемых объектов? Этот процесс будет выполняться в фоновом режиме, но может максимально загрузить ваш процессор и занять довольно много времени. Вы можете следить за ходом выполнения на странице «Поиск событий».",
        "confirmButton": "Переиндексировать",
        "success": "Переиндексация успешно запущена.",
        "alreadyInProgress": "Переиндексация уже выполняется.",
        "error": "Не удалось запустить переиндексацию: {{errorMessage}}"
      },
      "modelSize": {
        "desc": "Размер модели, используемой для создания векторных представлений для семантического поиска.",
        "small": {
          "desc": "Использование <em>малой</em> модели задействует квантованную версию модели, которая потребляет меньше оперативной памяти и работает быстрее на CPU с очень незначительной разницей в качестве эмбеддингов.",
          "title": "малый"
        },
        "label": "Размер модели",
        "large": {
          "title": "большой",
          "desc": "Использование <em>большой</em> модели задействует полную модель Jina и автоматически запускается на GPU, если это возможно."
        }
      },
      "title": "Семантический поиск"
    },
    "birdClassification": {
      "desc": "Классификация птиц определяет известные виды с помощью квантованной модели TensorFlow. Когда птица распознана, её обиходное название добавляется в качестве дополнительной метки. Эти информация используется в интерфейсе, фильтрах и уведомлениях.",
      "title": "Классификация птиц"
    },
    "faceRecognition": {
      "modelSize": {
        "large": {
          "desc": "При выборе <em>большой</em> модели используется модель векторизации лиц ArcFace, которая автоматически задействует GPU (если он доступен).",
          "title": "большой"
        },
        "small": {
          "title": "малый",
          "desc": "Использование <em>малой</em> модели задействует модель FaceNet для векторного представления лиц, которая эффективно работает на большинстве CPU."
        },
        "label": "Размер модели",
        "desc": "Размер модели, используемой для распознавания лиц."
      },
      "desc": "Функция распознавания лиц позволяет присваивать людям имена, и когда их лицо будет распознано, Frigate присвоит имя человека в качестве дополнительной метки. Эта информация содержится в пользовательском интерфейсе, фильтрах, а также в уведомлениях.",
      "title": "Распознавание лиц",
      "readTheDocumentation": "Читать документацию"
    },
    "licensePlateRecognition": {
      "desc": "Frigate может распознавать автомобильные номера и автоматически добавлять для объектов типа «автомобиль» обнаруженные символы в поле «распознанный номерной знак» или известное имя в качестве дополнительной метки. Типичный пример использования — чтение номеров автомобилей, заезжающих на подъездную дорожку или проезжающих по улице.",
      "title": "Распознавание номерных знаков",
      "readTheDocumentation": "Читать документацию"
    },
    "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": {
      "alert": "Отметить как предупреждение",
      "notification": "Отправить оповещение",
      "sub_label": "Добавить подметку",
      "attribute": "Добавить атрибут"
    },
    "dialog": {
      "createTrigger": {
        "title": "Создать триггер",
        "desc": "Создать триггер для камеры {{camera}}"
      },
      "editTrigger": {
        "title": "Изменить триггер",
        "desc": "Изменить настройки триггера для камеры {{camera}}"
      },
      "deleteTrigger": {
        "title": "Удалить триггер",
        "desc": "Вы уверены, что хотите удалить триггер <strong>{{triggerName}}</strong>? Это действие не может быть отменено."
      },
      "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": "Необходимо выбрать хотя бы одно действие."
          }
        },
        "friendly_name": {
          "description": "Необязательное название или описание к этому триггеру",
          "placeholder": "Название или описание триггера",
          "title": "Понятное название"
        }
      }
    },
    "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://имя_пользователя:пароль@хост:порт/путь",
      "testConnection": "Проверить соединение",
      "testSuccess": "Соединение успешно установлено!",
      "testFailed": "Проверка соединения не удалась. Проверьте введённые данные и попробуйте снова.",
      "streamDetails": "Детали потока",
      "warnings": {
        "noSnapshot": "Не удалось получить снимок из настроенного потока."
      },
      "errors": {
        "brandOrCustomUrlRequired": "Выберите бренд камеры с указанием хоста/IP или выберите \"Другое\" и укажите пользовательский URL",
        "nameRequired": "Необходимо указать имя камеры",
        "nameLength": "Имя камеры должно содержать не более 64 символов",
        "invalidCharacters": "Имя камеры содержит недопустимые символы",
        "nameExists": "Имя камеры уже используется",
        "brands": {
          "reolink-rtsp": "RTSP от Reolink не рекомендуется. Включите HTTP в настройках камеры и перезапустите мастер настройки камеры."
        },
        "customUrlRtspRequired": "Пользовательские URL должны начинаться с \"rtsp://\". Для потоков камер, не использующих RTSP, требуется ручная настройка."
      },
      "docs": {
        "reolink": "https://docs.frigate.video/configuration/camera_specific.html#reolink-cameras"
      },
      "testing": {
        "probingMetadata": "Проверка метаданных камеры…",
        "fetchingSnapshot": "Получение снимка с камеры…"
      },
      "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": "Проверьте камеру на наличие доступных потоков или настройте параметры вручную в зависимости от выбранного метода обнаружения.",
      "streamsTitle": "Потоки камеры",
      "addStream": "Добавить поток",
      "addAnotherStream": "Добавить ещё один поток",
      "streamTitle": "Поток {{number}}",
      "streamUrl": "URL потока",
      "streamUrlPlaceholder": "rtsp://имя_пользователя:пароль@хост:порт/путь",
      "url": "URL",
      "resolution": "Разрешение",
      "selectResolution": "Выберите разрешение",
      "quality": "Качество",
      "selectQuality": "Выберите качество",
      "roles": "Роли",
      "roleLabels": {
        "detect": "Обнаружение объектов",
        "record": "Запись",
        "audio": "Аудио"
      },
      "testStream": "Проверить соединение",
      "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 поддерживают дополнительные подпотоки, которые необходимо включить в настройках камеры. Рекомендуется проверить и использовать эти потоки, если они доступны."
        }
      }
    }
  },
  "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": "Обновите доступ к камерам для роли <strong>{{role}}</strong>."
      },
      "deleteRole": {
        "title": "Удалить роль",
        "desc": "Это действие нельзя отменить. Это действие навсегда удалит роль и назначит всех пользователей с этой ролью на роль 'наблюдатель', что даст наблюдателю доступ ко всем камерам.",
        "warn": "Вы уверены, что хотите удалить <strong>{{role}}</strong>?",
        "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": "Включить / Отключить камеры",
      "desc": "Временно отключить камеру до перезапуска Frigate. Отключение камеры полностью останавливает обработку потоков этой камеры в Frigate. Обнаружение, запись и отладка будут недоступны.<br /> <em>Примечание: Это не отключает рестриминг go2rtc.</em>"
    },
    "cameraConfig": {
      "add": "Добавить камеру",
      "edit": "Редактировать камеру",
      "description": "Настройте параметры камеры, включая входные трансляции и роли.",
      "name": "Название камеры",
      "nameRequired": "Требуется имя камеры",
      "nameLength": "Название камеры должно содержать менее 64 символов.",
      "namePlaceholder": "например, front_door или Обзор заднего двора",
      "enabled": "Включено",
      "ffmpeg": {
        "inputs": "Входные потоки",
        "path": "Путь потока",
        "pathRequired": "Требуется путь потока",
        "pathPlaceholder": "rtsp://…",
        "roles": "Роли",
        "rolesRequired": "Требуется хотя бы одна роль",
        "rolesUnique": "Каждая роль (аудио, обнаружение, запись) может быть назначена только одной трансляции",
        "addInput": "Добавить входной поток",
        "removeInput": "Удалить входной поток",
        "inputsRequired": "Требуется хотя бы один входной поток"
      },
      "go2rtcStreams": "Потоки go2rtc",
      "streamUrls": "URL потоков",
      "addUrl": "Добавить URL",
      "addGo2rtcStream": "Добавить поток go2rtc",
      "toast": {
        "success": "Камера {{cameraName}} успешно сохранена"
      }
    }
  },
  "cameraReview": {
    "title": "Настройки просмотра камеры",
    "object_descriptions": {
      "title": "Генеративные описания объектов ИИ",
      "desc": "Временно включить/отключить генеративные описания объектов ИИ для этой камеры. При отключении описания объектов, сгенерированные ИИ, не будут запрашиваться для отслеживаемых объектов на этой камере."
    },
    "review_descriptions": {
      "title": "Генеративные описания обзоров ИИ",
      "desc": "Временно включить/отключить генеративные описания обзоров ИИ для этой камеры. При отключении описания обзоров, сгенерированные ИИ, не будут запрашиваться для элементов обзора на этой камере."
    },
    "review": {
      "title": "Обзор",
      "desc": "Временно включить/отключить тревоги и обнаружения для этой камеры до перезапуска Frigate. При отключении новые элементы обзора не будут создаваться. ",
      "alerts": "Тревоги ",
      "detections": "Обнаружения "
    },
    "reviewClassification": {
      "title": "Классификация обзора",
      "desc": "Frigate классифицирует элементы обзора как Тревоги и Обнаружения. По умолчанию все объекты <em>person</em> и <em>car</em> считаются Тревогами. Вы можете уточнить классификацию элементов обзора, настроив для них требуемые зоны.",
      "noDefinedZones": "Для этой камеры не определено ни одной зоны.",
      "objectAlertsTips": "Все объекты {{alertsLabels}} на камере {{cameraName}} будут отображаться как Тревоги.",
      "zoneObjectAlertsTips": "Все объекты {{alertsLabels}}, обнаруженные в {{zone}} на камере {{cameraName}}, будут отображаться как Тревоги.",
      "objectDetectionsTips": "Все объекты {{detectionsLabels}}, не отнесённые к категории на камере {{cameraName}}, будут отображаться как Обнаружения, независимо от того, в какой зоне они находятся.",
      "zoneObjectDetectionsTips": {
        "text": "Все объекты {{detectionsLabels}}, не отнесённые к категории в {{zone}} на камере {{cameraName}}, будут отображаться как Обнаружения.",
        "notSelectDetections": "Все объекты {{detectionsLabels}}, обнаруженные в {{zone}} на камере {{cameraName}}, которые не отнесены к Тревогам, будут отображаться как Обнаружения, независимо от того, в какой зоне они находятся.",
        "regardlessOfZoneObjectDetectionsTips": "Все объекты {{detectionsLabels}}, не отнесённые к категории на камере {{cameraName}}, будут отображаться как Обнаружения, независимо от того, в какой зоне они находятся."
      },
      "unsavedChanges": "Несохранённые настройки классификации обзора для {{camera}}",
      "selectAlertsZones": "Выберите зоны для Тревог",
      "selectDetectionsZones": "Выберите зоны для обнаружений",
      "limitDetections": "Ограничить обнаружения определёнными зонами",
      "toast": {
        "success": "Конфигурация классификации обзора была сохранена. Перезапустите Frigate для применения изменений."
      }
    }
  }
}
