I built Audacity from source code in Raspberry Pi 4. Here are some info about the build: wxWidgets-3.0.5. Sudo apt-get install gtk+2.0./configure -with-gtk make sudo make install sudo ldconfig audacity. Cd audacity-minsrc-2.2.2-rc1/ mkdir build cd build/./configure -with-lib-preference='local system'. CanaKit Raspberry Pi 4 8GB Starter Kit 8GB RAM, 32 GB EVO+ Memory Card, Premium Black Case An exclusive Starter Kit from CanaKit that includes the 8GB RAM version of the latest generation model of the Raspberry Pi family: The Raspberry Pi 4 8GB and everything you need to get up and running within minutes in the exciting world of Raspberry Pi! Because there are tons of Linux distributions (distros) for the Raspberry Pi, it works well for audio recording with programs such as Audacity. And with the debut of the Raspberry Pi 4, available in models with 4GB and 8GB of LPDDR4 RAM mated to a decent CPU, the Raspberry Pi. Book of Audacity. Record, Edit, Mix, and Master with the Free Audio Editor. By Carla Schroder. Raspberry Pi Projects for Kids. Create an MP3 Player, Mod Minecraft. An exclusive Starter Kit from CanaKit that includes the 4GB RAM version of the latest generation model of the Raspberry Pi family: The Raspberry Pi 4 4GB and everything you need to get up and running within minutes in the exciting world of Raspberry Pi! The Raspberry Pi 4 features a 64-bit quad core processor running @ 1.5 Ghz. The CanaKit Raspberry Pi 4 4GB Starter Kit includes a premium Raspberry Pi case.
Seeed’s ReSpeaker 4-Mic Linear Array Kit isan extension board, aka HAT designed for Raspberry Pi. It's a linear microphone arraykit, comes with four microphones anddesigned for AI and voice applications. Thatmeans you can build a more powerful andflexible voice product with Raspberry Piwhich can integrate Amazon Alexa VoiceService, Google Assistant, and so on.
ReSpeaker 4-Mic Linear Array Kit forRaspberry Pi consists of two boards, one isvoice accessory HAT, another is fourmicrophones linear array.
ReSpeaker 4-Mic Linear Array Kit forRaspberry Pi support 8 input & 8 outputchannels in Raspbian system. The first 6input channel for microphonerecording(only first 4 input channels arevalid capture data), rest of 2 input channelare echo channel of playback. The first 2output channel for playing, rest of 6 outputchannel are dummy.
Audacity Raspberry Pi 4 Projects
Features¶
- 2 ADC chips and 1 DAC chip
- 8 input and 8 output channels
- Four microphones array
- Grove support
- Raspberry Pi compatible(Support Raspberry Pi Zero and Zero W, Raspberry Pi B+, Raspberry Pi 2 B, Raspberry Pi 3 B, Raspberry Pi 3 B+, Raspberry Pi 3 A+ and Raspberry Pi 4)
- Headset and speaker voice output
Specification¶
- 2 x X-Power AC108 ADC
- 4 x high performance analog microphones
- 1 x X-Power AC101 DAC
- Voice output:
- 3.5mm headset audio jack
- Speaker jack
- Compatible with Raspberry Pi 40-pin headers
- Microphones: MSM321A3729H9BP
- Sensitivity: -22 dBFS (Omnidirectional)
- SNR: 59 dB
- Max Sample Rate: 48Khz
Application Ideas¶
- Smart speaker
- Intelligent voice assistant systems
- Voice recorders
- Voice conferencing system
- Meeting communicating equipment
- Voice interacting robot
- Car voice assistant
- Other scenarios need voice command
Hardware Overview¶
System Diagram
Interface
Note
After connecting, be sure to use a multimeter to determine if the conduction of the circuit is as indicated in the figure above.
Assembly drawing¶
Getting Started¶
Hardware¶
Prerequisites
ReSpeaker 4-Mic Linear Array Kit x1
Raspberry Pi 3B or 3B+ x1
Micro-USB Cable x1
PC x1
Earphone or Speaker x1
Tips
Actually the ReSpeaker 4-Mic Circular Array support Raspberry Pi Zero, Raspberry Pi 1 B+, Raspberry Pi 2 B, Raspberry Pi 3 B and Raspberry Pi 3 model B+ and Raspberry Pi 3 A+, in this wiki we are using Raspberry Pi 3.
Connection
Step 1. Connect the ReSpeaker Voice Accessory HAT with ReSpeaker 4-Mic linear Array via the Ribbon Cable
Step 2. Plug the ReSpeaker Voice Accessory HAT into the Raspberry Pi via the 40 Pin GPIO
Step 3. Plug the earphone into the 3.5mm headset audio jack or plug the speaker into the JST 2.0 speaker jack
Step 4. Connect the Raspberry Pi with the PC via the micro-USB cable
Software¶
Prerequisites
Plan A
You need to use Putty or other ssh tools to connect with your raspberry pi. Before started, please make sure:
1- Open ssh fuction of your pi to let the putty in. If you do not know how to open ssh, please google how to setup ssh raspberry pi
2- Your raspberry pi and your PC are working on the same WiFi net. If you do not know how to config WiFi, please google how to setup wifi raspberry pi
3- Get the ip address of your raspberry pi, if you do not know how to get the ip address please refer to raspberry offical documentation
4- Use the ip address to connect the raspberry pi with your PC via putty ssh serve.
Then please tap the host name and the password. the default ID is pi
and the password is raspberry
.
Now you are in, and you can tap the command in putty and play with your raspberry.
To make this kit work with alexa or dueros, you need to open a web site to get the authorization. So you need to use VNC Viewer to log in your amazon or baidu account. So please make sure you have open the VNC service of your raspberry.
Or you can just consider plan B.
Plan B
If you are tired of all above, you can just use a HDMI Monitor and plug the USB Keyboard and USB mouse in to your raspberry, it works too, simple and easy.
Step 1. Install seeed-voicecard
Get the seeed voice card source code. and install all linux kernel drivers.
Step 2. Check the Sound Card
Tap the command below to check the record device.
It should be like:
Use the following command to check the play device.
It should be like:
Step 3. Record and Play
You can record then play, or you can record and play at the same time.
Note
Limit for developer using 4-Mic linear Array Kit(or 4-Mic Linear Array Kit) doing capture & playback the same time:
-1. capture must be start first, or else the capture channels will possibly be disorder.
-2. playback output channels must fill with 8 same channels data or 4 same stereo channels data, or else the speaker or headphone will output nothing possibly.
-3. If you want to play and record at the same time, the aplay music file must be mono, or you can not use this command to play.
Also you can play and record with Audacity.
Tips
You should open Audacity via VNC or you can just use a monitor to open it
Extract Voice¶
We use PyAudio python library to extract voice.
- Step 1, We need to run the following script to get the device index number of 4 Mic pi hat:
- Step 2, copy below code and paste on get_index.py.
Step 3, press Ctrl + X to exit and press Y to save.
Step 4, run 'sudo python get_index.py' and we will see the device ID as below.
- Step 5, change
RESPEAKER_INDEX = 2
to index number. Run python script record.py to record a speech.
- Step 6. If you want to extract channel 0 data from 8 channels, please follow below code. For other channel X, please change [0::8] to [X::8].
FAQ¶
Q1: There are only 4 Mic in the Mic Array, how could it be 8 channels?
A1: There are 2 AC108 in this array, and each AC108 chip has 4 channel output. So it comes a total of 8 channels here, 4 of which are for the microphone, two channels for the playback and the the rest 2 channels are not used.
Audacity Raspberry Pi 4 Software
Q2: If Raspberry can detect ReSpeaker 2-mics hat, but can't detect ReSpeaker 4-mics linear array?
A2: Please click raspberry -> Preferences -> Raspberry Pi Configuration, then select the Interfaces tab, make sure the 1-Wire is Disabled.
Resources¶
- [PDF]AC101 Datasheet
- [PDF]AC108 Datesheet
- [Driver]Seeed-Voice Driver
- [Algorithms]Algorithms includes DOA, VAD, NS
- [Voice EngineVoice Engine project, provides building blocks to create voice enabled objects
- [Algorithms]AEC
- [Mechanical Drawing]2D Drawing
Raspberry Pi 4 Software Download
Projects¶
Raspberry Pi 4 8gb
Mojing Mojing - A Smart Mirror with ReSpeaker!: A smart mirror with voice interface control via ReSpeaker. We also connect with Wio Link to control other objects! Based on Raspberry Pi.
Tech Support¶
Please submit any technical issue into our forum.