大家好,又见面了,我是你们的朋友全栈君。
pyttsx3 是python中最常用的文字转语音库,使用方便,功能较为完整
首先安装 pyttsx3 lib:
然后封装下pyttsx3 API,新建一个speaker.py 如下:
import pyttsx3
global __speak_engine
__speak_engine = None
def say(content):
global __speak_engine
if not __speak_engine:
__speak_engine = pyttsx3.init()
voices = __speak_engine.getProperty('voices')
__speak_engine.setProperty('voice', voices[1].id)
__speak_engine.setProperty('rate', 150)
__speak_engine.setProperty('volume', 1)
__speak_engine.say(content)
__speak_engine.runAndWait()
其中Property的rate/voice/volume可以根据需要自行调整:
这样在使用中直接调用 say(…),就可以实现中英文语音播报了:
(python3可以直接调用播报中文)
使用举例:
from speaker import *
if __name__ == '__main__':
say("Hello Howie Xue, we can speak by Python now")
say("你好")