This commit is contained in:
2025-09-02 07:40:20 +08:00
parent 201241571b
commit d68b23795e
3 changed files with 21 additions and 3 deletions

View File

@@ -104,17 +104,35 @@ async def generate_audio(request: TextToSpeechRequest):
根据输入文本和语音参数生成音频文件 根据输入文本和语音参数生成音频文件
""" """
try: 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工具生成音频 # 调用TTS工具生成音频
audio_url = tts_instance.generate_audio( audio_data = tts_instance.generate_audio(
text=request.text, text=request.text,
voice_type=request.voice_type, voice_type=request.voice_type,
speed_ratio=request.speed_ratio, speed_ratio=request.speed_ratio,
volume_ratio=request.volume_ratio, volume_ratio=request.volume_ratio,
pitch_ratio=request.pitch_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( return TextToSpeechResponse(
success=True, success=True,
message="音频生成成功", message="音频生成成功",