diff --git a/dsLightRag/Routes/__pycache__/ttsRoute.cpython-310.pyc b/dsLightRag/Routes/__pycache__/ttsRoute.cpython-310.pyc index 2a8df354..99085838 100644 Binary files a/dsLightRag/Routes/__pycache__/ttsRoute.cpython-310.pyc and b/dsLightRag/Routes/__pycache__/ttsRoute.cpython-310.pyc differ diff --git a/dsLightRag/Routes/ttsRoute.py b/dsLightRag/Routes/ttsRoute.py index f1f842f3..d5401a74 100644 --- a/dsLightRag/Routes/ttsRoute.py +++ b/dsLightRag/Routes/ttsRoute.py @@ -104,17 +104,35 @@ async def generate_audio(request: TextToSpeechRequest): 根据输入文本和语音参数生成音频文件 """ try: + # 生成唯一文件名 + import os + from datetime import datetime + + # 确保输出目录存在 + output_dir = "static/audio" + os.makedirs(output_dir, exist_ok=True) + + # 生成唯一文件名 + timestamp = datetime.now().strftime("%Y%m%d_%H%M%S") + unique_id = str(uuid.uuid4())[:8] + filename = f"tts_{timestamp}_{unique_id}.{request.encoding}" + output_path = os.path.join(output_dir, filename) + # 调用TTS工具生成音频 - audio_url = tts_instance.generate_audio( + audio_data = tts_instance.generate_audio( text=request.text, voice_type=request.voice_type, speed_ratio=request.speed_ratio, volume_ratio=request.volume_ratio, pitch_ratio=request.pitch_ratio, - encoding=request.encoding + encoding=request.encoding, + output_path=output_path ) - if audio_url: + if audio_data: + # 构建可访问的URL + audio_url = f"/{output_path}" + return TextToSpeechResponse( success=True, message="音频生成成功", diff --git a/dsLightRag/static/audio/tts_20250902_073958_bd36e456.mp3 b/dsLightRag/static/audio/tts_20250902_073958_bd36e456.mp3 new file mode 100644 index 00000000..7c91656a Binary files /dev/null and b/dsLightRag/static/audio/tts_20250902_073958_bd36e456.mp3 differ