mirror of
https://github.com/Alkatrazz24/Funk-lab.git
synced 2026-07-08 19:44:41 +02:00
Ajoute un moteur TTS plus naturel (Kokoro, ONNX/CPU) au choix, Piper restant
le défaut et le repli.
- engine.py : synthèse enfichable (_synthesize → _synth_piper | _synth_kokoro).
Kokoro chargé une fois (préchargé au boot si sélectionné), WAV via wave stdlib
(numpy → PCM16), lecture/interruption inchangées. Repli SILENCIEUX si le modèle
ou le paquet kokoro-onnx manque (jamais de crash).
- config : [voice].tts_engine ("piper"|"kokoro") + kokoro_voice (ff_siwis, FR),
kokoro_speed, kokoro_lang.
- cli : `stt --install-kokoro` télécharge kokoro-v1.0.onnx + voices-v1.0.bin dans
~/.local/share/kokoro et imprime les étapes (pipx inject kokoro-onnx, espeak-ng).
- pyproject : extra optionnel [kokoro] ; client 0.15.0.
- doc : stt.example.toml + admin/ia/stt.md + journal.
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
|
||
|---|---|---|
| .. | ||
| README.md | ||
| stt.example.toml | ||
stt/config — personnalisation
Tout ce qui se change sans recompiler. stt --setup copie stt.example.toml vers
~/.config/stt/stt.toml.
config/
├── stt.example.toml # config de référence (serveur/modèle, voix, ui, mémoire)
└── README.md
Les portraits de l'avatar et le thème ne vivent plus dans
config/: le HUD les gère lui-même. Avatars →stt/hud/avatars/(servis par le HUD — voir son README). Thème → réglé en direct dans le drawer Réglages (intensité d'accent, mémorisé en localStorage).
Points de personnalisation
| Quoi | Où | Note |
|---|---|---|
| Avatar (portraits) | stt/hud/avatars/<set>-{idle,think,speak}.png |
jeu choisi dans Réglages → Avatar |
| Thème / accent | Réglages → intensité (HUD) | rose doux → rouge, persisté en localStorage |
| Voix TTS | ~/.local/share/piper/<voix>.onnx + voice.piper_voice |
Piper |
| Mot de réveil | voice.wake_word (ou Réglages → mot de réveil) |
défaut « hermes » |
| Modèle (cerveau) | server.model · stt --model · Réglages → mode cerveau |
alias LiteLLM |
🔒 Pas de clé API côté client : l'inférence (et donc Claude) passe par le STT-server in-cluster, jamais par le poste.