人工智能的视觉与语音技术应用比赛:语音交互——任务3-3:在线语音合成应用

安装mplayer播放器

详见链接:
https://www.malaoshi.top/show_1GWmpUMVXPj.html

python代码

在Ubuntu创建文件:tkinter_tts.py

复制粘贴下面代码:

from tkinter import *
import os
import time

# 语音合成方法
def voice():
    s = inp.get() # 获取输入框内容
    cmd1 = 'roscore'
    cmd2 = 'rosrun xfei_asr tts_subscribe_speak'
    cmd3 = f'rostopic pub -1 /xfwords std_msgs/String "{s}"'
    os.system(f"gnome-terminal --window -- bash -c '{cmd1}'") # 给终端发布命令
    time.sleep(1)
    os.system(f"gnome-terminal --window -- bash -c '{cmd2}'")
    time.sleep(1)
    os.system(f"gnome-terminal --window -- bash -c '{cmd3}'")

root = Tk()

# 窗口命名
root.title('语音合成')
# 窗口大小
root.geometry('400x300')

# 提示文本
txt = Label(root, text='语音合成内容:')
# 确定文本放置的位置
txt.place(relx=0.35, rely=0.1, relwidth=0.3, relheight=0.3)
# 输入框
inp = Entry(root)
# 确定输入框放置的位置
inp.place(relx=0.2, rely=0.4, relwidth=0.6, relheight=0.1)
# 按钮
btn = Button(root, text='合成', command=voice)
# 确定按钮放置的位置
btn.place(relx=0.4, rely=0.7, relwidth=0.2, relheight=0.1)

# 持续窗口运行
root.mainloop()

打开终端,执行下面命令:

python3 tkinter_tts.py

显示下面界面:

输入内容,如:你好,李雷

点击 【合成】 按钮

会自动合成,并播放声音


原文出处:/show_1GWmpaNRcWw.html