树莓派snowboy报错IOError: [Errno Invalid sample rate] -9997以及import snowboydetect<不是from . import snowboy

前后遇到了好几个很抓狂的,让我**的问题,很难受,最后解决了,现在分享下经验希望能帮到大家

开发日记(我把遇到的所有问题按时间线分享出来)

2020/7/25 0:45:13

解决了人脸识别的问题,具体参考了部分B站up主的部分代码以及教程
当时成功实现的详情

2020/7/25 17:28:30

当天下午再一次遇到情况,snowboy语音唤醒报错IOError: [Errno Invalid sample rate] -9997
当天网上查询很多资料,这个问题我耗费了大量时间去处理,让人崩溃的是,竟然找不到类似的问题,身心疲惫,暂时搁置了

2020/7/29 1:35:15

终于解决snowboy语音唤醒报错IOError: [Errno Invalid sample rate] -9997这个问题,过程以及方法如下:
进入官方示例目录 snowboy/examples/Python3 并运行以下命令:

python3 demo.py resources/models/snowboy.umdl

报上述错误
在网上继续查阅资料时无意中发现这篇文章树莓派解决pyaudio 采样率16k报错问题
其实一开始我感觉作者答非所问,感觉遇到的和我都不是一个问题,后来试了下他提到的这段代码
pulseaudio --start
没想到成功解决了上述问题!但随之而来的又是另一个问题:
再次运行

python3 demo.py resources/models/snowboy.umdl

这次报错
提示我的代码大概是:import snowboydetect
我以为是这篇文章提到的

把官方案例文件中的 snowboydecoder.py 文件修改一下,把from . import
snowboydetect改为import snowboydetect然后再运行。就ok了。

照做了之后提示我缺少nowboydetect这个包(因为之前弄得时候没截图,我保证绝对是这意思)
我又懵了,想来想去又找来了这篇文章树莓派python3.6语音助手开发笔记(2)一步一步对照查看我是不是哪里漏掉了,结果真的找到了

都没有问题的话就直接到刚刚的snowboy-master的swig下的对应文件夹目录中去(python3就进Python3,python2就进Python)。

cd /python/snowboy-master/swig/Python3
make

结果我是搞忘记了去编译所需要的对应版本的python包[手动笑哭]
这下就对了,只要说snowboy,就会叮的一声,终于弄出来了[手动狗头]
在这里插入图片描述
在这里插入图片描述

2020年7月30日16:56:09

今天再次遇到问题,百度文字转语音倒是没问题,可百度语音识别出了问题,都配好了,就是发现无法正常识别我的wav文件为文字,识别出来的文字牛头不对马嘴.
参考这篇文章我解决了问题科大讯飞语音识别
在文章中我发现这段代码

arecord -d 3 -r 16000 -c 1 -t wav -f S16_LE test.wav

-d : 录音时间(s)
-r : 频率
-c : 音轨
-t : 文件类型
-f : 格式

这不就是录音的代码吗,看着这些参数,我突然想到了,会不会是音轨的问题?因为我之前都是用的默认参数录音,并没有去改这些东西,试试看后真的成功了
在这里插入图片描述
这是之前识别不出来的音频
456456
这是通过上面的代码,生成的能够正确识别的音频
在这里插入图片描述
哇真的是太舒服了,本来我还怀疑是不是麦克风有问题,这下才把钱省下来了[手动流泪]

后面肯定还要遇到问题,这是我的毕设,我将会继续完成它,也会把遇到的问题总结起来分享给大家,帮大家少走弯路!未完待遇…

2020年7月30日17:10:08


版权声明:本文为weixin_41303210原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。