python语音识别的转换方法
作者:辉煌zzg 发布时间:2023-12-06 20:56:57
标签:python,语音,识别
使用pyttsx的python包,你可以将文本转换为语音。
安装命令
pip install pyttsx3 -i https://pypi.tuna.tsinghua.edu.cn/simple
运行一个简单的语音 ‘大家好'。
import pyttsx3 as pyttsx
engine = pyttsx.init() #初始化
engine.say('大家好')
engine.runAndWait()
另一种文本转语音方法。
from win32com.client import Dispatch
speaker = Dispatch('SAPI.SpVoice') #创建Dispatch对象
speaker.Speak('大家好') #调用Speak方法
del speaker #释放
这种方法可能会报错,
ImportError: DLL load failed while importing win32api: 找不到指定的模块。
网站下载与自己安装的 “Python" 版本相适应的 "pywin32" 安装程序。
使用SpeechLib完成文本转换语言
from comtypes.client import CreateObject
from comtypes.gen import SpeechLib
engine = CreateObject('SAPI.SpVoice') #调用方法
stream = CreateObject('SAPI.SpFileStream') #输出到目标对象的流
infile = '1.txt' #要读取的文本
outfile = 'demo_audio.wav' #输出到语音文件
stream.open(outfile,SpeechLib.SSFMCreateForWrite)
engine.AudioOutputStream = stream
#读取文本内容
f = open(infile,'r',encoding='utf-8')
theText = f.read()
f.close()
engine.speak(theText)
stream.close()
使用PocketSphinx将语音转换成文本
首先安装两个工具包
pip install PocketSphinx
pip install SpeechRecognition
然后下载cmusphinx-zh-cn-5.2.tar中文识别的放到anaconda的python虚拟环境的目录下
Lib\site-packages\speech_recognition\pocketsphinx-data路径下
解压文件重命名为zh-CN
#将语音转换成文本 使用PocketSphinx
import speech_recognition as sr
audio_file = 'demo_audio.wav'
r = sr.Recognizer()
with sr.AudioFile(audio_file) as source: #打开语音文件并读取
audio = r.record(source)
try:
print('文本内容:',r.recognize_sphinx(audio)) #默认识别成英文
print('文本内容:',r.recognize_sphinx(audio,language='zh-CN')) #指定中文
except Exception as e:
print(e)
来源:https://blog.csdn.net/qq_34904125/article/details/120809485


猜你喜欢
- 分为服务端和客户端,要求可以有多个客户端同时操作。客户端可以查看服务器文件库中有什么文件。客户端可以从文件库中下载文件到本地。客户端可以上传
- 在这篇文章中,将向您展示如何使用Python链接目前主流的MongoDB(V3.4.0)数据库,主要使用PyMongo(v3.4.0)和Mo
- 什么是锁锁的本质,就是一种资源,是由操作系统维护的一种专门用于同步的资源比如说互斥锁,说白了就是一种互斥的资源。只能有一个进程(线程)占有。
- 1. 首先是环境的安装 (本人使用的是PyCharm,python3.6)pip3 install PyQt5 (没有指定版本的话,默认会安
- 直接赋值: 对象的引用,也就是给对象起别名浅拷贝: 拷贝父对象,但是不会拷贝对象的内部的子对象。深拷贝: 拷贝父对象. 以及其内部的子对象在
- 本文实例为大家分享了Bootstrap进度条的具体实现代码,供大家参考,具体内容如下<!doctype html><htm
- 在已知DICOM和三维模型对应掩膜的情况下,计算三维模型的体积。思路:1、计算每个体素的体积。每个体素为长方体,x,y为PixelSpaci
- 本文研究的主要是Python web开发框架Django的管理界面的相关内容,具体如下。admin界面的路径,通常在my_project中已
- function nohtml(str) dim re Set re=new 
- Python中的random函数random模块提供生成伪随机数的函数,在使用时需要导入random模块1. random.random()
- 多表查询案列说明笛卡尔积的理解select id,department_namefrom employees,departments;#错的
- 我们都知道如果想让电脑运行更多的程序,就要增加它的配置才能带动。在之前的学习中,我们已经对函数的打印print有所了解,但是遇到更加复杂的对
- 以下是menu.asp代码 程序代码 <% '-----------------------------------
- javascript sort()排序用法sort() 方法用于对数组的元素进行排序,并返回数组。默认排序顺序是根据字符串UniCode码。
- 一、设计范式问题: 什么是范式化设计,为什么需要反规范化设计 ?范式来自来自英文Normal From 。开发过程中要设计一个好的数据库逻辑
- 本文实例讲述了python网络编程之读取网站根目录的方法,分享给大家供大家参考。具体实现方法如下:import socket, sys po
- 在本教程中,我们将学习如何创建一个使用Django作为后端的天气应用程序。Django提供了一个基于Python Web框架的Web框架,允
- 本文实例讲述了Zend Framework教程之资源(Resources)用法。分享给大家供大家参考,具体如下:Zend_Applicati
- 1.如何通过地址栏参数来得到模块名称和控制器名称(即使在有路由和开了重写模块的情况下)2.tp是如何实现前置,后置方 * 能模块,和如何执行带
- 本文实例讲述了Python基于列表list实现的CRUD操作功能。分享给大家供大家参考,具体如下:本篇文章看之前你的先了解python 基础