pyttsx3
python 文字转语音库,支持英文,中文,可以调节语速、语调等。
安装
pip install pyttsx3
示例
import pyttsx3
teacher = pyttsx3.init()
teacher.say('Hello World!')
teacher.runAndWait()
朗读中文
import pyttsx3
msg = '''盼望着,盼望着,东风来了,春天的脚步...'''
teacher = pyttsx3.init()
teacher.say(msg)
teacher.runAndWait()
调节语速
import pyttsx3
msg = '''盼望着,盼望着,东风来了,春天的脚步...'''
teacher = pyttsx3.init()
rate = teacher.getProperty('rate')
teacher.setProperty('rate', rate + 20)
teacher.say(msg)
teacher.runAndWait()
保存声音
"""Saving Voice to a file"""
# On linux make sure that 'espeak' and 'ffmpeg' are installed
engine.save_to_file('Hello World', 'test.mp3')
engine.runAndWait()
变换声音
import pyttsx3
msg = '''盼望着,盼望着,东风来了,春天的脚步...'''
teacher = pyttsx3.init()
voices = teacher.getProperty('voices')
for i in voices:
teacher.setProperty('voice', i.id)
teacher.say(msg)
teacher.runAndWait()
函数说明
本节我们再来了解一下pyttsx3.engine.Engine中所对应的函数说明。
-
connect
- 参数:
- topic(string):要描述的事件名称;
- cb(callable):回调函数。
- 返回值:
- dict
- 函数说明:
- 在给定的topic上添加回调通知
- 参数:
-
disconnect
- 参数:
- token(dict):回调失联的返回标记
- 返回值:
- Void
- 函数说明:
- 结束连接
- 参数:
-
endLoop
- 函数说明:
- 简单来说就是结束事件循环
- 函数说明:
-
getProperty
- 参数:
- name(string):rate: 每分钟字数的语音速率,默认为每分钟200个。
- name(string):voice: 语音的字符串标识符。
- name(string):voices: pyttsx3.voice.Voice描述符对象列表。
- name(string):volume:音量的大小。
- 返回值:
- Object
- 函数说明:
- 获取当前引擎实例的属性值。
- 参数:
-
setProperty
- 参数:
- name(string):rate: 每分钟字数的语音速率,默认为每分钟200个。
- name(string):voice: 语音的字符串标识符。
- name(string):volume:音量的大小。
- value(int):rate: 设置每分钟读的字数。
- value:voice:设置发音,后文中会再讲到。
- value(float):volume:设置音量大小,0.0-1.0之间;默认1.0。
- 返回值:
- Object
- 函数说明:
- 获取当前引擎实例的属性值。
- 参数:
-
say
- 参数:
- text(unicode):要进行朗读的文本数据。
- name(strin):关联发音人(一般用不到)
- 函数说明:
- 预设要朗读的文本数据
- 参数:
-
runAndWait
- 函数说明:
- 当事件队列中事件全部清空的时候返回。
- 函数说明:
-
startLoop
- 参数:
- [useDriverLoop(bool)]:是否启用驱动循环。
- 函数说明:
- 开启事件队列
- 参数:
-
stop
- 函数说明:
- 停止当前讲话并清除命令队列。
- 函数说明:
附 《春》 朱自清
盼望着,盼望着,东风来了,春天的脚步近了。
一切都像刚睡醒的样子,欣欣然张开了眼。山朗润起来了,水涨起来了,太阳的脸红起来了。
小草偷偷地从土里钻出来,嫩嫩的,绿绿的。园子里,田野里,瞧去,一大片一大片满是的。坐着,躺着,打两个滚,踢几脚球,赛几趟跑,捉几回迷藏。风轻悄悄的,草软绵绵的。
桃树、杏树、梨树,你不让我,我不让你,都开满了花赶趟儿。红的像火,粉的像霞,白的像雪。花里带着甜味儿,闭了眼,树上仿佛已经满是桃儿、杏儿、梨儿。花下成千成百的蜜蜂嗡嗡地闹着,大小的蝴蝶飞来飞去。野花遍地是:杂样儿,有名字的,没名字的,散在花丛里,像眼睛,像星星,还眨呀眨的。
“吹面不寒杨柳风”,不错的,像母亲的手抚摸着你。风里带来些新翻的泥土的气息,混着青草味儿,还有各种花的香,都在微微润湿的空气里酝酿。鸟儿将巢安在繁花嫩叶当中,高兴起来了,呼朋引伴地卖弄清脆的喉咙,唱出宛转的曲子,跟轻风流水应和着。牛背上牧童的短笛,这时候也成天在嘹亮地响着。
雨是最寻常的,一下就是三两天。可别恼。看,像牛毛,像花针,像细丝,密密地斜织着,人家屋顶上全笼着一层薄烟。树叶儿却绿得发亮,小草也青得逼你的眼。傍晚时候,上灯了,一点点黄晕的光,烘托出一片这安静而和平的夜。在乡下,小路上,石桥边,有撑起伞慢慢走着的人;还有地里工作的农民,披着蓑戴着笠。他们的草屋,稀稀疏疏的,在雨里静默着。
天上风筝渐渐多了,地上孩子也多了。城里乡下,家家户户,老老小小,也赶趟儿似的,一个个都出来了。舒活舒活筋骨,抖擞抖擞精神,各做各的一份儿事去,“一年之计在于春”;刚起头儿,有的是工夫,有的是希望。
春天像刚落地的娃娃,从头到脚都是新的,它生长着。
春天像小姑娘,花枝招展的,笑着,走着。
春天像健壮的青年,有铁一般的胳膊和腰脚,他领着我们上前去。