Go Down

Topic: 16-bit audio recording/playback (sampling) with Arduino? (Read 5332 times) previous topic - next topic

kriista

I've seen the waveshield and similar things but most of what I've seen has been about playing back prerecorded audio. Are there any shields or IC/projects with friendly code (not a great programmer) that you can read/write an audio buffer and mess around with it a bit (starting at different places or changing direction etc...)

Grumpy_Mike

Basically no, the arduino has not got enough memory to do this sort of thing.
In theory it might be possible to have a shield with external memory, and A/D & D/A but getting it in and out of the arduino is a bit of a bottle neck.

kriista

Yeah I figured something like that was the case. I was hoping there was a shield or something similar that just took control input from the Arduino, but at the point I'm just describing a commercial sampler with MIDI input.


kriista

That's quiet interesting.

I wonder if it will be able to run PureData, or Max even (not sure if it can run osx/windows from the description).

WilliamK Govinda

Darn, of course you can, please, there are some projects using ATmega328 chips for that already. Its LoFi, so don't expect 16 bits, mostly 8 bits.

Check this out: http://mutable-instruments.net/shruthi1/build/dsp

Those are not Arduino per say, but, it can be done, just requires some smart-programming...

Rugged Circuits + Beat707.com did BeatBox, which is a 6 voice 8-bit 22Khz WAV player (after conversion to code) for any regular Arduino. (ATmega328)

http://www.ruggedcircuits.com/html/beatvox.html

Buscuit is a pure 8-bit based digital effect, just no clue on what chip it uses...

http://www.otomachines.com/biscuit.html

Wk

Grumpy_Mike

#6
Jun 13, 2011, 07:02 am Last Edit: Jun 13, 2011, 07:05 am by Grumpy_Mike Reason: 1
Quote
Its LoFi, so don't expect 16 bits, mostly 8 bits.

Odd that I thought the question said 16 bits. My eyes must be going wonky at my age, I could have sworn it said 16 bits somewhere, maybe even in the big print in the title?
Also I thought that recording was mentioned ?
Still let's not let relevance get in the way of a good answer.

kriista

Yeah I'm after 16bit. I love 8bit and in fact use this:
http://www.narrat1ve.com/

As my main sampler thing. I'm building an Arduino based controller for this that will send it MIDI messages (based off drum triggers), so I was hoping I could find something that worked in the 16bit realm to run parallel with it (for when I want a more fidelious sound).

WilliamK Govinda

Yes, I read he asked for 16 bits, but I only gave 8 bit examples as its what I saw so far. ;-)

16 bits is still possible, just haven't found an example yet.

Actually, the Arduino Mega, if someone would do a 64k SRAM Shield, it would be possible to use a 16 bit DAC with it via the SPI lines. I'm sure sample rate would be low and sound would be mono, but heck, crazy things could happen. ;-)

I got a 16 bit DAC here that I was testing, and it does work. The problem for you would be the 16 bit INPUT, not the OUTPUT. But still... maybe its time for someone to create a shield that would have a better processor that would handle everything and let the Arduino only control things via the SPI line. Like the GameDuino?

And there's the new Uno32 from ChipKit with the 32 bit processor. It already does audio output, soon someone will do an option for input. Now, if someone would like to donate a Uno32 card to me... ;-) ;-) ;-)

http://hackaday.com/2011/06/08/chipkit-sketch-mini-polyphonic-sampling-synth/

Wk

Grumpy_Mike

Do you not think that the Uno32 is just trying to cash in in the arduino brand name, as it is nothing like an arduino.

Saying something is possible is a million miles away from doing it. I did a lot of sound processing and sampling work back in the 80s with a 6502 processor, not much difference in power from an arduino. However, the architecture is different making access to memory more problematical on the arduino.
Sure you could do something just for the sake of doing it but it would be totally inferrer from doing it with the right processor.

WilliamK Govinda

I think you forgot one very important thing: I'm NUTS!  :smiley-mr-green: :D XD :smiley-eek-blue: :smiley-eek: :smiley-fat: 8)

When people say to me "it's not possible", I get mad and prove them wrong, most of the times...  :* (when I don't fail badly and cry...)

Time to get my 16-bit DAC and start playing around with it and my 6-voice player. If I can get only one voice, its enough I guess.

Wk

Grumpy_Mike

So how long are you going to let the sample record for?

I can sympathise with that, when I was at school I worked out a reversil process for photographic paper just because the physics teacher said it coudn't be done.

When you get to my age you might find there are better things to do than to reinvent the wheel, there are new wheels to invent.

kriista

I don't doubt that it's possible as that's how most digital samplers work (some sort of MCU and ram etc...) but I certainly can't pull that kind of stuff off.

I was just hoping for a shield+library that would make it easy to do. The sampler I linked to does just about everything I want to do already (but in 8-bits), so it's just a matter of getting similar functionality but at 16-bits.

Go Up