I am an artist who is trying to use surround sound for a piece I am working on. What I want to do is have 5 (or more if possible) speakers in a line across the wall that can play a sound from a single source sequentially from left to right. I'm trying to do this on the cheap, as i don't have a whole lot of money to throw around. Does anyone have any ideas on how I can make this work?
It doesn't sound like you actually need 'surround sound' for this project... you're just sequentially changing the speaker being driven, right? If you don't need a smooth transition between speakers, you may be better off with something that just changes the speaker connections in sequence.
If you want a smooth transition, maybe you could do it with a computer soundcard with 5.1 outputs, then write a program to dynamically adjust the balance while it plays back the audio. PCI soundcards like that are extremely cheap these days, but programming for it isn't necessarily simple. There's <a href="http://openal.org/">OpenAL</a> (Open Audio Library), which will give you control over spatial positioning; there's a <a href="http://home.gna.org/oomadness/en/pyopenal/index.html">Python binding</a> for it, which would be simpler to use, but I can't vouch for how well it works. It looks like it would be pretty simple.
Thanks for the response.Say I am using a portable CD player as the output source, what could I hook it up to that would change the speaker connections in sequence? Also, what type of speakers would be best compatible with a setup like this?
You could build something to turn on switches in sequence with a 555 timer, a 74LS90 counter and a 74LS42 BCD-to-decimal decoder... the 555 would produce pulses, the counter would add them up in binary then the decoder would turn that binary into one of ten pins being powered. Those pins could then control several bus switch ICs (like the CBT3244AD) to turn speakers on or off. They could probably drive something electromechanical like a relay, but that might produce clicking.
I don't have a schematic, but it seems like it should be fairly simple to build. The only tricky part is that the bus switch ICs are surface mount components.
-IF- it doesn't have to be stereo... and -IF- you are creating the audio source (burning the CD)... and -IF- only one speaker has to on at a time...
You could do this pretty simply, and control 16 speakers:
On the left audio channel of the CD you burn your audio material. On the right audio channel, you burn DTMF tones. DTMF (Dual Tone Multi-Frequency) are the TouchTones just about every telephone on Earth uses. You could simply record them from a telephone, or from a dial-up modem in a PC. Yeah, a phone only has 12 buttons, but there are 4 more tones in there that most phones can't dial, and most modems can.
On the output side of things, the audio on the left channel is sent to an amplifier. The speaker connection from the amp is connected to 16 relays, and the output from each relay goes to it's own speaker.
The audio from the right channel of the CD is sent to a DTMF decoder (something like the MC145436). The output of the decoder (4-bit hexidecimal) is fed to a demultiplexer chip (74154) which has 16 output pins, one for each of the DTMF tones. Each of those lines drives one of the relays.
That's how it could work in a nutshell. You would, however, also need a 4-bit latch and a relay driver.
I could draw up a quick sketch of the circuit if you'd like.
And I was worried about <i>my</i> idea being overly complex... :-)
The end result is basically the same, except what I proposed uses a timer and binary counter to generate the sequencing, whereas John's sets specific speakers via touch-tone. The 7442 can drive up to ten outputs, whereas the 74154 does binary-to-hexadecimal. If you have fewer than ten speakers, either would work.
If the speakers need to each be on for the same length of time, my counter idea would work best with 2, 4 or 8 speakers (or 16, if you used the 74154 instead of the 7442). John's would work with any number of speakers between one and 16.
The bit about the bus switch ICs in my suggestion apply to John's as well. Electromechanical relays may create noise in the audio when they trip; the ICs are designed to be silent. Plus, they operate on the native voltage levels of the other chips, so you wouldn't have to build a relay driver.
The big difference between Stokes' idea and mine ( both brilliant to be sure ) is that with his the speakers will switch from one to the next every <I>X</I> seconds. Mine will let you program specifically which speaker turns on when. It all depends on the final effect that you're looking for.
Just received an email pointing out that there was a pin mistake on the above schematic. The ground connection on the MC145436 is on pin 8, not on pin 9 as I drew it. I've corrected the error and re-uploaded the drawing to Flickr.
Yea. If you don't invert the output of the 74LS154, all of the relays will be closed EXCEPT the one corresponding to the DTMF tone received.
You could use seperate latches and inverters and it would work find. I like the 573 because it combines everything, and the wiring is straight through making assembly on a proto board easy.
I just thought I'd pop in and say I still plan on building this project, but it has been delayed because I am moving to the other side of the country next month.
At this point, I figure I'll put it together on stripboard/veroboard, since the IC pinouts line up quite nicely. It's a bit big for laying out in Eagle and I haven't really tried any other PCB layout software yet. Besides, I don't know if anyone would be interested in making one of these babies anyway. I am looking for an excuse to get a PCB made at one of the cheap board houses, with a pretty black or red mask. Maybe next time.
Hi Paul, Glad it worked out. Keep me up to date on the progress.
By the way .. for your art installation, you could have people call the piece with their cell phones and send DTMF to control ... well ... whatever you've wired up to the thing.