diff --git a/web/public/locales/de/common.json b/web/public/locales/de/common.json index 8ecd25ab6..b819abb56 100644 --- a/web/public/locales/de/common.json +++ b/web/public/locales/de/common.json @@ -123,7 +123,18 @@ "on": "AN", "suspended": "Pausierte", "unsuspended": "fortsetzen", - "continue": "Weiter" + "continue": "Weiter", + "add": "Hinzufügen", + "applying": "Wird angewendet…", + "undo": "Rückgängig", + "copiedToClipboard": "In die Zwischenablage kopiert", + "modified": "Verändert", + "overridden": "Überschrieben", + "resetToGlobal": "Auf Global zurückgesetzen", + "resetToDefault": "Auf Werkseinstellungen zurücksetzten", + "saveAll": "Alle speichern", + "savingAll": "Alle werden gespeichert…", + "undoAll": "Alle rückgängig" }, "label": { "back": "Zurück", diff --git a/web/public/locales/de/components/dialog.json b/web/public/locales/de/components/dialog.json index 556f1a767..e91a68fe4 100644 --- a/web/public/locales/de/components/dialog.json +++ b/web/public/locales/de/components/dialog.json @@ -74,7 +74,11 @@ "saveExport": "Export speichern", "previewExport": "Exportvorschau" }, - "export": "Exportieren" + "export": "Exportieren", + "case": { + "label": "Fall", + "placeholder": "Einen Fall auswählen" + } }, "streaming": { "restreaming": { diff --git a/web/public/locales/de/config/cameras.json b/web/public/locales/de/config/cameras.json new file mode 100644 index 000000000..15e3aeb8a --- /dev/null +++ b/web/public/locales/de/config/cameras.json @@ -0,0 +1,81 @@ +{ + "label": "KameraEinstellungen", + "name": { + "label": "Name der Kamera", + "description": "Kameraname ist erforderlich" + }, + "enabled": { + "label": "Aktiviert", + "description": "Aktiviert" + }, + "audio": { + "label": "Audioereignisse", + "description": "Einstellungen für audiobasierte Ereigniserkennung für diese Kamera.", + "enabled": { + "label": "Aktivieren der Audioerkennung", + "description": "Aktivieren / Deaktivieren der audiobasierten Ereigniserkennung für diese Kamera." + }, + "min_volume": { + "label": "Mindestlautstärke", + "description": "Mindest-RMS-Lautstärkeschwelle, die für die Audioerkennung erforderlich ist; niedrigere Werte erhöhen die Empfindlichkeit (z. B. 200 hoch, 500 mittel, 1000 niedrig)." + }, + "listen": { + "description": "Liste der zu erkennenden Audioereignisse (z.B: bellen, Feueralarm, schreien, sprechen, rufen).", + "label": "Hörtypen" + }, + "filters": { + "label": "Audiofilter", + "description": "Filtereinstellungen pro Audiotyp, wie z. B. Konfidenzschwellenwerte, die zur Reduzierung von Fehlalarmen verwendet werden." + }, + "max_not_heard": { + "label": "Zeitüberschreitung beendet", + "description": "Anzahl der Sekunden ohne den konfigurierten Audiotyp, bevor das Audioereignis beendet wird." + }, + "enabled_in_config": { + "label": "Ursprünglicher Audiozustand", + "description": "Gibt an, ob die Audioerkennung ursprünglich in der statischen Konfigurationsdatei aktiviert war." + }, + "num_threads": { + "label": "Erkennungsthreads", + "description": "Anzahl der Threads, die für die Audioerkennungsverarbeitung verwendet werden sollen." + } + }, + "friendly_name": { + "label": "Anzeigename", + "description": "Kamera-Anzeigename in der Frigate-Benutzeroberfläche" + }, + "audio_transcription": { + "label": "Audio-Transkription", + "description": "Einstellungen für Live- und Sprach-Audio-Transkription, die für Veranstaltungen und Live-Untertitel verwendet werden.", + "enabled": { + "label": "Transkription aktivieren", + "description": "Aktivieren oder deaktivieren Sie die manuell ausgelöste Transkription von Audioereignissen." + }, + "enabled_in_config": { + "label": "Ursprünglicher Transkriptionszustand" + }, + "live_enabled": { + "label": "Live-Transkription", + "description": "Aktivieren Sie die Live-Transkription für Audio, sobald es empfangen wird." + } + }, + "birdseye": { + "label": "Birdseye", + "description": "Einstellungen für die Birdseye-Kompositansicht, die mehrere Kamerafeeds zu einem einzigen Layout zusammenfasst.", + "enabled": { + "label": "Birdseye aktivieren", + "description": "Aktivieren oder deaktivieren der Birdseye-Funktion." + }, + "mode": { + "label": "Verfolgungsmodus", + "description": "Modus zum Einbeziehen von Kameras in Birdseye: „Objekte“, „Bewegung“ oder „kontinuierlich“." + }, + "order": { + "label": "Position", + "description": "Numerische Position, die die Reihenfolge der Kamera im Birdseye-Layout steuert." + } + }, + "detect": { + "label": "Objekterkennung" + } +} diff --git a/web/public/locales/de/config/global.json b/web/public/locales/de/config/global.json new file mode 100644 index 000000000..9c4d940d8 --- /dev/null +++ b/web/public/locales/de/config/global.json @@ -0,0 +1,138 @@ +{ + "version": { + "label": "Aktuelle Version der Konfiguration", + "description": "Die Version Numerisch oder als Zeichenketten der aktiven Konfiguration, um Migrationen oder Formatänderungen zu erkennen." + }, + "safe_mode": { + "label": "abgesicherter Modus", + "description": "Wenn aktiviert, starte Frigate im abgesicherten Modus mit reduzierten Features für die Fehlersuche." + }, + "audio": { + "label": "Audioereignisse", + "enabled": { + "label": "Aktivieren der Audioerkennung" + }, + "min_volume": { + "label": "Mindestlautstärke", + "description": "Mindest-RMS-Lautstärkeschwelle, die für die Audioerkennung erforderlich ist; niedrigere Werte erhöhen die Empfindlichkeit (z. B. 200 hoch, 500 mittel, 1000 niedrig)." + }, + "listen": { + "description": "Liste der zu erkennenden Audioereignisse (z.B: bellen, Feueralarm, schreien, sprechen, rufen).", + "label": "Hörtypen" + }, + "filters": { + "label": "Audiofilter", + "description": "Filtereinstellungen pro Audiotyp, wie z. B. Konfidenzschwellenwerte, die zur Reduzierung von Fehlalarmen verwendet werden." + }, + "max_not_heard": { + "label": "Zeitüberschreitung beendet", + "description": "Anzahl der Sekunden ohne den konfigurierten Audiotyp, bevor das Audioereignis beendet wird." + }, + "enabled_in_config": { + "label": "Ursprünglicher Audiozustand", + "description": "Gibt an, ob die Audioerkennung ursprünglich in der statischen Konfigurationsdatei aktiviert war." + }, + "num_threads": { + "label": "Erkennungsthreads", + "description": "Anzahl der Threads, die für die Audioerkennungsverarbeitung verwendet werden sollen." + } + }, + "environment_vars": { + "label": "Umgebungsvariablen", + "description": "Schlüssel-/Wertpaare für Umgebungsvariablen des Frigate-Prozesses in Home Assistant OS. Nicht-HAOS Benutzer müssen anstatt dessen Docker Umgebungsvariablen nutzen." + }, + "logger": { + "label": "Protokollierung", + "description": "Steuert die Standard-Protokollierungsausführlichkeit und Überschreibungen der Protokollierungsstufe pro Komponente.", + "default": { + "label": "Loglevel", + "description": "Standardmäßiges globales Log Level (Debug, Info, Warnung, Fehler)." + }, + "logs": { + "label": "Prozessspezifisches Log Level", + "description": "Überschreiben der Protokollierungsstufe pro Komponente, um die Ausführlichkeit für bestimmte Module zu erhöhen oder zu verringern." + } + }, + "auth": { + "label": "Authentifizierung", + "description": "Einstellungen für die Authentifizierung und Sitzungen, einschließlich Optionen für Cookies und Limits.", + "enabled": { + "label": "Authentifizierung aktivieren", + "description": "Aktivierung native Authentifizierung für Frigate UI." + }, + "reset_admin_password": { + "label": "Zurücksetzen vom Admin Passwort", + "description": "Wenn wahr, wird das Passwort beim nächsten start zurückgesetzt und das neue Passwort steht in den Logs." + }, + "cookie_name": { + "label": "JWT cookie Name", + "description": "Name des Cookies, das zum Speichern des JWT-Tokens für die native Authentifizierung verwendet wird." + }, + "cookie_secure": { + "label": "Sicheres Cookie-Flag", + "description": "Setzen Sie das Sicherheitsflag im Authentifizierungs-Cookie; sollte bei Verwendung von TLS auf „true“ gesetzt sein." + }, + "session_length": { + "label": "Sitzungssdauer", + "description": "Sitzungsdauer in Sekunden für JWT-basierte Sitzungen." + }, + "refresh_time": { + "label": "Sitzung aktualisieren", + "description": "Wenn eine Sitzung innerhalb dieser Sekunden abläuft, aktualisieren Sie sie wieder auf ihre volle Länge." + }, + "failed_login_rate_limit": { + "label": "Fehlgeschlagene Anmeldeversuche", + "description": "Begrenzungsregeln für fehlgeschlagene Anmeldeversuche zur Reduzierung von Brute-Force-Angriffen." + }, + "trusted_proxies": { + "label": "Vertrauenswürdige Proxys", + "description": "Liste vertrauenswürdiger Proxy-IPs, die bei der Ermittlung der Client-IP für die Ratenbegrenzung verwendet werden." + }, + "hash_iterations": { + "label": "Hash-Iterationen", + "description": "Anzahl der PBKDF2-SHA256-Iterationen, die beim Hashing von Benutzerkennwörtern verwendet werden sollen." + }, + "roles": { + "label": "Rollen zuweisen", + "description": "Ordnen Sie Rollen zu Kameralisten zu. Eine leere Liste gewährt der Rolle Zugriff auf alle Kameras." + }, + "admin_first_time_login": { + "label": "Erstmalige Admin-Markierung", + "description": "Wenn dies zutrifft, zeigt die Benutzeroberfläche möglicherweise einen Hilfe-Link auf der Anmeldeseite an, der Benutzer darüber informiert, wie sie sich nach einer Zurücksetzung des Administratorpassworts anmelden können. " + } + }, + "audio_transcription": { + "label": "Audio-Transkription", + "description": "Einstellungen für Live- und Sprach-Audio-Transkription, die für Veranstaltungen und Live-Untertitel verwendet werden.", + "live_enabled": { + "label": "Live-Transkription", + "description": "Aktivieren Sie die Live-Transkription für Audio, sobald es empfangen wird." + } + }, + "birdseye": { + "label": "Birdseye", + "description": "Einstellungen für die Birdseye-Kompositansicht, die mehrere Kamerafeeds zu einem einzigen Layout zusammenfasst.", + "enabled": { + "label": "Birdseye aktivieren", + "description": "Aktivieren oder deaktivieren der Birdseye-Funktion." + }, + "mode": { + "label": "Verfolgungsmodus", + "description": "Modus zum Einbeziehen von Kameras in Birdseye: „Objekte“, „Bewegung“ oder „kontinuierlich“." + }, + "order": { + "label": "Position", + "description": "Numerische Position, die die Reihenfolge der Kamera im Birdseye-Layout steuert." + } + }, + "database": { + "label": "Datenbank", + "description": "Einstellungen für die SQLite-Datenbank, die von Frigate zum Speichern von verfolgten Objekten und Aufzeichnungsmetadaten verwendet wird.", + "path": { + "label": "Pfad zur Datenbank" + } + }, + "detect": { + "label": "Objekterkennung" + } +} diff --git a/web/public/locales/de/config/groups.json b/web/public/locales/de/config/groups.json new file mode 100644 index 000000000..3e3ae0379 --- /dev/null +++ b/web/public/locales/de/config/groups.json @@ -0,0 +1,73 @@ +{ + "audio": { + "global": { + "detection": "Globale Erkennung", + "sensitivity": "Globale Empfindlichkeit" + }, + "cameras": { + "detection": "Erkennung", + "sensitivity": "Empfindlichkeit" + } + }, + "timestamp_style": { + "global": { + "appearance": "Globale Darstellung" + }, + "cameras": { + "appearance": "Erscheinungsbild" + } + }, + "motion": { + "global": { + "sensitivity": "Globale Empfindlichkeit", + "algorithm": "Globaler Algorithmus" + }, + "cameras": { + "sensitivity": "Genauhigkeit", + "algorithm": "Algorithmus" + } + }, + "snapshots": { + "global": { + "display": "Globale Anzeige" + }, + "cameras": { + "display": "Anzeige" + } + }, + "detect": { + "global": { + "resolution": "Globale Auflösung", + "tracking": "Globale Verfolgung" + }, + "cameras": { + "resolution": "Auflösung", + "tracking": "Verfolgung" + } + }, + "objects": { + "global": { + "tracking": "Globale Verfolgung", + "filtering": "Globaler Filter" + }, + "cameras": { + "tracking": "Verfolgung", + "filtering": "Filtern" + } + }, + "record": { + "global": { + "retention": "Globale Bindung", + "events": "Globale Ereignisse" + }, + "cameras": { + "retention": "Bindung", + "events": "Events" + } + }, + "ffmpeg": { + "cameras": { + "cameraFfmpeg": "Kameraspezifische FFmpeg-Argumente" + } + } +} diff --git a/web/public/locales/de/config/validation.json b/web/public/locales/de/config/validation.json new file mode 100644 index 000000000..2bdc76da3 --- /dev/null +++ b/web/public/locales/de/config/validation.json @@ -0,0 +1,32 @@ +{ + "maximum": "Darf nicht größer sein als {{limit}}", + "minimum": "Darf nicht kleiner sein als {{limit}}", + "exclusiveMinimum": "Muss größer sein als {{limit}}", + "minLength": "Muss mindestens {{limit}} Zeichen lang sein", + "maxLength": "Muss maximal {{limit}} Zeichen lang sein", + "minItems": "Muss mindestens {{limit}} mal vorkommen", + "exclusiveMaximum": "Muss kleiner sein als {{limit}}", + "maxItems": "Muss maximal {{limit}} mal vorkommen", + "pattern": "Ungültiges Format", + "required": "Pflichtfeld", + "type": "Ungültiger Wertetyp", + "enum": "Muss einer der erlaubten Werte sein", + "const": "Wert stimmt nicht mit erwarteter Konstante überein", + "uniqueItems": "Alle Einträge müssen eindeutig sein", + "format": "Ungültiges Format", + "additionalProperties": "Unbekannte Eigenschaft ist nicht erlaubt", + "oneOf": "Muss exakt mit einem der erlaubten Schemas übereinstimmen", + "anyOf": "Muss mindestens mit einem der erlaubten Schemas übereinstimmen", + "proxy": { + "header_map": { + "roleHeaderRequired": "Rollen-Header muss angegeben werden, wenn Rollen-Zuordnungen konfiguriert sind." + } + }, + "ffmpeg": { + "inputs": { + "rolesUnique": "Jede Rolle kann nur einem input stream zugeteilt werden.", + "detectRequired": "Es muss mindestens ein input stream die Rolle 'erkennen' tragen.", + "hwaccelDetectOnly": "Nur der input-stream mit der Rolle 'erkennen' kann Hardwarebeschleunigungs Argumente definieren." + } + } +} diff --git a/web/public/locales/de/views/exports.json b/web/public/locales/de/views/exports.json index c3bae1239..216cd859b 100644 --- a/web/public/locales/de/views/exports.json +++ b/web/public/locales/de/views/exports.json @@ -11,13 +11,27 @@ "noExports": "Keine Exporte gefunden", "toast": { "error": { - "renameExportFailed": "Umbenennen des Exports fehlgeschlagen: {{errorMessage}}" + "renameExportFailed": "Umbenennen des Exports fehlgeschlagen: {{errorMessage}}", + "assignCaseFailed": "Aktualisierung der Fallzuweisung fehlgeschlagen: {{errorMessage}}" } }, "tooltip": { "shareExport": "Export teilen", "downloadVideo": "Video herunterladen", "editName": "Name ändern", - "deleteExport": "Export löschen" + "deleteExport": "Export löschen", + "assignToCase": "Hinzufügen zum Fall" + }, + "headings": { + "cases": "Fälle", + "uncategorizedExports": "Unkategorisierte Exporte" + }, + "caseDialog": { + "title": "Zum Fall hinzufügen", + "description": "Wählen Sie einen bestehenden Fall aus oder erstellen Sie einen neuen.", + "selectLabel": "Fall", + "newCaseOption": "Neuen Fall erstellen", + "nameLabel": "Fallname", + "descriptionLabel": "Beschreibung" } } diff --git a/web/public/locales/de/views/settings.json b/web/public/locales/de/views/settings.json index 35d1598fe..3d2ef0ee8 100644 --- a/web/public/locales/de/views/settings.json +++ b/web/public/locales/de/views/settings.json @@ -5,14 +5,17 @@ "camera": "Kameraeinstellungen - Frigate", "masksAndZones": "Masken- und Zoneneditor – Frigate", "object": "Debug - Frigate", - "general": "UI-Einstellungen - Frigate", + "general": "Profileinstellungen - Frigate", "frigatePlus": "Frigate+ Einstellungen – Frigate", "classification": "Klassifizierungseinstellungen – Frigate", "motionTuner": "Bewegungserkennungs-Optimierer – Frigate", "notifications": "Benachrichtigungseinstellungen", "enrichments": "Erweiterte Statistiken - Frigate", "cameraManagement": "Kameras verwalten - Frigate", - "cameraReview": "Kameraeinstellungen prüfen - Frigate" + "cameraReview": "Kameraeinstellungen prüfen - Frigate", + "globalConfig": "Globale Konfiguration - Frigate", + "cameraConfig": "Kamera Konfiguration - Frigate", + "maintenance": "Wartung - Frigate" }, "menu": { "ui": "Benutzeroberfläche", @@ -28,7 +31,31 @@ "triggers": "Auslöser", "roles": "Rollen", "cameraManagement": "Verwaltung", - "cameraReview": "Überprüfung" + "cameraReview": "Überprüfung", + "system": "System", + "general": "allgemein", + "globalConfig": "Globale Konfiguration", + "integrations": "Integrationen", + "profileSettings": "Profil Einstellung", + "globalDetect": "Objekterkennung", + "globalRecording": "Aufnahme", + "globalSnapshots": "Schnappschüsse", + "globalFfmpeg": "FFmpeg", + "globalMotion": "Bewegungserkennung", + "globalObjects": "Objekte", + "globalReview": "Überprüfung", + "globalAudioEvents": "Audio Events", + "globalLivePlayback": "Live Wiedergabe", + "globalTimestampStyle": "Zeitstempelformat", + "systemDatabase": "Datenbank", + "systemTls": "TLS", + "systemAuthentication": "Authentifizierung", + "systemNetworking": "Netzwerk", + "systemProxy": "Proxy", + "systemUi": "UI", + "systemLogging": "Log", + "systemEnvironmentVariables": "Umgebungsvariablen", + "systemTelemetry": "Telemetrie" }, "dialog": { "unsavedChanges": { @@ -41,7 +68,7 @@ "noCamera": "Keine Kamera" }, "general": { - "title": "Einstellungen der Benutzeroberfläche", + "title": "Profileinstellungen", "liveDashboard": { "title": "Live Übersicht", "playAlertVideos": { @@ -408,7 +435,7 @@ } }, "motionMaskLabel": "Bewegungsmaske {{number}}", - "objectMaskLabel": "Objektmaske {{number}} ({{label}})" + "objectMaskLabel": "Objektmaske {{number}}" }, "debug": { "objectShapeFilterDrawing": { diff --git a/web/public/locales/de/views/system.json b/web/public/locales/de/views/system.json index 0437c65b1..70f8f3d6d 100644 --- a/web/public/locales/de/views/system.json +++ b/web/public/locales/de/views/system.json @@ -67,7 +67,8 @@ "logs": { "frigate": "Frigate Protokolle – Frigate", "go2rtc": "Go2RTC Protokolle - Frigate", - "nginx": "Nginx Protokolle - Frigate" + "nginx": "Nginx Protokolle - Frigate", + "websocket": "Nachrichten Logs- Frigate" }, "enrichments": "Erweiterte Statistiken - Frigate" }, @@ -93,7 +94,32 @@ "whileStreamingLogs": "Beim Übertragen der Protokolle ist ein Fehler aufgetreten: {{errorMessage}}" } }, - "tips": "Protokolle werden in Echtzeit vom Server übertragen" + "tips": "Protokolle werden in Echtzeit vom Server übertragen", + "websocket": { + "label": "Nachrichten", + "pause": "Pause", + "clear": "Säubern", + "filter": { + "all": "alle Themen", + "topics": "Themen", + "events": "Event", + "reviews": "Bewertungen", + "classification": "Klassifizierung", + "face_recognition": "Gesichtserkennung", + "lpr": "LPR", + "camera_activity": "Kameraaktivität", + "system": "System", + "camera": "Kamera", + "all_cameras": "Alle Kameras", + "cameras_count_one": "{{count}} Kamera", + "cameras_count_other": "{{count}} Kameras" + }, + "empty": "Noch keine Nachrichten erfasst", + "count": "{{count}} Nachrichten", + "expanded": { + "payload": "Nutzlast" + } + } }, "metrics": "Systemmetriken", "storage": {