diff --git a/mkapp/app/language/de_de.ini b/mkapp/app/language/de_de.ini new file mode 100644 index 00000000..1b5703a4 --- /dev/null +++ b/mkapp/app/language/de_de.ini @@ -0,0 +1,326 @@ +SD Card = "SD-Karte" +Off = "Aus" +On = "Ein" +In = "Eingang" +Expansion Module = "Erweiterungsmodul" +Integrity check = "Systemprüfung" +Unsupported = "Nicht unterstützt" +No SD Card = "Keine SD-Karte" +Searching = "WiFi: Suche" +RF = "RF" +clip(s) = "Clip(s)" +full = "Voll" +available = "Verfügbar" + +; scan now +Scan Now = "Jetzt scannen" +Scan Ready = "Scan bereit" +When scanning is complete, use the = "Nach dem Scan, verwende das" +dial to select a channel and press = "Rad zum Auswählen des Kanals und drücke" +the Enter button to choose = "die Enter-Taste zum Bestätigen" +Scanning = "Scannen" +Scanning done = "Scan abgeschlossen" +Scanning ready = "Scan bereit" + +; source +Source = "Quelle" +Expansion Module = "Erweiterungsmodul" +Analog Video = "Analoges Video" +Analog Ratio = "Analoges Seitenverhältnis" +HDZero Band = "HDZero Frequenzband" +Raceband = "Raceband" +Lowband = "Lowband" +HDZero BW = "HDZero BW" +Wide = "Breit" +Narrow = "Schmal" +Back = "Zurück" +Connected = "Verbunden" +Disconnected = "Getrennt" + +; image setting +Image Setting = "Bildeinstellung" +Brightness = "Helligkeit" +Saturation = "Sättigung" +Contrast = "Kontrast" +Auto Off = "Auto Aus" +To change image settings, click the Enter button to enter video mode = "Um Bildeinstellungen zu ändern, drücke Enter zum Videomodus" +Make sure a HDZero VTX or analog VTX is powered on for live video = "Stelle sicher, dass ein HDZero- oder Analog-VTX für Live-Video eingeschaltet ist" +Never = "Niemals" +min = "Min." +Reset All = "Alle zurücksetzen" + +; osd +OSD = "OSD" +Adjust OSD Elements = "OSD-Elemente anpassen" +Orbit = "Orbit" +Mode = "Modus" +Min = "Min." +Max = "Max." +At Startup = "Beim Start" +Show = "Anzeigen" +Hide = "Ausblenden" +Last = "Letzte" +Note: The positioning preview will display all OSD elements. Some elements might = "Hinweis: Die Vorschau zeigt alle OSD-Elemente. Einige Elemente können" +not show during normal operation, depending on input source and conditions = "während des normalen Betriebs je nach Eingang und Bedingungen nicht angezeigt werden" +OSD Element positioning is based on a 1280x720 canvas = "Die Positionierung der OSD-Elemente basiert auf einem 1280x720 Raster" +Positions can be set for 4x3 and 16x9 modes separately = "Positionen können für 4:3- und 16:9-Modi separat eingestellt werden" +the Show Element toggle is shared between both modes = "Der Anzeige-Schalter gilt für beide Modi" + +; power +Power = "Strom" +Battery = "Batterie" +Cell Mode = "Zellenmodus" +Manual = "Manuell" +Cell Count = "Zellanzahl" +Warning Cell Voltage = "Zellspannungswarnung" +Voltage Calibration = "Spannungs Kalibrierung" +Display Mode = "Anzeige-Modus" +Total = "Gesamt" +Cell Avg. = "Zell-Durchschnitt" +Warning Type = "Warnart" +Beep = "Signalton" +Visual = "Visuell" +Both = "Beides" +AnalogRX Power = "Analog RX Strom" +Auto = "Auto" + +; fans +Fans = "Lüfter" +Auto Control = "Automatik" +Top Fan = "Oberer Lüfter" +Side Fans = "Seitenlüfter" + +; record +Record Option = "Aufnahmeoption" +Record Mode = "Aufnahmemodus" +Record Format = "Aufnahmeformat" +Record OSD = "OSD Aufnahme" +Record Audio = "Tonaufnahme" +Audio Source = "Audioquelle" +Naming Scheme = "Namensschema" +Yes = "Ja" +No = "Nein" +Mic = "Mikrofon" +Line In = "Line-In" +A/V In = "A/V-Eingang" +Digits = "Ziffern" +Date = "Datum" +MP4 format requires properly closing files or the files will be corrupt = "MP4 erfordert korrektes Beenden der Dateien, sonst sind sie beschädigt" +TS format is highly recommended = "TS-Format wird sehr empfohlen" + +; auto scan +Auto Scan = "Automatischer Scan" +Default = "Standard" +Expansion = "Erweiterung" +AV In = "AV-Eingang" +HDMI In = "HDMI-Eingang" +*if Auto Scan is 'Last', goggles will default to show last tuned channel = "*Wenn Auto Scan auf 'Letzte' steht, zeigt die Brillen automatisch den letzten Kanal" + +; elrs +ELRS = "ELRS" +Send = "Senden" +Bind = "Verbinden" +Click to start = "Zum Start klicken" +* Press right button to cancel binding = "* Rechts klicken zum Abbrechen des Verbindens" +Starting = "Startet..." +FAILED = "FEHLER" +Success = "Erfolg" +Binding = "Verbindet..." +Timeout = "Zeitüberschreitung" +Cancelled = "Abgebrochen" +Backpack = "Backpack" + +; wifi module +WiFi Module = "WiFi Modul" +Invalid Too Short = "Zu kurz" +Invalid Format = "Ungültiges Format" +Password Requirements = "Passwortanforderungen" +Minimum 8 characters = "Mindestens 8 Zeichen" +maximum 64 characters = "Maximal 64 Zeichen" +Live stream: = "Live-Stream:" +Connect to the WiFi network identified above = "Mit obigem WiFi-Netz verbinden" +Use VLC Player to open a Network Stream = "Verwende den VLC Player zum Streamen" +Apply Settings = "Einstellungen übernehmen" +Enable = "Aktivieren" +Host = "Host" +Client = "Client" +Password = "Passwort" +Address = "Adresse" +Netmask = "Netzmaske" +Gateway = "Gateway" +RF Channel = "RF-Kanal" +Root PW = "Root-PW" +Page = "Seite" +Basic = "Einfach"c +Advanced = "Erweitert" +System = "System" +Updating WiFi = "WiFi aktualisieren" +Click to confirm or Scroll to cancel = "Zum Bestätigen klicken oder zum Abbrechen scrollen" + +; head tracker +Head Tracker = "Kopfnachführung" +Set Alarm Angle = "Alarmwinkel setzen" +Tracking = "Verfolgung" +Tilt Alarm = "Neigungsalarm" +Alarm = "Alarm" +Video = "Video" +Arm = "Scharf schalten" +Calibrate = "Kalibrieren" +Set Center = "Zentrum setzen" +Max Angle = "Max. Winkel" +Pan = "Schwenken" +Tilt = "Neigen" +Roll = "Kippen" +Calibrating = "Kalibrieren" +Re-calibrate = "Neukalibrieren" +Updating Angle = "Winkel aktualisieren" + +; playback +Playback = "Wiedergabe" +Long press the Enter button to exit = "Enter lange drücken zum Beenden" +Long press the Func button to delete = "Func lange drücken zum Löschen" + +; storage +Storage = "Speicher" +Format SD Card = "SD-Karte formatieren" +Repair SD Card = "SD-Karte reparieren" +Clear DVR Folder = "DVR-Ordner löschen" +Format was successful = "Formatierung erfolgreich" +Format has failed = "Formatierung fehlgeschlagen" +Press click to exit = "Zum Beenden klicken" +Please insert a SD Card = "Bitte SD-Karte einlegen" +Failed to extract results = "Ergebnisse konnten nicht extrahiert werden" +Failed to access results = "Zugriff auf Ergebnisse fehlgeschlagen" +Failed to generate results = "Erstellung der Ergebnisse fehlgeschlagen" +Failed to start format = "Formatierung konnte nicht gestartet werden" +Unsupported status code = "Nicht unterstützter Statuscode" +SD Card Format Status = "Formatierungsstatus der SD-Karte" +Filesystem is OK = "Dateisystem ist in Ordnung" +Filesystem was modified and fixed = "Dateisystem wurde geändert und repariert" +Failed to remount SD Card = "SD-Karte konnte nicht erneut eingebunden werden" +Failed to start repair = "Reparatur konnte nicht gestartet werden" +SD Card Repair Status = "Reparaturstatus der SD-Karte" +Logging = "Protokollierung" +Self-Test is enabled = "Selbsttest aktiviert" +All storage options are disabled = "Alle Speicheroptionen sind deaktiviert" +Detected files being accessed by SD Card = "Gefundene Dateien werden von SD-Karte verwendet" +Remove the following files from the SD Card and try again = "Entferne die folgenden Dateien von der SD-Karte und versuche es erneut" +Status = "Status" +None = "Keine" +Formating = "Formatieren" +Repairing = "Reparieren" +Removing = "Entfernen" +Done = "Fertig" +SD Card integrity check is active = "Integritätsprüfung der SD-Karte aktiv" +controls are disabled until process has completed = "Steuerung deaktiviert bis der Prozess abgeschlossen ist" + +; firmware +Firmware = "Firmware" +Flashing = "Flashen" +SUCCESS = "ERFOLG" +Verification failed, try it again = "Überprüfung fehlgeschlagen, versuche es erneut" +No firmware found = "Keine Firmware gefunden" +Failed, check connection = "Fehler, Verbindung prüfen" +WAIT = "WARTEN" +DO NOT POWER OFF = "NICHT AUSSCHALTEN" +Multiple versions been found = "Mehrere Versionen gefunden" +Keep only one = "Nur eine behalten" +To view release notes = "Um Versionshinweise zu sehen" +select either Update VTX or Update Goggle = "Wähle Update VTX oder Update Brille" +then press the Func button to display or hide the release notes = "Dann drücken Sie die Func-Taste, um Versionshinweise anzuzeigen oder zu verbergen" +Remove HDZERO_TX or HDZERO_GOGGLE2 binary files from the root of = "Entfernen Sie die HDZERO_TX oder HDZERO_GOGGLE2 Binärdateien aus dem Root-Verzeichnis" +SD Card in order to install the latest online downloaded firmware files = "der SD-Karte zum Installieren der neuesten online heruntergeladenen Firmware-Dateien" +Visit [https://github.com/hdzero](https://github.com/hdzero) for the complete list of changes = "Besuchen Sie [https://github.com/hdzero](https://github.com/hdzero) für die vollständige Liste der Änderungen" +Release Notes = "Versionshinweise" +not found = "nicht gefunden" +Update = "Aktualisieren" +Target = "Ziel" +Current Version = "Aktuelle Version" +Reset all settings = "Alle Einstellungen zurücksetzen" +Update complete = "Update abgeschlossen" +Goggle update completed successfully = "Brillen-Update erfolgreich abgeschlossen" +Please repower goggle now = "Bitte starten Sie die Brille neu" +Settings reset = "Einstellungen zurückgesetzt" +All settings have been reset = "Alle Einstellungen wurden zurückgesetzt" +Empty = "Leer" +Goggle = "Brille" + +; focus chart +Focus Chart = "Fokusdiagramm" +Click the Enter Button to display the Back Focusing Chart = "Drücken Sie Enter, um die Fokusdiagramm anzuzeigen" +Click the Enter Button again to exit = "Drücken Sie Enter, um zu verlassen" + +; clock +Clock = "Uhr" +Set Clock = "Uhr einstellen" +Format = "Format" +AM = "AM" +PM = "PM" +24 Hour = "24 Stunden" +Battery not installed or clock not configured = "Batterie nicht installiert oder Uhr nicht eingestellt" + +; input +Input = "Eingabe" +Roller = "Rad" +Left short = "Links kurz" +Left long = "Links lang" +Right short = "Rechts kurz" +Right long = "Rechts lang" +Right double = "Rechts doppelt" +Toggle OSD = "OSD umschalten" +Main menu = "Hauptmenü" +Toggle DVR = "DVR umschalten" +Center HT = "HT zentrieren" +Calibrate HT = "HT kalibrieren" +Toggle fan speed = "Lüftergeschwindigkeit umschalten" +Star DVR = "Aufnahme markieren" +Toggle source = "Quelle umschalten" +Cycle source = "Quelle wechseln" +Switch channel = "Kanal wechseln" +Change fan speed = "Lüftergeschwindigkeit ändern" +OLED Brightness = "OLED Helligkeit" +Settings apply to video mode only = "Einstellungen gelten nur für den Videomodus" +'Toggle source' will switch between HDZero and Expansion module = "'Quelle umschalten' wechselt zwischen HDZero und Erweiterungsmodul" + +; go sleep +Go Sleep = "Ruhemodus" +Go Sleep! = "Ruhemodus!" +Click the Enter Button to go sleep = "Drücke Enter, um in den Ruhemodus zu gehen" +Click any button to exit sleep mode = "Drücke eine Taste, um den Ruhemodus zu beenden" + +; ui osd element pos +Top Fan Speed = "Geschwindigkeit oberer Lüfter" +Latency Lock = "Latenz-Sperre" +VTX Temp = "VTX Temperatur" +VRX, Temp = "VRX Temperatur" +Battery Low = "Niedriger Batteriestand" +Battery Voltage = "Batteriestand" +Clock Date = "Datum" +Clock Time = "Zeit" +Channel = "Kanal" +DVR = "DVR" +VLQ = "Videoqualität" +Antenna 1 = "Antenne 1" +Antenna 2 = "Antenne 2" +Antenna 3 = "Antenne 3" +Antenna 4 = "Antenne 4" +Goggle Temp Top = "Brillentemperatur oben" +Goggle Temp Left = "Brillentemperatur links" +Goggle Temp Right = "Brillentemperatur rechts" +Reset all elements (both modes) = "Alle Elemente zurücksetzen (beide Modi)" +Save changes = "Änderungen speichern" +Cancel = "Abbrechen" +click to confirm = "Zum Bestätigen klicken" +scroll to cancel = "Zum Abbrechen scrollen" +Elements reset = "Elemente zurückgesetzt" +Element = "Element" +Pos-X = "Pos. X" +Pos-Y = "Pos. Y" + +; ui_keyboard +Highlight Key = "Taste hervorheben" +Select Key = "Taste auswählen" +Click = "Klicken" +Close Keyboard = "Tastatur schließen" +Hold = "Halten" +Erase Text = "Text löschen \ No newline at end of file diff --git a/src/core/dvr.c b/src/core/dvr.c index 108628c5..d513d216 100755 --- a/src/core/dvr.c +++ b/src/core/dvr.c @@ -127,7 +127,7 @@ void dvr_update_vi_conf(video_resolution_t fmt) { case VR_1080P60: ini_putl("vi", "width", 1920, REC_CONF); ini_putl("vi", "height", 1080, REC_CONF); - ini_putl("vi", "fps", 59, REC_CONF); // If set fps to 60, DVR is wrong. I don't why. 59 or 61 is ok. + ini_putl("vi", "fps", 59, REC_CONF); // If set fps to 60, DVR is wrong. I don't know why. 59 or 61 is ok. break; } pthread_mutex_unlock(&dvr_mutex); diff --git a/src/lang/language.c b/src/lang/language.c index 0ee5e94c..53efc344 100644 --- a/src/lang/language.c +++ b/src/lang/language.c @@ -22,6 +22,7 @@ static struct Language languages[] = { {LANG_ENGLISH_DEFAULT, "en_us", "English", NULL}, {LANG_SIMPLIFIED_CHINESE, "zh_hans", "Simplified Chinese", NULL}, {LANG_RUSSIAN, "ru_ru", "Russian", NULL}, + {LANG_GERMAN, "de_de", "German", NULL}, }; const char *language_config_file[] = { @@ -29,6 +30,7 @@ const char *language_config_file[] = { "ENG.TXT", "CHN.TXT", "RUS.TXT", + "DEU.TXT", }; struct CallbackPayload { diff --git a/src/lang/language.h b/src/lang/language.h index 464eee50..97b84664 100644 --- a/src/lang/language.h +++ b/src/lang/language.h @@ -10,6 +10,7 @@ typedef enum { LANG_ENGLISH_DEFAULT = 0, LANG_SIMPLIFIED_CHINESE, LANG_RUSSIAN, + LANG_GERMAN, LANG_END, } lang_e;