fix: fix some error by cache queue
This commit is contained in:
parent
a6900c4892
commit
a299dfdb7b
39
server.py
39
server.py
@ -129,25 +129,28 @@ async def fetch_audio_data(session, pair_data, voice, speed):
|
||||
"speed": speed,
|
||||
"return_type": "base64"
|
||||
}
|
||||
|
||||
try:
|
||||
async with session.post(url, json=payload) as response:
|
||||
if response.status != 200:
|
||||
logger.error(f"TTS API error: {response.status} - {await response.text()}")
|
||||
for i in range(3):
|
||||
try:
|
||||
async with session.post(url, json=payload) as response:
|
||||
if response.status != 200:
|
||||
logger.error(f"TTS API error: {response.status} - {await response.text()}")
|
||||
return None
|
||||
data = await response.json()
|
||||
audio_base64 = data.get("audio_base64")
|
||||
if not audio_base64:
|
||||
logger.error(f"No audio data returned for pair")
|
||||
return None
|
||||
return {
|
||||
"audio_base64": audio_base64,
|
||||
"sentences": pair_data["sentences"],
|
||||
"indices": pair_data["indices"]
|
||||
}
|
||||
except Exception as e:
|
||||
logger.error(f"Error fetching audio: {e}")
|
||||
if i == 2:
|
||||
return None
|
||||
data = await response.json()
|
||||
audio_base64 = data.get("audio_base64")
|
||||
if not audio_base64:
|
||||
logger.error(f"No audio data returned for pair")
|
||||
return None
|
||||
return {
|
||||
"audio_base64": audio_base64,
|
||||
"sentences": pair_data["sentences"],
|
||||
"indices": pair_data["indices"]
|
||||
}
|
||||
except Exception as e:
|
||||
logger.error(f"Error fetching audio: {e}")
|
||||
return None
|
||||
await asyncio.sleep(0.5)
|
||||
continue
|
||||
|
||||
async def text_to_speech(text, voice="zf_xiaoxiao", speed=1.5):
|
||||
"""异步将文本转换为语音,返回每两句话的音频数据和时间戳"""
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user