问题出处:
以前做了一个对话机器人,但是一直不知道怎么解决唤醒这个问题。这两天忽然看到有个开源的的好项目----snowboy 它能够一直离线的监控后台 起到语音唤醒的作用。于是便查相关资料。

先是按照官网给的教程做了一遍。

1丶Install Sox.
On Linux systems, run:

sudo apt-get install python-pyaudio python3-pyaudio sox

2丶pip install pyaudio
安装pyaudio模块过程出现错误 fatal error: portaudio.h: 没有那个文件或目录
解决办法:sudo apt-get install python-pyaudio python3-pyaudio安装

3丶rec temp.wav
然后在这一步又出现了错误,原因是声卡设置出现了问题。于是就找关于设置声卡的问题。由于raspberry 8.0 图形界面设置默认声卡有BUG 就只能手动去改~/.asoundrc文件。可是我找了老半天也没有找到这个文件,为什么?因为这个文件需要手动自己去创建。而网上没有任何一篇文章提到这一点。坑了我特别久(脸上笑嘻嘻,心里_________) 在/home/pi目录下创建一个名为.asoundrc文件 然后把下面的复制进去 我这边是插了一个usb麦克风的。

pcm.!default {type asymplayback.pcm {type plugslave.pcm "hw:0,0"}capture.pcm {type plugslave.pcm "hw:1,0"}
}
ctl.!default {type hwcard 1
}

然后再次rec temp.wav 哈哈哈!!成功了,YES!

4丶python demo.py snowboy.pmdl
PyAudio出现[Errno -9985] Device unavailable
解决方案:
请确保pulseaudio服务器依旧在工作!
安装pulseaudio,如下命令:

sudo apt-get install pulseaudio

然后运行pulseaudio

pulseaudio --start

当然,我们也可以将它加入到/etc/systemd/system/pulseaudio.service中去,确保它能在重新启动后继续工作:

[Unit]
Description=PulseAudio Sound System
Before=sound.target[Service]
BusName=org.pulseaudio.Server
ExecStart=/usr/bin/pulseaudio
Restart=always[Install]
WantedBy=session.target

之后,果然解决了上面的问题

不仅这一步出错,因为snowboy用的录音软件是pyaduio 而且采样率是16K。所以也报出了IOError: [Errno Invalid sample rate] -9997的错误 这个问题我在以前做机器人的时候就碰到过,当时我也是用了pyaudio去录音,那时候就碰到了这个问题。一时半会没找到办法就改用了arecord去录音 了。谁知道这次又碰到了这个问题,那这次只能想办法解决了。 现在我又可以用snowboy做唤醒还能用pyaudio去录音了 不懂可以联系我qq:1281248141 By:AnE

树莓派解决pyaudio 采样率16k报错问题相关推荐

  1. ueditor上传图片回调_(常见解决方法)UEditor报错“后端配置项没有正常加载,上传插件不能正常使用”...

    (常见解决方法)UEditor报错"后端配置项没有正常加载,上传插件不能正常使用"_向来萧瑟也无畏-CSDN博客​blog.csdn.net 报错信息 详见此文的"排错过 ...

  2. 搭建dubbo项目解决dubbo.xml标签报错的问题

    搭建dubbo项目解决dubbo.xml标签报错的问题 参考文章: (1)搭建dubbo项目解决dubbo.xml标签报错的问题 (2)https://www.cnblogs.com/ajax-li/ ...

  3. 解决Mac安装tesserocr报错问题 Failed building wheel for

    解决Mac安装tesserocr报错问题 Failed building wheel for 参考文章: (1)解决Mac安装tesserocr报错问题 Failed building wheel f ...

  4. [解决方法] spring-data-mongo 配置报错org.springframework.beans.factory.BeanCreationException

    [解决方法] spring-data-mongo 配置报错org.springframework.beans.factory.BeanCreationException 参考文章: (1)[解决方法] ...

  5. 为 VUE 项目添加 PWA 解决发布后刷新报错问题

    为 VUE 项目添加 PWA 解决发布后刷新报错问题 参考文章: (1)为 VUE 项目添加 PWA 解决发布后刷新报错问题 (2)https://www.cnblogs.com/morang/p/9 ...

  6. 解决JavaWeb项目代码报错

    解决JavaWeb项目代码报错 说明:JavaWeb项目代码报错的处理流程 处理流程 重新执行代码,避免上一次运行错误的影响 查看Tomcat报错信息 参考文章:idea中查看错误日志 如果是在ide ...

  7. 解决VS2017使用scanf报错问题

    解决VS2017使用scanf报错问题 当然也可以解决其他版本的scanf报错问题.总之要求使用scanf_s不允许使用scanf都可以解决 解决方法:添加一个宏定义 #pragma warning( ...

  8. hp laser103 属性没有配置项_(常见解决方法)UEditor报错“后端配置项没有正常加载,上传插件不能正常使用”...

    (常见解决方法)UEditor报错"后端配置项没有正常加载,上传插件不能正常使用"_向来萧瑟也无畏-CSDN博客​blog.csdn.net 报错信息 详见此文的"排错过 ...

  9. 解决idea启动项目报错:Unable to open debugger port(127.0.0.1:60157):java.net.SocketExceptionsocket closed

    转载自  解决idea启动项目报错:Unable to open debugger port(127.0.0.1:60157):java.net.SocketException"socket ...

最新文章

  1. 客户端相关知识学习(三)之Android原生与H5交互的实现
  2. final 实例域+final类+final方法(阻止继承)
  3. 泽泽计算机科技,《计算机与信息技术》大学技能学习丛书.pdf
  4. chisel(安装)
  5. 野生前端的数据结构基础练习(4)——字典
  6. Python入门--列表元素的增加操作,append(),extend(),insert(),切片
  7. 微软Silverlight 3正式版
  8. 汉字编码:区位码、国标码、机内码
  9. 精选150道iOS面试题
  10. MAVEN下载修改settings.xml
  11. 产生随机数——起名神器
  12. Python基础篇(九)-- 正则表达式
  13. 使用openssl将pfx格式证书转换成key和crt
  14. unity官方社区,来一起学习
  15. model.predict_classes(test) 和model.predict(test) 区别
  16. 2017京东春招实习生招聘编程题
  17. CSP考试须知与各种小技巧
  18. 学习笔记-用PLAN法提高执行力
  19. DotNetFX40
  20. Tensorflow YOLOv3实现与详解

热门文章

  1. 【NVIDIA】Tesla V100安装NVIDIA-Driver驱动程序适配CUDA-Toolkit-11.6
  2. Wwise音频引擎的入门指南
  3. 免费SSH账号申请网址
  4. 第四节:沥青混合料的组成与材料(1)--结构组成与分类
  5. SSL安全证书 - 概念解析
  6. 吐血总结!100个Python面试问题集锦
  7. Java中的this关键字详解,不看后悔系列
  8. java 包装类可以被继承_小白学Java:包装类
  9. win11如何打开IE11
  10. 【EMGU】读取视频AVI文件+保存任意帧为图片