108 lines
3.2 KiB
Markdown
108 lines
3.2 KiB
Markdown
# seeed-voicecard
|
|
|
|
[![Join the chat at https://gitter.im/seeed-voicecard/Lobby](https://badges.gitter.im/seeed-voicecard/Lobby.svg)](https://gitter.im/seeed-voicecard/Lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
|
|
|
|
While the upstream wm8960 codec is not currently supported by current Pi kernel builds, upstream wm8960 has some bugs, we had fixed it. we must it build manually.
|
|
|
|
We also write ac108 rapberry pi linux kernel driver.
|
|
|
|
Get the seeed voice card source code.
|
|
```bash
|
|
git clone https://github.com/respeaker/seeed-voicecard
|
|
cd seeed-voicecard
|
|
#for ReSpeaker 2-mic
|
|
sudo ./install.sh 2mic
|
|
|
|
#for ReSpeaker 4-mic
|
|
sudo ./install.sh 4mic
|
|
|
|
#reboot your Raspbian OS
|
|
reboot
|
|
```
|
|
|
|
Check that the sound card name matches the source code seeed-voicecard.
|
|
|
|
```bash
|
|
#for ReSpeaker 2-mic
|
|
pi@raspberrypi:~/seeed-voicecard $ aplay -l
|
|
**** List of PLAYBACK Hardware Devices ****
|
|
card 0: ALSA [bcm2835 ALSA], device 0: bcm2835 ALSA [bcm2835 ALSA]
|
|
Subdevices: 8/8
|
|
Subdevice #0: subdevice #0
|
|
Subdevice #1: subdevice #1
|
|
Subdevice #2: subdevice #2
|
|
Subdevice #3: subdevice #3
|
|
Subdevice #4: subdevice #4
|
|
Subdevice #5: subdevice #5
|
|
Subdevice #6: subdevice #6
|
|
Subdevice #7: subdevice #7
|
|
card 0: ALSA [bcm2835 ALSA], device 1: bcm2835 ALSA [bcm2835 IEC958/HDMI]
|
|
Subdevices: 1/1
|
|
Subdevice #0: subdevice #0
|
|
card 1: seeed2micvoicec [seeed-2mic-voicecard], device 0: bcm2835-i2s-wm8960-hifi wm8960-hifi-0 []
|
|
Subdevices: 1/1
|
|
Subdevice #0: subdevice #0
|
|
pi@raspberrypi:~/seeed-voicecard $ arecord -l
|
|
**** List of CAPTURE Hardware Devices ****
|
|
card 1: seeed2micvoicec [seeed-2mic-voicecard], device 0: bcm2835-i2s-wm8960-hifi wm8960-hifi-0 []
|
|
Subdevices: 1/1
|
|
Subdevice #0: subdevice #0
|
|
pi@raspberrypi:~/seeed-voicecard $
|
|
```
|
|
|
|
```bash
|
|
#for ReSpeaker 4-mic
|
|
pi@raspberrypi:~ $ arecord -L
|
|
null
|
|
Discard all samples (playback) or generate zero samples (capture)
|
|
playback
|
|
capture
|
|
dmixed
|
|
array
|
|
ac108
|
|
default:CARD=seeed4micvoicec
|
|
seeed-4mic-voicecard,
|
|
Default Audio Device
|
|
sysdefault:CARD=seeed4micvoicec
|
|
seeed-4mic-voicecard,
|
|
Default Audio Device
|
|
dmix:CARD=seeed4micvoicec,DEV=0
|
|
seeed-4mic-voicecard,
|
|
Direct sample mixing device
|
|
dsnoop:CARD=seeed4micvoicec,DEV=0
|
|
seeed-4mic-voicecard,
|
|
Direct sample snooping device
|
|
hw:CARD=seeed4micvoicec,DEV=0
|
|
seeed-4mic-voicecard,
|
|
Direct hardware device without any conversions
|
|
plughw:CARD=seeed4micvoicec,DEV=0
|
|
seeed-4mic-voicecard,
|
|
Hardware device with all software conversions
|
|
pi@raspberrypi:~ $
|
|
```
|
|
If you want to change the alsa settings, You can use `sudo alsactl --file=asound.state store` to save it.
|
|
|
|
Test:
|
|
```bash
|
|
#for ReSpeaker 2-mic
|
|
#It will capture sound an playback on hw:1
|
|
arecord -f cd -Dhw:1 | aplay -Dhw:1
|
|
```
|
|
|
|
```bash
|
|
#for ReSpeaker 4-mic
|
|
#It will capture sound on AC108 and save as a.wav
|
|
arecord -Dac108 -f S32_LE -r 16000 -c 4 a.wav
|
|
```
|
|
|
|
### with Google Assistant
|
|
if you run the assistant but the playback is speed up considerably, try to configure alsa:
|
|
|
|
```bash
|
|
sudo cp asound.conf /etc/asound.conf
|
|
```
|
|
|
|
If the alsa configuration doesn't solve the issue, try to use pulseaudio. See [#4](https://github.com/respeaker/seeed-voicecard/issues/4)
|
|
|
|
|
|
Enjoy !
|