Press a button, hear a random recording. How do I make one?
February 20, 2014 1:26 PM   Subscribe

I have an idea for a sculpture that would have a button on it. When the button is pressed, a sound recording would play. There'd be about 10-20 recordings, each about 2-4 minutes long. I know it's possible to do this -- I just don't know how, exactly. What should I be googling?

I see this effect in kids' toys all the time... press plush Elmo's hand and he sings ABCs; press it again and he sings Twinkle Twinkle; press it again for Old Macdonald. Ideally, I'd use the same sort of technology, because the smaller and simpler the better.
posted by xo to Technology (13 answers total) 6 users marked this as a favorite
Integrate an ipod into it.
posted by hal_c_on at 1:37 PM on February 20, 2014

I would imagine this likely would be fairly easy to accomplish with a cheap used iPod or other such device set to shuffle mode. Put your recordings on the device, and physically link your button to the Play button on the device.

One problem with this is you'd also need to push the button again to stop the playback (and not play all 20 recordings in random order). If you're comfortable with electronics, google "latch circuit schematic." You could then wire that latching switch up to your cheap electronic player. You'd need to put a timer on to set the reset circuit high once your recording is finished, perhaps.

Failing that, I believe Teddy Ruxpin toys from the 80s had a cassette tape you could change out. I'm not sure if that doll played random recordings or just played the tape from start to finish.
posted by tckma at 1:40 PM on February 20, 2014

Just buy the parts that would go into a toy. Here is a link to one such place. Of course it requires you to order 5000, but I bet you could find just one somewhere.
posted by jeffamaphone at 1:56 PM on February 20, 2014

Yeah, this should be easy to do with an iPod or smartphone. You can probably do something like get a bluetooth remote for an android phone or something, and embed that in your sculpture, and have the "play" button on the remote select a random playlist and play it from some music app.

I would start with an approach like this.
posted by tylerkaraszewski at 2:01 PM on February 20, 2014

"...I'd use the same sort of technology..."

They're using an ASIC. You can't afford to unless you're talking about making thousands of units.

If I were doing something like this, I'd start with an Arduino.

The main concern would be memory. "about 10-20 recordings, each about 2-4 minutes long" is a lot of bits. Unless you're willing to really sacrifice on the sound quality, it's gonna take a lot of ROM to hold it all. An Arduino might not be able to address enough memory, so you might need a 32-bit processor, which drastically increases the expense and difficulty.
posted by Chocolate Pickle at 2:09 PM on February 20, 2014 [4 favorites]

I'd go with something like an Arduino plus a Wave Shield. You'd end up paying a total of around $50 for all the kit, but it'll get you good-quality sound, ample storage (i.e. hours of audio if you need it), reliable controls, and the whole thing will be reusable for other projects. The learning curve depends a lot on whether you've ever done any (fairly basic) programming before. The online resources to help you get it working are plentiful.
posted by pipeski at 2:11 PM on February 20, 2014 [5 favorites]

Yes, I've actually made something just like this (well, close enough) using an Arduino and a Wave Audio Shield. I'm not sure how much audio you can address this way but it's a good starting point.
posted by jeffch at 2:12 PM on February 20, 2014 [1 favorite]

This has sent me on an interesting distraction.

Here is an item that may be useful. You could hook the playback buttons up to the outputs of a random number generator circuit such as this one.

Of course, this depends on your budget and how comfortable you are with electronics.

Maybe this is also a project you could do with an Arduino.
posted by tckma at 2:13 PM on February 20, 2014

You could also try using a Raspberry Pi, which has fewer memory limitations than an Arduino. Something like this...
posted by introcosm at 2:47 PM on February 20, 2014 [1 favorite]

I'd take a different tack. Google "digital audio repeater" and there are outfits that will sell you stand-alone devices, some of which even incorporate an amplifier (so you wire them direct to speakers). They allow for various levels of scripting. Akman and Gilderfluke are two that come to mind.

Unless you want to mess with something like an Ardiono, as others here have suggested, of course.
posted by BillMcMurdo at 3:33 PM on February 20, 2014 [1 favorite]

Seconding Raspberry Pi... lots more compute power for about the same price as Arduino + waveshield, so getting audio out of the pi will likely be easier than the arduino, e.g. a python script to get some button input and then select a random mp3 to play via mplayer or something. If there's a hackerspace nearby you could probably drop by whenever they have an open house for visitors and explain to whatever random people are there what it is that you want to do and probably get some solid advice and help.
posted by smcameron at 5:03 PM on February 20, 2014

I second the Arduino suggestions with something like this on top of it.

Edit: err, 'third'..or 'fourth'...gah
posted by destructive cactus at 5:04 PM on February 20, 2014

Apologies for stretching the question, but a time frame of 120 to 240 seconds each for an audio component in an interactive sculptural piece will often result in a rather fair amount of audients drifting... out of... and in to... the whole entire experience. Which is fine, if the experience is environmentally conceived with this loosely in mind. But if you have a specific narrative to convey, you might want to consider making the audio snippets as concise as possible.
posted by ovvl at 5:11 PM on February 20, 2014

« Older How to stream FULL episodes of Melissa Harris...   |   Things to do in Dubai? Newer »
This thread is closed to new comments.