Python中Speech Reognition在win中使用避障

首先呢第一次写文章记录自己的无聊时光,因为本次想实现一些简单的程序,没想这种简单的搭建上也遇到了很多坑,在这里详细的记录一下,小白制作,不喜勿喷。希望可以培养成一个新的习惯。

背景

为实现识别英文语音转换文字,上网调研了Speech_recognition的包,以此进行实现。

系统:win 10

python工具:Pycharm

问题一:speech_recognition模块安装不上

在安装这个模块之前需要先安装pocketphinx模块,大家可以自行百度安装,如果那个模块装不上了比如swig,一般来说先进行pip安装,安装成功后还是有这样的问题,那么就需要进行环境变量的配置,在下文中,安装ffmpeg中会详细介绍。

问题二:speech_recognition模块并不支持MP3的转换需要使用到pydub中的AudioSegment进行转换

import speech_recognition as sr
def audio2words():
    audio_file = '1.mp3'
    r = sr.Recognizer()
    with sr.AudioFile(audio_file) as source:
        audio = r.record(source)
    print('文本内容',r.recognize_sphinx(audio,language='en-US'))

audio2words()

 因此,按照以上代码进行运行时报错:

 被告知只有PCM WAV,AIFF/AIFF-C,或者Native FLAC这样的格式才可以(这几个格式还没有去研究,有兴趣的可以自行研究),MP3 并不被允许,所以要将MP3转成wav格式,可以通过pydub的包来实现。

from pydub import AudioSegment

# files
src = "1.mp3"
dst = "test2.wav"

# convert wav to mp3
audSeg = AudioSegment.from_mp3("1.mp3")
audSeg.export(dst, format="wav")

问题三:在转换MP3格式的时候,Audiosegment出问题,因为需要先安装ffmpeg,而ffmpeg也需要跟Audiosegment对应版本

在这里下载最新的ffmpeg,网址:Download FFmpeg

进行 一步一步下载,最终解压成这两个文件,两个文件都必须解压,放到一个熟悉的目录:

 两个都需要配置环境变量,操作也很容易:

win10中:进入:系统->关于->高级系统设置

 进入环境变量,编辑用户和系统的环境变量:主要是path,寻找path,在path中新增value,而这个value就是以上两个ffmpeg的文件夹的路径,到此为止安装成功。

问题四:在安装pocketsphinx时不成功,日志中显示不是pip的问题,这种类似的字眼,很有可能是没有安装C++配置

安装Microsoft Visual C++ Build Tools,在官网可以一步一步安装:下载 Visual Studio Tools - 免费安装 Windows、Mac、Linux (microsoft.com)

问题五:配置完环境变量之后还是不行,很有可能需要重启程序,重启pycharm再试一下

反正我这么试试就可以了,哈哈哈。

总结

其实过程中还遇到了很多基础问题,过程中没有记录下来,比如好几个python的版本,项目与系统中的python版本不一致等等,但都查询了各位大神的解决办法,总的来说,大神栽树,后人乘凉。希望有所帮助。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值