🎨 Modding Guide: Eigene Themes & Sprachen

Willkommen! Dieser Guide richtet sich an Fortgeschrittene und Bastler, die melcom's FFmpeg Audio Normalizer anpassen möchten. Du musst dafür keine komplexen Codes schreiben, aber Grundkenntnisse im Umgang mit Python und einem Texteditor (wie Notepad++) sollten vorhanden sein.

⚠️ Voraussetzung: Quellcode & Python

Diese Anleitung richtet sich an fortgeschrittene Bastler und Modder. Da die Standard-Farben und -Sprachlisten fest in der fertigen Anwendung verbaut sind, müssen wir die Anpassungen direkt im Quellcode vornehmen.

So geht's: Entpacke einfach die Datei AudioNormalizer-Source_Code.7z aus dem Ordner source_code dieses Releases. Um mit den Dateien zu arbeiten, muss Python auf deinem System installiert sein.

Danach hast du zwei Möglichkeiten, deine Änderungen zu nutzen:

Falls du Python noch nicht installiert hast, kannst du es hier kostenlos herunterladen:
» www.python.org/downloads


🌍 Teil 1: Eine neue Sprache hinzufügen

Du möchtest das Programm in Französisch, Spanisch oder einer Fantasiesprache nutzen? Kein Problem!

Schritt 1: Sprachdatei kopieren

Gehe in den entpackten Source-Code Ordner und dort nach lang. Kopiere eine bestehende Datei, z.B. en_US.json, und benenne sie um (z.B. in fr_FR.json für Französisch).

Schritt 2: Übersetzen

Öffne deine neue Datei mit einem Texteditor. Du siehst dort Zeilen wie diese:

"app_title": "melcom's FFmpeg Audio Normalizer",

WICHTIG: Ändere nur den Text auf der rechten Seite des Doppelpunkts! Die linke Seite (z.B. "app_title") muss exakt so bleiben, sonst findet das Programm den Text nicht.

Schritt 3: Dem Programm die Sprache mitteilen

Öffne die Datei constants.py in deinem Source-Code Ordner. Suche nach folgendem Eintrag (ziemlich weit oben):

LANGUAGE_CODES_LIST = ["en_US", "de_DE", "pl_PL", "sv_SE"]

Füge deine neue Sprache einfach am Ende der Liste hinzu, vergiss die Anführungszeichen und das Komma nicht:

LANGUAGE_CODES_LIST = ["en_US", "de_DE", "pl_PL", "sv_SE", "fr_FR"]

Speichern, Programm über main.py starten und schon kannst du deine Sprache in den Optionen auswählen!


🖌️ Teil 2: Ein eigenes Theme (Farben) erstellen

Das Programm kommt bereits mit mehreren Themes. Du möchtest lieber knalliges Pink oder Neon-Grün? Los geht's:

Schritt 1: Farben definieren

Öffne die Datei theme.py. Kopiere einen bestehenden Farbblock, z.B. MIDNIGHT_PALETTE, füge ihn darunter ein und nenne ihn z.B. MY_AWESOME_PALETTE. Passe die Farben mit Hex-Codes (z.B. #FF0000 für Rot) an:

MY_AWESOME_PALETTE = {
    "bg": "#111111",           # Hintergrundfarbe des Fensters
    "fg": "#ffffff",           # Normale Textfarbe
    "info_bg": "#222222",      # Hintergrund für Eingabefelder
    "separator": "#ff00ff",    # Rahmen- und Trennlinien
    "entry_bg": "#222222",     # Texingabefelder (z.B. LUFS)
    "disabled_fg": "#666666",  # Ausgegrauter Text
    "error_bg": "#ff0000",     # Farbe bei einer Fehlereingabe
    "button_bg": "#333333",    # Hintergrund der Buttons
    "button_hover": "#444444", # Button-Farbe beim Drüberfahren
    "text_relief": "flat",     # 'flat' (flach) oder 'sunken' (3D)
    "accent": "#00ff00",       # Haupt-Akzentfarbe (Start-Button!)
    "tree_selected": "#00ff00",# Markierte Zeile in der Dateiliste
    "tree_selected_fg": "#000" # Textfarbe der markierten Zeile
}

Schritt 2: Das Theme im Code registrieren

Scrolle in der theme.py ganz nach unten zur Funktion def apply_theme(...). Füge dein Theme in die if / elif Liste ein:

    elif mode == "my awesome theme":
        colors = MY_AWESOME_PALETTE

Schritt 3: Das Theme im Menü sichtbar machen

Öffne wieder die Datei constants.py. Suche nach:

THEME_MODES_LIST = ["light", "läderlappen", "melcom", "aquamarine & blue", "midnight", "modernlight"]

Füge den exakten Namen (aus Schritt 2) in die Liste ein:

THEME_MODES_LIST = ["light", "läderlappen", "melcom", "aquamarine & blue", "midnight", "modernlight", "my awesome theme"]

Fertig! Starte das Programm über main.py und wähle dein neues Theme in den Optionen aus.