前几天,有朋友从我们淘宝店买了USB 接口的麦克风, 说是无法识别, 没办法录音, 经过交流发现, 实际上是咩有开启麦克风的音量.
这篇帖子简单介绍一下怎么去利用 usb 麦克风录音,更多应用在后面给大家拓展一下.
首先这个麦克风,超级小巧和物美价廉.哈哈10元你买不了吃亏买不了上当…
接驳的方式很简单, 麦克风接入树莓派的 USB 口,然后启动树莓派, 这里我说的直接启动是在假设你已经通过烧录工具烧录好了操作系统.目前操作环境使用的是 Raspbian 系统.
可以去官方下载: http://www.raspberrypi.org/downloads
我这里测试环境是树莓派3B+, 8GBTF 卡.
然后登陆系统,打开终端, 输入如下命令检查是否识别出了 USB 设备.
第一个是我的2.4Ghz 的无线键鼠, 第二个就是麦克风的设备了.
也可以通过 dmesg 看看:
可以看到已经检测到 PnP Sound Device.
接下来,我们看看使用什么方式去录音.你可以安装 ALSA 的录音应用软件:
安装软件前先升级或者说更新一下软件仓库的索引信息: sudo apt-get update
然后执行安装:
sudo apt-get -y install alsa-utils pulseseaudio
然后直接输入:
arecord -L
就列出目前你机器上可以用的声卡了.
然后可以通过:
arecord –device=hw:1,0 –format S16_LE –rate 44100 -c1 test.wav
说明一下: –device=hw:1,0 是定义录音的设备. –format S16_LE 是定义 signed 16-bit (S16_LE
) 音频. 码率是: 44100 Hz (--rate 44100
) 后面的参数是定义为mono 格式 (-c1
) , 文件名为: test.wav
这里的录音设备1,0 是因为系统设别出来的状态决定的, subdevices 是1, subdevice是0.
来吼一曲一人我饮酒醉, 然后录音录下来,播放看看效果如何.
可以按下 ctrl+C 终止.
如果想播放看看效果:
aplay –device=plughw:1,0 test.wav
之前我们提到了,如果麦克风音量没有开,可能会录出来的内容是无声的.
因此可以通过 alsamixer 去调整, 这里- c 1 是设置输入输出都在一个设置层面上,就是可以在一个终端中通过面板操作所有的音频设备:
alsamixer -c 1
默认为00,按F5的上就可以看到这样的画面:
Mic 就是麦克风了,现在音量很低,你需要按上调试合适的音量.
按 Tab 键可以切换调试的设备.
按 ESC 退出.
再执行录音就可以了.
后面和语音相关的应用介绍:
可以通过命令录音,然后上传给百度语音识别的 API 接口,通过百度语音识别后, 生成 Text 文本,然后将 text 文本提交到图灵机器人后台的 API, 可以得到图灵机器人的反馈,也应该是文本,然后再将文本转语音,就是传说中的 TTS, 那样,你的树莓派就可以和天猫精灵,小米智能音响一样和你交互了.
快去试试看吧!