Files
bg1-ee-voiceover/README.md
2025-12-07 19:35:49 +01:00

146 lines
3.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Projektstruktur & README
## 📁 Empfohlene Ordnerstruktur (Best Practice)
```text
bg1ee-tts/
├── README.md
├── docs/
│ ├── architecture.md
│ ├── extraction-guide.md
│ ├── tools-installation.md
│ └── lua-hook-spec.md
├── data/
│ ├── raw/
│ │ ├── tlk/
│ │ │ ├── dialog_de.tlk
│ │ │ └── dialog_en.tlk
│ │ └── dlg/
│ ├── processed/
│ │ └── dialogs.json
│ └── mappings/
│ └── npc_map.json
├── scripts/
│ ├── extract_tlk.py
│ ├── parse_dlg.py
│ ├── build_database.py
│ └── selftest.py
├── tts-service/
│ ├── app/
│ │ ├── main.py
│ │ ├── engines/
│ │ ├── cache/
│ │ └── playback/
│ ├── tests/
│ └── requirements.txt
├── lua-hook/
│ ├── bg1ee_tts_hook/
│ │ ├── dialog.lua
│ │ └── mod.ini
│ └── build_instructions.md
├── audio/
│ ├── de/
│ └── en/
└── tools/
├── NearInfinity.jar
└── weidu/
```
---
# 📘 README.md
## 🎯 BG1EE Dual‑Language TTS Projekt
Dieses Repository enthält die vollständige Infrastruktur, um **Baldur's Gate Enhanced Edition (Steam)** automatisch in **Deutsch** und **Englisch** zu vertonen – live während des Spielens, mit Umschaltung per Hotkey.
Ziel: Dialog erscheint im Spiel → ID wird abgefangen → TTS erzeugt Audio → Audio wird abgespielt.
---
## 🚀 Features
- Extraktion aller BG1EE‑Texte (DE & EN)
- Parser für TLK + DLG Dateien → JSON‑Datenbank
- TTS‑Backend mit mehreren Engines (Melo, Kokoro, F5‑TTS, Piper)
- Live‑Integration via Lua‑Dialoghook
- Plattformunabhängig (Linux: Entwicklung / Windows: Spielen)
---
## 🧩 Voraussetzungen
Du benötigst:
- **Baldur's Gate: Enhanced Edition (Steam)**
- **Java 17+** (für Near Infinity)
- **Python 3.10+**
- **FastAPI**
- Optional: GPU‑TTS Engines
---
## 🔧 Installation externer Tools
### Near Infinity (TLK + DLG Viewer/Exporter)
Download:
https://github.com/Argent77/NearInfinity
```
wget https://github.com/Argent77/NearInfinity/releases/latest/download/NearInfinity.jar
```
### WeiDU (Modding Toolkit)
Download:
https://github.com/WeiDUorg/weidu
---
## 📥 BG1EE Dateien finden (Steam)
Linux‑Pfad:
```
~/.steam/steam/steamapps/common/Baldur's Gate Enhanced Edition/data/
```
Windows‑Pfad:
```
C:\Program Files (x86)\Steam\steamapps\common\Baldur's Gate Enhanced Edition\data
```
Relevante Dateien:
- `lang/de_DE/dialog.tlk`
- `lang/en_US/dialog.tlk`
- `dialog.bif`
- sämtliche `.dlg` Dateien
---
## 🏗️ Projektaufbau
1. **TLK & DLG exportieren** (Near Infinity)
2. **Parser ausführen** → erzeugt `dialogs.json`
3. **TTS‑Service starten** (`uvicorn app.main:app`)
4. **Lua‑Hook als Mod installieren**
5. Spiel starten → Vertonung läuft automatisch
---
## 📚 Dokumentation
- [docs/architecture.md](docs/architecture.md)
- [docs/extraction-guide.md](docs/extraction-guide.md)
- [docs/tools-installation.md](docs/tools-installation.md)
- [lua-hook-spec.md](docs/lua-hook-spec.md)
---
## 📜 Rechtliches
Dieses Projekt enthält **keine Originalspieldateien**.
Alle Extraktionen müssen lokal auf einem legal erworbenen BGEE‑Spiel erfolgen.
Siehe:
- Baldur's Gate EE Copyright © Beamdog
- https://store.steampowered.com/app/228280
Quellenverlinkungen enthalten nur **offizielle** Hersteller‑Seiten.
---
## 🤝 Mitwirken
PRs, Issues und Erweiterungen willkommen. Dies ist ein technisches Forschungs‑ und Hobbyprojekt.
---
Fertig!