Spaces:
Running
Running
File size: 1,122 Bytes
9b70717 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
import edge_tts
import os
import logging
logger = logging.getLogger(__name__)
async def generate_audio(text, outputFilename):
"""Generate audio from text using edge_tts
Args:
text (str): Text to convert to speech
outputFilename (str): Path to save the audio file
Raises:
Exception: If audio generation fails
"""
try:
# Ensure output directory exists
os.makedirs(os.path.dirname(outputFilename), exist_ok=True)
logger.info(f"Generating audio for text length: {len(text)}")
# Updated voice parameter below:
communicate = edge_tts.Communicate(text, "en-US-GuyNeural")
await communicate.save(outputFilename)
if not os.path.exists(outputFilename):
raise Exception(f"Failed to create audio file at {outputFilename}")
logger.info(f"Successfully generated audio at {outputFilename}")
except Exception as e:
logger.error(f"Error generating audio: {str(e)}")
raise Exception(f"Audio generation failed: {str(e)}")
|