From 2b2edf4852a4b052098a92831cd4641aed6d4c71 Mon Sep 17 00:00:00 2001 From: Soulter <905617992@qq.com> Date: Fri, 23 Jan 2026 19:00:57 +0800 Subject: [PATCH] fix: genie tts config --- astrbot/core/config/default.py | 16 +++++++++++++++- astrbot/core/provider/sources/genie_tts.py | 18 ++++++++++++++++-- 2 files changed, 31 insertions(+), 3 deletions(-) diff --git a/astrbot/core/config/default.py b/astrbot/core/config/default.py index f299f5db..3ae0568a 100644 --- a/astrbot/core/config/default.py +++ b/astrbot/core/config/default.py @@ -1191,7 +1191,11 @@ CONFIG_METADATA_2 = { "type": "genie_tts", "provider_type": "text_to_speech", "enable": False, - "character_name": "mika", + "genie_character_name": "mika", + "genie_onnx_model_dir": "CharacterModels/v2ProPlus/mika/tts_models", + "genie_language": "Japanese", + "genie_refer_audio_path": "", + "genie_refer_text": "", "timeout": 20, }, "Edge TTS": { @@ -1410,6 +1414,16 @@ CONFIG_METADATA_2 = { }, }, "items": { + "genie_onnx_model_dir": { + "description": "ONNX Model Directory", + "type": "string", + "hint": "The directory path containing the ONNX model files", + }, + "genie_language": { + "description": "Language", + "type": "string", + "options": ["Japanese", "English", "Chinese"], + }, "provider_source_id": { "invisible": True, "type": "string", diff --git a/astrbot/core/provider/sources/genie_tts.py b/astrbot/core/provider/sources/genie_tts.py index 0fd6d5b9..36436919 100644 --- a/astrbot/core/provider/sources/genie_tts.py +++ b/astrbot/core/provider/sources/genie_tts.py @@ -29,10 +29,24 @@ class GenieTTSProvider(TTSProvider): if not genie: raise ImportError("Please install genie_tts first.") - self.character_name = provider_config.get("character_name", "mika") + self.character_name = provider_config.get("genie_character_name", "mika") + language = provider_config.get("genie_language", "Japanese") + model_dir = provider_config.get("genie_onnx_model_dir", "") + refer_audio_path = provider_config.get("genie_refer_audio_path", "") + refer_text = provider_config.get("genie_refer_text", "") try: - genie.load_predefined_character(self.character_name) + genie.load_character( + character_name=self.character_name, + language=language, + onnx_model_dir=model_dir, + ) + genie.set_reference_audio( + character_name=self.character_name, + audio_path=refer_audio_path, + audio_text=refer_text, + language=language, + ) except Exception as e: raise RuntimeError(f"Failed to load character {self.character_name}: {e}")