This commit is contained in:
Weblate (bot) 2026-04-07 00:16:52 +00:00 committed by GitHub
commit 635672387c
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
55 changed files with 813 additions and 96 deletions

View File

@ -1951,7 +1951,7 @@
}, },
"roles": { "roles": {
"label": "Rols", "label": "Rols",
"description": "Funcions genAI (eines, visió, incrustacions); un proveïdor per rol." "description": "Rols de GenAI (xat, descripcions, incrustacions); un proveïdor per rol."
}, },
"provider_options": { "provider_options": {
"label": "Opcions del proveïdor", "label": "Opcions del proveïdor",

View File

@ -1659,7 +1659,12 @@
"empty": "No hi ha etiquetes disponibles", "empty": "No hi ha etiquetes disponibles",
"allNonAlertDetections": "Totes les activitats no alertes s'inclouran com a deteccions." "allNonAlertDetections": "Totes les activitats no alertes s'inclouran com a deteccions."
}, },
"addCustomLabel": "Afegeix una etiqueta personalitzada..." "addCustomLabel": "Afegeix una etiqueta personalitzada...",
"genaiModel": {
"placeholder": "Selecciona el model…",
"search": "Cerca models…",
"noModels": "No hi ha models disponibles"
}
}, },
"globalConfig": { "globalConfig": {
"title": "Configuració global", "title": "Configuració global",

View File

@ -77,7 +77,10 @@
"saveExport": "Guardar exportación", "saveExport": "Guardar exportación",
"previewExport": "Vista previa de la exportación" "previewExport": "Vista previa de la exportación"
}, },
"selectOrExport": "Seleccionar o exportar" "selectOrExport": "Seleccionar o exportar",
"case": {
"label": "Caso"
}
}, },
"streaming": { "streaming": {
"restreaming": { "restreaming": {

View File

@ -102,5 +102,13 @@
"description": "Usar instantáneas de objetos en lugar de miniaturas para la generación de descripciones de GenAI." "description": "Usar instantáneas de objetos en lugar de miniaturas para la generación de descripciones de GenAI."
} }
} }
},
"mqtt": {
"label": "MQTT"
},
"notifications": {
"email": {
"label": "Email de notificacion"
}
} }
} }

View File

@ -70,6 +70,9 @@
"cookie_secure": { "cookie_secure": {
"label": "Flag de cookie segura", "label": "Flag de cookie segura",
"description": "Establece el flag de seguridad en la cookie de autenticación; debe ser 'true' cuando se utilice TLS." "description": "Establece el flag de seguridad en la cookie de autenticación; debe ser 'true' cuando se utilice TLS."
},
"failed_login_rate_limit": {
"label": "Limite de intento de acceso fallidos"
} }
}, },
"onvif": { "onvif": {
@ -107,6 +110,78 @@
"api_key": { "api_key": {
"label": "Clave de API de DeepStack (si es necesaria)" "label": "Clave de API de DeepStack (si es necesaria)"
} }
},
"type": {
"label": "Tipo"
},
"label": "Detector de hardware",
"cpu": {
"label": "CPU",
"num_threads": {
"label": "Número de hilos para detección"
}
},
"axengine": {
"label": "Motor AX NPU"
}
},
"database": {
"label": "Base de datos"
},
"mqtt": {
"label": "MQTT",
"port": {
"label": "Puerto MQTT"
},
"tls_client_cert": {
"label": "Certificado cliente"
}
},
"notifications": {
"email": {
"label": "Email de notificacion"
}
},
"networking": {
"ipv6": {
"label": "Configuración IPV6"
},
"listen": {
"internal": {
"label": "Puerto interno"
},
"external": {
"label": "Puerto externo",
"description": "Puerto externo de escucha para Frigate (por defecto 8791)."
}
}
},
"proxy": {
"label": "Proxy",
"separator": {
"label": "Carácter de separación"
}
},
"telemetry": {
"label": "Telemetria",
"stats": {
"intel_gpu_stats": {
"label": "Estadísticas GPU Intel"
},
"network_bandwidth": {
"label": "Ancho de banda"
},
"amd_gpu_stats": {
"label": "Estadísticas GPU Amd"
}
}
},
"ui": {
"timezone": {
"label": "Uso horario"
},
"unit_system": {
"label": "Unidad de sistema"
} }
} }
} }

View File

@ -59,6 +59,9 @@
"global": { "global": {
"retention": "Retención global", "retention": "Retención global",
"events": "Eventos globales" "events": "Eventos globales"
},
"cameras": {
"events": "Evento"
} }
} }
} }

View File

@ -19,7 +19,8 @@
"ffmpeg": { "ffmpeg": {
"inputs": { "inputs": {
"rolesUnique": "Cada rol solo puede asignarse a un flujo de entrada.", "rolesUnique": "Cada rol solo puede asignarse a un flujo de entrada.",
"detectRequired": "Al menos un flujo de entrada debe tener asignado el rol 'detect'." "detectRequired": "Al menos un flujo de entrada debe tener asignado el rol 'detect'.",
"hwaccelDetectOnly": "Solo el flujo de entrada con la función \"detect\" puede definir argumentos de aceleración por hardware."
} }
}, },
"anyOf": "Debe coincidir con al menos uno de los esquemas permitidos", "anyOf": "Debe coincidir con al menos uno de los esquemas permitidos",

View File

@ -33,6 +33,7 @@
"newCaseOption": "Crear nuevo caso", "newCaseOption": "Crear nuevo caso",
"nameLabel": "Nombre del caso", "nameLabel": "Nombre del caso",
"description": "Elige un caso existente o crea uno nuevo.", "description": "Elige un caso existente o crea uno nuevo.",
"selectLabel": "Caso" "selectLabel": "Caso",
"descriptionLabel": "Descripción"
} }
} }

View File

@ -1259,6 +1259,76 @@
"configForm": { "configForm": {
"camera": { "camera": {
"noCameras": "No hay cámaras disponibles" "noCameras": "No hay cámaras disponibles"
} },
"genaiModel": {
"noModels": "No hay modelos disponibles"
}
},
"globalConfig": {
"title": "Configuración global",
"description": "Configura los ajustes globales que se aplican a todas las cámaras, a menos que se sobrescriban.",
"toast": {
"success": "Ajustes globales guardados con éxito",
"error": "Error al guardar los ajustes globales",
"validationError": "Error de validación"
}
},
"cameraConfig": {
"title": "Configuración de cámara",
"description": "Configura los ajustes de cámaras individuales. Estos ajustes sobrescriben los valores globales predeterminados.",
"overriddenBadge": "Sobrescrito",
"resetToGlobal": "Restablecer al valor global",
"toast": {
"success": "Ajustes de cámara guardados con éxito",
"error": "Error al guardar los ajustes de cámara"
}
},
"toast": {
"success": "Ajustes guardados con éxito",
"applied": "Ajustes aplicados con éxito",
"successRestartRequired": "Ajustes guardados con éxito. Reinicia Frigate para aplicar los cambios.",
"error": "Error al guardar los ajustes",
"validationError": "Error de validación: {{message}}",
"resetSuccess": "Restablecido a los valores globales predeterminados",
"resetError": "Error al restablecer los ajustes",
"saveAllSuccess_one": "Se ha guardado {{count}} sección con éxito.",
"saveAllSuccess_many": "Se han guardado las {{count}} secciones con éxito.",
"saveAllSuccess_other": "Se han guardado {{count}} secciones con éxito.",
"saveAllPartial_one": "Se ha guardado {{successCount}} de {{totalCount}} sección. {{failCount}} ha fallado.",
"saveAllPartial_many": "Se han guardado {{successCount}} de {{totalCount}} secciones. {{failCount}} han fallado.",
"saveAllPartial_other": "Se han guardado {{successCount}} de {{totalCount}} secciones. {{failCount}} han fallado.",
"saveAllFailure": "Error al guardar todas las secciones."
},
"profiles": {
"title": "Perfiles",
"activeProfile": "Perfil activo",
"noActiveProfile": "Sin perfil activo",
"active": "Activo",
"activated": "Perfil '{{profile}}' activado",
"activateFailed": "Error al establecer el perfil",
"deactivated": "Perfil desactivado",
"noProfiles": "No hay perfiles definidos.",
"noOverrides": "Sin sobrescripciones",
"cameraCount_one": "{{count}} cámara",
"cameraCount_many": "{{count}} de cámaras",
"cameraCount_other": "{{count}} cámaras",
"columnCamera": "Cámara",
"columnOverrides": "Sobrescripciones del perfil",
"baseConfig": "Configuración base",
"addProfile": "Añadir perfil",
"newProfile": "Nuevo perfil",
"profileNamePlaceholder": "ej. Armado, Fuera de casa, Modo noche",
"friendlyNameLabel": "Nombre del perfil",
"profileIdLabel": "ID del perfil",
"profileIdDescription": "Identificador interno utilizado en la configuración y automatizaciones",
"nameInvalid": "Solo se permiten letras minúsculas, números y guiones bajos",
"nameDuplicate": "Ya existe un perfil con este nombre",
"error": {
"mustBeAtLeastTwoCharacters": "Debe tener al menos 2 caracteres",
"mustNotContainPeriod": "No debe contener puntos",
"alreadyExists": "Ya existe un perfil con este ID"
},
"renameProfile": "Renombrar perfil",
"renameSuccess": "Perfil renombrado a '{{profile}}'"
} }
} }

View File

@ -45,10 +45,17 @@
"reviews": "Revisiones", "reviews": "Revisiones",
"face_recognition": "Reconocimiento facial", "face_recognition": "Reconocimiento facial",
"camera_activity": "Actividad de cámara", "camera_activity": "Actividad de cámara",
"classification": "Clasificación" "classification": "Clasificación",
"system": "Sistema",
"camera": "Cámara",
"all_cameras": "Todas las cámaras",
"cameras_count_one": "{{count}} Cámara",
"cameras_count_other": "{{count}} Cámaras",
"lpr": "Reconocimiento de matriculas"
}, },
"count_other": "{{count}} mensajes", "count_other": "{{count}} mensajes",
"count_one": "{{count}} mensaje" "count_one": "{{count}} mensaje",
"empty": "No se han capturado mensaje aún"
} }
}, },
"title": "Sistema", "title": "Sistema",
@ -99,7 +106,10 @@
"title": "Aviso de estadísticas Intel GPU", "title": "Aviso de estadísticas Intel GPU",
"message": "Estadísticas de GPU no disponibles", "message": "Estadísticas de GPU no disponibles",
"description": "Este es un error conocido en las herramientas de informes de estadísticas de GPU de Intel (intel_gpu_top). El error se produce y muestra repetidamente un uso de GPU del 0 %, incluso cuando la aceleración de hardware y la detección de objetos se ejecutan correctamente en la (i)GPU. No se trata de un error de Frigate. Puede reiniciar el host para solucionar el problema temporalmente y confirmar que la GPU funciona correctamente. Esto no afecta al rendimiento." "description": "Este es un error conocido en las herramientas de informes de estadísticas de GPU de Intel (intel_gpu_top). El error se produce y muestra repetidamente un uso de GPU del 0 %, incluso cuando la aceleración de hardware y la detección de objetos se ejecutan correctamente en la (i)GPU. No se trata de un error de Frigate. Puede reiniciar el host para solucionar el problema temporalmente y confirmar que la GPU funciona correctamente. Esto no afecta al rendimiento."
} },
"npuTemperature": "Temperatura NPU",
"gpuCompute": "Cálculo GPU / Codificación",
"gpuTemperature": "Temperatura GPU"
}, },
"otherProcesses": { "otherProcesses": {
"title": "Otros Procesos", "title": "Otros Procesos",
@ -136,7 +146,11 @@
}, },
"shm": { "shm": {
"title": "Asignación de SHM (memoria compartida)", "title": "Asignación de SHM (memoria compartida)",
"warning": "El tamaño actual de SHM de {{total}}MB es muy pequeño. Aumente al menos a {{min_shm}}MB." "warning": "El tamaño actual de SHM de {{total}}MB es muy pequeño. Aumente al menos a {{min_shm}}MB.",
"frameLifetime": {
"title": "Tiempo de vida del fotograma",
"description": "Cada cámara tiene espacio en la memoria compartida para {{frames}} cuadros. Si la velocidad de cuadros de la cámara es alta, cada cuadro se guarda aproximadamente {{lifetime}} antes de ser sobreescrito."
}
} }
}, },
"cameras": { "cameras": {
@ -174,7 +188,8 @@
"cameraDetect": "{{camName}} detectar", "cameraDetect": "{{camName}} detectar",
"cameraFramesPerSecond": "{{camName}} cuadros por segundo", "cameraFramesPerSecond": "{{camName}} cuadros por segundo",
"cameraDetectionsPerSecond": "{{camName}} detecciones por segundo", "cameraDetectionsPerSecond": "{{camName}} detecciones por segundo",
"overallSkippedDetectionsPerSecond": "detecciones omitidas por segundo totales" "overallSkippedDetectionsPerSecond": "detecciones omitidas por segundo totales",
"cameraGpu": "{{camName}} GPU"
}, },
"toast": { "toast": {
"success": { "success": {
@ -183,6 +198,17 @@
"error": { "error": {
"unableToProbeCamera": "No se pudo sondear la cámara: {{errorMessage}}" "unableToProbeCamera": "No se pudo sondear la cámara: {{errorMessage}}"
} }
},
"connectionQuality": {
"excellent": "Excelente",
"poor": "Debil",
"title": "Calidad de la conexión",
"fps": "Cuadros por segundo",
"expectedFps": "Cuadros por segundo esperados",
"reconnectsLastHour": "Reconexiones (última hora)",
"unusable": "No usable",
"fair": "Normal",
"stallsLastHour": "Bloqueos (última hora)"
} }
}, },
"lastRefreshed": "Última actualización: ", "lastRefreshed": "Última actualización: ",
@ -221,6 +247,7 @@
"detectIsSlow": "{{detect}} es lento ({{speed}} ms)", "detectIsSlow": "{{detect}} es lento ({{speed}} ms)",
"cameraIsOffline": "{{camera}} está desconectada", "cameraIsOffline": "{{camera}} está desconectada",
"detectIsVerySlow": "{{detect}} es muy lento ({{speed}} ms)", "detectIsVerySlow": "{{detect}} es muy lento ({{speed}} ms)",
"shmTooLow": "Asignación de /dev/shm ({{total}} MB) debe aumentarse al menos a {{min}} MB." "shmTooLow": "Asignación de /dev/shm ({{total}} MB) debe aumentarse al menos a {{min}} MB.",
"debugReplayActive": "Sesión de depuración activa."
} }
} }

View File

@ -2,5 +2,16 @@
"name": { "name": {
"label": "Kaamera nimi", "label": "Kaamera nimi",
"description": "Kaamera nimi on nõutav" "description": "Kaamera nimi on nõutav"
},
"friendly_name": {
"label": "Sõbralik nimi",
"description": "Frigate UI-s kasutatud kaamerasõbralik nimi"
},
"enabled": {
"label": "Kasutusel",
"description": "Kasutusel"
},
"audio": {
"label": "Helisündmused"
} }
} }

View File

@ -1 +1,5 @@
{} {
"audio": {
"label": "Helisündmused"
}
}

View File

@ -1 +1,32 @@
{} {
"minimum": "Peab olema vähemalt {{limit}}",
"maximum": "Võib olla kuni {{limit}}",
"exclusiveMinimum": "Peab olema suurem, kui {{limit}}",
"exclusiveMaximum": "Peab olema väiksem, kui {{limit}}",
"minLength": "Peab olema vähemalt {{limit}} tähemärk(i) pikk",
"maxLength": "Võib olla kuni {{limit}} tähemärk(i) pikk",
"minItems": "Peab sisaldama vähemalt {{limit}} objekti",
"maxItems": "Võib sisaldada kuni {{limit}} objekti",
"pattern": "Vigane vorming",
"required": "See väli on kohustuslik",
"type": "Vigane väärtuse tüüp",
"enum": "Peab olema üks lubatud väärtustest",
"const": "Väärtus ei vasta eeldatud konstandile",
"uniqueItems": "Kõik väärtused peavad olema unikaalsed",
"format": "Vigane vorming",
"additionalProperties": "Tundmatu omadus pole lubatud",
"oneOf": "Peab vastama täpselt ühele lubatud skeemile",
"anyOf": "Peab vastama vähemalt ühele lubatud skeemile",
"proxy": {
"header_map": {
"roleHeaderRequired": "Kui rollide vastendused on seadistatud, siis rollide päis on nõutav."
}
},
"ffmpeg": {
"inputs": {
"rolesUnique": "Iga rolli saad määrata ühele sisendvoole.",
"detectRequired": "„Tuvasta“ rollile pead määrama vähemalt ühe sisendvoo.",
"hwaccelDetectOnly": "Vaid „Tuvasta“ rolliga sisendvoog võib määratleda raudvaralise kiirenduse argumente."
}
}
}

View File

@ -34,7 +34,9 @@
"normalActivity": "Tavaline", "normalActivity": "Tavaline",
"needsReview": "Vajab ülevaatamist", "needsReview": "Vajab ülevaatamist",
"securityConcern": "Võib olla turvaprobleem", "securityConcern": "Võib olla turvaprobleem",
"timeline": "Ajajoon", "timeline": {
"label": "Ajajoon"
},
"timeline.aria": "Vali ajajoon", "timeline.aria": "Vali ajajoon",
"zoomIn": "Suumi sisse", "zoomIn": "Suumi sisse",
"zoomOut": "Suumi välja", "zoomOut": "Suumi välja",
@ -61,5 +63,14 @@
"objectTrack": { "objectTrack": {
"clickToSeek": "Klõpsa siia ajapunkti kerimiseks", "clickToSeek": "Klõpsa siia ajapunkti kerimiseks",
"trackedPoint": "Jälgitav punkt" "trackedPoint": "Jälgitav punkt"
},
"motionSearch": {
"menuItem": "Liikumise otsing",
"openMenu": "Kaamera valikud"
},
"motionPreviews": {
"menuItem": "Vaata liikumiste eelvaateid",
"title": "Liikumiste eelvaated: {{camera}}",
"mobileSettingsTitle": "Liikumiste eelvaadete seadistused"
} }
} }

View File

@ -77,5 +77,15 @@
"path": { "path": {
"label": "Chemin vers la base de donnée" "label": "Chemin vers la base de donnée"
} }
},
"genai": {
"provider": {
"label": "Fournisseur"
}
},
"birdseye": {
"quality": {
"label": "Qualité d'encodage"
}
} }
} }

View File

@ -39,6 +39,7 @@
"description": "A Frigate felhasználói felületén használt, könnyen megjegyezhető kamera név" "description": "A Frigate felhasználói felületén használt, könnyen megjegyezhető kamera név"
}, },
"enabled": { "enabled": {
"label": "Engedélyezve" "label": "Engedélyezve",
"description": "Engedélyezve"
} }
} }

View File

@ -40,5 +40,8 @@
"environment_vars": { "environment_vars": {
"label": "Környezeti változók", "label": "Környezeti változók",
"description": "A Home Assistant OS rendszerben a Frigate folyamat számára beállítandó környezeti változói. A nem HAOS-felhasználóknak helyette a Docker konfigurációját kell használniuk." "description": "A Home Assistant OS rendszerben a Frigate folyamat számára beállítandó környezeti változói. A nem HAOS-felhasználóknak helyette a Docker konfigurációját kell használniuk."
},
"logger": {
"label": "Naplózás"
} }
} }

View File

@ -3,7 +3,9 @@
"search": "Keresés", "search": "Keresés",
"noExports": "Export nem található", "noExports": "Export nem található",
"deleteExport.desc": "Biztos, hogy törölni akarja {{exportName}}-t?", "deleteExport.desc": "Biztos, hogy törölni akarja {{exportName}}-t?",
"deleteExport": "Export törlése", "deleteExport": {
"label": "Export törlése"
},
"editExport": { "editExport": {
"title": "Exportálás átnevezése", "title": "Exportálás átnevezése",
"desc": "Adjon meg egy új nevet ennek az exportnak.", "desc": "Adjon meg egy új nevet ennek az exportnak.",

View File

@ -3,7 +3,9 @@
"enable": "Kétirányú kommunikáció engedélyezése", "enable": "Kétirányú kommunikáció engedélyezése",
"disable": "Kétirányú kommunikáció tiltása" "disable": "Kétirányú kommunikáció tiltása"
}, },
"documentTitle": "Élő - Frigate", "documentTitle": {
"default": "Élő - Frigate"
},
"lowBandwidthMode": "Alacsony felbontású mód", "lowBandwidthMode": "Alacsony felbontású mód",
"documentTitle.withCamera": "{{camera}} - Élő - Frigate", "documentTitle.withCamera": "{{camera}} - Élő - Frigate",
"cameraAudio": { "cameraAudio": {

View File

@ -47,5 +47,5 @@
"submitFrigatePlusFailed": "Impossibile inviare il fotogramma a Frigate+" "submitFrigatePlusFailed": "Impossibile inviare il fotogramma a Frigate+"
} }
}, },
"cameraDisabled": "La telecamera è disattivata" "cameraDisabled": "La telecamera è disabilita"
} }

View File

@ -20,12 +20,41 @@
"description": "Abilita o disabilita il rilevamento degli eventi audio per questa telecamera." "description": "Abilita o disabilita il rilevamento degli eventi audio per questa telecamera."
}, },
"min_volume": { "min_volume": {
"label": "Volume minimo" "label": "Volume minimo",
"description": "È richiesta una soglia minima di volume RMS per eseguire il rilevamento audio; valori inferiori aumentano la sensibilità (ad esempio, 200 alta, 500 media, 1000 bassa)."
},
"max_not_heard": {
"label": "Fine pausa",
"description": "Numero di secondi senza il tipo di audio configurato prima che l'evento audio termini."
},
"listen": {
"label": "Tipi di ascolto",
"description": "Elenco dei tipi di eventi audio da rilevare (ad esempio: abbaio, allarme antincendio, urlo, parlato, grido)."
},
"filters": {
"label": "Filtri audio",
"description": "Impostazioni di filtro per ciascun tipo di audio, come le soglie di confidenza utilizzate per ridurre i falsi positivi."
},
"enabled_in_config": {
"label": "Stato audio originale",
"description": "Indica se il rilevamento audio era originariamente abilitato nel file di configurazione statico."
},
"num_threads": {
"label": "Processi di rilevamento",
"description": "Numero di processi da utilizzare per l'elaborazione del rilevamento audio."
} }
}, },
"ffmpeg": { "ffmpeg": {
"path": { "path": {
"label": "Percorso FFmpeg" "label": "Percorso FFmpeg"
} }
},
"audio_transcription": {
"label": "Trascrizione audio",
"description": "Impostazioni per la trascrizione audio in tempo reale e del parlato utilizzata per eventi e sottotitoli in tempo reale.",
"enabled": {
"label": "Abilita la trascrizione",
"description": "Abilita o disabilita la trascrizione manuale degli eventi audio."
}
} }
} }

View File

@ -17,7 +17,28 @@
"label": "Abilita il rilevamento audio" "label": "Abilita il rilevamento audio"
}, },
"min_volume": { "min_volume": {
"label": "Volume minimo" "label": "Volume minimo",
"description": "È richiesta una soglia minima di volume RMS per eseguire il rilevamento audio; valori inferiori aumentano la sensibilità (ad esempio, 200 alta, 500 media, 1000 bassa)."
},
"max_not_heard": {
"label": "Fine pausa",
"description": "Numero di secondi senza il tipo di audio configurato prima che l'evento audio termini."
},
"listen": {
"label": "Tipi di ascolto",
"description": "Elenco dei tipi di eventi audio da rilevare (ad esempio: abbaio, allarme antincendio, urlo, parlato, grido)."
},
"filters": {
"label": "Filtri audio",
"description": "Impostazioni di filtro per ciascun tipo di audio, come le soglie di confidenza utilizzate per ridurre i falsi positivi."
},
"enabled_in_config": {
"label": "Stato audio originale",
"description": "Indica se il rilevamento audio era originariamente abilitato nel file di configurazione statico."
},
"num_threads": {
"label": "Processi di rilevamento",
"description": "Numero di processi da utilizzare per l'elaborazione del rilevamento audio."
} }
}, },
"logger": { "logger": {
@ -29,7 +50,8 @@
"logs": { "logs": {
"label": "Livello di registro per processo", "label": "Livello di registro per processo",
"description": "Opzioni di sovrsacrittura del livello di registro per ciascun componente, per aumentare o diminuire il livello di dettaglio dei singoli moduli." "description": "Opzioni di sovrsacrittura del livello di registro per ciascun componente, per aumentare o diminuire il livello di dettaglio dei singoli moduli."
} },
"label": "Registro"
}, },
"auth": { "auth": {
"label": "Autenticazione", "label": "Autenticazione",
@ -41,11 +63,39 @@
"reset_admin_password": { "reset_admin_password": {
"label": "Reimposta la password di amministratore", "label": "Reimposta la password di amministratore",
"description": "Se la condizione è vera, reimposta la password dell'utente amministratore all'avvio e stampa la nuova password nei registri." "description": "Se la condizione è vera, reimposta la password dell'utente amministratore all'avvio e stampa la nuova password nei registri."
},
"cookie_name": {
"label": "Nome del cookie JWT",
"description": "Nome del cookie utilizzato per memorizzare il token JWT per l'autenticazione nativa."
},
"cookie_secure": {
"label": "Attributo dei cookie sicuri",
"description": "Imposta l'attributo 'sicuro' sul cookie di autenticazione; deve essere impostato su 'vero' quando si utilizza TLS."
},
"session_length": {
"label": "Durata della sessione",
"description": "Durata della sessione in secondi per le sessioni basate su JWT."
},
"refresh_time": {
"label": "Finestra di aggiornamento della sessione",
"description": "Quando una sessione sta per scadere entro questo numero di secondi, aggiornala per ripristinarne la durata completa."
} }
}, },
"ffmpeg": { "ffmpeg": {
"path": { "path": {
"label": "Percorso FFmpeg" "label": "Percorso FFmpeg"
} }
},
"detectors": {
"cpu": {
"num_threads": {
"label": "Numero di processi di rilevamento",
"description": "Il numero di processi utilizzati per l'inferenza basata sulla CPU."
}
}
},
"audio_transcription": {
"label": "Trascrizione audio",
"description": "Impostazioni per la trascrizione audio in tempo reale e del parlato utilizzata per eventi e sottotitoli in tempo reale."
} }
} }

View File

@ -4,5 +4,29 @@
"exclusiveMinimum": "Deve essere maggiore di {{limit}}", "exclusiveMinimum": "Deve essere maggiore di {{limit}}",
"exclusiveMaximum": "Deve essere minore di {{limit}}", "exclusiveMaximum": "Deve essere minore di {{limit}}",
"minLength": "Deve essere almeno {{limit}} carattere(i)", "minLength": "Deve essere almeno {{limit}} carattere(i)",
"maxLength": "Deve essere al massimo {{limit}} carattere(i)" "maxLength": "Deve essere al massimo {{limit}} carattere(i)",
"minItems": "Deve contenere almeno {{limit}} elementi",
"maxItems": "Deve avere al massimo {{limit}} elementi",
"pattern": "Formato non valido",
"required": "Questo campo è obbligatorio",
"type": "Tipo di valore non valido",
"enum": "Deve essere uno dei valori consentiti",
"const": "Il valore non corrisponde alla costante prevista",
"uniqueItems": "Tutti gli elementi devono essere unici",
"format": "Formato non valido",
"additionalProperties": "Proprietà sconosciuta non consentita",
"oneOf": "Deve corrispondere esattamente a uno degli schemi consentiti",
"anyOf": "Deve corrispondere ad almeno uno degli schemi consentiti",
"proxy": {
"header_map": {
"roleHeaderRequired": "L'intestazione del ruolo è obbligatoria quando si configurano le mappature dei ruoli."
}
},
"ffmpeg": {
"inputs": {
"rolesUnique": "Ciascun ruolo può essere assegnato a un solo flusso di ingresso.",
"detectRequired": "Ad almeno un flusso di ingresso deve essere assegnato il ruolo di 'rilevamento'.",
"hwaccelDetectOnly": "Solo il flusso di ingresso con il ruolo di rilevamento può definire argomenti di accelerazione hardware."
}
}
} }

View File

@ -22,7 +22,9 @@
"markAsReviewed": "Segna come visto", "markAsReviewed": "Segna come visto",
"documentTitle": "Rivedi - Frigate", "documentTitle": "Rivedi - Frigate",
"allCameras": "Tutte le camere", "allCameras": "Tutte le camere",
"timeline": "Cronologia", "timeline": {
"label": "Linea temporale"
},
"timeline.aria": "Seleziona la cronologia", "timeline.aria": "Seleziona la cronologia",
"events": { "events": {
"label": "Eventi", "label": "Eventi",
@ -44,7 +46,7 @@
"threateningActivity": "Attività minacciosa", "threateningActivity": "Attività minacciosa",
"detail": { "detail": {
"noDataFound": "Nessun dato dettagliato da rivedere", "noDataFound": "Nessun dato dettagliato da rivedere",
"aria": "Attiva/disattiva la visualizzazione dettagliata", "aria": "Abilita/disabilita la visualizzazione dettagliata",
"trackedObject_one": "{{count}} oggetto", "trackedObject_one": "{{count}} oggetto",
"trackedObject_other": "{{count}} oggetti", "trackedObject_other": "{{count}} oggetti",
"noObjectDetailData": "Non sono disponibili dati dettagliati sull'oggetto.", "noObjectDetailData": "Non sono disponibili dati dettagliati sull'oggetto.",
@ -64,5 +66,28 @@
"normalActivity": "Normale", "normalActivity": "Normale",
"needsReview": "Necessita revisione", "needsReview": "Necessita revisione",
"securityConcern": "Rischio per la sicurezza", "securityConcern": "Rischio per la sicurezza",
"select_all": "Tutti" "select_all": "Tutti",
"motionSearch": {
"menuItem": "Ricerca movimento",
"openMenu": "Opzioni telecamera"
},
"motionPreviews": {
"title": "Anteprime di movimento: {{camera}}",
"mobileSettingsTitle": "Impostazioni di anteprima del movimento",
"mobileSettingsDesc": "Regola la velocità di riproduzione e la luminosità, poi scegli una data per rivedere i filmati che mostrano solo il movimento.",
"dim": "Attenua",
"dimAria": "Regola l'intensità della luce",
"dimDesc": "Aumenta l'attenuazione per migliorare la visibilità delle aree in movimento.",
"speed": "Velocità",
"speedAria": "Seleziona la velocità di riproduzione dell'anteprima",
"speedDesc": "Scegli la velocità di riproduzione dei video di anteprima.",
"back": "Indietro",
"empty": "Nessuna anteprima disponibile",
"noPreview": "Anteprima non disponibile",
"seekAria": "Cerca il riproduttore {{camera}} a {{time}}",
"filter": "Filtro",
"filterDesc": "Seleziona le aree per visualizzare solo i video con movimento in quelle regioni.",
"filterClear": "Pulisci",
"menuItem": "Visualizza le anteprime del movimento"
}
} }

View File

@ -12,7 +12,11 @@
"notifications": "Impostazioni di notifiche - Frigate", "notifications": "Impostazioni di notifiche - Frigate",
"enrichments": "Impostazioni di miglioramento - Frigate", "enrichments": "Impostazioni di miglioramento - Frigate",
"cameraManagement": "Gestisci telecamere - Frigate", "cameraManagement": "Gestisci telecamere - Frigate",
"cameraReview": "Impostazioni revisione telecamera - Frigate" "cameraReview": "Impostazioni revisione telecamera - Frigate",
"globalConfig": "Configurazione globale - Frigate",
"cameraConfig": "Configurazione telecamera - Frigate",
"maintenance": "Manutenzione - Frigate",
"profiles": "Profili - Frigate"
}, },
"frigatePlus": { "frigatePlus": {
"snapshotConfig": { "snapshotConfig": {
@ -230,7 +234,7 @@
"desc": "Specifica una velocità minima affinché gli oggetti vengano presi in considerazione in questa zona.", "desc": "Specifica una velocità minima affinché gli oggetti vengano presi in considerazione in questa zona.",
"toast": { "toast": {
"error": { "error": {
"pointLengthError": "La stima della velocità è stata disattivata per questa zona. Le zone con stima della velocità devono avere esattamente 4 punti.", "pointLengthError": "La stima della velocità è stata disabilitata per questa zona. Le zone con stima della velocità devono avere esattamente 4 punti.",
"loiteringTimeError": "Le zone con tempi di permanenza superiori a 0 non devono essere utilizzate per la stima della velocità." "loiteringTimeError": "Le zone con tempi di permanenza superiori a 0 non devono essere utilizzate per la stima della velocità."
} }
}, },
@ -390,7 +394,12 @@
"roles": "Ruoli", "roles": "Ruoli",
"cameraManagement": "Gestione", "cameraManagement": "Gestione",
"cameraReview": "Rivedi", "cameraReview": "Rivedi",
"profiles": "Profili" "profiles": "Profili",
"general": "Generale",
"globalConfig": "Configurazione globale",
"system": "Sistema",
"integrations": "Integrazioni",
"uiSettings": "Impostazioni interfaccia utente"
}, },
"users": { "users": {
"dialog": { "dialog": {
@ -511,12 +520,12 @@
"general": { "general": {
"liveDashboard": { "liveDashboard": {
"automaticLiveView": { "automaticLiveView": {
"desc": "Passa automaticamente alla visualizzazione dal vivo di una telecamera quando viene rilevata attività. Disattivando questa opzione, le immagini statiche della telecamera nella schermata dal vivo verranno aggiornate solo una volta al minuto.", "desc": "Passa automaticamente alla visualizzazione dal vivo di una telecamera quando viene rilevata attività. Disabilitando questa opzione, le immagini statiche della telecamera nella schermata dal vivo verranno aggiornate solo una volta al minuto.",
"label": "Visualizzazione automatica dal vivo" "label": "Visualizzazione automatica dal vivo"
}, },
"playAlertVideos": { "playAlertVideos": {
"label": "Riproduci video di avvisi", "label": "Riproduci video di avvisi",
"desc": "Per impostazione predefinita, gli avvisi recenti nella schermata dal vivo vengono riprodotti come brevi video in ciclo. Disattiva questa opzione per visualizzare solo un'immagine statica degli avvisi recenti su questo dispositivo/browser." "desc": "Per impostazione predefinita, gli avvisi recenti nella schermata dal vivo vengono riprodotti come brevi video in ciclo. Disabilita questa opzione per visualizzare solo un'immagine statica degli avvisi recenti su questo dispositivo/browser."
}, },
"title": "Schermata dal vivo", "title": "Schermata dal vivo",
"displayCameraNames": { "displayCameraNames": {
@ -1315,5 +1324,11 @@
"addUrl": "Aggiungi URL", "addUrl": "Aggiungi URL",
"addGo2rtcStream": "Aggiungi flusso go2rtc" "addGo2rtcStream": "Aggiungi flusso go2rtc"
} }
},
"button": {
"overriddenGlobal": "Sovrascritto (Globale)",
"overriddenGlobalTooltip": "Questa telecamera sovrascrive le impostazioni di configurazione globali in questa sezione",
"overriddenBaseConfig": "Sovrascritto (Configurazione di base)",
"overriddenBaseConfigTooltip": "Il profilo {{profile}} sovrascrive le impostazioni di configurazione in questa sezione"
} }
} }

View File

@ -7,7 +7,8 @@
"logs": { "logs": {
"frigate": "Registri Frigate - Frigate", "frigate": "Registri Frigate - Frigate",
"go2rtc": "Registri Go2RTC - Frigate", "go2rtc": "Registri Go2RTC - Frigate",
"nginx": "Registri Nginx - Frigate" "nginx": "Registri Nginx - Frigate",
"websocket": "Registri dei messaggi - Frigate"
} }
}, },
"logs": { "logs": {
@ -31,6 +32,33 @@
"label": "Copia negli appunti", "label": "Copia negli appunti",
"success": "Registri copiati negli appunti", "success": "Registri copiati negli appunti",
"error": "Impossibile copiare i registri negli appunti" "error": "Impossibile copiare i registri negli appunti"
},
"websocket": {
"label": "Messaggi",
"pause": "Pausa",
"resume": "Riprendi",
"clear": "Pulisci",
"filter": {
"all": "Tutti gli argomenti",
"topics": "Argomenti",
"events": "Eventi",
"reviews": "Rivisti",
"classification": "Classificazione",
"face_recognition": "Riconoscimento facciale",
"lpr": "Risconoscimento targhe (LPR)",
"camera_activity": "Attività della telecamera",
"system": "Sistema",
"camera": "Telecamera",
"all_cameras": "Tutte le telecamere",
"cameras_count_one": "{{count}} telecamera",
"cameras_count_other": "{{count}} telecamere"
},
"empty": "Nessun messaggio ancora catturato",
"count_one": "{{count}} messaggio",
"count_other": "{{count}} messaggi",
"expanded": {
"payload": "Carico"
}
} }
}, },
"general": { "general": {
@ -72,7 +100,8 @@
"description": "Si tratta di un problema noto negli strumenti di reportistica delle statistiche GPU di Intel (intel_gpu_top), che si interrompe e restituisce ripetutamente un utilizzo della GPU pari a 0% anche nei casi in cui l'accelerazione hardware e il rilevamento degli oggetti funzionano correttamente sulla (i)GPU. Non si tratta di un problema di Frigate. È possibile riavviare il sistema per risolvere temporaneamente il problema e verificare che la GPU funzioni correttamente. Ciò non influisce sulle prestazioni." "description": "Si tratta di un problema noto negli strumenti di reportistica delle statistiche GPU di Intel (intel_gpu_top), che si interrompe e restituisce ripetutamente un utilizzo della GPU pari a 0% anche nei casi in cui l'accelerazione hardware e il rilevamento degli oggetti funzionano correttamente sulla (i)GPU. Non si tratta di un problema di Frigate. È possibile riavviare il sistema per risolvere temporaneamente il problema e verificare che la GPU funzioni correttamente. Ciò non influisce sulle prestazioni."
}, },
"gpuTemperature": "Temperatura GPU", "gpuTemperature": "Temperatura GPU",
"npuTemperature": "Temperatura NPU" "npuTemperature": "Temperatura NPU",
"gpuCompute": "Calcolo / Codifica GPU"
}, },
"detector": { "detector": {
"inferenceSpeed": "Velocità inferenza rilevatore", "inferenceSpeed": "Velocità inferenza rilevatore",
@ -158,7 +187,8 @@
"cameraFramesPerSecond": "{{camName}} fotogrammi al secondo", "cameraFramesPerSecond": "{{camName}} fotogrammi al secondo",
"cameraDetectionsPerSecond": "{{camName}} rilevamenti al secondo", "cameraDetectionsPerSecond": "{{camName}} rilevamenti al secondo",
"cameraSkippedDetectionsPerSecond": "{{camName}} rilevamenti saltati al secondo", "cameraSkippedDetectionsPerSecond": "{{camName}} rilevamenti saltati al secondo",
"cameraFfmpeg": "{{camName}} FFmpeg" "cameraFfmpeg": "{{camName}} FFmpeg",
"cameraGpu": "GPU {{camName}}"
}, },
"toast": { "toast": {
"success": { "success": {
@ -188,7 +218,8 @@
"cameraIsOffline": "{{camera}} è disconnessa", "cameraIsOffline": "{{camera}} è disconnessa",
"detectIsSlow": "{{detect}} è lento ({{speed}} ms)", "detectIsSlow": "{{detect}} è lento ({{speed}} ms)",
"detectIsVerySlow": "{{detect}} è molto lento ({{speed}} ms)", "detectIsVerySlow": "{{detect}} è molto lento ({{speed}} ms)",
"shmTooLow": "L'allocazione /dev/shm ({{total}} MB) dovrebbe essere aumentata almeno a {{min}} MB." "shmTooLow": "L'allocazione /dev/shm ({{total}} MB) dovrebbe essere aumentata almeno a {{min}} MB.",
"debugReplayActive": "La sessione di riproduzione delle correzioni è attiva"
}, },
"title": "Sistema", "title": "Sistema",
"metrics": "Metriche di sistema", "metrics": "Metriche di sistema",
@ -215,7 +246,11 @@
"shm": { "shm": {
"title": "Allocazione SHM (memoria condivisa)", "title": "Allocazione SHM (memoria condivisa)",
"warning": "La dimensione SHM attuale di {{total}} MB è troppo piccola. Aumentarla ad almeno {{min_shm}} MB.", "warning": "La dimensione SHM attuale di {{total}} MB è troppo piccola. Aumentarla ad almeno {{min_shm}} MB.",
"readTheDocumentation": "Leggi la documentazione" "readTheDocumentation": "Leggi la documentazione",
"frameLifetime": {
"title": "Durata del fotogramma",
"description": "Ogni telecamera dispone di {{frames}} posti per i fotogrammi nella memoria condivisa. Alla frequenza di fotogrammi più elevata della telecamera, ogni fotogramma è disponibile per circa {{lifetime}} secondi prima di essere sovrascritto."
}
} }
}, },
"lastRefreshed": "Ultimo aggiornamento: " "lastRefreshed": "Ultimo aggiornamento: "

View File

@ -171,7 +171,7 @@
"configuration": "Konfigurasjon", "configuration": "Konfigurasjon",
"systemLogs": "Systemlogger", "systemLogs": "Systemlogger",
"settings": "Innstillinger", "settings": "Innstillinger",
"configurationEditor": "Rediger konfigurasjonen", "configurationEditor": "Rediger konfigurasjonsfil",
"languages": "Språk", "languages": "Språk",
"language": { "language": {
"en": "English (Engelsk)", "en": "English (Engelsk)",

View File

@ -527,7 +527,7 @@
}, },
"roles": { "roles": {
"label": "Roller", "label": "Roller",
"description": "GenAI-roller (verktøy, bildeforståelse/syn, vektorrepresentasjoner); én leverandør per rolle." "description": "GenAI-roller (chat, beskrivelser, vektorrepresentasjoner); én leverandør per rolle."
}, },
"provider_options": { "provider_options": {
"label": "Leverandøralternativer", "label": "Leverandøralternativer",

View File

@ -1,5 +1,5 @@
{ {
"documentTitle": "Konfigurasjonseditor - Frigate", "documentTitle": "Konfigurasjonsfil - Frigate",
"toast": { "toast": {
"error": { "error": {
"savingError": "Feil ved lagring av konfigurasjon" "savingError": "Feil ved lagring av konfigurasjon"
@ -8,11 +8,11 @@
"copyToClipboard": "Konfigurasjonen ble kopiert til utklippstavlen." "copyToClipboard": "Konfigurasjonen ble kopiert til utklippstavlen."
} }
}, },
"configEditor": "Konfig-editor", "configEditor": "Konfigurasjonsfil",
"copyConfig": "Kopier konfigurasjonen", "copyConfig": "Kopier konfigurasjonen",
"saveAndRestart": "Lagre og omstart", "saveAndRestart": "Lagre og omstart",
"saveOnly": "Kun lagre", "saveOnly": "Kun lagre",
"confirm": "Avslutt uten å lagre?", "confirm": "Avslutt uten å lagre?",
"safeConfigEditor": "Konfig-editor (Sikker modus)", "safeConfigEditor": "Konfigurasjonsfil (Sikker modus)",
"safeModeDescription": "Frigate er i sikker modus grunnet en feil i validering av konfigurasjonen." "safeModeDescription": "Frigate er i sikker modus grunnet en feil i validering av konfigurasjonen."
} }

View File

@ -1630,7 +1630,12 @@
"itemTitle": "Strøm {{index}}" "itemTitle": "Strøm {{index}}"
}, },
"searchPlaceholder": "Søk...", "searchPlaceholder": "Søk...",
"showAdvanced": "Vis avanserte innstillinger" "showAdvanced": "Vis avanserte innstillinger",
"genaiModel": {
"placeholder": "Velg modell…",
"search": "Søk modeller…",
"noModels": "Ingen modeller tilgjengelig"
}
}, },
"button": { "button": {
"overriddenBaseConfigTooltip": "{{profile}}-profilen overstyrer konfigurasjonsinnstillinger i denne seksjonen", "overriddenBaseConfigTooltip": "{{profile}}-profilen overstyrer konfigurasjonsinnstillinger i denne seksjonen",

View File

@ -262,7 +262,8 @@
"setPassword": "Definir Senha" "setPassword": "Definir Senha"
}, },
"classification": "Classificação", "classification": "Classificação",
"chat": "Chat" "chat": "Chat",
"profiles": "Perfis"
}, },
"toast": { "toast": {
"copyUrlToClipboard": "URL copiada para a área de transferência.", "copyUrlToClipboard": "URL copiada para a área de transferência.",

View File

@ -45,6 +45,12 @@
}, },
"label": "Configuração da Câmera", "label": "Configuração da Câmera",
"audio_transcription": { "audio_transcription": {
"label": "Transcrição de áudio" "label": "Transcrição de áudio",
"enabled": {
"label": "Habilitar transcrição"
},
"live_enabled": {
"label": "Transcrição em tempo real"
}
} }
} }

View File

@ -71,9 +71,15 @@
"session_length": { "session_length": {
"label": "Duração da sessão", "label": "Duração da sessão",
"description": "Duração da sessão em segundos para sessões baseadas em JWT." "description": "Duração da sessão em segundos para sessões baseadas em JWT."
},
"failed_login_rate_limit": {
"label": "Limites de falha de login"
} }
}, },
"audio_transcription": { "audio_transcription": {
"label": "Transcrição de áudio" "label": "Transcrição de áudio",
"live_enabled": {
"label": "Transcrição em tempo real"
}
} }
} }

View File

@ -17,7 +17,8 @@
"clickMove": { "clickMove": {
"label": "Clique no quadro para centralizar a câmera", "label": "Clique no quadro para centralizar a câmera",
"enable": "Ativar clique para mover", "enable": "Ativar clique para mover",
"disable": "Desativar clique para mover" "disable": "Desativar clique para mover",
"enableWithZoom": "Habilitar clicar para mover / arrastar para zoom"
}, },
"left": { "left": {
"label": "Mova a câmera PTZ para a esquerda" "label": "Mova a câmera PTZ para a esquerda"

View File

@ -34,7 +34,15 @@
"general": "Geral", "general": "Geral",
"globalConfig": "Configuração global", "globalConfig": "Configuração global",
"system": "Sistema", "system": "Sistema",
"integrations": "Integrações" "integrations": "Integrações",
"uiSettings": "Configurações de interface",
"profiles": "Perfis",
"globalDetect": "Detecção de objeto",
"globalRecording": "Gravando",
"globalFfmpeg": "FFmpeg",
"globalMotion": "Detecção de movimento",
"globalObjects": "Objetos",
"globalReview": "Revisar"
}, },
"dialog": { "dialog": {
"unsavedChanges": { "unsavedChanges": {

View File

@ -50,8 +50,10 @@
"lpr": "LPR", "lpr": "LPR",
"camera_activity": "Atividade da câmera", "camera_activity": "Atividade da câmera",
"system": "Sistema", "system": "Sistema",
"camera": "Camera" "camera": "Camera",
} "all_cameras": "Todas as cameras"
},
"empty": "Nenhuma mensagem capturada ainda"
} }
}, },
"general": { "general": {

View File

@ -2161,7 +2161,7 @@
}, },
"roles": { "roles": {
"label": "Roluri", "label": "Roluri",
"description": "Roluri GenAI (unelte, viziune, înglobări); un furnizor per rol." "description": "Roluri GenAI (chat, descrieri, înglobări); un furnizor per rol."
}, },
"provider_options": { "provider_options": {
"label": "Opțiuni furnizor", "label": "Opțiuni furnizor",

View File

@ -1661,7 +1661,12 @@
"empty": "Nicio etichetă disponibilă", "empty": "Nicio etichetă disponibilă",
"allNonAlertDetections": "Toată activitatea fără alertă va fi inclusă ca detecții." "allNonAlertDetections": "Toată activitatea fără alertă va fi inclusă ca detecții."
}, },
"addCustomLabel": "Adaugă etichetă personalizată..." "addCustomLabel": "Adaugă etichetă personalizată...",
"genaiModel": {
"placeholder": "Selectează modelul…",
"search": "Caută modele…",
"noModels": "Niciun model disponibil"
}
}, },
"globalConfig": { "globalConfig": {
"title": "Configurare Globală", "title": "Configurare Globală",

View File

@ -260,7 +260,8 @@
"setPassword": "Установить пароль" "setPassword": "Установить пароль"
}, },
"appearance": "Внешний вид", "appearance": "Внешний вид",
"classification": "Распознование" "classification": "Распознование",
"profiles": "Профили"
}, },
"pagination": { "pagination": {
"label": "пагинация", "label": "пагинация",

View File

@ -6,7 +6,8 @@
"title": "Frigate перезапускается", "title": "Frigate перезапускается",
"content": "Эта страница перезагрузится через {{countdown}} сек.", "content": "Эта страница перезагрузится через {{countdown}} сек.",
"button": "Принудительная перезагрузка" "button": "Принудительная перезагрузка"
} },
"description": "Это перезагрузки перезагрузит Frigate."
}, },
"explore": { "explore": {
"plus": { "plus": {
@ -76,6 +77,10 @@
"fromTimeline": { "fromTimeline": {
"saveExport": "Сохранить экспорт", "saveExport": "Сохранить экспорт",
"previewExport": "Предпросмотр экспорта" "previewExport": "Предпросмотр экспорта"
},
"case": {
"label": "Случай",
"placeholder": "Выберите случай"
} }
}, },
"streaming": { "streaming": {

View File

@ -83,5 +83,59 @@
"label": "Конфигурация стационарных объектов", "label": "Конфигурация стационарных объектов",
"description": "Настройки для обнаружения и управления объектами, которые остаются неподвижными в течение определенного периода времени." "description": "Настройки для обнаружения и управления объектами, которые остаются неподвижными в течение определенного периода времени."
} }
},
"version": {
"label": "Текущая версия конфигурации",
"description": "Число или строка версии текущей конфигурации, которая может использоваться для определения миграций или форматирования изменений."
},
"safe_mode": {
"label": "Безопасный режим",
"description": "Когда включено, Frigate запустится в безопасном режиме с ограниченными функциями для поиска неисправностей."
},
"environment_vars": {
"label": "Переменные окружения",
"description": "Пары ключ/значения для переменных окружения которые необходимо задать для процесса Frigate в Home Assistant OS. Пользователи, которые не исползуют HAOS должны испольовать переменные окружения в Docker."
},
"logger": {
"label": "Логирование",
"description": "Управляет уровнем логирования по умолчанию и переопределением уровня для каждого компонента.",
"default": {
"label": "Уровень логирования",
"description": "Стандартный глобальный уровень логирования (debug, info, warning, error)."
},
"logs": {
"label": "Уровень логирования для каждого процесса"
}
},
"auth": {
"label": "Аутентификация",
"description": "Настройки аутентификации и сеанса, включая параметры cookie и ограничения скорости.",
"enabled": {
"label": "Включить аутентификацию",
"description": "Включить встроенную аутентификацию для интерфейса Frigate."
},
"reset_admin_password": {
"label": "Сбросить пароль администратора",
"description": "Если выбрано, сбросить пароль администратора при запуске и отобразить новый пароль в логе."
},
"cookie_name": {
"label": "Имя куки JWT",
"description": "Имя куки, используемого для хранения JWT токена для стандартной аутенфикации."
},
"cookie_secure": {
"label": "Флаг \"безопасный куки\"",
"description": "Устанавливает флаг \"secure\" на куки аутенфикации; должно быть включено когда используется TLS."
},
"session_length": {
"label": "Длинна сессии",
"description": "Длина сессии в секундах для JWT сессий."
},
"refresh_time": {
"label": "Окно обновления сессии",
"description": "Когда сессия в стольки секундах от истечения, обновить её обратно к полной длительности."
},
"failed_login_rate_limit": {
"label": "Лимит неудавшихся попыток логина"
}
} }
} }

View File

@ -1 +1,64 @@
{} {
"audio": {
"global": {
"sensitivity": "Общая чувствительность"
},
"cameras": {
"detection": "Обнаружение",
"sensitivity": "Чувствительность"
}
},
"timestamp_style": {
"global": {
"appearance": "Глобальный вид"
},
"cameras": {
"appearance": "Вид"
}
},
"motion": {
"global": {
"sensitivity": "Глобальная чувствительность",
"algorithm": "Глобальный алгоритм"
},
"cameras": {
"sensitivity": "Чувствительность",
"algorithm": "Алгоритм"
}
},
"detect": {
"global": {
"resolution": "Глобальное разрешение",
"tracking": "Глобальное отслеживание"
},
"cameras": {
"resolution": "Разрешение",
"tracking": "Отслеживание"
}
},
"objects": {
"global": {
"tracking": "Глобальное отслеживание",
"filtering": "Глобальная фильтрация"
},
"cameras": {
"tracking": "Отслеживание",
"filtering": "Фильтрация"
}
},
"record": {
"global": {
"retention": "Глобальное сохранение данных",
"events": "Глобальные события"
},
"cameras": {
"retention": "Сохранение данных",
"events": "События"
}
},
"ffmpeg": {
"cameras": {
"cameraFfmpeg": "Аргументы FFmpeg для этой камеры"
}
}
}

View File

@ -1 +1,31 @@
{} {
"maximum": "Должно быть максимум {{limit}}",
"exclusiveMinimum": "Должно быть больше {{limit}}",
"exclusiveMaximum": "Должно быть не более {{limit}}",
"minLength": "Должно быть не менее {{limit}} символов",
"maxLength": "Должно быть не более {{limit}} символов",
"minItems": "Должно быть не менее {{limit}} значений",
"maxItems": "Должно быть не более {{limit}} значений",
"pattern": "Неправильный формат",
"required": "Это поле обязательно",
"type": "Неправильный тип значения",
"enum": "Должно быть одним из списка разрешенных значений",
"const": "Значение не совпадает с ожидаемой константой",
"uniqueItems": "Все значения должны быть уникальны",
"format": "Неправильный формат",
"additionalProperties": "Неизвестное значение недопустимо",
"oneOf": "Должно совпадать только с одной из разрешенных схем",
"anyOf": "Должно совпадать как минимум с одной из разрешенных схем",
"proxy": {
"header_map": {
"roleHeaderRequired": "Заголовок роли требуется когда маппинги ролей настроены."
}
},
"ffmpeg": {
"inputs": {
"rolesUnique": "Каждой роли может быть назначен только один входной поток.",
"detectRequired": "Как минимум один входной поток должен быть назначен роли 'detect'.",
"hwaccelDetectOnly": "Только входной поток с ролью detect может настраивать аппаратное ускорение."
}
}
}

View File

@ -18,11 +18,11 @@
"toast": { "toast": {
"success": { "success": {
"deletedCategory_one": "Класс удалён", "deletedCategory_one": "Класс удалён",
"deletedCategory_few": "", "deletedCategory_few": "Класса удалено",
"deletedCategory_many": "", "deletedCategory_many": "Классов удалено",
"deletedImage_one": "Изображения удалены", "deletedImage_one": "Изображения удалены",
"deletedImage_few": "", "deletedImage_few": "Изображения удалено",
"deletedImage_many": "", "deletedImage_many": "Изображений удалено",
"deletedModel_one": "Успешно удалена {{count}} модель", "deletedModel_one": "Успешно удалена {{count}} модель",
"deletedModel_few": "Успешно удалены {{count}} модели", "deletedModel_few": "Успешно удалены {{count}} модели",
"deletedModel_many": "Успешно удалены {{count}} моделей", "deletedModel_many": "Успешно удалены {{count}} моделей",
@ -30,7 +30,8 @@
"trainedModel": "Модель успешно обучена.", "trainedModel": "Модель успешно обучена.",
"trainingModel": "Обучение модели успешно запущено.", "trainingModel": "Обучение модели успешно запущено.",
"updatedModel": "Конфигурация модели успешно обновлена", "updatedModel": "Конфигурация модели успешно обновлена",
"renamedCategory": "Класс успешно переименован в {{name}}" "renamedCategory": "Класс успешно переименован в {{name}}",
"reclassifiedImage": "Изображение успешно переклассифцировано"
}, },
"error": { "error": {
"deleteImageFailed": "Не удалось удалить: {{errorMessage}}", "deleteImageFailed": "Не удалось удалить: {{errorMessage}}",

View File

@ -16,7 +16,9 @@
"description": "Элементы обзора могут быть созданы для камеры только в том случае, если запись включена для этой камеры." "description": "Элементы обзора могут быть созданы для камеры только в том случае, если запись включена для этой камеры."
} }
}, },
"timeline": "Таймлайн", "timeline": {
"label": "Хронология"
},
"timeline.aria": "Выбор таймлайна", "timeline.aria": "Выбор таймлайна",
"events": { "events": {
"label": "События", "label": "События",

View File

@ -2,7 +2,9 @@
"documentTitle": "Экспорт - Frigate", "documentTitle": "Экспорт - Frigate",
"search": "Поиск", "search": "Поиск",
"noExports": "Не найдено файлов экспорта", "noExports": "Не найдено файлов экспорта",
"deleteExport": "Удалить экспорт", "deleteExport": {
"label": "Удалить экспорт"
},
"deleteExport.desc": "Вы уверены, что хотите удалить {{exportName}}?", "deleteExport.desc": "Вы уверены, что хотите удалить {{exportName}}?",
"editExport": { "editExport": {
"title": "Переименовать экспорт", "title": "Переименовать экспорт",
@ -11,13 +13,27 @@
}, },
"toast": { "toast": {
"error": { "error": {
"renameExportFailed": "Не удалось переименовать экспорт: {{errorMessage}}" "renameExportFailed": "Не удалось переименовать экспорт: {{errorMessage}}",
"assignCaseFailed": "Не удалось обновить назначение случая: {{errorMessage}}"
} }
}, },
"tooltip": { "tooltip": {
"shareExport": "Поделиться экспортом", "shareExport": "Поделиться экспортом",
"downloadVideo": "Скачать видео", "downloadVideo": "Скачать видео",
"editName": "Изменить название", "editName": "Изменить название",
"deleteExport": "Удалить экспорт" "deleteExport": "Удалить экспорт",
"assignToCase": "Добавить в случай"
},
"headings": {
"cases": "Случаи",
"uncategorizedExports": "Некатегоризированные экспорты"
},
"caseDialog": {
"title": "Добавить в случай",
"description": "Выберите существующий случай или создайте новый.",
"selectLabel": "Случай",
"newCaseOption": "Создать новый случай",
"nameLabel": "Название случая",
"descriptionLabel": "Описание"
} }
} }

View File

@ -13,7 +13,8 @@
"description": { "description": {
"placeholder": "Введите название коллекции", "placeholder": "Введите название коллекции",
"addFace": "Добавьте новую коллекцию в библиотеку лиц, загрузив свое первое изображение.", "addFace": "Добавьте новую коллекцию в библиотеку лиц, загрузив свое первое изображение.",
"invalidName": "Недопустимое имя. Имена могут содержать только буквы, цифры, пробелы, апострофы, подчёркивания и дефисы." "invalidName": "Недопустимое имя. Имена могут содержать только буквы, цифры, пробелы, апострофы, подчёркивания и дефисы.",
"nameCannotContainHash": "Имя не может содержать #."
}, },
"createFaceLibrary": { "createFaceLibrary": {
"desc": "Создание новой коллекции", "desc": "Создание новой коллекции",

View File

@ -1,5 +1,7 @@
{ {
"documentTitle": "Прямой эфир - Frigate", "documentTitle": {
"default": "Прямой эфир - Frigate"
},
"documentTitle.withCamera": "{{camera}} - Прямой эфир - Frigate", "documentTitle.withCamera": "{{camera}} - Прямой эфир - Frigate",
"lowBandwidthMode": "Экономичный режим", "lowBandwidthMode": "Экономичный режим",
"twoWayTalk": { "twoWayTalk": {
@ -15,7 +17,8 @@
"clickMove": { "clickMove": {
"label": "Кликните в кадре для центрирования камеры", "label": "Кликните в кадре для центрирования камеры",
"enable": "Включить перемещение по клику", "enable": "Включить перемещение по клику",
"disable": "Отключить перемещение по клику" "disable": "Отключить перемещение по клику",
"enableWithZoom": "Включить \"клик для перемещения / перетащить для масштабирования\""
}, },
"left": { "left": {
"label": "Переместить PTZ-камеру влево" "label": "Переместить PTZ-камеру влево"

View File

@ -12,7 +12,11 @@
"notifications": "Настройки уведомлений - Frigate", "notifications": "Настройки уведомлений - Frigate",
"enrichments": "Настройки обогащения - Frigate", "enrichments": "Настройки обогащения - Frigate",
"cameraManagement": "Управление камерами - Frigate", "cameraManagement": "Управление камерами - Frigate",
"cameraReview": "Настройки просмотра камеры - Frigate" "cameraReview": "Настройки просмотра камеры - Frigate",
"globalConfig": "Глобальная конфигурация - Frigate",
"cameraConfig": "Настройки камеры - Frigate",
"maintenance": "Обслуживание - Frigate",
"profiles": "Профили - Frigate"
}, },
"menu": { "menu": {
"cameras": "Настройки камеры", "cameras": "Настройки камеры",
@ -28,7 +32,14 @@
"triggers": "Триггеры", "triggers": "Триггеры",
"cameraManagement": "Управление", "cameraManagement": "Управление",
"cameraReview": "Обзор", "cameraReview": "Обзор",
"roles": "Роли" "roles": "Роли",
"general": "Общее",
"globalConfig": "Глобальная конфигурация",
"system": "Система",
"integrations": "Интеграции",
"uiSettings": "Настройки интерфейса",
"profiles": "Профили",
"globalDetect": "Обнаружение объектов"
}, },
"dialog": { "dialog": {
"unsavedChanges": { "unsavedChanges": {
@ -1258,5 +1269,11 @@
"success": "Конфигурация классификации обзора была сохранена. Перезапустите Frigate для применения изменений." "success": "Конфигурация классификации обзора была сохранена. Перезапустите Frigate для применения изменений."
} }
} }
},
"button": {
"overriddenGlobal": "Перезаписано (глобально)",
"overriddenGlobalTooltip": "Эта камера перезаписывает глобальные настройки в этой секции",
"overriddenBaseConfig": "Перезаписано (базовые настройки)",
"overriddenBaseConfigTooltip": "Перезаписи настроек профиля {{profile}} в этой секции"
} }
} }

View File

@ -7,7 +7,8 @@
"logs": { "logs": {
"frigate": "Логи Frigate - Frigate", "frigate": "Логи Frigate - Frigate",
"go2rtc": "Логи Go2RTC - Frigate", "go2rtc": "Логи Go2RTC - Frigate",
"nginx": "Логи Nginx - Frigate" "nginx": "Логи Nginx - Frigate",
"websocket": "Логи сообщений - Frigate"
} }
}, },
"title": "Система", "title": "Система",
@ -33,6 +34,27 @@
"fetchingLogsFailed": "Ошибка получения логов: {{errorMessage}}", "fetchingLogsFailed": "Ошибка получения логов: {{errorMessage}}",
"whileStreamingLogs": "Ошибка при потоковой передаче логов: {{errorMessage}}" "whileStreamingLogs": "Ошибка при потоковой передаче логов: {{errorMessage}}"
} }
},
"websocket": {
"label": "Сообщения",
"pause": "Пауза",
"resume": "Продолжить",
"clear": "Очистить",
"filter": {
"all": "Все топики",
"topics": "Топики",
"events": "События",
"classification": "Классификация",
"face_recognition": "Распознавание лиц",
"lpr": "Распознавание номерных знаков",
"camera_activity": "Активность камеры",
"system": "Система",
"camera": "Камера",
"all_cameras": "Все камеры",
"cameras_count_one": "{{count}} камера",
"cameras_count_other": "{{count}} камеры"
},
"empty": "Сообщения ещё не были получены"
} }
}, },
"general": { "general": {

View File

@ -1,5 +1,17 @@
{ {
"name": { "name": {
"label": "Kamera ismi" "label": "Kamera adı",
"description": "Kamera adı gereklidir"
},
"friendly_name": {
"label": "Kolay ad",
"description": "Frigate arayüzünde kullanılacak kolay ad"
},
"enabled": {
"label": "Etkin",
"description": "Etkin"
},
"audio": {
"label": "Ses olayları"
} }
} }

View File

@ -4,5 +4,8 @@
}, },
"environment_vars": { "environment_vars": {
"label": "Ortam değişkenleri" "label": "Ortam değişkenleri"
},
"audio": {
"label": "Ses olayları"
} }
} }

View File

@ -127,7 +127,7 @@
}, },
"classifier": { "classifier": {
"label": "开启视觉分类器", "label": "开启视觉分类器",
"description": "使用视觉分类器,即使检测框有轻微抖动,也能准确判断物体是真的静止。" "description": "使用视觉分类器,即使检测框有轻微抖动,也能准确判断物体是否为静止。"
} }
}, },
"annotation_offset": { "annotation_offset": {
@ -388,19 +388,19 @@
"label": "原始遮罩" "label": "原始遮罩"
}, },
"genai": { "genai": {
"label": "GenAI 目标配置", "label": "生成式 AI 目标配置",
"description": "用于描述追踪目标和发送帧进行生成的 GenAI 选项。", "description": "用于发送画面给生成式 AI 进行生成和描述追踪目标的选项。",
"enabled": { "enabled": {
"label": "开启 GenAI", "label": "开启生成式 AI",
"description": "默认启用 GenAI 生成追踪目标的描述。" "description": "默认开启生成式 AI 生成追踪目标的描述。"
}, },
"use_snapshot": { "use_snapshot": {
"label": "使用快照", "label": "使用快照",
"description": "使用目标快照而不是缩略图进行 GenAI 描述生成。" "description": "使用目标快照而不是缩略图给生成式 AI 进行描述生成。"
}, },
"prompt": { "prompt": {
"label": "字幕提示", "label": "字幕提示",
"description": "使用 GenAI 生成描述时使用的默认提示模板。" "description": "使用生成式 AI 生成描述时使用的默认提示模板。"
}, },
"object_prompts": { "object_prompts": {
"label": "目标提示", "label": "目标提示",
@ -520,7 +520,7 @@
}, },
"preview": { "preview": {
"label": "预览配置", "label": "预览配置",
"description": "控制 UI 中显示的录像预览质量的设置。", "description": "控制界面中显示的录像预览质量的设置。",
"quality": { "quality": {
"label": "预览质量", "label": "预览质量",
"description": "预览质量级别very_low、low、medium、high、very_high。" "description": "预览质量级别very_low、low、medium、high、very_high。"
@ -622,7 +622,7 @@
"description": "描述什么是和什么不是可疑活动的自定义提示,为 GenAI 摘要提供上下文。" "description": "描述什么是和什么不是可疑活动的自定义提示,为 GenAI 摘要提供上下文。"
} }
}, },
"description": "控制此摄像头的警报、检测和 GenAI 核查摘要的设置,用于 UI 和存储。" "description": "控制此摄像头的警报、检测和生成式 AI 核查总结的设置,这些设置会被界面与存储功能使用。"
}, },
"snapshots": { "snapshots": {
"label": "快照", "label": "快照",
@ -841,7 +841,7 @@
} }
}, },
"ui": { "ui": {
"label": "摄像头 UI", "label": "摄像头页面",
"description": "此摄像头在 UI 中的显示顺序和可见性。顺序影响默认仪表板。如需更精细的控制,请使用摄像头组。", "description": "此摄像头在 UI 中的显示顺序和可见性。顺序影响默认仪表板。如需更精细的控制,请使用摄像头组。",
"order": { "order": {
"label": "UI 顺序", "label": "UI 顺序",

View File

@ -231,7 +231,7 @@
}, },
"classifier": { "classifier": {
"label": "开启视觉分类器", "label": "开启视觉分类器",
"description": "使用视觉分类器,即使检测框有轻微抖动,也能准确判断物体是真的静止。" "description": "使用视觉分类器,即使检测框有轻微抖动,也能准确判断物体是否为静止。"
} }
}, },
"annotation_offset": { "annotation_offset": {
@ -1474,7 +1474,7 @@
}, },
"roles": { "roles": {
"label": "功能", "label": "功能",
"description": "生成式 AI 功能(工具、视觉、嵌入);每个功能单独一个提供商。" "description": "生成式 AI 功能(对话、描述、嵌入);每个功能单独一个提供商。"
}, },
"provider_options": { "provider_options": {
"label": "提供商选项", "label": "提供商选项",
@ -1606,19 +1606,19 @@
"label": "原始遮罩" "label": "原始遮罩"
}, },
"genai": { "genai": {
"label": "GenAI 目标配置", "label": "生成式 AI 目标配置",
"description": "用于描述追踪目标和发送帧进行生成的 GenAI 选项。", "description": "用于发送画面给生成式 AI 进行生成和描述追踪目标的选项。",
"enabled": { "enabled": {
"label": "开启 GenAI", "label": "开启生成式 AI",
"description": "默认启用 GenAI 生成追踪目标的描述。" "description": "默认开启生成式 AI 生成追踪目标的描述。"
}, },
"use_snapshot": { "use_snapshot": {
"label": "使用快照", "label": "使用快照",
"description": "使用目标快照而不是缩略图进行 GenAI 描述生成。" "description": "使用目标快照而不是缩略图给生成式 AI 进行描述生成。"
}, },
"prompt": { "prompt": {
"label": "字幕提示", "label": "字幕提示",
"description": "使用 GenAI 生成描述时使用的默认提示模板。" "description": "使用生成式 AI 生成描述时使用的默认提示模板。"
}, },
"object_prompts": { "object_prompts": {
"label": "目标提示", "label": "目标提示",
@ -1739,7 +1739,7 @@
}, },
"preview": { "preview": {
"label": "预览配置", "label": "预览配置",
"description": "控制 UI 中显示的录像预览质量的设置。", "description": "控制界面中显示的录像预览质量的设置。",
"quality": { "quality": {
"label": "预览质量", "label": "预览质量",
"description": "预览质量级别very_low、low、medium、high、very_high。" "description": "预览质量级别very_low、low、medium、high、very_high。"

View File

@ -358,7 +358,8 @@
"object_mask": "目标遮罩" "object_mask": "目标遮罩"
}, },
"revertOverride": { "revertOverride": {
"title": "恢复为默认配置" "title": "恢复为默认配置",
"desc": "这将移除针对 {{type}} <em>{{name}}</em> 的配置覆盖,并恢复为基础配置。"
} }
}, },
"speed": { "speed": {
@ -1161,7 +1162,7 @@
}, },
"testStream": "测试连接", "testStream": "测试连接",
"testSuccess": "视频流测试成功!", "testSuccess": "视频流测试成功!",
"testFailed": "视频流测试失败", "testFailed": "连接测试失败,请检查您的输入后重试。",
"testFailedTitle": "测试失败", "testFailedTitle": "测试失败",
"connected": "已连接", "connected": "已连接",
"notConnected": "未连接", "notConnected": "未连接",
@ -1493,7 +1494,7 @@
"tls": "TLS", "tls": "TLS",
"proxy": "代理", "proxy": "代理",
"go2rtc": "go2rtc", "go2rtc": "go2rtc",
"ffmpeg": "FFmpeg", "ffmpeg": "FFmpeg 编解码",
"detectors": "检测器", "detectors": "检测器",
"genai": "生成式 AI", "genai": "生成式 AI",
"face_recognition": "人脸识别", "face_recognition": "人脸识别",
@ -1519,7 +1520,7 @@
"remove": "移除" "remove": "移除"
}, },
"roleMap": { "roleMap": {
"empty": "未配置角色映射。", "empty": "未配置权限组映射",
"addMapping": "添加角色映射", "addMapping": "添加角色映射",
"roleLabel": "角色", "roleLabel": "角色",
"groupsLabel": "用户组", "groupsLabel": "用户组",
@ -1655,7 +1656,12 @@
"summary": "已选择 {{count}} 个标签", "summary": "已选择 {{count}} 个标签",
"empty": "暂无可用标签" "empty": "暂无可用标签"
}, },
"addCustomLabel": "添加自定义标签…" "addCustomLabel": "添加自定义标签…",
"genaiModel": {
"placeholder": "选择模型…",
"search": "搜索模型…",
"noModels": "暂无模型"
}
}, },
"cameraConfig": { "cameraConfig": {
"title": "摄像头配置", "title": "摄像头配置",
@ -1795,7 +1801,7 @@
"deleteSection": "删除节点覆盖", "deleteSection": "删除节点覆盖",
"deleteSectionConfirm": "是否要移除摄像机 {{camera}} 上针对配置文件 {{profile}} 的 {{section}} 覆盖设置?", "deleteSectionConfirm": "是否要移除摄像机 {{camera}} 上针对配置文件 {{profile}} 的 {{section}} 覆盖设置?",
"deleteSectionSuccess": "已移除 {{profile}} 的 {{section}} 覆盖设置", "deleteSectionSuccess": "已移除 {{profile}} 的 {{section}} 覆盖设置",
"enableSwitch": "开启配置文件", "enableSwitch": "开启配置模板",
"enabledDescription": "配置文件功能已启用。请在下方创建新的配置文件,进入摄像头配置页面进行修改并保存,修改即可生效。", "enabledDescription": "配置文件功能已启用。请在下方创建新的配置文件,进入摄像头配置页面进行修改并保存,修改即可生效。",
"disabledDescription": "配置文件功能可以让你创建一组带名称的摄像头自定义参数(比如布防、离家、夜间模式),并随时切换启用。" "disabledDescription": "配置文件功能可以让你创建一组带名称的摄像头自定义参数(比如布防、离家、夜间模式),并随时切换启用。"
}, },
@ -1884,7 +1890,8 @@
"detectDisabled": "目标检测已禁用。快照是根据追踪到的目标生成的,因此将不会创建快照。" "detectDisabled": "目标检测已禁用。快照是根据追踪到的目标生成的,因此将不会创建快照。"
}, },
"detectors": { "detectors": {
"mixedTypes": "所有检测器必须为同一类型。若要更换为其他类型,请先移除现有的检测器。" "mixedTypes": "所有检测器必须为同一类型。若要更换为其他类型,请先移除现有的检测器。",
"mixedTypesSuggestion": "所有检测器必须使用相同类型。请移除现有检测器,或选择 {{type}}。"
} }
} }
} }