190 lines
12 KiB
JSON
190 lines
12 KiB
JSON
{
|
||
"nav": {
|
||
"main": "Основная навигация",
|
||
"host": "Студия",
|
||
"watch": "Просмотр",
|
||
"accounts": "Аккаунты",
|
||
"settings": "Настройки"
|
||
},
|
||
"common": {
|
||
"close": "Закрыть",
|
||
"logout": "Выйти",
|
||
"skip": "К содержимому",
|
||
"working": "Подождите…",
|
||
"loading": "Загрузка…",
|
||
"cancel": "Отмена",
|
||
"save": "Сохранить",
|
||
"refresh": "Обновить"
|
||
},
|
||
"login": {
|
||
"local": "Ваша сеть. Ваше пространство.",
|
||
"headline": "Немного ближе.",
|
||
"headlineAccent": "Где бы вы ни были.",
|
||
"description": "Превратите устройство в окно прямого эфира. Делитесь камерой или экраном в своей локальной сети.",
|
||
"privacy": "Без облака. Только связь.",
|
||
"title": "С возвращением",
|
||
"subtitle": "Войдите на этот сервер для просмотра.",
|
||
"setupTitle": "Добро пожаловать домой",
|
||
"setupDescription": "Создайте аккаунт администратора этого сервера.",
|
||
"usernamePlaceholder": "Имя пользователя",
|
||
"passwordPlaceholder": "Пароль",
|
||
"setupToken": "Код первоначальной настройки",
|
||
"tokenHint": "Введите код из файла setup-token, созданного локальным сервером.",
|
||
"create": "Создать аккаунт",
|
||
"signin": "Войти",
|
||
"hostAccounts": "Аккаунты доступны только на этом сервере",
|
||
"localUtility": "Локальные трансляции"
|
||
},
|
||
"host": {
|
||
"eyebrow": "Ваше локальное пространство",
|
||
"title": "Студия трансляций",
|
||
"subtitle": "Окно в ваш мир. Всё под вашим контролем.",
|
||
"start": "Начать эфир",
|
||
"stop": "Остановить",
|
||
"previewTitle": "Здесь начинается ваш эфир",
|
||
"previewHint": "Выберите источник и начните эфир, когда будете готовы.",
|
||
"enableCamera": "Включить предпросмотр",
|
||
"private": "Приватный эфир",
|
||
"broadcasting": "Эфир в вашей сети",
|
||
"previewOnly": "Предпросмотр виден только вам",
|
||
"audioOff": "Только видео · Без звука",
|
||
"videoSource": "Источник видео",
|
||
"switchAnytime": "Меняйте в любой момент",
|
||
"rearHint": "Включите камеру, чтобы найти доступные объективы.",
|
||
"uptime": "Время эфира",
|
||
"viewers": "Зрители",
|
||
"quality": "Качество передачи",
|
||
"connectDevice": "Подключить устройство",
|
||
"scanHint": "Отсканируйте код на другом устройстве.",
|
||
"qrAlt": "QR-код адреса просмотра",
|
||
"localAddress": "Локальный адрес",
|
||
"copy": "Копировать адрес",
|
||
"copied": "Адрес скопирован",
|
||
"sameNetwork": "Подключитесь к той же Wi-Fi сети",
|
||
"connected": "Подключённые зрители",
|
||
"noViewers": "Пока здесь тихо",
|
||
"inviteHint": "Поделитесь ссылкой с первым зрителем.",
|
||
"kick": "Отключить",
|
||
"manageAccess": "Управление доступом",
|
||
"footer": "Локально по замыслу. Эфир остаётся в вашей сети."
|
||
},
|
||
"sources": {
|
||
"front": "Передняя камера",
|
||
"back": "Задняя камера",
|
||
"screen": "Экран"
|
||
},
|
||
"stream": {
|
||
"offline": "Не в эфире",
|
||
"connecting": "Подключение",
|
||
"reconnecting": "Переподключение",
|
||
"waiting": "Ожидание эфира",
|
||
"live": "В эфире"
|
||
},
|
||
"quality": {
|
||
"auto": "Автоматически",
|
||
"high": "Высокое · 4 Мбит/с",
|
||
"low": "Низкое · 600 Кбит/с"
|
||
},
|
||
"watch": {
|
||
"fullscreen": "Полноэкранный режим",
|
||
"disconnect": "Отключиться",
|
||
"reconnect": "Подключиться снова",
|
||
"waitingTitle": "Готовы к началу эфира",
|
||
"waitingHint": "Эфир ещё не начался. Видео появится здесь автоматически.",
|
||
"connectingTitle": "Устанавливаем связь",
|
||
"connectingHint": "Подключаемся к серверу в вашей локальной сети."
|
||
},
|
||
"accounts": {
|
||
"eyebrow": "Кому открыт доступ",
|
||
"title": "Аккаунты и безопасность",
|
||
"subtitle": "Личное пространство с доступом на ваших условиях.",
|
||
"add": "Добавить зрителя",
|
||
"protected": "Каждое подключение — с разрешения",
|
||
"protectedHint": "Вход обязателен. Пароли хешируются. Доступ можно отозвать в любой момент.",
|
||
"localAccounts": "Локальные аккаунты",
|
||
"account": "Аккаунт",
|
||
"role": "Роль",
|
||
"lastLogin": "Последний вход",
|
||
"sessions": "Сеансы",
|
||
"actions": "Действия",
|
||
"you": "Вы",
|
||
"admin": "Владелец",
|
||
"viewer": "Зритель",
|
||
"username": "Имя пользователя",
|
||
"password": "Пароль",
|
||
"usernameHint": "3–40 символов: латинские буквы, цифры, точки, подчёркивания или дефисы.",
|
||
"passwordHint": "Не менее 12 символов, включая букву и цифру.",
|
||
"never": "Ещё не входил",
|
||
"reset": "Сменить пароль",
|
||
"delete": "Удалить аккаунт",
|
||
"saved": "Настройки доступа обновлены.",
|
||
"activeSessions": "Активные сеансы",
|
||
"sessionHint": "Сеансы истекают через 30 минут бездействия или через 12 часов.",
|
||
"current": "Этот сеанс",
|
||
"lastActive": "Последняя активность",
|
||
"revoke": "Отозвать",
|
||
"resetHint": "Все сеансы пользователя {name} будут завершены.",
|
||
"deleteHint": "Удалить {name}? Аккаунт будет удалён, все его сеансы завершатся."
|
||
},
|
||
"general": {
|
||
"eyebrow": "На ваш вкус",
|
||
"title": "Настройки",
|
||
"subtitle": "Маленькие детали вашего пространства.",
|
||
"appearance": "Внешний вид",
|
||
"dark": "Тёмное стекло",
|
||
"light": "Светлое стекло",
|
||
"accent": "Цвет акцента",
|
||
"accentHint": "Добавьте индивидуальности элементам управления.",
|
||
"language": "Язык",
|
||
"displayLanguage": "Язык интерфейса",
|
||
"languageHint": "Используется во всём приложении в этом браузере.",
|
||
"privacy": "Приватность и подключение",
|
||
"loginRequired": "Обязательный вход",
|
||
"loginHint": "Просмотр доступен только аккаунтам этого сервера.",
|
||
"alwaysOn": "Всегда включено",
|
||
"localOnly": "Только локальная сеть",
|
||
"localHint": "Без облачных ретрансляторов, аналитики и внешних медиасервисов.",
|
||
"savedLocally": "Предпочтения сохраняются в этом браузере."
|
||
},
|
||
"colors": {
|
||
"lime": "Лайм",
|
||
"blue": "Голубой",
|
||
"violet": "Фиолетовый",
|
||
"peach": "Персиковый"
|
||
},
|
||
"errors": {
|
||
"server": "Не удалось выполнить запрос. Проверьте, что локальный сервер запущен.",
|
||
"unauthorized": "Неверные данные для входа или сеанс истёк. Войдите снова.",
|
||
"forbidden": "Для этого действия нужен аккаунт владельца.",
|
||
"origin": "Адрес не совпадает с настройкой сервера. Откройте настроенный локальный URL.",
|
||
"setupToken": "Неверный код первоначальной настройки.",
|
||
"alreadySetup": "Администратор уже создан. Войдите в аккаунт.",
|
||
"username": "Используйте 3–40 латинских букв, цифр, точек, подчёркиваний или дефисов.",
|
||
"password": "Используйте не менее 12 символов, включая букву и цифру.",
|
||
"rateLimited": "Слишком много попыток. Подождите минуту.",
|
||
"duplicate": "Это имя пользователя уже занято.",
|
||
"protectedAccount": "Аккаунт владельца нельзя удалить.",
|
||
"notFound": "Этот аккаунт больше не существует.",
|
||
"hostBusy": "Этот сеанс уже подключён или другой владелец ведёт эфир. Закройте другую вкладку.",
|
||
"secureContext": "Для доступа к камере и экрану нужен HTTPS или localhost на устройстве сервера. Откройте защищённый адрес.",
|
||
"NotAllowedError": "Доступ отменён или запрещён. Разрешите камеру или экран в браузере.",
|
||
"NotFoundError": "На устройстве не найдена подходящая камера.",
|
||
"NotReadableError": "Камера занята. Закройте другие использующие её приложения.",
|
||
"OverconstrainedError": "Этот источник недоступен. Попробуйте переднюю камеру.",
|
||
"clipboard": "Не удалось скопировать автоматически. Выделите и скопируйте адрес выше.",
|
||
"fullscreen": "Полноэкранный режим недоступен в этом браузере."
|
||
},
|
||
"wake": {
|
||
"section": "Экран хоста",
|
||
"title": "Не выключать экран хоста",
|
||
"hint": "Не давать экрану этого устройства гаснуть во время трансляции. Оставьте Webka на экране. Сохраняется в этом браузере; расходует больше заряда.",
|
||
"off": "Удержание экрана выключено или трансляция ещё не началась.",
|
||
"waiting": "Вернитесь в Webka, чтобы экран не гас.",
|
||
"requesting": "Запрашиваем удержание экрана…",
|
||
"active": "Экран не гаснет во время трансляции.",
|
||
"unavailable": "Браузер или режим энергосбережения отключил или запретил удержание экрана. Оставьте страницу видимой и повторите попытку.",
|
||
"unsupported": "Удержание экрана недоступно. Используйте HTTPS и поддерживаемый браузер или измените автоблокировку устройства.",
|
||
"retry": "Повторить удержание экрана"
|
||
}
|
||
}
|