Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!

 



Forgot your password?
typodupeerror
×
Music Media Hardware

Build a Multi-Output MP3 Server? 394

z80 asks: "I'm rebuilding my house and I am thinking about fitting speakers in every room of the house and pulling some massive amount of cables in the walls. I also want to control and send the output to each set of speakers from the same source, and was thinking that a PC, with 4-6 soundcards, would do the trick, and there are of course a couple of questions I have. What kind of hardware would be required to be able to stream up to six different MP3's through six soundcards at the same time ? Can it even be done? What kind of software can be used to do it? Which OS? How can it be remotely controlled? With respect to the last question, I'm thinking about mounting a couple of flat displays around the house connected to old PC's that run some sort of connection (VNC maybe) to the mp3 server." This is a topic Ask Slashdot tackled three years ago. Now, with applications like Ardour showing off the power of Open Source frameworks like JACK, it seems like building such a machine might not be as hard as it once was. For those of you who have managed to build something like this, what did you do and what hurdles did you have to navigate before things were working? How would you set up a machine to run independent audio to 4 or more rooms?
This discussion has been archived. No new comments can be posted.

Build a Multi-Output MP3 Server?

Comments Filter:
  • AVScience Forum (Score:5, Informative)

    by cookiej ( 136023 ) * on Friday June 27, 2003 @11:32PM (#6317185)
    The best place for questions like this is the AV Science Forum. Lots of people doing all sorts of home-theater/home-audio projects. Look in the "Home Theater Computers" section.

    There are several options for what you're looking to do these days. My brother is doing a similar thing, but he's using 802.11b for control (through Girder) and PocketPCs for remotes!

    http://www.avsforum.com/avs-vb/
    • Re:AVScience Forum (Score:5, Insightful)

      by moosesocks ( 264553 ) on Friday June 27, 2003 @11:54PM (#6317317) Homepage
      There are several options for what you're looking to do these days. My brother is doing a similar thing, but he's using 802.11b for control (through Girder) and PocketPCs for remotes!

      Ah yes, if there's one thing the nice folks on the AV Science Forum don't understand well, it's budget constraints. How many people can afford to go out and buy Pocket PCs to replace their remote controls?
      • I made a an XMMS console remote [osnippets.org] and ran it from my zaurus over wifi. I know use a dedicated MP3 server that mounts my music over samba and lives inside my stereo.

        The script could easily be adapted for use in almost any control environment. Up/down+enter for easy use on the Zaurus w/out typing.
  • go wireless (Score:2, Insightful)

    by rammadon ( 305230 )
    you could network tablet PC's to it and use wireless speakers, that would work
    • Re:go wireless (Score:4, Informative)

      by spirality ( 188417 ) on Friday June 27, 2003 @11:59PM (#6317345) Homepage
      Wireless speakers are considered by most audiophiles to be of poor sound quality.

      This of course assumes an analog signal.

      Also if you wanted to run one song in one room and another song in another room there could be interference issues.
    • by BigBlockMopar ( 191202 ) on Saturday June 28, 2003 @12:53AM (#6317634) Homepage
      you could network tablet PC's to it and use wireless speakers, that would work

      Sure, if you've got more money than brains, you could do that.

      But if you're going to wireless speakers (which invariably suck because there's another stage of conversion or modulation, then transmission, then demodulation), you could simply use centrally-located older machines (ie. cheap) and use wireless keyboards or other means to remote control them.

      Lots of the solutions under consideration seem to involve having VNC hosts and other junk like that. Why? I don't get it. Here's how this former professional audio technician would do it:

      • Use notebook computers. Old 486 and Pentium-class systems with sound cards are basically worthless, will play MP3 and Ogg just fine, and can be networked easily to a central file server. Command line (ie. "I wrote my own shell which does nothing but play MP3s entirely with Perl") or GUI-driven media players should work depending on the hardware available.
      • Use old desktops. We're throwing away PIII-600s at my work, but a 486 or better with an ISA sound card will be fine. Grab a multiline LCD display and hack it into a drive bay with a few pushbuttons. Put it onto your entertainment rack between the VCR and the CD player.

      Remember, sound quality is dependent on the electronic quality of the sound card you're using, not on the CPU speed of the processor. Generally, if it can play an MP3 without skipping, it's fast enough. DO look for *old* Creative Labs 16-bit ISA sound cards where the output amplifiers are in 8 pin DIP packages with "LM741" on them; in under 10 minutes you can bring them to almost the sound quality of the finest $2000 CD players.

      And don't do stupid things that say "I think car audio is KEWL" and run unbalanced line-level audio all over the house unnecessarily. Run Cat-5 all over the house; run the sound card outputs to the amplifier as neatly and as shortly as possible in each room.

      If you do it that way and have a good quality stereo system (ie. the speakers are actually made of wood and the amp claims it's only 50W but seems to weigh over 75lbs anyway), your fidelity will be limited mostly by the quality of the MP3s you're playing.

      • Note that you will need a least a Pentium 60 for real-time mp3 decoding at full quality (a 120 mhz 486 *might* be able to. a 100 mhz 486 can't). Ogg requires something like a Pentium 166, maybe more.
      • Throwing away pIII 600s?

        Dibs. =P
        Seriously, though, would you consider sending me one if I pay shipping? I have family in from out of town, and I don't want them asking so many damn times if they can use my computer.
      • A couple of questions:

        Can I have some PIII 600s?
        and
        What are you talking about with the Soundblaster? What mod? takes 10 min and what does the LM741 have to do with it? I have tried Googling and nothing leaps out at me.
        and
        Can I have some PIII 600s? ;)

      • You might save money initially on the price of a bunch of old PCs, but as soon as you turn them all on you will notice a new monthly cost in the form of expensive electricity bills.
  • Which OS? (Score:4, Funny)

    by jbardell ( 677791 ) <jbardell86@noSpam.yahoo.com> on Friday June 27, 2003 @11:33PM (#6317192)
    Hahaha you asked 'Which OS?' on /. I guess you weren't looking for an unbiased opinion :P
  • by someonehasmyname ( 465543 ) on Friday June 27, 2003 @11:38PM (#6317216)
    Get an M-Audio Delta 410. [m-audio.com]

    It has 4 inputs, and 10 outputs.
    • by Golias ( 176380 ) on Friday June 27, 2003 @11:49PM (#6317279)
      Since you need an amp in each room, and a controller of some kind in each room, and a set of speakers in each room, it seems to me that a far simpler solution would be to put a cheap computer in each room. (Old used iMacs can run OS X or PPCLinux, are fanless, and consume very little power in sleep mode... or go with one of those small-case PC's if you are one of those people who looks down their nose at Macs... whichever. The point is, get a fanless system with just enough CPU muscle to play audio files yet low-power enough that you don't mind leaving them running.) Then just store the entire MP3 library on an ordinary file server in the closet, and mount the library's drive on all the networked systems.

      Playing the files on a local machine off a networked drive would probably give you better sound than snaking analog audio cable across the entire length of your house, too.

      • This is exactly what I am in the process of doing, in my house.

        Ethernet has already been strung all over the place, and I've set up a 250GB (total) fileserver to be placed in the basement. After that, a client computer at each television / stereo system will be all that's necessary for the ability to listen to any piece in a huge collection of music, on demand.

        In addition, with video-output hardware in the client computers (onboard most modern motherboards, anyway), there's the possibility to watch store
  • by leeet ( 543121 ) on Friday June 27, 2003 @11:38PM (#6317217) Homepage
    I thought it would be great to have multiple outputs on soundcards. Why have 4-5 cards when you can easily have a pigtail with RCA connectors (or 1/8 connectors). It should be possible and would solve those issues. Imagine playing a DVD on your TV while someone else listens to MP3's

    Software wise, it shouldn't be harder than controling multiple NIC's. Soundcards could be seen as "streams" and you could send the audio to any/all. Heck you could even have some kind of multicast to remind everyone of special events (blue light special? err.. dinner is ready).

    Unfortunately, the company I contacted couldn't care less about my idea.... Or maybe they simply took it and are working on it now? :)
    • Man, that's ultimate geek application. The one problem is that unless you use your computer as a home theatre (read, entire home), why would you want two sets of speakers to play different stuff, when after all, once in the air, the sounds are going to mix anyways.

      • Well there are some hardware solutions available at expensive/hi-end stores and I think that a PC can perform this job very easily.

        If you live in an appartment, it's probably hard to justify the cost/reason, but I'm in a house and I would also like to wire each room. You know, play kids songs downstairs, rock in the garage while the wife listens to internet radio. Why not? Why can't we have the technology to do it. I don't think decoding 3-4 MP3 streams would be so hard on CPU usage anymore.

        Ultimately,
        • I still can't figure out why a distributed task like this isn't handled locally by a sound card in each room and everything distributed around the network as IP.

          Go to Ebay. Buy a pile of SparcStation IPX boxes. They have 'good enough' audio output, can be had very cheaply these days, and can run NetBSD in a diskless and headless configuration so they won't make much noise. Boot them off a boot server, share over the sound files with NFS. Telnet into each machine from any other machine on the network to
  • by Qzukk ( 229616 ) on Friday June 27, 2003 @11:39PM (#6317221) Journal
    One of the side effects of not having commercial drivers and applications that use the features is that you can usually get at least two channels off of a 5.1 soundcard. The front pair of speakers and the rear pair of speakers are generally treated as seperate DSPs by the audio driver. Look around for audio drivers that treat the cards this way, and when you find one get 3 cards for a total of 6 outputs. (You're looking for a card thats supported in linux, but not too-well supported. Don't forget to check alsa's list of cards)

    After that, just figure out how you're going to get the controls to work.
  • Why not just have one fileserver and put a flat-panel box with a basic sound card (hacked i-opener, anyone?) in each room? Or did you want the same music playing in each room in sync?

    --
  • Remotes (Score:3, Insightful)

    by Ruie ( 30480 ) on Friday June 27, 2003 @11:45PM (#6317255) Homepage

    You could use ATI Remote Wonders (or, perhaps, a similar kind of X10 remote).

    These are RF remotes and 16 of them can be configured to use different channels. They use USB dongle for reception - same dongle can serve multiple remotes if needed (just don't transmit simultaneously).

    Linux driver can be found at GATOS [sourceforge.net] website

  • If you're going the "old PCs" route for control, forget about distributing the audio. Too much work. Just run a network cable to every room (or go wireless) and use old PC's as clients/players of shared files stored on a central server.

    This would work TODAY - you wouldn't have to do any customization of software or hardware.

    AudioPCI cards are cheap but great sound for the bucks.

    In my mind the only downfall is the noise from a PC unless you go to lengths to silence them, eg put into closets.
  • by Anonymous Coward on Friday June 27, 2003 @11:46PM (#6317264)
    While the idea of using several soundcards and OSS is quite sound, this is a problem which has already been solved by professional audio installers several times over, with equipment custom-tailored for this exact purpose. IMHO, you should get a professional consultation from a home theatre/automation business. The difficulty is not the soundcards or even the software, it's integrating functional control panels (with displays) into each room that will prove to be the most difficult. While you certainly *can* do this with off-the-shelf parts, the pros will always do this sort of thing better.

    Good luck!
  • Audio quality? (Score:3, Insightful)

    by blixel ( 158224 ) on Friday June 27, 2003 @11:48PM (#6317275)
    How much distance can you run with your audio cables before you start to get significant loss of quality?
    • depends on the thickness of the wire and the power of the amp, I wouldn't expect more then 20 ft out of cheap wire with no amp
      • Then you've apparently never worked as an audio technician. At 16 gauge you can sometimes get 500 feet out of twisted pair, and much more if you amplify the source first, which is a very good idea. Note that normal speaker cables are 18 gauge, though I don't have a great deal of experience with them. Theoretically (based upon knowing the ohms/meter ratio for the two), you'll get slightly more than two thirds the performance out of 18 gauge.

        You can get small box-sized preamps that will fit on your desk a
    • Re:Audio quality? (Score:3, Insightful)

      by drinkypoo ( 153816 )

      That depends. You could use digital audio and then with one pair of wires you could run the signal, well, all over the damn house if you amplified it. In fact, I'm betting if you amplified it, you could also split one S/PDIF coaxial output out to a number of different speaker sets.

      The question is, how cheap can you get either digital speakers, or a little D/A converter that takes S/PDIF in and spits out stereo line level?

    • That depends entirely on the audio-frequency electromagnetic radiation noise floor at the particular place you've run your cable. A/C power lines are something important to avoid - a 60hz hum will be audible with anything other than cheap computer speakers. Generally, don't run your antenna (speaker cables) parallel to other antennas (power infrastructure, phone lines) for extended distances. You may find it worthwhile to twist balanced lines or shield unbalanced lines - and if you absolutely must convert b
    • Re:Audio quality? (Score:5, Informative)

      by Ian Peon ( 232360 ) <ian&epperson,com> on Saturday June 28, 2003 @12:52AM (#6317630)
      I program these types of systems for a living. Usually, everything I work on is HUGE. To put in in perspective, I recently finished the control system in the Chuang [bea.com] Residence. Alfred is very much into the latest and greatest - and had a 3 million dollar home theater put in (seats 7) as well as A/V distribuition (30 zones) throughout the house (61" HD plasma at the foot of his bed!).

      So, it depends on the signal that you're routing.

      Amplified: Great! it'll probably go as far as you need it. If you're going over a few hundered feet and don't care about the quality (think outdoor speakers), you'll want to look into doing with 70 volt transformers and matching speakers. (the higher voltage will drive the signal much farther, but the audio quality goes to hell). Generally with amplified signals the farther you go the quieter it gets.

      Line level (non-amplified signal): Will often work just fine. Since it uses a much lower voltage it is much more succeptable to noise. The two biggest things to watch for are interference and ground loops. You get interference from power sources, running motors, wireless devices, etc. If you convert the signal to balanced it'll be less succeptable to interference (a balanced signal provides a ground reference). Small converters are available from several sources. Ground loops are caused when there is a voltage difference between the "ground" plane on either end of the wire. Often, you'll hear a slight 60 Hz hum. The PROPER way to eliminate this is to make sure all your equipment uses the same ground. If it's all on the same circuit in your house, then you're probably OK. If not, there are small inline devices to eliminate this as well. Look for "Hum Buckers" or "Electo-Optic isolators". Line level will go a suprising distance but you'll want a distribution amp to go over about a hundred feet. Keep in mind that the farther you go, the better chance of having noise problems.

      Digital: Bleh! I really want this to work, but I haven't seen a successfull installation with more than 20 feet of wire! I worked one job where they tried both optical and copper but couldn't get it reliably (trying at about 75 feet of signal). When the signal degrades, the audio just goes away - not quiter or noisier. It suprises me that the optical signal won't go farther - it's light dammit! The issue seems to be that the TOSLink cables are designed around a plastic core that is easier to work with - but attenuates too much over distance. Having a device to rebuild the signal every 20 feet is problematic to say the least.
  • EPIA (Score:2, Interesting)

    by Anonymous Coward
    I would say get a bunch of via epia mini-itx mainboards (newegg sells them with some pretty slick cases as well). Just run Cat5 to each room and viola! you have a multipurpose device, you could watch a DVD (or at least a visualization) with your music as well.

    Besides, the EPIA boards are quite well supported under linux (and of course windows), heck you could even network boot them so you have diskless stations - now that would be killer. Absolutely no moving parts, you could just stick the board to back o
  • by poptones ( 653660 ) on Friday June 27, 2003 @11:51PM (#6317292) Journal
    Bad idea. It's MP3... just put an MP3 player in the room and use network cable. You can buy an old Vectra (that would do this fine) for like $50. Or you can use dedicated audio widgets like the very open mp3elf [mp3elf.net].
    • The mp3elf looks pretty neat. I've been thinking about how I'll do my audio setup when I move soon and this looks like a really neat solution. What I'd really like though is to have the device be wireless (802.11 b or g). Since the mp3elf requires a separate TINI board for the network interface is it possible to get a wireless version of the TINI? I think that would be nice so I could have my music portable to anywhere in the house.
  • Which OS?

    Who are you kidding? you're on a linux site, you're just trolling for some karma/recognition.

    I'll answer all of your questions, even though I know it's not the answers you want to hear:

    My winamp uses up 2 percent of CPU on a dual 450 PIII with a memory footprint of 8 megs. That means you could have say, 50 different streams with my system. Or get 6 streams with about 100 Mhz chip (to be conservative). A low end PIII will do the job is your answer.

    it can be remotely controlled via many thing

    • Yeah this seemed trivial. Winamp actually uses 0% CPU when playing on my 1 Ghz Box with WinXP. It'll peak at 1 but that' sif you're manipulating the on-screen controls.
    • I 100MHz Pentium will barely run _one_ mp3 stream; it certainly won't do six! You can't just divide the clock speed here.
  • MOTU (Score:2, Offtopic)

    by pirodude ( 54707 )
    Get a nice MOTU [motu.com] rackmount system and you can do a huge amount of inputs/outputs.
  • by Admiral Burrito ( 11807 ) on Friday June 27, 2003 @11:54PM (#6317323)

    Most command-line MP3 players (mpg123, for example) have options to specify the sound device. This would allow you to control which room the music was sent to.

    CPU-wise, decoding a bunch of MP3s should be no problem at all; mpg123 typically uses only 1-2% CPU on a modern machine. I don't think you'll run into PCI bandwidth limits either (guestimate 1.4 megabits per second per output).

    You may need to create your own player front-end, to select songs/playlists for each room.

  • by zazylawy ( 530379 ) <zzylawy.yahoo@ca> on Saturday June 28, 2003 @12:02AM (#6317357)
    or does anyone else find it strange that sometimes Slashdot editors remember a story being posted 3 years ago, yet other times post the same story twice (or more) in a single day!?!?
  • Existing Projects (Score:5, Interesting)

    by euphline ( 308359 ) on Saturday June 28, 2003 @12:05AM (#6317372)
    Last time I got to thinking about this, I spent an evening or two googling and found:

    The Ethernut is more for a doityourselfer, the Slimp3 is existing product. They operate over ethernet which is not quite within scope for the abovementioned project, but might meet the same goals.

    I haven't gotten around to either of these yet, but the Slimp3 in particular sounds quite cool.

    -jbn
  • SliMP3, baby (Score:5, Informative)

    by ScuzzMonkey ( 208981 ) on Saturday June 28, 2003 @12:14AM (#6317423) Homepage
    Yeah, you may be able to hack something together with a single PC and multiple sound cards in a few months of Sundays. But you could also just buy, off-the-shelf, as many of these dandy little things [slimp3.com] as you need. A single server can service as many of them as you'd care to stack up. They would be easy to add on as you require them, without having to run any speaker cable at all--a wireless bridge or a single CAT5 run works peachy. DHCP enabled, supports multiple server OSs (mine is off my Debian box but they have Windows or Mac installers as well), wireless remote, Web, or command line interfaces all supported.

    I've only got one, but it works awesome and if I ever decide I want to put a different sound system into another room, I can just buy another module and hook it up to the same server--instant access to all the MP3s and playlists that I've already created. The sound quality is great and it take hardly any resources, either server-side or network. I highly recommend it.
    • Re:SliMP3, baby (Score:3, Interesting)

      by Eyston ( 462981 )
      One problem I can see with SliMP3 is that you are limiting yourself to only playing MP3's. What if you migrate to Vorbis, MPC, WMA, FLAC, or one of the other competing formats. MP3's are the most common no doubt, but storage space is not much of a concern these days. Lossless is starting to make some sense (seeing mp3's encoded at 320kpbs in the name of quality makes me wonder why not lossless).

      It would be nice to see the delivery of raw audio instead which would make your encoding format irrelevant.

      A
  • by RoundTop-VJAS ( 580788 ) on Saturday June 28, 2003 @12:15AM (#6317427)
    however most modern motherboards only have about 5 PCI slots..possibly 6 at most.

    So by the time you have the requisite NIC, your video card (PCI or AGP), you are left with 3-5 slots left for audio cards.

    Then you have issues with the bus bandwidth and that many audio cards.

    People have mentioned using 3 card and use the front/rear outputs for different streams, but the cards don't work that way (or at least not without at LOT of driver coding, and no way you can easily get your audio player to recognise this)

    There are several solutions to this:

    • Use more than one machine (cheap machines in each room connected to a central fileserver)
    • Buy soundcards that have the 5 output streams (note, this is 10 outputs, but 5 streams [L/R audio for each]), but this is expensive
    • Go to a pro audio shop and ask them, they have stuff built for this.

    Good Luck

  • I also want to control and send the output to each set of speakers from the same source, and was thinking that a PC, with 4-6 soundcards, would do the trick,...

    Far too complex.
    A PC, with a good sound card output, driving a regular stereo component. Let the dedicated stereo unit drive the multiple speakers.
  • by DavittJPotter ( 160113 ) on Saturday June 28, 2003 @12:17AM (#6317437) Homepage Journal
    Seriously, they call it Bob. It's the ZR8630AV - and he's got a sister named Glory - the ZR4630.

    Glory is a 4-source, 6-output, 30 watts per channel audio distribution center. Check out http://www.nilesaudio.com/products/zr4630.html [nilesaudio.com] for more information.

    We use these a lot where I work now, and they're slicker than snot.
  • by Sabalon ( 1684 ) on Saturday June 28, 2003 @12:19AM (#6317449)
    I wanted to do something similar, but the other direction.

    I wanted to have mics around the house in lots of the rooms. I want to be able to walk into the bedrom and say "lights on" and have the computer turn the lights in that room on - I don't wanna have to say "master bedroom lights on".

    I really am not sure how this would be done. I'm guessing there would need to be some sort of intermediate box that would pass the audio through, and at the same time be able to indicate to the computer which input it received a signal (or the strongest signal) on.
  • The company I work for: Intellinet Controls [intellinetcontrols.com] sells multi-room audio systems. Our latest product, the RS3000 [intellinetcontrols.com], includes web based control (which is really nice with a wireless webpad), keypads in each room (and a remote), and can be easily intergrated with mp3 jukebox software (I use Globecom Jukebox [sourceforge.net]) (we plan to provide it as a option for those who don't want to set their own up) I have a system installed in my house, and I think it is great (of course, since I wrote most of the software it does exactly wha
  • You'll need a pretty decent box to stream 6 mp3's simultaneously through sound cards. Signal loss will be a factor going long distances.

    In the future, you may want to stream more than just music to each room - video, perhaps? Internet "kiosk"? Security camera? Make sure your cabling is flexible enough to handle whatever you might want to send. Will a single computer be able to meet the demands of 6 video streams simultaneously? Maybe 1 server per floor would work better. How could wireless technolog
  • by netsharc ( 195805 ) on Saturday June 28, 2003 @12:31AM (#6317509)
    Well, if you're going to go Linux, ALSA supports multiple sound cards pretty nicely, just tell XMMS (or whatever media player it will be) to use the different /dev/ devices (use devfsd). My first though was an implementation in Windows, Winamp also offers you the choice which soundcard you want to use, although one has to wonder about the IRQ hell of 6 of them in the same computer!

    VNC wouldn't be such a good idea, because AFAIK it grabs the pointer so you'll probably end up with a situation where 2 or more people in different rooms wrestle for control of the pointer. A thin X display that connects to the server would work ok, although that would mean 6 computers in 6 different rooms, and when you already have that, it'd probably be wiser to have a "1 MP3-fileserver and 6 clients that draw MP3s across the ethernet" setup. Or you can just use SSH (or even telnet) to connect to the server and let them use mp3blaster [stack.nl], a text-based interface. Yeah, ugly, you can put it to the bottom of your list. But if the 6 clients need 6 "real" computers, it'll be so much waste - with SSH you can connect from a Palm Pilot, but then you'll need 802.11b for significant distances, and you can only get that from high end Palms..

    But oh, depending on how long the VGA cable must be, you can always have 2 computers, each with 1xAGP, 2xPCI graphic cards and 3xPCI sound cards, and one of them as an NFS server for the other.. or even use the on-board sound. That should be easier to set-up, IMO.

    Anyway, have a lot of fun, IMO you should document the process with lots of pics and put it up on a server, you can then wear the proud tag of "I've been slashdotted".
    • The Windows VNC server does indeed capture the pointer; however, when running a VNC server on a *n?x machine, Xvnc acts as another X server, separate from any other instance of Xvnc. So VNC would work dandy for this setup, especially over 802.11b.

      Cheap laptops are far cheaper than high-end Palms capable of 802.11b, and you could buy two of those for the price of aforementioned Palm, and have them in each room or something like that.

      Just a suggestion to be taken for a grain of salt.
  • by dr00g911 ( 531736 ) on Saturday June 28, 2003 @12:45AM (#6317596)
    I have to admit, I'm a head-over-heels lover of my SliMP3s [slimp3.com].

    The reasons you should be too:

    It's platform independent, but is also really tightly integrated into your itunes/musicmatch/winamp playlists. A single server, whatever your religion, can saturate the network before the server gets bogged down. This said, I recommend a Mac server, just because iTunes is amazing, and I really don't like having to deal with Linux config when I'm not being paid to.

    $200/unit, and all the playlists on your network can be streamed from one location. At 10/100 speeds, it'd take about 15-20 of the things to saturate your network, if they were all running at the same time.

    All of your libraries and playlists will be shared and distributed thruout the house. Doesn't matter if you're going to a boom box with a ghetto-wired cassete adaptor. Run cat5 to the room (cheap), and choose the most suited amplification method, from powered speakers, to a MacGyvered boom box, to a proper receiver.

    The company is super cool, comes out with feature updates constantly, and the server software is open source, should you choose to use the built-in Perl powered httpd server versus just using a remote.

    I'm not an employee of Slim Devices, just an insanely happy customer. That's a whole lot of elegance in a small, inexpensive package.

    And it plays a mean game of Tetris, gives my weather report, and does a /. ticker every 15 minutes on each unit, just because I can.
  • be smart.. (Score:3, Insightful)

    by Suppafly ( 179830 ) <slashdot@s[ ]afly.net ['upp' in gap]> on Saturday June 28, 2003 @12:47AM (#6317598)
    put conduit in the walls instead of just running wires, that way later you can change the wires for the next technology that comes along.
  • by pennystinker ( 548132 ) on Saturday June 28, 2003 @12:58AM (#6317660)
    I'm also working on this exact same project. I'm planning to start a major remodeling job on my house starting this fall. Many of the things you are looking to do I'm also trying to accomplish. Here's the general outline of my plans:

    Bedrooms: I'm only running Cat5. Each room will have a custom built PC with a decent sound card and speakers. These machine are for the kids to watch videos, do homework, play games, listen to music, etc. Each of these machine will boot into some sort of GNU/Linux (right now the plan is Gentoo) as the primary OS. Unfortunately, they will also have a Win2K boot option for playing games. Util WineX/Transgamign goes GPL or many more games (thank you BioWare for NWN) go native Linux, I'm afraid that Win2K will remain in my, and my kids life.

    Den, Kitchen, dining room, backyard patio: A pair of decent speakers mounted to the wall with the speaker cables neatly tucked away out of sight.

    Family room: I plan on building a custom home theater PC running GNU/Linux that will be used as a PVR, TV, CD player, DVD Player, CD Ripper, DVD Ripper. Also attached will be a VHS for the older tapes. This machine will be hooked up to a nice 5.1 (or better) speaker system. These speakers will be "switchable" to also play "piped-in" music as well.

    I have several "scenarios" that I want my A/V system to support:

    1.Party: In this scenario, I would like to "program" all of the speakers in the Den, Kitchen, dining room, backyard patio, and family room (which will all be on the first for (except the backyard patio ;-) ) to play the same music. I will need to be able to adjust the volume levels independently in each room, as well as needing an easy way to "mute" a room or all of the music in all of the rooms, FROM ANY ROOM.
    2.Clusters of people doing stuff: I can see myself cooking dinner, in the kitchen, while one of my kids is playing with a friend in the living room. I would like to listen to my own music in the kitchen while my kids either watch videos (on the HTPC) or listening to "piped" music, radio, or Internet radio from a "audio server". The other rooms are "silent". In other words I can deliver independent audio to individual rooms. (By Internet radio I mean consumer Internet radio as well as shout/icecast)

    I'm looking for an integrated/elegant solution. I would like an audio server in the basement that can be remotely controlled from each room that play music from an audio library of OGG files, Internet radio sources or radio tuner cards in any combination.

    (I also plan to have a video server, actually a simple file server, with backed-up DVD images to act as a video server (thank you dvdbackup))

    I don't want desktops or laptop scattered around the house actually doing the "audio work". I'm figuring that any PC on my home network can create/manipulate audio playlists that can be played in all rooms or an arbitrary subset. I will need to develop an "integrated remote control" system. I'm thinking of small, embedded, computers with an integrated LCD touch screen and networking that I will mount in the wall in each room on the first floor, as well as on the back of the house. These computers would provide a touch screen interface for controlling the audio in that room (with the option to control audio in other rooms or throughout the house). The controls would include volume levels, muting, playlist control, and the ability to choose from Internet or broadcast radio sources. In the family room it must also be possible to "switch" the speakers from the "piped" audio to the HTPC. When these wall mounted computers are inactive they would display the date/time and weather (or something).

    I have also considered PDAs with 802.11 but I like the fixed solution from a clutter/aesthetics point-of-view. Also, PDAs like remotes will take a lot of abuse and tend to get lost. On the other hand, I have not ruled out the PDA solution yet.

    Ok, now you know what I'm looking to do, here's where I'm at:
  • Why would anyone use anything but wireless, networked devices? I don't get it, sorry.
  • two ideas (Score:2, Interesting)

    by zorander ( 85178 )
    First of all, somewhere in the world, there's a webcast output plugin for xmms. Configure a copy of xmms to use it on the server machine, and point all your vnc sessions at that copy of xmms which is webcasting currently. Then you can have each of the smaller machines receive the webcast (just run a little daemon wrapper script around mpg123 that connects to the main server with a retry or something of the sort) and output it to their personal set of speakers with your method of choice.

    You control music se
  • The more complex you make the plumbing, the easier it is to stuff up the drain.

    !my solution! between three rooms.

    Living room amp, with inputs and outputs
    5 disk DVD, Digital cable, VCR
    Kitchen amp, using tape inputs / outputs.
    Turn table
    Computer noock -> living room (audio over cat 5)
    Hollywood recorder
    cheepo computer speakers.
    Fileserver downstairs
    file share of .mp3 and other media
    web server of .mp3 and other media

    ------------------

    If I want to hear shit in the k
  • www.slimdevices.com (Score:3, Informative)

    by ckm ( 87462 ) on Saturday June 28, 2003 @01:59AM (#6317933) Homepage
    Their slimp3 and server already does this, over ethernet...

    Save yourself the hassle.

    I have had one since the first production run, and it's the best audio device I've ever bought.

    Best of all, both the server and firmware are Open Source.

    Chris.
  • Comment removed based on user account deletion
  • Jukebox (Score:3, Interesting)

    by RinkSpringer ( 518787 ) <.rink. .at. .rink.nu.> on Saturday June 28, 2003 @02:03AM (#6317952) Homepage Journal
    You may be interested in Jukebox [fontys.nl], it's what I wrote for our student union and it works like a charm.

    If you launch multiple copies of it (it's written in C++ and not very memory-hungry), you can easily use it to serve over multiple sound cards.

    I currently run it on Linux and FreeBSD.
  • multiple sound cards (Score:2, Informative)

    by ratfynk ( 456467 )
    Running symetrical multiple sound cards under any version of Windows or Linux is hell, I speak from experience. Although a Linux driver actually cured a cross channel hum problem I couldn't eliminate with Windows software and two SB 32s.

    I have run two Sb 32 awe's with some success back when Creative actually spent some real money on it's audio designs. However the ever present 128 live version and up craps big ones. I made the mistake of upgrading, the good old 32 awe's are now back and doing the job! (I u
  • by rf0 ( 159958 )
    One thing you have to be careful of (and this is expierence) is that if you want to stream the same content to all the rooms you need to make sure that everything is within about 25ms sync of each other (if not less) otherwise you will hear echos if not just total noise.

    This is one of the problems with MP3 streaming as a normal client will buffer 3-4 seconds before playing which can lead to the loss of sync. As such the sound card is a good idea...

    HTH

    Rus
  • BPM Studio Gastro Can output 6 independent mp3 streams with a suitable sound card(s):

    http://www.alcatech.com/

    I've been happily using their DJ software for years.

    from the website:

    The BPM Studio Gastro Features

    Sound management from one central system
    Arrange different playlists with the music of your choice and
    direct them to each of the 6 areas.
    Control your playlists, volume and sound needs for any area
    in realtime.
    Intelligent playlists
    (store titles in any order, sort and rearrange them anytime)
    Archiving o
  • And some usb networking dongles. The mods for the audio out on the i-opener are (were) around on the net. The audio is passable/good. They run off of around 40 watts, so you won't heat up the house or go broke paying the electricity. Use the central machine as a file server.

    Alternately, the Via Eden machines do a nice job of this. The nice thing here is that they have enough guts to play DVDs back over the network. (DVD over 10baseT is passable, over 100baseT more than adequate). This was my approach to t
  • Hardware solution (Score:3, Informative)

    by Uncle Eazy ( 671354 ) on Saturday June 28, 2003 @03:07AM (#6318169) Homepage
    Not to piss all over the hax0r spirit, but why not look into something like the Audiotron [turtlebeach.com] from Turtle Beach. It's a bit on the pricey side, but it's great for serving up (actually receiving) MP3s to a stereo over CAT5 from some machine in your home.

    Uncle Eazy
  • My house is wired with CAT5, every room
    leading down to the server room with a
    couple of patch panels.

    Taking my trusty Dremel I modded some
    CAT5 cables so that output from my MP3
    player went into the wall and came out
    in the server room. Now took random
    patch cables and hooked-up outputs around
    the house. After this success, I devised
    two CAT5-to-speaker cable types (LEFT and
    RIGHT) that let me hook up speakers in
    any room in the house.

    Actually, it works well. I never thought
    UTP would carry the speaker signal, b
  • You should donate to the EFF or some other charity.
  • by Equuleus42 ( 723 ) on Saturday June 28, 2003 @06:50AM (#6318677) Homepage
    I have had a house-based MP3 server running over NFS for years now... My solution has been to have a stereo near each computer that has local ethernet access, and just run the output from each computer's sound card to the stereo next to it. I have customized shell scripts for Linux, FreeBSD and Mac OS X that take the best advantage of the system's ps, mpg123 and kill programs -- if you would like a copy (and instructions for use), email me [mailto].

    While this setup allows for independent songs to be played on each system (which is great for most purposes), there are times when you want to play the same song on each system -- in essence, creating a "concert" around your house. To do this, I set up Icecast [icecast.org] on a Linux machine, gave it all of the MP3s to play, and then connect to it from each other computer via mpg123. This approach does work, but the result is less than excellent -- each connection can be timed up to a second or so off from the other ones, which creates a really weird echo effect in the house. While this can be fun for a little while (standing between two stereos you get a "live" effect from studio material), it gets old real quick.

    My proposed solution to this would be find a low-power FM transmitter that you can hook up to one machine -- play MP3s from a soundcard into the FM transmitter, then tune each other stereo to the FM frequency that the transmitter is using. I must admit that I haven't tried this, so I don't know how well it would work -- I do know that the signal would sound synchronized because radio waves travel at the speed of light. I know that Griffin Technology makes the iTrip [griffintechnology.com], which is an FM transmitter specifically made for Apple's iPod. It claims to only have a 10-30 foot range though (limited by FCC regulations), so I'm not sure how well it would work. I'm sure there's a company or two out there that makes a low-power FM transmitter that would work well on any output source, in any situation.
  • by silas_moeckel ( 234313 ) <silas@@@dsminc-corp...com> on Saturday June 28, 2003 @11:01AM (#6319331) Homepage
    OK having done this in the last 12 months lets go over the options.

    Slimmp3 and Ethermp3nut or whatever are out there and work well for ethernet attached 2 channel audio. I went with the free as in speech ethermp3nut (right name?) as I'm handy with a sodering iron and have friends that can deal with surface mount. These along with a small amp are good for rooms that you only need 2 channels like the bathroom porches etc pretty much anything without a TV. I have 4 drops of Cat5 in every room (one per wall) and use cheap gige agrigation switches from netgear if I need more ports.

    OK now for rooms with TV's my primary concern was the TV room I places the server directly below the TV and install some metal piping to chace cables through (grounded to keep any interferience down) The only thing running analog to the TV is the VGA cable and the Svideo cable running to the receiver the audio comes off a standard sound blaster audigy via fiber to the in room receiver. Firewire and USB 2.0 got chaced up as well to run a DVD-R drive in the sterio rack for DVD/CD playback, ripping and recording. A few pairs of cat 5 are used for IR Blasters and receivers. Video is provided via a Matrox 450 Maxx one out used for the VGA to the TV and the other running svideo to the receiver in the TV Room. The TV room has server method of controling things there is a wireless keyboard and mouse, normal remote comands via lircd (more on this in a moment) a dumb terminal a Palm with IR and any laptop that can get on the 802.11g network. Finialy I'm currently working on adding speach recognition for the complete hal look :)

    Other rooms have a pretty standard key pads and screens that work via serial 3 wire. I hacked together a little application to scroll whatever song is playing information and navigate premade playlists that are then passwed back to mpg123 to play it's not perfect but works ok next revision is speach recognition. If thy were close enough (first floor) I used a cheapish 12 channel out 8 in profetional audio card they are easy to come by and generaly support linux check out some garage band supply store to find one, each output looks like a seperate DSP at the application level but still only one IRQ. Because it's a real audio card it outputs a balanced line signal these are much easier to run at distance without interferience. At the other end are pretty straight forward project amps and speakers in the walls I didnt need to go that big wattage wise so these were easy to construct.

    Now for the few places that I wasent comfertable running balance line to I used the ethernet to line converters and a receiver this for me was the garage it's detached from the house so I ran multimode fiber a few inces below the ground picking up some cheap 10/100 fiber cards off of ebay and installing them into the linux router with bridging and a boca terminal in the garage thats also hacked to support bridging (have my old 802.11b AP out there for the car) I could have used the audio on the Boca but it just sounded bad (I tried this first) the terminal runs mp3blaster via an xterm to the core server.

    The other special room is my bedroom it's the only other TV in the house I have an old trident PCI card that can be jumpered for TV out only (This is a GREAT feature) and that runs a Svideo up (need a booster seeing some artifacts fromt he run) I have a DEC color dumb term attached to an old 9 inch monitor and keyboard in the corner it's directy connected to the server on 3 lines and generly runs mp3blaster or lynx to get to the video playlists and startup mplayer for those. I used 3 ethernut's to give me 5.1 for the receiver in the bedroom and am working on getting mplayer to connect to them correctly.

    OK now to the server it's a doul proc Xeon 600 with 2 megs of cache each that I had laying around. Primary video out is a Matrox 450 Maxx secondary is a trident on PCI. I have a few 4 channel out CAD cards that use PCI that can handle the video but need to get scan converters / T
  • Well.. (Score:3, Informative)

    by Ryan Amos ( 16972 ) on Saturday June 28, 2003 @11:33AM (#6319472)
    There's actually a reason you don't see this done more often: Unamplified audio (like the stuff coming from a soundcard) doesn't travel very far. 20, 30 feet max before you start getting signal degradation. You'd be better off getting 4 cheap PCs with cheap soundcards and mounting everything remotely over NFS (and there are already stereo components that do this exact same thing.) I know it sounds like a fun project, but you can buy products like this [turtlebeach.com] that allow you to access your MP3 collection and control it remotely (via http, remote control, etc.) Basically, you're gonna need some sort of player at every amp, otherwise it's just not gonna sound good.
  • by gaige ( 685294 ) on Saturday June 28, 2003 @12:35PM (#6319769)
    I built a four-output MP3 player in 1999 and found it to be a pretty reasonable task if you understand the basics of the software side of the game. For reasons that I won't debate, I was using Windows at the time (don't beat on me, I'm a Macintosh/Windows/FreeBSD user and programmer, so don't go all /.-religious war on me).

    We used a PII 400 and got a very reliable 5 output stream box using a multi-output card that isn't manufactured any longer. I tried a number of these cards and most of them worked well. [ As an aside, the MOTU [motu.com] high-end units are excellent if you are going to put the output into high-quality amps and speakers, but they are expensive.]

    From the software side, we used a custom, multi-threaded MP3 player compiled using Intel's optimizing compilers (which mad a huge difference on the PII) and used a graphical front end with a screen-per-room display showing the album art (scanned in by the user or installer) along with the tracks, play lists, etc.

    We did run into a control problem, even though most of our customers were using systems with centrally located gear, which was that getting a PC to run with multiple distinct (and user-uninterruptable) displays simultaneously was expensive and difficult. To supplement this, we created a serial-based interface which allowed for play lists, random play, and basic start/stop/skip controls for each room and could be combined with the GUI over a commercial home control system (like Crestron [crestron.com] or AMX [amx.com]).

    Basically, we would watch the serial port for commands and respond to the control system by flipping individual windows that corresponded to the room that was controlling the system at the time. The control system, in turn, would put show the screen output in a kind of touch screen mode and send mouse locations over the serial port back to our controller. This worked, but was expensive and complex to handle, since only one room could have control over the GUI at the time. For things like displaying the playing tracks and album along with the next track and providing basic control of the start/stop/skip/repeat sequences, we could send text to the control system over the serial port and it would be displayed on the screen in text fields (allowing the main display to be required only for play-list management). This helped quite a bit.

    The control piece was far and away the most difficult part of the project, but since you only have to satisfy yourself, and not the marketplace, I'd suggest that you might find an 802.11-capable PDA as a controller might be useful (and fun to work on). Of course, then you have to either develop your own control protocol or use some kind of CGI and a web server to do the control, but if you separate the players into individual threads or processes that can be easily located, you should be able to send messages (UNIX signals, perhaps) to them and get the level of control that you need.

    From a technical perspective, any OS that has preemptive threading and good interprocess communication should be fine for building this kind of system. We found that by creating our own player (despite the need to license the decode patent from Fraunhofer [fraunhofer.de] if we were to sell it commercially), we were able to get a finer control of the playback features (such as pause/skip/repeat) than by using single-shot mp3 play commands that were available at the time. I'd suggest looking for how you can get those useful features if you decide to use existing commands in a Linux environment.

    Of course, on a Macintosh, you can do the playback through QuickTime, which is going to be easy and highly-controllable, so you have that oppotunity too.

    In the end, we found that the customers who got it loved it, but that the installers we were trying to sell to weren't interested in buying a product that required some set-up.

    O

  • I already have something which does what you want - I am using a Slimp3 server to stream mp3 data to multiple players around the house (across a wireless network). I have 3 players and they are all able to play a different stream and all at once over a regular 10Mb/s wifi network (all my CD's are encoded to 128Kb/s mp3s)

    If you ran long cables from 6 sound cards to 6 amps around your huse, this could be made to work, but the losses across such long cables would be unacceptable to all but the most tone deaf.

    You can get details of Slimp3 from http://www.slimp3.com

    One thing it won't currently do (and may never do to acceptable levels of timing) is play the same stream , in sync, to multiple players. Even using multicast, they might be up to .5 seconds out which would sound disconcerting to say the least if you were within earshot of more than one player.

    However, if I undertsand your requirement , this (or any other digital music serving device) will do it justice.

One man's constant is another man's variable. -- A.J. Perlis

Working...