Spaces:
Build error
Build error
| import os | |
| from loguru import logger | |
| import numpy as np | |
| import torch | |
| import time | |
| from .utils import save_wav | |
| import sys | |
| import torchaudio | |
| model = None | |
| # <|zh|><|en|><|jp|><|yue|><|ko|> for Chinese/English/Japanese/Cantonese/Korean | |
| language_map = { | |
| '中文': 'zh-CN-XiaoxiaoNeural', | |
| 'English': 'en-US-MichelleNeural', | |
| 'Japanese': 'ja-JP-NanamiNeural', | |
| '粤语': 'zh-HK-HiuMaanNeural', | |
| 'Korean': 'ko-KR-SunHiNeural' | |
| } | |
| def tts(text, output_path, target_language='中文', voice = 'zh-CN-XiaoxiaoNeural'): | |
| if os.path.exists(output_path): | |
| logger.info(f'TTS {text} 已存在') | |
| return | |
| for retry in range(3): | |
| try: | |
| os.system(f'edge-tts --text "{text}" --write-media "{output_path.replace(".wav", ".mp3")}" --voice {voice}') | |
| logger.info(f'TTS {text}') | |
| break | |
| except Exception as e: | |
| logger.warning(f'TTS {text} 失败') | |
| logger.warning(e) | |
| if __name__ == '__main__': | |
| speaker_wav = r'videos/村长台钓加拿大/20240805 英文无字幕 阿里这小子在水城威尼斯发来问候/audio_vocals.wav' | |
| while True: | |
| text = input('请输入:') | |
| tts(text, f'playground/{text}.wav', target_language='中文') | |