11

I'm trying to understand if it would be possible (and, in case, what is the best approach) to build an "effect box" which could take an analog signal (from a guitar or a microphone), change it in realtime in order to apply some "audio effects" (from simple delay to complex time/frequency operations) and finally output it back into the analog world.

I know there are really powerful (and costly!) digital audio processors out there, but this it is some kind of home, spare-time project, and I'd like to take the chance to learn something more on the subject =)

The first thing I wish to understand is the hw support I should expect or add to it in order to get the sound sampled and then played.

From what I read the built-in audio output is quite poor and there's no easy way to record audio (see this and this).. So I guess I'd better plug some external audio device...

Is it better an external USB audio interface or some kind of ADC/DAC attached to the GPIO bus (which are often using the I2C bus through the P5 header)?

Is it worth trying? Does someone has some insight about this? Any help is appreciated =)

Luke
  • 211
  • 1
  • 2
  • 4
  • there's no audio input and audio output quality is quite poor. choose another device to play with, select one that has at least audio in and out working properly. – lenik Jun 05 '13 at 11:30
  • well.. I had some suspect that it could be a troublesome path, and sometimes even a "no way" is a good place to start with: you know you have to switch to another road =) – Luke Jun 05 '13 at 21:07
  • If you can get usb sound card that has sufficient quality for you, it should be thoretically possible. – GuySoft Jun 05 '13 at 22:05
  • Look into the I2S interface which is supposedly more along the audio processing avenue. – SF. Aug 03 '13 at 14:07

2 Answers2

9

It is very much possible to use the Pi for realtime audio effects. The only limitations are the need for an external USB soundcard (not all soundcards are supported yet, but I know some people are working on it), and of course the power of the Pi itself (I managed to get a latency of 15 ms with some heavy FFT though, so there's a lot you can do before you reach the limits of the Pi).

I use Pure Data for all the DSP. You can see a demo I made on my blog : http://guitarextended.wordpress.com/2013/01/27/real-time-guitar-effects-with-raspberry-pi-pd-and-arduino/

I hope to be able to document this better in the near future, when I have time.

1

The rp is a - by today's standards - mediocre to slow computer running linux normally. Whatever sound effects software runs on linux with those specs is likely to run on the Pi. You could also connect a faster "Black Box" that does most of the calculating to it, if it is not fast enough.

Zurechtweiser
  • 171
  • 1
  • 8