python 实现一个属于自己的语音播报器

python 实现一个属于自己的语音播报器

使用python制作一个专属于自己语音播报器是不是很酷,很多人都会认为只是一件很难的事情,但是需要告诉你的是,这是一件非常简单的事情。

python中提供了一个第三方库(speech),这个模块并不大,并且安装简单。

直接在终端输入命令(pip install speech)就可以实现安装了。

安装成功之后,可以使用(pip list)命令进行查看是否已经安装好。

导入模块之后,需要跳转到源代码中去(点击speech,之后按住Ctrl键,再点击speech,跳转到源代码),修改 三处内容;

# 第一处
import thread              # 修改为 import _thread

# 第二处
if prompt:
    print "prompt"         # 修改为 print(prompt)

# 第三处
_eventthread = thread.start_new_thread(loop, ())
# 修改为 _eventthread = _thread.start_new_thread(loop, ())

需要进行修改的原因是:speech主要是支持在python2.0版本,但是在python3.0版本中有部分模块和格式已经进行了修改,所以需要进行修改这几处地方。

1、语音播报生成器:

import speech
a = "我是谁?我来自哪里?我要去往何处?"
speech.say(a)

这里的a 内容可以换成自定义内容,同时也可以使用一个文件的读出模式,得到文件内容,使用语音播报器进行阅读,是不是很简单呢?

2、语音识别器

import speech
contents = speech.input()       # 语音输入内容
speech.say(contents)            # 自动对输入的内容进行复述一遍
print(contents)                 # 打印检测到的语音输入内容

就这四行代码就实现了一个简单的语音识别器,是不是非常的简单呢?

但是语音识别器有一个缺点就识别内容的质量不高,需要反复训练。

对于语音识别器的制作,更好的办法就是使用百度获取其他公司提供的API接口,进行识别,这种的训练集成度高,识别质量较高,但是这种有一定的数量限制,超过一定的数量就需要支付一定的金额。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/115146.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 云服务器和虚拟主机的区别是什么[通俗易懂]

    云服务器和虚拟主机的区别是什么[通俗易懂]通俗易懂一点来说,把云服务器比喻为一套房子,虚拟主机就是这间房子里的一个房间,群英网络建议大家他们两者的具体功能和区别可参考如下几点分析:1.性能不同:云服务器支持弹性扩展,按需付费,虚拟主机不支持,从稳定性和安全性来讲,云服务器要好些;2.权限不同:为防止资源浪费和受到攻击,虚拟主机开放权限较少,云服务器则没有这个问题,但搭建环境要麻烦些;3.配置环境:云服务器需手动配置环境,虚拟主机无需…

    2022年6月25日
    33
  • HTML4.01规范中英文对照-有关SGML和HTML的一些事(1)

    HTML4.01规范中英文对照-有关SGML和HTML的一些事(1)

    2021年8月11日
    238
  • RSA 加密算法原理简述

    RSA 加密算法原理简述概述本文旨在说明RSA加密算法的原理及实现,而其相关的数学部分的证明则不是本文内容。版权说明著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。作者:Q-WHai发表日期:2016年2月29日本文链接:http://blog.csdn.net/lemon_tree12138/article/details/50696926来源:CSDN…

    2022年6月12日
    25
  • vue3 路由传参_vue router传参

    vue3 路由传参_vue router传参前言vue路由传参的使用场景一般都是应用在父路由跳转到子路由时,携带参数跳转。传参方式可划分为params传参和query传参,而params传参又可分为在url中显示参数和不显示参数两种方式,这就是vue路由传参的三种方式。方式一:params传参(显示参数)params传参(显示参数)又可分为声明式和编程式两种方式1、声明式router-link该…

    2025年8月22日
    5
  • 设备管理器里“SM总线控制器”、“其它PCI桥设备”驱动有问题[通俗易懂]

    设备管理器里“SM总线控制器”、“其它PCI桥设备”驱动有问题[通俗易懂]WinXP重装系统后设备管理器里面出现黄色问号。各自是“SM总线控制器”和“其它PCI桥设备“,主板是七彩虹的,芯片组是geForce7025的,南桥是nForce630a,用七彩虹官网的主板驱动装了没用。用驱动人生先备份还有一个相同主板的机器的驱动。得到 NVIDIAnForcePCISystemManagement_*.zip, NVIDIANetworkBus…

    2022年5月3日
    78
  • ESCMScript(1)let和const[通俗易懂]

    ESCMScript(1)let和const[通俗易懂]1.let命令基本语法ES6新增了let命令,用来声明变量。它的用法类似于var,但是所声明的变量,只在let命令所在的代码块内有效。{leta=1varb=2console

    2022年7月30日
    11

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号