1:效果图
2:Edge-tts介绍
Edge-TTS 是一款基于人工智能技术的语音合成软件,能够将文本转化为自然流畅的语音输出。基于微软edgeTTS开发的语音朗读转MP3软件,支持实时MP3转换,支持角色朗读, 支持在线网页浏览,支持全文转成MP3, 从光标处转成mp3, 选择内容转成mp3.,支持剪切板转成MP3., 支持合并对话所生成的MP3为一个文件,支持升级合成声音转成立体高质量声音文件,支音频文件音量增益2倍(因源声音音量较小),支持内置播放器即转即听,支持删除空行,支持右键选择单独MP3调用内置播放器播放。本软件仅供人个研究测试使用。不得用于商用。
3:代码实现
import edge_tts
import asyncio
import random
num=random.randint(2,10000)
TEXT = ""
with open('C:\\Users\\test.txt', 'rb') as f:
data = f.read()
TEXT = data.decode('utf-8')
print(TEXT)
print('--num--{}',num)
voice = 'zh-CN-XiaoxiaoNeural'
voices = [
"zh-CN-XiaoxiaoNeural",
"zh-CN-XiaoyiNeural",
"zh-CN-YunjianNeural",
"zh-CN-YunxiNeural",
"zh-CN-YunxiaNeural",
"zh-CN-YunyangNeural",
"zh-CN-liaoning-XiaobeiNeural",
"zh-CN-shaanxi-XiaoniNeural",
"zh-HK-HiuGaaiNeural",
"zh-HK-HiuMaanNeural",
"zh-HK-WanLungNeural",
"zh-TW-HsiaoChenNeural"
]
# output = 'C:\\Users\\test'+str(num)+'.mp3'
output=''
rate = '-2%'
volume = '+2%'
async def my_function():
tts = edge_tts.Communicate(text=TEXT, voice=voice, rate=rate, volume=volume)
await tts.save(output)
async def my_function2():
ct=len(voices)
print('--ct-' + str(ct))
for i in range(ct):
print('-i--'+str(i))
voice=voices[i]
print('--voice-' + str(voice))
tts = edge_tts.Communicate(text=TEXT, voice=voice, rate=rate, volume=volume)
output = 'C:\\Users\\test' + str(voice) + '.mp3'
await tts.save(output)
#await tts.save(output)
if __name__ == '__main__':
asyncio.run(my_function2())