pyaudio音频处理与flask搭建语音交互应用

1、声卡设备验证

#查看音频设备

dong@dong-ubuntu:~$ arecord -l
**** CAPTURE 硬體裝置清單 ****
card 0: PCH [HDA Intel PCH], device 0: ALC255 Analog [ALC255 Analog]
  子设备: 1/1
  子设备 #0: subdevice #0

#列举出机器所有的声卡
dong@dong-ubuntu:~$ cat /proc/asound/cards
 0 [PCH            ]: HDA-Intel - HDA Intel PCH
                      HDA Intel PCH at 0xa4220000 irq 132

#列举每个声卡的card number和device number
dong@dong-ubuntu:~$ aplay -l
**** PLAYBACK 硬體裝置清單 ****
card 0: PCH [HDA Intel PCH], device 0: ALC255 Analog [ALC255 Analog]
  子设备: 1/1
  子设备 #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 3: HDMI 0 [HDMI 0]
  子设备: 1/1
  子设备 #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 7: HDMI 1 [HDMI 1]
  子设备: 1/1
  子设备 #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 8: HDMI 2 [HDMI 2]
  子设备: 1/1
  子设备 #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 9: HDMI 3 [HDMI 3]
  子设备: 1/1
  子设备 #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 10: HDMI 4 [HDMI 4]
  子设备: 1/1
  子设备 #0: subdevice #0

#录音
dong@dong-ubuntu:~$ arecord -D "plughw:0,0" -f S16_LE -r 16000 -d 5 -t wav file.wav
正在录音 WAVE 'file.wav' : Signed 16 bit Little Endian, 频率16000Hz, Mono

#播放录音文件
dong@dong-ubuntu:~$ aplay file.wav
正在播放 WAVE 'file.wav' : Signed 16 bit Little Endian, 频率16000Hz, Mono

一般alsa设置了一个defaults设备,音频播放软件默认使用defaults设备输出声音。defaults设备定义在alsa.conf中,内容如下:

[plain]  
#  
# defaults  
#  
  
# show all name hints also for definitions without hint {} section defaults.namehint.showall off # show just basic name hints defaults.namehint.basic on # show extended name hints defaults.namehint.extended off # defaults.ctl.card 0 defaults.pcm.card 0 defaults.pcm.device 0 defaults.pcm.subdevice -1 …… 

defaults会默认匹配card number和device number比较小的声卡。
如果要修改,则修改/etc/asound.conf或~/.asoundrc。比如我要把defaults匹配到card 1,device 0上,则添加一下几行:

[plain]  
$ sudo vim /etc/asound.conf   
defaults.pcm.card 1  
defaults.pcm.device 3  
defaults.ctl.card 1   


2、pyaudio

模块下载
https://pypi.python.org/pypi/PyAudio
自带文档
http://people.csail.mit.edu/hubert/pyaudio/docs/#

demo

http://people.csail.mit.edu/hubert/pyaudio/#examples

http://old.sebug.net/paper/books/scipydoc/wave_pyaudio.html

3、基于flask的语音交互应用

基于flask和百度AI接口实现前后端的语音交互

http://www.cnblogs.com/zhaopanpan/articles/9404211.html

Flask+内网映射搭建接受腾讯语音识别回调请求 Python

https://blog.csdn.net/wangliuqi123/article/details/80537635

猜你喜欢

转载自www.cnblogs.com/dong1/p/9649908.html