From 540ece7ec6170a7699063db5c6b49809b643b4e9 Mon Sep 17 00:00:00 2001 From: eafonyang Date: Mon, 22 Jun 2026 14:51:53 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E5=BE=B7=E6=96=87/=E6=B3=95?= =?UTF-8?q?=E6=96=87/=E8=A5=BF=E7=8F=AD=E7=89=99=E6=96=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- client/public/.gitkeep | 0 client/src/locales/data-de.json | 626 ++++++++++++++++++++++++++++++++ client/src/locales/data-en.json | 280 +++----------- client/src/locales/data-es.json | 626 ++++++++++++++++++++++++++++++++ client/src/locales/data-fr.json | 626 ++++++++++++++++++++++++++++++++ 5 files changed, 1934 insertions(+), 224 deletions(-) delete mode 100644 client/public/.gitkeep create mode 100644 client/src/locales/data-de.json create mode 100644 client/src/locales/data-es.json create mode 100644 client/src/locales/data-fr.json diff --git a/client/public/.gitkeep b/client/public/.gitkeep deleted file mode 100644 index e69de29..0000000 diff --git a/client/src/locales/data-de.json b/client/src/locales/data-de.json new file mode 100644 index 0000000..5f9096d --- /dev/null +++ b/client/src/locales/data-de.json @@ -0,0 +1,626 @@ +{ + "connect": { + "ipMissingTitle": "Geräte-IP nicht angegeben", + "ipMissingDesc": "Bitte fügen Sie die Geräte-IP in der Adressleiste hinzu, bevor Sie diese Seite öffnen, zum Beispiel:", + "connecting": "Verbindung zu {ip}…", + "failedTitle": "Verbindung fehlgeschlagen", + "failedDesc": "Überprüfen Sie die Geräte-IP und Ihre Netzwerkverbindung.", + "failedHint": "Geben Sie das Gerät in der URL an, z.B. ?ip=10.0.0.119" + }, + "home": { + "audioSet": "Audioeinstellung", + "systemSet": "System", + "power": "Stromversorgung", + "input": "Eingang", + "output": "Ausgang", + "vu": "VU-Meter", + "powerOffConfirmTitle": "Gerät ausschalten?", + "powerOffConfirmDesc": "Das Gerät wird heruntergefahren und von dieser App getrennt. Möchten Sie fortfahren?", + "powerOffConfirmOk": "Ausschalten", + "powerOffConfirmCancel": "Abbrechen", + "volumeMinConfirmTitle": "Lautstärke auf Minimum setzen?", + "volumeMinConfirmDesc": "Die Lautstärke wird auf den niedrigsten Wert (Stummschaltung) gesetzt. Fortfahren?", + "volumeMinConfirmOk": "Auf Minimum setzen", + "volumeMaxConfirmTitle": "Lautstärke auf Maximum setzen?", + "volumeMaxConfirmDesc": "Die Lautstärke wird auf den höchsten Wert gesetzt. Fortfahren?", + "volumeMaxConfirmOk": "Auf Maximum setzen", + "volumePassthroughHint": "Lautstärke-Durchleitung ist aktiv; Lautstärke kann nicht angepasst werden", + "volumePassthroughBlocked": "Lautstärke-Durchleitung ist aktiv ({mode}). Kopfhörerlautstärke ist fest. Schalten Sie die Durchleitung in den Audioeinstellungen aus.", + "volumePassthroughMode0dB": "0dB", + "volumePassthroughMode12dB": "-12dB", + "powerOffToastDemo": "Demomodus: Vom Gerät getrennt.", + "powerOffToastSent": "Abschaltbefehl gesendet.", + "doubleClickHint": "Doppelklick zum Eintreten", + "backToLegacy": "Alte Version" + }, + "vuPage": { + "title": "VU-Meter Galerie" + }, + "bottomNav": { + "community": "Community", + "hpEq": "HP-EQ", + "home": "Startseite", + "effects": "Effekte", + "myAi": "Meine KI" + }, + "communityPage": { + "title": "Community", + "intro": "Das Forum öffnet sich am besten in Ihrem Systembrowser. Kopieren Sie den vollständigen Link unten, fügen Sie ihn in die Adressleiste Ihres mobilen Browsers ein und öffnen Sie ihn.", + "copyLink": "Link kopieren", + "toastCopied": "Link kopiert", + "toastCopyFailed": "Kopieren nicht möglich. Halten Sie den Link gedrückt, um ihn manuell zu kopieren." + }, + "source": { + "label": "Eingang/Ausgang", + "pageTitle": "I/O", + "inputSection": "Eingang", + "outputSection": "Ausgang", + "inputOptions": ["USB-B", "USB-C", "Koaxial", "Optisch", "Bluetooth", "HDMI-EARC", "RCA", "USB Driver"], + "outputOptions": ["XLR", "RCA", "XLR/RCA", "Kopfhörer"], + "input": { + "coaxial": "KOAXIAL", + "optical": "OPTISCH", + "bluetooth": "BLUETOOTH", + "rca": "RCA" + }, + "output": { + "headset": "Kopfhörer" + } + }, + "effect": { + "pageTitle": "Effekte", + "selectStyleTitle": "Klangstil auswählen", + "selectCrossfeedTitle": "Crossfeed-Voreinstellung auswählen", + "lowBass": "Bass", + "enterBass": "Mitten", + "highBass": "Höhen", + "tone": "Ton", + "loudness": "Lautheit", + "threshold": "Schwellenwert", + "delayed": "Verzögerung", + "mainframeCase": "Hauptlautsprecher", + "subwooferUnit": "Subwoofer", + "style": { + "label": "Stil", + "options": [ + { "index": 0, "label": "Klassik" }, + { "index": 1, "label": "Dance" }, + { "index": 2, "label": "Pop" }, + { "index": 3, "label": "Reggae" }, + { "index": 4, "label": "Live" }, + { "index": 5, "label": "Rock" }, + { "index": 6, "label": "Soft" }, + { "index": 7, "label": "Elektronik" }, + { "index": 8, "label": "Club" }, + { "index": 9, "label": "Voller Bass" }, + { "index": 10, "label": "Volle Höhen" }, + { "index": 11, "label": "Kopfhörer" }, + { "index": 12, "label": "Halle" }, + { "index": 13, "label": "Party" }, + { "index": 14, "label": "Ska" }, + { "index": 15, "label": "Slow Rock" } + ] + }, + "stereoWidth": { "label": "Stereobreite" }, + "crossfeed": { + "label": "Crossfeed", + "options": [ + "BS2B Standard (700 Hz, 4,5 dB)", + "BS2B Populär (700 Hz, 6 dB)", + "BS2B Entspannt (650 Hz, 9,5 dB)" + ] + }, + "subwoofer": { + "label": "Subwoofer", + "cutOffFrequency": "Trennfrequenz", + "subFullRange": "Sub Vollbereich", + "mainFullRange": "Haupt Vollbereich", + "attenuationSlope": "Dämpfungssteilheit", + "gain": "Verstärkung", + "selectAttenuationTitle": "Dämpfungssteilheit auswählen", + "selectOutputTitle": "Ausgangstyp auswählen", + "rateOptions": [ + "6dB/oct", + "12dB/oct", + "18dB/oct", + "24dB/oct", + "30dB/oct", + "36dB/oct", + "42dB/oct", + "48dB/oct" + ], + "output": { + "label": "Ausgangstyp", + "options": [ + { "label": "Mono(Mix)", "index": 0 }, + { "label": "Stereo", "index": 1 } + ] + }, + "delay": { + "label": "Verzögerung", + "mainSpeaker": "Hauptlautsprecher", + "subwoofer": "Subwoofer", + "leftChannel": "Linker Kanal", + "rightChannel": "Rechter Kanal" + } + }, + "enableConfirmTitle": "Effekte sind aus", + "enableConfirmDesc": "Effekte sind derzeit deaktiviert. Einschalten?", + "enableConfirmOk": "Einschalten", + "enableConfirmCancel": "Abbrechen" + }, + "peq": { + "Standard": "Standard-Equalizer-Voreinstellung", + "edit": "Stapelbearbeitung", + "headset": "Kopfhörer hinzufügen", + "share": "EQ teilen", + "preamp": "Vorverstärkung", + "filters": { + "label": "Filter", + "options": [ + { + "index": 0, + "title": "LPF", + "desc1": "Tiefpassfilter, lässt nur Signale ", + "desc2": "unterhalb einer bestimmten Grenzfrequenz passieren, ", + "desc3": "und hochfrequente Signale werden gedämpft.", + "img": "LPF.png" + }, + { + "index": 1, + "title": "HPF", + "desc1": "Hochpassfilter, lässt nur Signale ", + "desc2": "oberhalb einer bestimmten Grenzfrequenz passieren,", + "desc3": "und niederfrequente Signale werden gedämpft.", + "img": "HPF.png" + }, + { + "index": 2, + "title": "BPF", + "img": "BPF.png", + "desc1": "Bandpassfilter, lässt nur Signale", + "desc2": "in einem bestimmten Frequenzbereich passieren, ", + "desc3": "und andere Frequenzen werden gedämpft." + }, + { + "index": 3, + "title": "NOTCH", + "img": "NOTCH.png", + "desc1": "Kerbfilter, zur Eliminierung von Resonanzen", + "desc2": "oder Störsignalen bei bestimmten Frequenzen." + }, + { + "index": 4, + "title": "PEAK", + "img": "PEAK.png", + "desc1": "Peak-Filter, verstärkt oder dämpft das ", + "desc2": "Signal um eine bestimmte Frequenz." + }, + { + "index": 5, + "title": "LSHELF", + "img": "LSHELF.png", + "desc1": "Tiefshelf-Filter, zur Verstärkung oder ", + "desc2": "Absenkung von Niederfrequenzsignalen." + }, + { + "index": 5, + "title": "HSHELF", + "img": "HSHELF.png", + "desc1": "Hochshelf-Filter, zur Verstärkung oder ", + "desc2": "Absenkung von Hochfrequenzsignalen." + }, + { + "index": 6, + "title": "APF", + "img": "APF.png", + "desc1": "Allpassfilter, die Amplitude des Ausgangs-", + "desc2": "signals bleibt unverändert, aber die Phase ändert sich." + } + ] + }, + "freq": "FREQ", + "gain": "GAIN", + "q": "Q-Wert", + "loadDeviceBtn": "Bestätigen", + "peqNoneItem": "Nicht konfiguriert", + "eqUi": { + "batchEditTitle": "Stapelbearbeitung", + "batchEditHint": "11 Zeilen insgesamt: Zeile 1 ist Preamp, Zeilen 2–11 sind Filter 1–10. Speichern überschreibt die aktuelle Kopfhörer-Voreinstellung.", + "addPresetTitle": "Neue Voreinstellung", + "addPresetNameEmpty": "Name darf nicht leer sein", + "addPresetNameExists": "Dieser Name existiert bereits. Wählen Sie einen anderen.", + "overwritePresetTitle": "Voreinstellung existiert bereits", + "overwritePresetDesc": "Eine Voreinstellung mit dem Namen \"{{name}}\" existiert bereits. Überschreiben?", + "overwritePresetConfirm": "Überschreiben", + "overwritePresetCancelled": "Abgebrochen", + "toastAddPresetOk": "Voreinstellung hinzugefügt", + "toastAddPresetFail": "Hinzufügen der Voreinstellung fehlgeschlagen", + "toastPresetLimitReached": "Voreinstellungslimit erreicht ({{max}}). Löschen Sie einige Voreinstellungen, bevor Sie weitere hinzufügen.", + "cancel": "Abbrechen", + "save": "Speichern", + "tabBrands": "Marken", + "tabModels": "Modelle", + "tabTarget": "Ziel", + "searchPlaceholder": "Marke oder Modell suchen", + "searching": "Suche…", + "noSearchResults": "Keine passende Marke oder Modell", + "loading": "Laden…", + "noBrandMatch": "Keine passenden Marken", + "selectBrandFirst": "Wählen Sie zuerst eine Marke im Marken-Tab", + "brandLabel": "Marke:", + "modelFromSearchLabel": "Modell aus Suche:", + "noModelsForBrand": "Keine Modelle für diese Marke", + "targetBrand": "Marke:", + "targetModel": "Modell:", + "targetForm": "Form:", + "formAll": "Alle", + "confirmLoading": "Verarbeitung…", + "confirmButton": "Bestätigen", + "selectModelFirst": "Bitte zuerst ein Modell auswählen", + "noTargets": "Keine Zielkurven verfügbar", + "closeDrawer": "Schließen", + "toastBatchApplied": "Stapelbearbeitung angewendet", + "toastBatchParseError": "Ungültiges Stapelbearbeitungsformat", + "toastBrandsFail": "Laden der Marken fehlgeschlagen", + "toastModelsFail": "Laden der Modelle fehlgeschlagen", + "toastCurveFail": "Laden der Kurve fehlgeschlagen", + "toastNewEqOk": "Neuer Kopfhörer-EQ gespeichert", + "toastTargetSelected": "Ziel ausgewählt: {{name}}", + "deleteConfirm": "Kopfhörer \"{{name}}\" löschen?", + "batchDeleteConfirm": "{{count}} ausgewählte Voreinstellung(en) löschen?", + "deletePresetConfirm": "Voreinstellung \"{{name}}\" löschen?", + "toastRenamed": "Umbenannt", + "toastRenameFail": "Umbenennung fehlgeschlagen", + "renameEmptyName": "Name darf nicht leer sein", + "renameNameExists": "Name existiert bereits", + "toastDeleted": "Kopfhörer entfernt", + "toastDeleteFail": "Löschen des Kopfhörers fehlgeschlagen", + "bassBoost": "Bassverstärkung: fc {{fc}}, q {{q}}, gain {{gain}} dB", + "errMinLines": "Mindestens 11 Zeilen erforderlich (Preamp + 10 Filter)", + "errPreampFirstLine": "Zeile 1 muss wie Preamp:-5.96dB aussehen", + "errPreampValue": "Ungültiger Preamp-Wert", + "errFilterLine": "Zeile {{line}} entspricht nicht dem Filter-Format", + "errFilterNoRange": "Filter Nummer {{no}} ist außerhalb des Bereichs", + "errFilterType": "Ungültiger Typ für Filter {{no}} ({{type}})", + "errFilterNumbers": "Ungültige Zahlen für Filter {{no}}", + "errFilterAll": "Filter 1–10 müssen alle vorhanden sein", + "chartCopyTo": "Kopieren nach {{mode}}", + "chartApplyB": "B anwenden", + "chartSaveB": "B speichern als", + "saveBTitle": "B speichern als", + "toastChartCopied": "Kopiert nach {{mode}}", + "toastApplyBSuccess": "Kurve B auf A angewendet", + "toastApplyBFail": "Anwendung von B fehlgeschlagen", + "toastSaveBOk": "Voreinstellung aus Kurve B gespeichert", + "toastSaveBFail": "Speichern von Kurve B fehlgeschlagen", + "enableConfirmTitle": "HP-EQ ist aus", + "enableConfirmDesc": "HP-EQ ist derzeit deaktiviert. Einschalten?", + "enableConfirmOk": "Einschalten", + "paramInputTitleFreq": "Frequenz einstellen", + "paramInputTitleGain": "Verstärkung einstellen", + "paramInputTitleQ": "Q-Wert einstellen", + "paramInputHintFreq": "Bereich: 20 – 20000 Hz. Verwenden Sie k für kHz (z.B. 9,5k).", + "paramInputHintGain": "Bereich: -15,0 – +15,0 dB", + "paramInputHintQ": "Bereich: 0,10 – 10,00", + "paramInputInvalid": "Geben Sie eine gültige Zahl ein", + "paramInputOutOfRangeFreq": "Frequenz muss zwischen {{min}} und {{max}} Hz liegen", + "paramInputOutOfRangeGain": "Verstärkung muss zwischen {{min}} und {{max}} dB liegen", + "paramInputOutOfRangeQ": "Q muss zwischen {{min}} und {{max}} liegen", + "shareTitle": "EQ teilen", + "shareSelectHint": "Wählen Sie die zu teilende EQ-Voreinstellung", + "shareConfirm": "Code generieren", + "shareCodeLabel": "Freigabecode", + "shareCopied": "Code kopiert", + "shareGenerating": "Generierung…", + "shareCreateFail": "Generierung des Freigabecodes fehlgeschlagen", + "shareActiveExists": "Sie haben bereits einen aktiven Freigabecode. Bitte versuchen Sie es später erneut.", + "shareInvalidParams": "Ungültige Anfrage. Bitte überprüfen und erneut versuchen.", + "shareSystemError": "Systemfehler. Bitte versuchen Sie es später erneut.", + "shareExpireAt": "Gültig bis", + "importTab": "EQ importieren", + "importCodeHint": "Geben Sie den 5-stelligen Freigabecode ein oder fügen Sie ihn ein", + "importQuery": "Abfrage", + "importQuerying": "Abfrage läuft…", + "importCodeNotFound": "Freigabecode nicht gefunden oder abgelaufen", + "importEqName": "EQ-Name", + "importEqNameHint": "Sie können den Namen anpassen", + "importSourceModel": "Quellgerät", + "importButton": "Importieren", + "importSaving": "Importieren…", + "importSuccess": "EQ erfolgreich importiert", + "importFail": "Import des EQ fehlgeschlagen", + "mySharesTab": "Meine Freigaben", + "mySharesLoading": "Laden…", + "mySharesEmpty": "Noch kein EQ geteilt", + "mySharesCode": "Code", + "mySharesName": "EQ-Name", + "mySharesLoadFail": "Laden der Freigabeliste fehlgeschlagen", + "mySharesDeleteConfirmTitle": "Freigabecode löschen", + "mySharesDeleteConfirmDesc": "Freigabecode {{code}} löschen? Er wird nicht mehr zum Import verfügbar sein.", + "mySharesDeleteConfirmOk": "Löschen", + "mySharesDeleteSuccess": "Freigabecode gelöscht", + "mySharesDeleteFail": "Löschen des Freigabecodes fehlgeschlagen" + } + }, + "dac": { + "sectionBalanceSensitivity": "Balance & Empfindlichkeit", + "sectionOutput": "Ausgangsmerkmale", + "sectionIisSettings": "IIS-Einstellungen", + "sectionSystemInterface": "System & Schnittstelle", + "balance": "Links-Rechts-Balance", + "sensitivity": "VU-Meter Empfindlichkeit", + "analogInputGain": "Analoge Eingangsverstärkung", + "autoImpedanceDetection": "Automatische Impedanz-Erkennung", + "dacVolumeDirect": { + "label": "Vorverstärker-Lautstärke-Durchleitung", + "options": [ + { "index": 0, "label": "Aus" }, + { "index": 1, "label": "0dB" }, + { "index": 2, "label": "-12dB" } + ], + "confirmTitle": "Hinweis", + "confirm0dB": "Der Durchleitungsmodus setzt die Lautstärke auf Maximum und kann nicht angepasst werden.", + "confirm12dB": "Der Durchleitungsmodus setzt die Lautstärke auf -12 dB und kann nicht angepasst werden.", + "confirmOk": "Bestätigen", + "confirmCancel": "Abbrechen" + }, + "dacArc": { + "label": "ARC-Modell", + "options": [ + { "index": 0, "label": "ARC" }, + { "index": 1, "label": "EARC" } + ] + }, + "filters": { + "label": "Filter", + "options": [ + { "index": 0, "label": "Steiler Abfall" }, + { "index": 1, "label": "Langsamer Abfall" }, + { "index": 2, "label": "Kurze Verzögerung steiler Abfall" }, + { "index": 3, "label": "Kurze Verzögerung langsamer Abfall" }, + { "index": 4, "label": "Super langsamer Abfall" }, + { "index": 5, "label": "Niedrige Dispersion kurze Verzögerung" } + ] + }, + "dacGain": { + "label": "Kopfhörerverstärkung", + "options": [ + { "index": 0, "label": "Niedrig" }, + { "index": 1, "label": "Mittel" }, + { "index": 2, "label": "Hoch" } + ] + }, + "volumeStep": "Lautstärkestufe", + "bootVolume": { + "label": "Startlautstärke", + "options": [ + { "index": 0, "label": "Standard" }, + { "index": 1, "label": "-5dB" }, + { "index": 2, "label": "-10dB" }, + { "index": 3, "label": "-15dB" }, + { "index": 4, "label": "-20dB" }, + { "index": 5, "label": "-25dB" }, + { "index": 6, "label": "-30dB" }, + { "index": 7, "label": "-35dB" }, + { "index": 8, "label": "-40dB" }, + { "index": 9, "label": "-45dB" }, + { "index": 10, "label": "-50dB" } + ] + }, + "xlr": { + "label": "XLR-Port-Polarität", + "options": [ + { "index": 0, "label": "Normal" }, + { "index": 1, "label": "Invertiert" } + ] + }, + "arc": { + "label": "ARC-Modus", + "options": [ + { "index": 0, "label": "ARC" }, + { "index": 1, "label": "EARC" } + ] + }, + "mutePolar": { + "label": "Stummschaltungspolarität", + "options": [ + { "index": 0, "label": "Niedrig(Stumm)" }, + { "index": 1, "label": "Hoch(Stumm)" } + ] + }, + "IISMode": { + "label": "IIS-Modus", + "options": [ + { "index": 0, "label": "Modus 1" }, + { "index": 1, "label": "Modus 2" }, + { "index": 2, "label": "Modus 3" }, + { "index": 3, "label": "Modus 4" }, + { "index": 4, "label": "Modus 5" }, + { "index": 5, "label": "Modus 6" }, + { "index": 6, "label": "Modus 7" }, + { "index": 7, "label": "Modus 8" } + ] + } + }, + "settings": { + "vu": "Einstellungen", + "vuMeter": "VU-Meter", + "screenBrightness": { + "label": "Bildschirmhelligkeit", + "options": [ + { "index": 0, "label": "Heller" }, + { "index": 1, "label": "Mittel" }, + { "index": 2, "label": "Dunkler" } + ] + }, + "sleep": { + "label": "Ruhezustand", + "options": [ + { "index": 0, "label": "Nie" }, + { "index": 1, "label": "Kein Signal für 1 Minute" }, + { "index": 2, "label": "Kein Signal für 5 Minuten" }, + { "index": 3, "label": "Kein Signal für 10 Minuten" }, + { "index": 4, "label": "Kein Signal für 15 Minuten" } + ] + }, + "turnOffScreen": { + "label": "Bildschirm ausschalten", + "options": [ + { "index": 0, "label": "Nie" }, + { "index": 1, "label": "30 Sekunden" }, + { "index": 2, "label": "1 Minute" }, + { "index": 3, "label": "3 Minuten" }, + { "index": 4, "label": "5 Minuten" } + ] + }, + "knobBrightness": { + "label": "Drehknopf-Helligkeit", + "options": [ + { "index": 0, "label": "Aus" }, + { "index": 1, "label": "Heller" }, + { "index": 2, "label": "Mittel" }, + { "index": 3, "label": "Dunkler" } + ] + }, + "sleepTime": { + "label": "Ruhezustand", + "options": [ + { "index": 0, "label": "Aus" }, + { "index": 1, "label": "Kein Signal nach 1 Min." }, + { "index": 2, "label": "Kein Signal nach 5 Min." }, + { "index": 3, "label": "Kein Signal nach 10 Min." } + ] + }, + "buttonLight": { + "label": "Drehknopf-Atemlicht", + "options": [ + { "index": 0, "label": "Ein" }, + { "index": 1, "label": "Aus" } + ] + }, + "language": { + "label": "Sprache", + "options": [ + { "index": 0, "label": "Englisch" }, + { "index": 1, "label": "Traditionelles Chinesisch" }, + { "index": 2, "label": "Vereinfachtes Chinesisch" } + ] + }, + "Automatic": { + "label": "Automatische Rückkehr zur Startseite", + "options": [ + { "index": 0, "label": "Nie" }, + { "index": 1, "label": "20 Sekunden Inaktivität" }, + { "index": 2, "label": "40 Sekunden Inaktivität" }, + { "index": 3, "label": "60 Sekunden Inaktivität" } + ] + }, + "systemPage": { + "sectionDisplay": "Anzeige", + "sectionGeneral": "Allgemein", + "sectionAbout": "Über", + "screenBrightnessDesc": "Gesamte Bildschirmhelligkeit anpassen", + "turnOffScreenDesc": "Zeit bis der Bildschirm nach Inaktivität ausgeschaltet wird", + "knobBrightnessDesc": "Helligkeit der Drehknopf-Indikator-LEDs", + "buttonLightDesc": "Atemlichteffekt am Drehknopf bei gesperrtem Bildschirm", + "languageDesc": "System-Anzeigesprache", + "automaticDesc": "Automatische Rückkehr zum Startbildschirm nach Inaktivität", + "sleepDesc": "Wenn das Gerät in den Ruhe- oder Energiesparmodus wechselt", + "deviceName": "Gerätename", + "firmwareVersion": "Firmware-Version", + "macAddress": "MAC-Adresse", + "deviceIp": "Geräte-IP" + } + }, + "prompt": { + "prompt": "Hinweis", + "NotAdded": "Keine Kopfhörer hinzugefügt, möchten Sie Kopfhörer hinzufügen?", + "confirm": "Bestätigen", + "cancel": "Abbrechen", + "save": "Speichern", + "reset": "Zurücksetzen", + "delete": "Löschen", + "add": "Hinzufügen", + "edit": "Bearbeiten", + "deleteConfirm": "Löschen bestätigen", + "saveConfirm": "Speichern bestätigen", + "HP-EQ": "HP-EQ ist deaktiviert, möchten Sie es aktivieren?", + "Effect": "Effekt ist deaktiviert, möchten Sie es aktivieren?", + "EnableEffectY": "Ja", + "EnableEffectN": "Nein", + "noDelete": "Dieses Element kann nicht gelöscht werden", + "SavePreset": "Neue Voreinstellung", + "default": "Standard", + "invalidData": "Ungültige Daten", + "range": "Bereich", + "selectedYet": "Zielkurve noch nicht ausgewählt", + "leftChannel": "Linker Kanal", + "rightChannel": "Rechter Kanal" + }, + "ai": { + "title": "Luxsin KI", + "welcomeTitle": "Hallo, ich bin Luxsin KI", + "welcomeDescription": "Ich kann bei der Luxsin X8-Systemkonfiguration, Kopfhörer-Frequenzganganalyse, EQ-Optimierung und fortgeschrittener Audio-Einrichtung helfen.", + "suggestionsLabel": "Versuchen Sie", + "suggestions": [ + { "title": "EQ-Optimierung", "prompt": "Optimiere meinen aktuellen EQ für klarere Stimmen und tieferen Bass." }, + { "title": "Pop-EQ empfehlen", "prompt": "Empfehle EQ-Parameter, die für Popmusik geeignet sind." }, + { "title": "Gerätestatus prüfen", "prompt": "Zeige mir die aktuelle Lautstärke, Eingangsquelle und den Ausgangsport." }, + { "title": "Eingangsquelle wechseln", "prompt": "Wechsle die Eingangsquelle auf USB-C." } + ], + "inputPlaceholder": "Fragen Sie zu Ihrem Gerät, EQ, Effekten…", + "thinking": "Denke…", + "stopped": "(Gestoppt)", + "requestFailed": "Anfrage fehlgeschlagen. Bitte versuchen Sie es später erneut.", + "ariaSend": "Senden", + "ariaStop": "Stopp", + "ariaNewChat": "Neuer Chat", + "ariaHistory": "Verlauf", + "ariaClose": "Schließen", + "ariaFullPage": "Vollbild öffnen", + "ariaHidePanel": "KI-Panel ausblenden", + "ariaRestoreSplit": "Geteilte Ansicht wiederherstellen", + "clearCurrent": "Diesen Chat löschen", + "cleared": "Aktueller Chat gelöscht", + "clearFailed": "Löschen fehlgeschlagen: {message}", + "deviceRequired": "Bitte verbinden Sie zuerst ein Gerät", + "deviceDisconnected": "Gerät getrennt", + "loadHistoryFailed": "Laden des Verlaufs fehlgeschlagen: {message}", + "loadChatFailed": "Laden des Chats fehlgeschlagen: {message}", + "toolResultFailed": "Senden des Tool-Ergebnisses fehlgeschlagen: {message}", + "history": { + "title": "Chat-Verlauf", + "newChat": "Neuen Chat starten", + "empty": "Noch kein Chat-Verlauf", + "current": "Aktuell", + "delete": "Löschen", + "deleteConfirm": "Diesen Chat löschen? Dies kann nicht rückgängig gemacht werden.", + "deleted": "Chat gelöscht", + "deleteFailed": "Löschen fehlgeschlagen: {message}" + }, + "optimize": { + "badge": "Optimierung", + "applied": "Angewendet", + "summary": "{count} Filter · Vorverstärkung {preamp} dB", + "compare": "Vergleichen", + "apply": "Anwenden", + "rollback": "Zurücksetzen", + "applySuccess": "Neuer EQ angewendet", + "rollbackSuccess": "Auf ursprünglichen EQ zurückgesetzt", + "applyFailed": "Vorgang fehlgeschlagen: {message}" + }, + "compareDialog": { + "title": "EQ-Vergleich", + "legendBefore": "Vorher", + "legendAfter": "Nachher", + "legendCurrent": "Aktuell", + "legendAfterApply": "Nach Anwendung", + "legendAfterRollback": "Nach Zurücksetzung", + "close": "Schließen", + "apply": "Diese Optimierung anwenden", + "rollback": "Auf Original zurücksetzen", + "paramSummary": "{count} Filter · Vorverstärkung {preamp} dB" + } + } +} diff --git a/client/src/locales/data-en.json b/client/src/locales/data-en.json index cf3e0a0..e7b01c6 100644 --- a/client/src/locales/data-en.json +++ b/client/src/locales/data-en.json @@ -77,82 +77,31 @@ "tone": "Tone", "loudness": "Loudness", "threshold": "Threshold", - "delayed": "Delayed", "mainframeCase": "Main speaker", "subwooferUnit": "Subwoofer", "style": { "label": "Style", "options": [ - { - "index": 0, - "label": "Classical" - }, - { - "index": 1, - "label": "Dance" - }, - { - "index": 2, - "label": "Popular" - }, - { - "index": 3, - "label": "Reggae" - }, - { - "index": 4, - "label": "Live" - }, - { - "index": 5, - "label": "Rock" - }, - { - "index": 6, - "label": "Soft" - }, - { - "index": 7, - "label": "Electronic" - }, - { - "index": 8, - "label": "Club" - }, - { - "index": 9, - "label": "Full bass" - }, - { - "index": 10, - "label": "Full treble" - }, - { - "index": 11, - "label": "Headphone" - }, - { - "index": 12, - "label": "Hall" - }, - { - "index": 13, - "label": "Party" - }, - { - "index": 14, - "label": "Ska" - }, - { - "index": 15, - "label": "Slow rock" - } + { "index": 0, "label": "Classical" }, + { "index": 1, "label": "Dance" }, + { "index": 2, "label": "Popular" }, + { "index": 3, "label": "Reggae" }, + { "index": 4, "label": "Live" }, + { "index": 5, "label": "Rock" }, + { "index": 6, "label": "Soft" }, + { "index": 7, "label": "Electronic" }, + { "index": 8, "label": "Club" }, + { "index": 9, "label": "Full bass" }, + { "index": 10, "label": "Full treble" }, + { "index": 11, "label": "Headphone" }, + { "index": 12, "label": "Hall" }, + { "index": 13, "label": "Party" }, + { "index": 14, "label": "Ska" }, + { "index": 15, "label": "Slow rock" } ] }, - "stereoWidth": { - "label": "Stereo width" - }, + "stereoWidth": { "label": "Stereo width" }, "crossfeed": { "label": "Crossfeed", "options": [ @@ -183,14 +132,8 @@ "output": { "label": "Output type", "options": [ - { - "label": "Mono(Mix)", - "index": 0 - }, - { - "label": "Stereo", - "index": 1 - } + { "label": "Mono(Mix)", "index": 0 }, + { "label": "Stereo", "index": 1 } ] }, "delay": { @@ -432,47 +375,20 @@ "filters": { "label": "Filters", "options": [ - { - "index": 0, - "label": "Sharp Roll-off" - }, - { - "index": 1, - "label": "Slow Roll-off" - }, - { - "index": 2, - "label": "Short Delay Sharp Roll-off" - }, - { - "index": 3, - "label": "Short Delay Slow Roll-off" - }, - { - "index": 4, - "label": "Super Slow Roll-off" - }, - { - "index": 5, - "label": "Low Dispersion Short Delay" - } + { "index": 0, "label": "Sharp Roll-off" }, + { "index": 1, "label": "Slow Roll-off" }, + { "index": 2, "label": "Short Delay Sharp Roll-off" }, + { "index": 3, "label": "Short Delay Slow Roll-off" }, + { "index": 4, "label": "Super Slow Roll-off" }, + { "index": 5, "label": "Low Dispersion Short Delay" } ] }, "dacGain": { "label": "Headphone gain", "options": [ - { - "index": 0, - "label": "low" - }, - { - "index": 1, - "label": "medium" - }, - { - "index": 2, - "label": "high" - } + { "index": 0, "label": "low" }, + { "index": 1, "label": "medium" }, + { "index": 2, "label": "high" } ] }, "volumeStep": "Volume step", @@ -495,27 +411,15 @@ "xlr": { "label": "XLR port polarity", "options": [ - { - "index": 0, - "label": "Normal" - }, - { - "index": 1, - "label": "Reverse" - } + { "index": 0, "label": "Normal" }, + { "index": 1, "label": "Reverse" } ] }, "arc": { "label": "ARC mode", "options": [ - { - "index": 0, - "label": "ARC" - }, - { - "index": 1, - "label": "EARC" - } + { "index": 0, "label": "ARC" }, + { "index": 1, "label": "EARC" } ] }, "mutePolar": { @@ -545,89 +449,38 @@ "screenBrightness": { "label": "Screen brightness", "options": [ - { - "index": 0, - "label": "Brighter" - }, - { - "index": 1, - "label": "Medium" - }, - { - "index": 2, - "label": "Darker" - } + { "index": 0, "label": "Brighter" }, + { "index": 1, "label": "Medium" }, + { "index": 2, "label": "Darker" } ] }, "sleep": { "label": "Sleep", "options": [ - { - "index": 0, - "label": "Never" - }, - { - "index": 1, - "label": "No signal for 1 minute" - }, - { - "index": 2, - "label": "No signal for 5 minutes" - }, - { - "index": 3, - "label": "No signal for 10 minutes" - }, - { - "index": 4, - "label": "No signal for 15 minutes" - } + { "index": 0, "label": "Never" }, + { "index": 1, "label": "No signal for 1 minute" }, + { "index": 2, "label": "No signal for 5 minutes" }, + { "index": 3, "label": "No signal for 10 minutes" }, + { "index": 4, "label": "No signal for 15 minutes" } ] }, "turnOffScreen": { "label": "Turn off screen", "options": [ - { - "index": 0, - "label": "Never" - }, - { - "index": 1, - "label": "30 seconds" - }, - { - "index": 2, - "label": "1 minute" - }, - { - "index": 3, - "label": "3 minutes" - }, - { - "index": 4, - "label": "5 minutes" - } + { "index": 0, "label": "Never" }, + { "index": 1, "label": "30 seconds" }, + { "index": 2, "label": "1 minute" }, + { "index": 3, "label": "3 minutes" }, + { "index": 4, "label": "5 minutes" } ] }, "knobBrightness": { "label": "Knob brightness", "options": [ - { - "index": 0, - "label": "Off" - }, - { - "index": 1, - "label": "Brighter" - }, - { - "index": 2, - "label": "Medium" - }, - { - "index": 3, - "label": "Darker" - } + { "index": 0, "label": "Off" }, + { "index": 1, "label": "Brighter" }, + { "index": 2, "label": "Medium" }, + { "index": 3, "label": "Darker" } ] }, "sleepTime": { @@ -649,39 +502,18 @@ "language": { "label": "Language", "options": [ - { - "index": 0, - "label": "English" - }, - { - "index": 1, - "label": "Traditional Chinese" - }, - { - "index": 2, - "label": "Simplified Chinese" - } + { "index": 0, "label": "English" }, + { "index": 1, "label": "Traditional Chinese" }, + { "index": 2, "label": "Simplified Chinese" } ] }, "Automatic": { "label": "Automatic return to home page", "options": [ - { - "index": 0, - "label": "Never" - }, - { - "index": 1, - "label": "20 seconds of inactivity" - }, - { - "index": 2, - "label": "40 seconds of inactivity" - }, - { - "index": 3, - "label": "60 seconds of inactivity" - } + { "index": 0, "label": "Never" }, + { "index": 1, "label": "20 seconds of inactivity" }, + { "index": 2, "label": "40 seconds of inactivity" }, + { "index": 3, "label": "60 seconds of inactivity" } ] }, "systemPage": { diff --git a/client/src/locales/data-es.json b/client/src/locales/data-es.json new file mode 100644 index 0000000..2bdeaff --- /dev/null +++ b/client/src/locales/data-es.json @@ -0,0 +1,626 @@ +{ + "connect": { + "ipMissingTitle": "IP del dispositivo no especificada", + "ipMissingDesc": "Agregue la IP del dispositivo en la barra de direcciones antes de abrir esta página, por ejemplo:", + "connecting": "Conectando a {ip}…", + "failedTitle": "Error de conexión", + "failedDesc": "Verifique la IP del dispositivo y su conexión de red.", + "failedHint": "Especifique el dispositivo en la URL, ej. ?ip=10.0.0.119" + }, + "home": { + "audioSet": "Configuración de audio", + "systemSet": "Sistema", + "power": "Alimentación", + "input": "Entrada", + "output": "Salida", + "vu": "VU-metro", + "powerOffConfirmTitle": "¿Apagar el dispositivo?", + "powerOffConfirmDesc": "El dispositivo se apagará y se desconectará de esta aplicación. ¿Desea continuar?", + "powerOffConfirmOk": "Apagar", + "powerOffConfirmCancel": "Cancelar", + "volumeMinConfirmTitle": "¿Poner el volumen al mínimo?", + "volumeMinConfirmDesc": "El volumen se establecerá al nivel más bajo (silencio). ¿Continuar?", + "volumeMinConfirmOk": "Poner al mínimo", + "volumeMaxConfirmTitle": "¿Poner el volumen al máximo?", + "volumeMaxConfirmDesc": "El volumen se establecerá al nivel más alto. ¿Continuar?", + "volumeMaxConfirmOk": "Poner al máximo", + "volumePassthroughHint": "El paso de volumen está activo; no se puede ajustar el volumen", + "volumePassthroughBlocked": "El paso de volumen está activo ({mode}). El volumen de los auriculares es fijo. Desactive el paso en la configuración de audio.", + "volumePassthroughMode0dB": "0dB", + "volumePassthroughMode12dB": "-12dB", + "powerOffToastDemo": "Modo demo: desconectado del dispositivo.", + "powerOffToastSent": "Comando de apagado enviado.", + "doubleClickHint": "Doble clic para entrar", + "backToLegacy": "Versión anterior" + }, + "vuPage": { + "title": "Galería de VU-metro" + }, + "bottomNav": { + "community": "Comunidad", + "hpEq": "HP-EQ", + "home": "Inicio", + "effects": "Efectos", + "myAi": "Mi IA" + }, + "communityPage": { + "title": "Comunidad", + "intro": "El foro se abre mejor en el navegador del sistema. Copie el enlace completo a continuación, péguelo en la barra de direcciones de su navegador móvil y ábralo.", + "copyLink": "Copiar enlace", + "toastCopied": "Enlace copiado", + "toastCopyFailed": "No se pudo copiar. Mantenga presionado el enlace para copiarlo manualmente." + }, + "source": { + "label": "Entrada/Salida", + "pageTitle": "E/S", + "inputSection": "Entrada", + "outputSection": "Salida", + "inputOptions": ["USB-B", "USB-C", "Coaxial", "Óptico", "Bluetooth", "HDMI-EARC", "RCA", "USB Driver"], + "outputOptions": ["XLR", "RCA", "XLR/RCA", "Auriculares"], + "input": { + "coaxial": "COAXIAL", + "optical": "ÓPTICO", + "bluetooth": "BLUETOOTH", + "rca": "RCA" + }, + "output": { + "headset": "Auriculares" + } + }, + "effect": { + "pageTitle": "Efectos", + "selectStyleTitle": "Seleccionar estilo de sonido", + "selectCrossfeedTitle": "Seleccionar preset de crossfeed", + "lowBass": "Graves", + "enterBass": "Medios", + "highBass": "Agudos", + "tone": "Tono", + "loudness": "Sonoridad", + "threshold": "Umbral", + "delayed": "Retardo", + "mainframeCase": "Altavoz principal", + "subwooferUnit": "Subwoofer", + "style": { + "label": "Estilo", + "options": [ + { "index": 0, "label": "Clásica" }, + { "index": 1, "label": "Dance" }, + { "index": 2, "label": "Pop" }, + { "index": 3, "label": "Reggae" }, + { "index": 4, "label": "En vivo" }, + { "index": 5, "label": "Rock" }, + { "index": 6, "label": "Suave" }, + { "index": 7, "label": "Electrónica" }, + { "index": 8, "label": "Club" }, + { "index": 9, "label": "Pleno grave" }, + { "index": 10, "label": "Pleno agudo" }, + { "index": 11, "label": "Auriculares" }, + { "index": 12, "label": "Sala" }, + { "index": 13, "label": "Fiesta" }, + { "index": 14, "label": "Ska" }, + { "index": 15, "label": "Slow rock" } + ] + }, + "stereoWidth": { "label": "Ancho estéreo" }, + "crossfeed": { + "label": "Crossfeed", + "options": [ + "BS2B predeterminado (700 Hz, 4,5 dB)", + "BS2B popular (700 Hz, 6 dB)", + "BS2B relajado (650 Hz, 9,5 dB)" + ] + }, + "subwoofer": { + "label": "Subwoofer", + "cutOffFrequency": "Frecuencia de corte", + "subFullRange": "Sub rango completo", + "mainFullRange": "Principal rango completo", + "attenuationSlope": "Pendiente de atenuación", + "gain": "Ganancia", + "selectAttenuationTitle": "Seleccionar pendiente de atenuación", + "selectOutputTitle": "Seleccionar tipo de salida", + "rateOptions": [ + "6dB/oct", + "12dB/oct", + "18dB/oct", + "24dB/oct", + "30dB/oct", + "36dB/oct", + "42dB/oct", + "48dB/oct" + ], + "output": { + "label": "Tipo de salida", + "options": [ + { "label": "Mono(Mix)", "index": 0 }, + { "label": "Estéreo", "index": 1 } + ] + }, + "delay": { + "label": "Retardo", + "mainSpeaker": "Altavoces principales", + "subwoofer": "Subwoofer", + "leftChannel": "Canal izquierdo", + "rightChannel": "Canal derecho" + } + }, + "enableConfirmTitle": "Los efectos están desactivados", + "enableConfirmDesc": "Los efectos están desactivados actualmente. ¿Activarlos?", + "enableConfirmOk": "Activar", + "enableConfirmCancel": "Cancelar" + }, + "peq": { + "Standard": "Preset de ecualizador estándar", + "edit": "Edición por lotes", + "headset": "Agregar auriculares", + "share": "Compartir EQ", + "preamp": "Preamplificador", + "filters": { + "label": "Filtros", + "options": [ + { + "index": 0, + "title": "LPF", + "desc1": "Filtro paso bajo, solo permite pasar señales ", + "desc2": "por debajo de cierta frecuencia de corte, ", + "desc3": "y las señales de alta frecuencia se atenúan.", + "img": "LPF.png" + }, + { + "index": 1, + "title": "HPF", + "desc1": "Filtro paso alto, solo permite pasar señales ", + "desc2": "por encima de cierta frecuencia de corte,", + "desc3": "y las señales de baja frecuencia se atenúan.", + "img": "HPF.png" + }, + { + "index": 2, + "title": "BPF", + "img": "BPF.png", + "desc1": "Filtro paso banda, solo permite pasar señales", + "desc2": "en un cierto rango de frecuencias, ", + "desc3": "y las demás frecuencias se atenúan." + }, + { + "index": 3, + "title": "NOTCH", + "img": "NOTCH.png", + "desc1": "Filtro notch, usado para eliminar resonancia", + "desc2": "o señales de interferencia en frecuencias específicas." + }, + { + "index": 4, + "title": "PEAK", + "img": "PEAK.png", + "desc1": "Filtro de pico, refuerza o debilita la ", + "desc2": "señal alrededor de cierta frecuencia." + }, + { + "index": 5, + "title": "LSHELF", + "img": "LSHELF.png", + "desc1": "Filtro de estante bajo, usado para ", + "desc2": "reforzar o reducir señales de baja frecuencia." + }, + { + "index": 5, + "title": "HSHELF", + "img": "HSHELF.png", + "desc1": "Filtro de estante alto, usado para ", + "desc2": "reforzar o reducir señales de alta frecuencia." + }, + { + "index": 6, + "title": "APF", + "img": "APF.png", + "desc1": "Filtro paso todo, la amplitud de la señal de salida", + "desc2": "permanece sin cambios, pero la fase cambia." + } + ] + }, + "freq": "FREQ", + "gain": "GAIN", + "q": "Valor Q", + "loadDeviceBtn": "Confirmar", + "peqNoneItem": "No configurado", + "eqUi": { + "batchEditTitle": "Edición por lotes", + "batchEditHint": "11 líneas en total: la línea 1 es Preamp, las líneas 2–11 son Filtro 1–10. Guardar sobrescribe el preset actual de auriculares.", + "addPresetTitle": "Nuevo preset", + "addPresetNameEmpty": "El nombre no puede estar vacío", + "addPresetNameExists": "Ese nombre ya existe. Elija otro.", + "overwritePresetTitle": "El nombre del preset ya existe", + "overwritePresetDesc": "Un preset llamado \"{{name}}\" ya existe. ¿Sobrescribirlo?", + "overwritePresetConfirm": "Sobrescribir", + "overwritePresetCancelled": "Cancelado", + "toastAddPresetOk": "Preset agregado", + "toastAddPresetFail": "Error al agregar el preset", + "toastPresetLimitReached": "Límite de presets alcanzado ({{max}}). Elimine algunos presets antes de agregar más.", + "cancel": "Cancelar", + "save": "Guardar", + "tabBrands": "Marcas", + "tabModels": "Modelos", + "tabTarget": "Objetivo", + "searchPlaceholder": "Buscar marca o modelo", + "searching": "Buscando…", + "noSearchResults": "Ninguna marca o modelo coincidente", + "loading": "Cargando…", + "noBrandMatch": "Sin marcas coincidentes", + "selectBrandFirst": "Elija primero una marca en la pestaña Marcas", + "brandLabel": "Marca:", + "modelFromSearchLabel": "Modelo de la búsqueda:", + "noModelsForBrand": "No hay modelos para esta marca", + "targetBrand": "Marca:", + "targetModel": "Modelo:", + "targetForm": "Forma:", + "formAll": "Todos", + "confirmLoading": "Procesando…", + "confirmButton": "Confirmar", + "selectModelFirst": "Seleccione primero un modelo", + "noTargets": "No hay curvas objetivo disponibles", + "closeDrawer": "Cerrar", + "toastBatchApplied": "Edición por lotes aplicada", + "toastBatchParseError": "Formato de edición por lotes inválido", + "toastBrandsFail": "Error al cargar las marcas", + "toastModelsFail": "Error al cargar los modelos", + "toastCurveFail": "Error al cargar la curva", + "toastNewEqOk": "Nuevo EQ de auriculares guardado", + "toastTargetSelected": "Objetivo seleccionado: {{name}}", + "deleteConfirm": "¿Eliminar auriculares \"{{name}}\"?", + "batchDeleteConfirm": "¿Eliminar {{count}} preset(s) seleccionado(s)?", + "deletePresetConfirm": "¿Eliminar el preset \"{{name}}\"?", + "toastRenamed": "Renombrado", + "toastRenameFail": "Error al renombrar", + "renameEmptyName": "El nombre no puede estar vacío", + "renameNameExists": "El nombre ya existe", + "toastDeleted": "Auriculares eliminados", + "toastDeleteFail": "Error al eliminar los auriculares", + "bassBoost": "Refuerzo de graves: fc {{fc}}, q {{q}}, ganancia {{gain}} dB", + "errMinLines": "Se requieren al menos 11 líneas (Preamp + 10 filtros)", + "errPreampFirstLine": "La línea 1 debe verse como Preamp:-5.96dB", + "errPreampValue": "Valor de Preamp inválido", + "errFilterLine": "La línea {{line}} no coincide con el formato de Filtro", + "errFilterNoRange": "El filtro número {{no}} está fuera de rango", + "errFilterType": "Tipo inválido para el filtro {{no}} ({{type}})", + "errFilterNumbers": "Números inválidos para el filtro {{no}}", + "errFilterAll": "Los filtros 1–10 deben estar todos presentes", + "chartCopyTo": "Copiar a {{mode}}", + "chartApplyB": "Aplicar B", + "chartSaveB": "Guardar B como", + "saveBTitle": "Guardar B como", + "toastChartCopied": "Copiado a {{mode}}", + "toastApplyBSuccess": "Curva B aplicada a A", + "toastApplyBFail": "Error al aplicar B", + "toastSaveBOk": "Preset guardado desde la curva B", + "toastSaveBFail": "Error al guardar la curva B", + "enableConfirmTitle": "HP-EQ está desactivado", + "enableConfirmDesc": "HP-EQ está desactivado actualmente. ¿Activarlo?", + "enableConfirmOk": "Activar", + "paramInputTitleFreq": "Establecer frecuencia", + "paramInputTitleGain": "Establecer ganancia", + "paramInputTitleQ": "Establecer valor Q", + "paramInputHintFreq": "Rango: 20 – 20000 Hz. Use k para kHz (ej. 9,5k).", + "paramInputHintGain": "Rango: -15,0 – +15,0 dB", + "paramInputHintQ": "Rango: 0,10 – 10,00", + "paramInputInvalid": "Ingrese un número válido", + "paramInputOutOfRangeFreq": "La frecuencia debe estar entre {{min}} y {{max}} Hz", + "paramInputOutOfRangeGain": "La ganancia debe estar entre {{min}} y {{max}} dB", + "paramInputOutOfRangeQ": "Q debe estar entre {{min}} y {{max}}", + "shareTitle": "Compartir EQ", + "shareSelectHint": "Seleccione el preset de EQ a compartir", + "shareConfirm": "Generar código", + "shareCodeLabel": "Código de compartir", + "shareCopied": "Código copiado", + "shareGenerating": "Generando…", + "shareCreateFail": "Error al generar el código de compartir", + "shareActiveExists": "Ya tiene un código de compartir activo. Inténtelo de nuevo más tarde.", + "shareInvalidParams": "Solicitud inválida. Verifique e inténtelo de nuevo.", + "shareSystemError": "Error del sistema. Inténtelo de nuevo más tarde.", + "shareExpireAt": "Expira el", + "importTab": "Importar EQ", + "importCodeHint": "Ingrese o pegue el código de compartir de 5 caracteres", + "importQuery": "Consultar", + "importQuerying": "Consultando…", + "importCodeNotFound": "Código de compartir no encontrado o expirado", + "importEqName": "Nombre EQ", + "importEqNameHint": "Puede personalizar el nombre", + "importSourceModel": "Dispositivo de origen", + "importButton": "Importar", + "importSaving": "Importando…", + "importSuccess": "EQ importado con éxito", + "importFail": "Error al importar el EQ", + "mySharesTab": "Mis compartidos", + "mySharesLoading": "Cargando…", + "mySharesEmpty": "Aún no hay EQ compartidos", + "mySharesCode": "Código", + "mySharesName": "Nombre EQ", + "mySharesLoadFail": "Error al cargar la lista de compartidos", + "mySharesDeleteConfirmTitle": "Eliminar código de compartir", + "mySharesDeleteConfirmDesc": "¿Eliminar el código de compartir {{code}}? Ya no estará disponible para importación.", + "mySharesDeleteConfirmOk": "Eliminar", + "mySharesDeleteSuccess": "Código de compartir eliminado", + "mySharesDeleteFail": "Error al eliminar el código de compartir" + } + }, + "dac": { + "sectionBalanceSensitivity": "Balance y sensibilidad", + "sectionOutput": "Características de salida", + "sectionIisSettings": "Configuración IIS", + "sectionSystemInterface": "Sistema e interfaz", + "balance": "Balance izquierda-derecha", + "sensitivity": "Sensibilidad del VU-metro", + "analogInputGain": "Ganancia de entrada analógica", + "autoImpedanceDetection": "Detección automática de impedancia", + "dacVolumeDirect": { + "label": "Paso de volumen de pre-salida", + "options": [ + { "index": 0, "label": "Desactivado" }, + { "index": 1, "label": "0dB" }, + { "index": 2, "label": "-12dB" } + ], + "confirmTitle": "Aviso", + "confirm0dB": "El modo de paso establecerá el volumen al máximo y no se podrá ajustar.", + "confirm12dB": "El modo de paso establecerá el volumen a -12 dB y no se podrá ajustar.", + "confirmOk": "Confirmar", + "confirmCancel": "Cancelar" + }, + "dacArc": { + "label": "Modelo ARC", + "options": [ + { "index": 0, "label": "ARC" }, + { "index": 1, "label": "EARC" } + ] + }, + "filters": { + "label": "Filtros", + "options": [ + { "index": 0, "label": "Caída rápida" }, + { "index": 1, "label": "Caída lenta" }, + { "index": 2, "label": "Retardo corto caída rápida" }, + { "index": 3, "label": "Retardo corto caída lenta" }, + { "index": 4, "label": "Caída súper lenta" }, + { "index": 5, "label": "Baja dispersión retardo corto" } + ] + }, + "dacGain": { + "label": "Ganancia de auriculares", + "options": [ + { "index": 0, "label": "Baja" }, + { "index": 1, "label": "Media" }, + { "index": 2, "label": "Alta" } + ] + }, + "volumeStep": "Paso de volumen", + "bootVolume": { + "label": "Volumen de inicio", + "options": [ + { "index": 0, "label": "Predeterminado" }, + { "index": 1, "label": "-5dB" }, + { "index": 2, "label": "-10dB" }, + { "index": 3, "label": "-15dB" }, + { "index": 4, "label": "-20dB" }, + { "index": 5, "label": "-25dB" }, + { "index": 6, "label": "-30dB" }, + { "index": 7, "label": "-35dB" }, + { "index": 8, "label": "-40dB" }, + { "index": 9, "label": "-45dB" }, + { "index": 10, "label": "-50dB" } + ] + }, + "xlr": { + "label": "Polaridad del puerto XLR", + "options": [ + { "index": 0, "label": "Normal" }, + { "index": 1, "label": "Invertida" } + ] + }, + "arc": { + "label": "Modo ARC", + "options": [ + { "index": 0, "label": "ARC" }, + { "index": 1, "label": "EARC" } + ] + }, + "mutePolar": { + "label": "Polaridad de silencio", + "options": [ + { "index": 0, "label": "Bajo(silencio)" }, + { "index": 1, "label": "Alto(silencio)" } + ] + }, + "IISMode": { + "label": "Modo IIS", + "options": [ + { "index": 0, "label": "Modo 1" }, + { "index": 1, "label": "Modo 2" }, + { "index": 2, "label": "Modo 3" }, + { "index": 3, "label": "Modo 4" }, + { "index": 4, "label": "Modo 5" }, + { "index": 5, "label": "Modo 6" }, + { "index": 6, "label": "Modo 7" }, + { "index": 7, "label": "Modo 8" } + ] + } + }, + "settings": { + "vu": "Configuración", + "vuMeter": "VU-metro", + "screenBrightness": { + "label": "Brillo de pantalla", + "options": [ + { "index": 0, "label": "Más brillante" }, + { "index": 1, "label": "Medio" }, + { "index": 2, "label": "Más oscuro" } + ] + }, + "sleep": { + "label": "Suspensión", + "options": [ + { "index": 0, "label": "Nunca" }, + { "index": 1, "label": "Sin señal durante 1 minuto" }, + { "index": 2, "label": "Sin señal durante 5 minutos" }, + { "index": 3, "label": "Sin señal durante 10 minutos" }, + { "index": 4, "label": "Sin señal durante 15 minutos" } + ] + }, + "turnOffScreen": { + "label": "Apagar pantalla", + "options": [ + { "index": 0, "label": "Nunca" }, + { "index": 1, "label": "30 segundos" }, + { "index": 2, "label": "1 minuto" }, + { "index": 3, "label": "3 minutos" }, + { "index": 4, "label": "5 minutos" } + ] + }, + "knobBrightness": { + "label": "Brillo del botón", + "options": [ + { "index": 0, "label": "Desactivado" }, + { "index": 1, "label": "Más brillante" }, + { "index": 2, "label": "Medio" }, + { "index": 3, "label": "Más oscuro" } + ] + }, + "sleepTime": { + "label": "Suspensión", + "options": [ + { "index": 0, "label": "Desactivado" }, + { "index": 1, "label": "Sin señal después de 1 min" }, + { "index": 2, "label": "Sin señal después de 5 min" }, + { "index": 3, "label": "Sin señal después de 10 min" } + ] + }, + "buttonLight": { + "label": "Luz respiratoria del botón", + "options": [ + { "index": 0, "label": "Activado" }, + { "index": 1, "label": "Desactivado" } + ] + }, + "language": { + "label": "Idioma", + "options": [ + { "index": 0, "label": "Inglés" }, + { "index": 1, "label": "Chino tradicional" }, + { "index": 2, "label": "Chino simplificado" } + ] + }, + "Automatic": { + "label": "Retorno automático a la página de inicio", + "options": [ + { "index": 0, "label": "Nunca" }, + { "index": 1, "label": "20 segundos de inactividad" }, + { "index": 2, "label": "40 segundos de inactividad" }, + { "index": 3, "label": "60 segundos de inactividad" } + ] + }, + "systemPage": { + "sectionDisplay": "Pantalla", + "sectionGeneral": "General", + "sectionAbout": "Acerca de", + "screenBrightnessDesc": "Ajustar el brillo general de la pantalla", + "turnOffScreenDesc": "Tiempo antes de que la pantalla se apague tras inactividad", + "knobBrightnessDesc": "Brillo de los LED indicadores del botón", + "buttonLightDesc": "Efecto de luz respiratoria en el botón cuando la pantalla está bloqueada", + "languageDesc": "Idioma de visualización del sistema", + "automaticDesc": "Retorno automático a la pantalla de inicio tras inactividad", + "sleepDesc": "Cuando el dispositivo entra en modo de suspensión o bajo consumo", + "deviceName": "Nombre del dispositivo", + "firmwareVersion": "Versión de firmware", + "macAddress": "Dirección MAC", + "deviceIp": "IP del dispositivo" + } + }, + "prompt": { + "prompt": "Aviso", + "NotAdded": "No se han agregado auriculares, ¿desea agregar auriculares?", + "confirm": "Confirmar", + "cancel": "Cancelar", + "save": "Guardar", + "reset": "Restablecer", + "delete": "Eliminar", + "add": "Agregar", + "edit": "Editar", + "deleteConfirm": "Confirmar eliminación", + "saveConfirm": "Confirmar guardado", + "HP-EQ": "HP-EQ está desactivado, ¿desea activarlo?", + "Effect": "El efecto está desactivado, ¿desea activarlo?", + "EnableEffectY": "Sí", + "EnableEffectN": "No", + "noDelete": "Este elemento no se puede eliminar", + "SavePreset": "Nuevo preset", + "default": "Predeterminado", + "invalidData": "Datos inválidos", + "range": "Rango", + "selectedYet": "Curva objetivo aún no seleccionada", + "leftChannel": "Canal izquierdo", + "rightChannel": "Canal derecho" + }, + "ai": { + "title": "Luxsin IA", + "welcomeTitle": "Hola, soy Luxsin IA", + "welcomeDescription": "Puedo ayudar con la configuración del sistema Luxsin X8, análisis de respuesta de frecuencia de auriculares, optimización EQ y guía avanzada de configuración de audio.", + "suggestionsLabel": "Intente preguntar", + "suggestions": [ + { "title": "Optimización EQ", "prompt": "Optimiza mi EQ actual para voces más claras y graves más profundos." }, + { "title": "Recomendar EQ Pop", "prompt": "Recomienda un conjunto de parámetros EQ adecuados para música pop." }, + { "title": "Verificar estado del dispositivo", "prompt": "Muéstrame el volumen actual, la fuente de entrada y el puerto de salida." }, + { "title": "Cambiar fuente de entrada", "prompt": "Cambia la fuente de entrada a USB-C." } + ], + "inputPlaceholder": "Pregunte sobre su dispositivo, EQ, efectos…", + "thinking": "Pensando…", + "stopped": "(Detenido)", + "requestFailed": "Error en la solicitud. Inténtelo de nuevo más tarde.", + "ariaSend": "Enviar", + "ariaStop": "Detener", + "ariaNewChat": "Nuevo chat", + "ariaHistory": "Historial", + "ariaClose": "Cerrar", + "ariaFullPage": "Abrir pantalla completa", + "ariaHidePanel": "Ocultar panel IA", + "ariaRestoreSplit": "Restaurar vista dividida", + "clearCurrent": "Borrar este chat", + "cleared": "Chat actual borrado", + "clearFailed": "Error al borrar: {message}", + "deviceRequired": "Conecte primero un dispositivo", + "deviceDisconnected": "Dispositivo desconectado", + "loadHistoryFailed": "Error al cargar el historial: {message}", + "loadChatFailed": "Error al cargar el chat: {message}", + "toolResultFailed": "Error al enviar el resultado de la herramienta: {message}", + "history": { + "title": "Historial de chat", + "newChat": "Iniciar un nuevo chat", + "empty": "Aún no hay historial de chat", + "current": "Actual", + "delete": "Eliminar", + "deleteConfirm": "¿Eliminar este chat? Esta acción no se puede deshacer.", + "deleted": "Chat eliminado", + "deleteFailed": "Error al eliminar: {message}" + }, + "optimize": { + "badge": "Optimización", + "applied": "Aplicado", + "summary": "{count} filtros · preamplificador {preamp} dB", + "compare": "Comparar", + "apply": "Aplicar", + "rollback": "Revertir", + "applySuccess": "Nuevo EQ aplicado", + "rollbackSuccess": "Revertido al EQ original", + "applyFailed": "Error en la operación: {message}" + }, + "compareDialog": { + "title": "Comparación de EQ", + "legendBefore": "Antes", + "legendAfter": "Después", + "legendCurrent": "Actual", + "legendAfterApply": "Después de aplicar", + "legendAfterRollback": "Después de revertir", + "close": "Cerrar", + "apply": "Aplicar esta optimización", + "rollback": "Revertir al original", + "paramSummary": "{count} filtros · preamplificador {preamp} dB" + } + } +} diff --git a/client/src/locales/data-fr.json b/client/src/locales/data-fr.json new file mode 100644 index 0000000..93beae4 --- /dev/null +++ b/client/src/locales/data-fr.json @@ -0,0 +1,626 @@ +{ + "connect": { + "ipMissingTitle": "IP de l'appareil non spécifiée", + "ipMissingDesc": "Veuillez ajouter l'IP de l'appareil dans la barre d'adresse avant d'ouvrir cette page, par exemple :", + "connecting": "Connexion à {ip}…", + "failedTitle": "Échec de la connexion", + "failedDesc": "Vérifiez l'IP de l'appareil et votre connexion réseau.", + "failedHint": "Spécifiez l'appareil dans l'URL, par ex. ?ip=10.0.0.119" + }, + "home": { + "audioSet": "Réglage audio", + "systemSet": "Système", + "power": "Alimentation", + "input": "Entrée", + "output": "Sortie", + "vu": "VU-mètre", + "powerOffConfirmTitle": "Éteindre l'appareil ?", + "powerOffConfirmDesc": "L'appareil sera éteint et déconnecté de cette application. Voulez-vous continuer ?", + "powerOffConfirmOk": "Éteindre", + "powerOffConfirmCancel": "Annuler", + "volumeMinConfirmTitle": "Mettre le volume au minimum ?", + "volumeMinConfirmDesc": "Le volume sera réglé au niveau le plus bas (muet). Continuer ?", + "volumeMinConfirmOk": "Mettre au minimum", + "volumeMaxConfirmTitle": "Mettre le volume au maximum ?", + "volumeMaxConfirmDesc": "Le volume sera réglé au niveau le plus élevé. Continuer ?", + "volumeMaxConfirmOk": "Mettre au maximum", + "volumePassthroughHint": "Le passage de volume est activé ; le volume ne peut pas être ajusté", + "volumePassthroughBlocked": "Le passage de volume est actif ({mode}). Le volume du casque est fixe. Désactivez le passage dans les réglages audio.", + "volumePassthroughMode0dB": "0dB", + "volumePassthroughMode12dB": "-12dB", + "powerOffToastDemo": "Mode démo : déconnecté de l'appareil.", + "powerOffToastSent": "Commande d'extinction envoyée.", + "doubleClickHint": "Double-clic pour entrer", + "backToLegacy": "Ancienne version" + }, + "vuPage": { + "title": "Galerie VU-mètre" + }, + "bottomNav": { + "community": "Communauté", + "hpEq": "HP-EQ", + "home": "Accueil", + "effects": "Effets", + "myAi": "Mon IA" + }, + "communityPage": { + "title": "Communauté", + "intro": "Le forum s'ouvre mieux dans le navigateur de votre système. Copiez le lien complet ci-dessous, collez-le dans la barre d'adresse de votre navigateur mobile et ouvrez-le.", + "copyLink": "Copier le lien", + "toastCopied": "Lien copié", + "toastCopyFailed": "Impossible de copier. Appuyez longuement sur le lien pour le copier manuellement." + }, + "source": { + "label": "Entrée/Sortie", + "pageTitle": "E/S", + "inputSection": "Entrée", + "outputSection": "Sortie", + "inputOptions": ["USB-B", "USB-C", "Coaxial", "Optique", "Bluetooth", "HDMI-EARC", "RCA", "USB Driver"], + "outputOptions": ["XLR", "RCA", "XLR/RCA", "Casque"], + "input": { + "coaxial": "COAXIAL", + "optical": "OPTIQUE", + "bluetooth": "BLUETOOTH", + "rca": "RCA" + }, + "output": { + "headset": "Casque" + } + }, + "effect": { + "pageTitle": "Effets", + "selectStyleTitle": "Sélectionner le style sonore", + "selectCrossfeedTitle": "Sélectionner le préréglage crossfeed", + "lowBass": "Basses", + "enterBass": "Médiums", + "highBass": "Aigus", + "tone": "Tonalité", + "loudness": "Sonie", + "threshold": "Seuil", + "delayed": "Délai", + "mainframeCase": "Haut-parleur principal", + "subwooferUnit": "Caisson de basses", + "style": { + "label": "Style", + "options": [ + { "index": 0, "label": "Classique" }, + { "index": 1, "label": "Dance" }, + { "index": 2, "label": "Pop" }, + { "index": 3, "label": "Reggae" }, + { "index": 4, "label": "Live" }, + { "index": 5, "label": "Rock" }, + { "index": 6, "label": "Doux" }, + { "index": 7, "label": "Électronique" }, + { "index": 8, "label": "Club" }, + { "index": 9, "label": "Pleine basse" }, + { "index": 10, "label": "Plein aigu" }, + { "index": 11, "label": "Casque" }, + { "index": 12, "label": "Hall" }, + { "index": 13, "label": "Fête" }, + { "index": 14, "label": "Ska" }, + { "index": 15, "label": "Slow rock" } + ] + }, + "stereoWidth": { "label": "Largeur stéréo" }, + "crossfeed": { + "label": "Crossfeed", + "options": [ + "BS2B défaut (700 Hz, 4,5 dB)", + "BS2B populaire (700 Hz, 6 dB)", + "BS2B relax (650 Hz, 9,5 dB)" + ] + }, + "subwoofer": { + "label": "Caisson de basses", + "cutOffFrequency": "Fréquence de coupure", + "subFullRange": "Sub pleine gamme", + "mainFullRange": "Principal pleine gamme", + "attenuationSlope": "Pente d'atténuation", + "gain": "Gain", + "selectAttenuationTitle": "Sélectionner la pente d'atténuation", + "selectOutputTitle": "Sélectionner le type de sortie", + "rateOptions": [ + "6dB/oct", + "12dB/oct", + "18dB/oct", + "24dB/oct", + "30dB/oct", + "36dB/oct", + "42dB/oct", + "48dB/oct" + ], + "output": { + "label": "Type de sortie", + "options": [ + { "label": "Mono(Mix)", "index": 0 }, + { "label": "Stéréo", "index": 1 } + ] + }, + "delay": { + "label": "Délai", + "mainSpeaker": "Haut-parleurs principaux", + "subwoofer": "Caisson de basses", + "leftChannel": "Canal gauche", + "rightChannel": "Canal droit" + } + }, + "enableConfirmTitle": "Les effets sont désactivés", + "enableConfirmDesc": "Les effets sont actuellement désactivés. Les activer ?", + "enableConfirmOk": "Activer", + "enableConfirmCancel": "Annuler" + }, + "peq": { + "Standard": "Préréglage d'égaliseur standard", + "edit": "Édition par lot", + "headset": "Ajouter un casque", + "share": "Partager EQ", + "preamp": "Préampli", + "filters": { + "label": "Filtres", + "options": [ + { + "index": 0, + "title": "LPF", + "desc1": "Filtre passe-bas, ne laisse passer que les signaux ", + "desc2": "en dessous d'une certaine fréquence de coupure, ", + "desc3": "et les signaux haute fréquence sont atténués.", + "img": "LPF.png" + }, + { + "index": 1, + "title": "HPF", + "desc1": "Filtre passe-haut, ne laisse passer que les signaux ", + "desc2": "au-dessus d'une certaine fréquence de coupure,", + "desc3": "et les signaux basse fréquence sont atténués.", + "img": "HPF.png" + }, + { + "index": 2, + "title": "BPF", + "img": "BPF.png", + "desc1": "Filtre passe-bande, ne laisse passer que les signaux", + "desc2": "dans une certaine plage de fréquences, ", + "desc3": "et les autres fréquences sont atténuées." + }, + { + "index": 3, + "title": "NOTCH", + "img": "NOTCH.png", + "desc1": "Filtre coupe-bande, utilisé pour éliminer la résonance", + "desc2": "ou les signaux d'interférence à des fréquences spécifiques." + }, + { + "index": 4, + "title": "PEAK", + "img": "PEAK.png", + "desc1": "Filtre de pic, renforce ou affaiblit le ", + "desc2": "signal autour d'une certaine fréquence." + }, + { + "index": 5, + "title": "LSHELF", + "img": "LSHELF.png", + "desc1": "Filtre en plateau bas, utilisé pour ", + "desc2": "renforcer ou réduire les signaux basse fréquence." + }, + { + "index": 5, + "title": "HSHELF", + "img": "HSHELF.png", + "desc1": "Filtre en plateau haut, utilisé pour ", + "desc2": "renforcer ou réduire les signaux haute fréquence." + }, + { + "index": 6, + "title": "APF", + "img": "APF.png", + "desc1": "Filtre passe-tout, l'amplitude du signal de sortie", + "desc2": "reste inchangée, mais la phase change." + } + ] + }, + "freq": "FREQ", + "gain": "GAIN", + "q": "Valeur Q", + "loadDeviceBtn": "Confirmer", + "peqNoneItem": "Non configuré", + "eqUi": { + "batchEditTitle": "Édition par lot", + "batchEditHint": "11 lignes au total : la ligne 1 est Preamp, les lignes 2–11 sont Filtre 1–10. Sauvegarder écrase le préréglage actuel du casque.", + "addPresetTitle": "Nouveau préréglage", + "addPresetNameEmpty": "Le nom ne peut pas être vide", + "addPresetNameExists": "Ce nom existe déjà. Choisissez-en un autre.", + "overwritePresetTitle": "Le nom du préréglage existe déjà", + "overwritePresetDesc": "Un préréglage nommé \"{{name}}\" existe déjà. L'écraser ?", + "overwritePresetConfirm": "Écraser", + "overwritePresetCancelled": "Annulé", + "toastAddPresetOk": "Préréglage ajouté", + "toastAddPresetFail": "Échec de l'ajout du préréglage", + "toastPresetLimitReached": "Limite de préréglages atteinte ({{max}}). Supprimez des préréglages avant d'en ajouter.", + "cancel": "Annuler", + "save": "Sauvegarder", + "tabBrands": "Marques", + "tabModels": "Modèles", + "tabTarget": "Cible", + "searchPlaceholder": "Rechercher une marque ou un modèle", + "searching": "Recherche…", + "noSearchResults": "Aucune marque ou modèle correspondant", + "loading": "Chargement…", + "noBrandMatch": "Aucune marque correspondante", + "selectBrandFirst": "Choisissez d'abord une marque dans l'onglet Marques", + "brandLabel": "Marque :", + "modelFromSearchLabel": "Modèle depuis la recherche :", + "noModelsForBrand": "Aucun modèle pour cette marque", + "targetBrand": "Marque :", + "targetModel": "Modèle :", + "targetForm": "Forme :", + "formAll": "Tous", + "confirmLoading": "Traitement…", + "confirmButton": "Confirmer", + "selectModelFirst": "Veuillez d'abord sélectionner un modèle", + "noTargets": "Aucune courbe cible disponible", + "closeDrawer": "Fermer", + "toastBatchApplied": "Édition par lot appliquée", + "toastBatchParseError": "Format d'édition par lot invalide", + "toastBrandsFail": "Échec du chargement des marques", + "toastModelsFail": "Échec du chargement des modèles", + "toastCurveFail": "Échec du chargement de la courbe", + "toastNewEqOk": "Nouveau EQ casque sauvegardé", + "toastTargetSelected": "Cible sélectionnée : {{name}}", + "deleteConfirm": "Supprimer le casque \"{{name}}\" ?", + "batchDeleteConfirm": "Supprimer {{count}} préréglage(s) sélectionné(s) ?", + "deletePresetConfirm": "Supprimer le préréglage \"{{name}}\" ?", + "toastRenamed": "Renommé", + "toastRenameFail": "Échec du renommage", + "renameEmptyName": "Le nom ne peut pas être vide", + "renameNameExists": "Le nom existe déjà", + "toastDeleted": "Casque supprimé", + "toastDeleteFail": "Échec de la suppression du casque", + "bassBoost": "Renforcement basses : fc {{fc}}, q {{q}}, gain {{gain}} dB", + "errMinLines": "Au moins 11 lignes requises (Preamp + 10 filtres)", + "errPreampFirstLine": "La ligne 1 doit ressembler à Preamp:-5.96dB", + "errPreampValue": "Valeur Preamp invalide", + "errFilterLine": "La ligne {{line}} ne correspond pas au format Filtre", + "errFilterNoRange": "Le filtre numéro {{no}} est hors plage", + "errFilterType": "Type invalide pour le filtre {{no}} ({{type}})", + "errFilterNumbers": "Nombres invalides pour le filtre {{no}}", + "errFilterAll": "Les filtres 1–10 doivent tous être présents", + "chartCopyTo": "Copier vers {{mode}}", + "chartApplyB": "Appliquer B", + "chartSaveB": "Sauvegarder B sous", + "saveBTitle": "Sauvegarder B sous", + "toastChartCopied": "Copié vers {{mode}}", + "toastApplyBSuccess": "Courbe B appliquée à A", + "toastApplyBFail": "Échec de l'application de B", + "toastSaveBOk": "Préréglage sauvegardé depuis la courbe B", + "toastSaveBFail": "Échec de la sauvegarde de la courbe B", + "enableConfirmTitle": "HP-EQ est désactivé", + "enableConfirmDesc": "HP-EQ est actuellement désactivé. L'activer ?", + "enableConfirmOk": "Activer", + "paramInputTitleFreq": "Régler la fréquence", + "paramInputTitleGain": "Régler le gain", + "paramInputTitleQ": "Régler la valeur Q", + "paramInputHintFreq": "Plage : 20 – 20000 Hz. Utilisez k pour kHz (ex. 9,5k).", + "paramInputHintGain": "Plage : -15,0 – +15,0 dB", + "paramInputHintQ": "Plage : 0,10 – 10,00", + "paramInputInvalid": "Entrez un nombre valide", + "paramInputOutOfRangeFreq": "La fréquence doit être entre {{min}} et {{max}} Hz", + "paramInputOutOfRangeGain": "Le gain doit être entre {{min}} et {{max}} dB", + "paramInputOutOfRangeQ": "Q doit être entre {{min}} et {{max}}", + "shareTitle": "Partager EQ", + "shareSelectHint": "Sélectionnez le préréglage EQ à partager", + "shareConfirm": "Générer le code", + "shareCodeLabel": "Code de partage", + "shareCopied": "Code copié", + "shareGenerating": "Génération…", + "shareCreateFail": "Échec de la génération du code de partage", + "shareActiveExists": "Vous avez déjà un code de partage actif. Veuillez réessayer plus tard.", + "shareInvalidParams": "Requête invalide. Veuillez vérifier et réessayer.", + "shareSystemError": "Erreur système. Veuillez réessayer plus tard.", + "shareExpireAt": "Expire le", + "importTab": "Importer EQ", + "importCodeHint": "Entrez ou collez le code de partage à 5 caractères", + "importQuery": "Requête", + "importQuerying": "Requête en cours…", + "importCodeNotFound": "Code de partage introuvable ou expiré", + "importEqName": "Nom EQ", + "importEqNameHint": "Vous pouvez personnaliser le nom", + "importSourceModel": "Appareil source", + "importButton": "Importer", + "importSaving": "Importation…", + "importSuccess": "EQ importé avec succès", + "importFail": "Échec de l'importation de l'EQ", + "mySharesTab": "Mes partages", + "mySharesLoading": "Chargement…", + "mySharesEmpty": "Aucun EQ partagé pour le moment", + "mySharesCode": "Code", + "mySharesName": "Nom EQ", + "mySharesLoadFail": "Échec du chargement de la liste des partages", + "mySharesDeleteConfirmTitle": "Supprimer le code de partage", + "mySharesDeleteConfirmDesc": "Supprimer le code de partage {{code}} ? Il ne sera plus disponible à l'importation.", + "mySharesDeleteConfirmOk": "Supprimer", + "mySharesDeleteSuccess": "Code de partage supprimé", + "mySharesDeleteFail": "Échec de la suppression du code de partage" + } + }, + "dac": { + "sectionBalanceSensitivity": "Balance et sensibilité", + "sectionOutput": "Caractéristiques de sortie", + "sectionIisSettings": "Paramètres IIS", + "sectionSystemInterface": "Système et interface", + "balance": "Balance gauche-droite", + "sensitivity": "Sensibilité VU-mètre", + "analogInputGain": "Gain d'entrée analogique", + "autoImpedanceDetection": "Détection automatique d'impédance", + "dacVolumeDirect": { + "label": "Passage de volume pré-sortie", + "options": [ + { "index": 0, "label": "Désactivé" }, + { "index": 1, "label": "0dB" }, + { "index": 2, "label": "-12dB" } + ], + "confirmTitle": "Avis", + "confirm0dB": "Le mode passage mettra le volume au maximum et le volume ne pourra pas être ajusté.", + "confirm12dB": "Le mode passage mettra le volume à -12 dB et le volume ne pourra pas être ajusté.", + "confirmOk": "Confirmer", + "confirmCancel": "Annuler" + }, + "dacArc": { + "label": "Modèle ARC", + "options": [ + { "index": 0, "label": "ARC" }, + { "index": 1, "label": "EARC" } + ] + }, + "filters": { + "label": "Filtres", + "options": [ + { "index": 0, "label": "Coupure rapide" }, + { "index": 1, "label": "Coupure lente" }, + { "index": 2, "label": "Court délai coupure rapide" }, + { "index": 3, "label": "Court délai coupure lente" }, + { "index": 4, "label": "Coupure super lente" }, + { "index": 5, "label": "Faible dispersion court délai" } + ] + }, + "dacGain": { + "label": "Gain casque", + "options": [ + { "index": 0, "label": "Faible" }, + { "index": 1, "label": "Moyen" }, + { "index": 2, "label": "Élevé" } + ] + }, + "volumeStep": "Pas de volume", + "bootVolume": { + "label": "Volume de démarrage", + "options": [ + { "index": 0, "label": "Par défaut" }, + { "index": 1, "label": "-5dB" }, + { "index": 2, "label": "-10dB" }, + { "index": 3, "label": "-15dB" }, + { "index": 4, "label": "-20dB" }, + { "index": 5, "label": "-25dB" }, + { "index": 6, "label": "-30dB" }, + { "index": 7, "label": "-35dB" }, + { "index": 8, "label": "-40dB" }, + { "index": 9, "label": "-45dB" }, + { "index": 10, "label": "-50dB" } + ] + }, + "xlr": { + "label": "Polarité du port XLR", + "options": [ + { "index": 0, "label": "Normal" }, + { "index": 1, "label": "Inversé" } + ] + }, + "arc": { + "label": "Mode ARC", + "options": [ + { "index": 0, "label": "ARC" }, + { "index": 1, "label": "EARC" } + ] + }, + "mutePolar": { + "label": "Polarité de sourdine", + "options": [ + { "index": 0, "label": "Bas(sourdine)" }, + { "index": 1, "label": "Haut(sourdine)" } + ] + }, + "IISMode": { + "label": "Mode IIS", + "options": [ + { "index": 0, "label": "Mode 1" }, + { "index": 1, "label": "Mode 2" }, + { "index": 2, "label": "Mode 3" }, + { "index": 3, "label": "Mode 4" }, + { "index": 4, "label": "Mode 5" }, + { "index": 5, "label": "Mode 6" }, + { "index": 6, "label": "Mode 7" }, + { "index": 7, "label": "Mode 8" } + ] + } + }, + "settings": { + "vu": "Paramètres", + "vuMeter": "VU-mètre", + "screenBrightness": { + "label": "Luminosité de l'écran", + "options": [ + { "index": 0, "label": "Plus lumineux" }, + { "index": 1, "label": "Moyen" }, + { "index": 2, "label": "Plus sombre" } + ] + }, + "sleep": { + "label": "Veille", + "options": [ + { "index": 0, "label": "Jamais" }, + { "index": 1, "label": "Pas de signal pendant 1 minute" }, + { "index": 2, "label": "Pas de signal pendant 5 minutes" }, + { "index": 3, "label": "Pas de signal pendant 10 minutes" }, + { "index": 4, "label": "Pas de signal pendant 15 minutes" } + ] + }, + "turnOffScreen": { + "label": "Éteindre l'écran", + "options": [ + { "index": 0, "label": "Jamais" }, + { "index": 1, "label": "30 secondes" }, + { "index": 2, "label": "1 minute" }, + { "index": 3, "label": "3 minutes" }, + { "index": 4, "label": "5 minutes" } + ] + }, + "knobBrightness": { + "label": "Luminosité du bouton", + "options": [ + { "index": 0, "label": "Désactivé" }, + { "index": 1, "label": "Plus lumineux" }, + { "index": 2, "label": "Moyen" }, + { "index": 3, "label": "Plus sombre" } + ] + }, + "sleepTime": { + "label": "Veille", + "options": [ + { "index": 0, "label": "Désactivé" }, + { "index": 1, "label": "Pas de signal après 1 min" }, + { "index": 2, "label": "Pas de signal après 5 min" }, + { "index": 3, "label": "Pas de signal après 10 min" } + ] + }, + "buttonLight": { + "label": "Lumière respirante du bouton", + "options": [ + { "index": 0, "label": "Activé" }, + { "index": 1, "label": "Désactivé" } + ] + }, + "language": { + "label": "Langue", + "options": [ + { "index": 0, "label": "Anglais" }, + { "index": 1, "label": "Chinois traditionnel" }, + { "index": 2, "label": "Chinois simplifié" } + ] + }, + "Automatic": { + "label": "Retour automatique à la page d'accueil", + "options": [ + { "index": 0, "label": "Jamais" }, + { "index": 1, "label": "20 secondes d'inactivité" }, + { "index": 2, "label": "40 secondes d'inactivité" }, + { "index": 3, "label": "60 secondes d'inactivité" } + ] + }, + "systemPage": { + "sectionDisplay": "Affichage", + "sectionGeneral": "Général", + "sectionAbout": "À propos", + "screenBrightnessDesc": "Ajuster la luminosité globale de l'écran", + "turnOffScreenDesc": "Délai avant l'extinction de l'écran après inactivité", + "knobBrightnessDesc": "Luminosité des LED indicatrices du bouton", + "buttonLightDesc": "Effet de lumière respirante sur le bouton lorsque l'écran est verrouillé", + "languageDesc": "Langue d'affichage du système", + "automaticDesc": "Retour automatique à l'écran d'accueil après une période d'inactivité", + "sleepDesc": "Quand l'appareil passe en mode veille ou basse consommation", + "deviceName": "Nom de l'appareil", + "firmwareVersion": "Version du firmware", + "macAddress": "Adresse MAC", + "deviceIp": "IP de l'appareil" + } + }, + "prompt": { + "prompt": "Invite", + "NotAdded": "Aucun casque ajouté, souhaitez-vous ajouter un casque ?", + "confirm": "Confirmer", + "cancel": "Annuler", + "save": "Sauvegarder", + "reset": "Réinitialiser", + "delete": "Supprimer", + "add": "Ajouter", + "edit": "Modifier", + "deleteConfirm": "Confirmer la suppression", + "saveConfirm": "Confirmer la sauvegarde", + "HP-EQ": "HP-EQ est désactivé, voulez-vous l'activer ?", + "Effect": "L'effet est désactivé, voulez-vous l'activer ?", + "EnableEffectY": "Oui", + "EnableEffectN": "Non", + "noDelete": "Cet élément ne peut pas être supprimé", + "SavePreset": "Nouveau préréglage", + "default": "Par défaut", + "invalidData": "Données invalides", + "range": "Plage", + "selectedYet": "Courbe cible pas encore sélectionnée", + "leftChannel": "Canal gauche", + "rightChannel": "Canal droit" + }, + "ai": { + "title": "Luxsin IA", + "welcomeTitle": "Bonjour, je suis Luxsin IA", + "welcomeDescription": "Je peux vous aider avec la configuration du système Luxsin X8, l'analyse de la réponse en fréquence des casques, l'optimisation EQ et les conseils avancés de configuration audio.", + "suggestionsLabel": "Essayez de demander", + "suggestions": [ + { "title": "Optimisation EQ", "prompt": "Optimise mon EQ actuel pour des voix plus claires et des basses plus profondes." }, + { "title": "Recommander EQ Pop", "prompt": "Recommande un ensemble de paramètres EQ adaptés à la musique pop." }, + { "title": "Vérifier l'état de l'appareil", "prompt": "Montre-moi le volume actuel, la source d'entrée et le port de sortie." }, + { "title": "Changer la source d'entrée", "prompt": "Change la source d'entrée vers USB-C." } + ], + "inputPlaceholder": "Posez des questions sur votre appareil, EQ, effets…", + "thinking": "Réflexion…", + "stopped": "(Arrêté)", + "requestFailed": "Échec de la requête. Veuillez réessayer plus tard.", + "ariaSend": "Envoyer", + "ariaStop": "Arrêter", + "ariaNewChat": "Nouveau chat", + "ariaHistory": "Historique", + "ariaClose": "Fermer", + "ariaFullPage": "Ouvrir en plein écran", + "ariaHidePanel": "Masquer le panneau IA", + "ariaRestoreSplit": "Restaurer la vue partagée", + "clearCurrent": "Effacer ce chat", + "cleared": "Chat actuel effacé", + "clearFailed": "Échec de l'effacement : {message}", + "deviceRequired": "Veuillez d'abord connecter un appareil", + "deviceDisconnected": "Appareil déconnecté", + "loadHistoryFailed": "Échec du chargement de l'historique : {message}", + "loadChatFailed": "Échec du chargement du chat : {message}", + "toolResultFailed": "Échec de l'envoi du résultat de l'outil : {message}", + "history": { + "title": "Historique des chats", + "newChat": "Démarrer un nouveau chat", + "empty": "Pas encore d'historique de chat", + "current": "Actuel", + "delete": "Supprimer", + "deleteConfirm": "Supprimer ce chat ? Cette action est irréversible.", + "deleted": "Chat supprimé", + "deleteFailed": "Échec de la suppression : {message}" + }, + "optimize": { + "badge": "Optimisation", + "applied": "Appliqué", + "summary": "{count} filtres · préampli {preamp} dB", + "compare": "Comparer", + "apply": "Appliquer", + "rollback": "Annuler", + "applySuccess": "Nouvel EQ appliqué", + "rollbackSuccess": "Retour à l'EQ d'origine", + "applyFailed": "Échec de l'opération : {message}" + }, + "compareDialog": { + "title": "Comparaison EQ", + "legendBefore": "Avant", + "legendAfter": "Après", + "legendCurrent": "Actuel", + "legendAfterApply": "Après application", + "legendAfterRollback": "Après annulation", + "close": "Fermer", + "apply": "Appliquer cette optimisation", + "rollback": "Retour à l'original", + "paramSummary": "{count} filtres · préampli {preamp} dB" + } + } +}